MRF00800.xjs 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/**
  3. * @desc : 화면초기화
  4. *
  5. * @param :
  6. * @return :
  7. * @---------------------------------------------------
  8. */
  9. function fInitialize(){
  10. ipt_reqdata.setFocus();
  11. ds_init.setColumn(0, "today", utlf_getCurrentDate());
  12. var oParam = {};
  13. oParam.id = "TRMRF00802";
  14. oParam.service = "formmngtapp.UnitMngt";
  15. oParam.method = "reqGetUnitIndx";
  16. oParam.inds = "req=ds_send_reqdata";
  17. oParam.outds = "ds_main_unitindx=unitindx";
  18. oParam.async = false;
  19. //oParam.callback = "cf_TRMRF00802";
  20. tranf_submit(oParam);
  21. }
  22. /**
  23. * @desc : 버튼활성화 혹은 비활성화
  24. *
  25. * @param : 버튼 속성값(boolean)
  26. * @return :
  27. * @---------------------------------------------------
  28. */
  29. function fCtrlDisabled(bool){
  30. ipt_unitnm.enable = !bool;
  31. cmb_unitkind.enable = !bool;
  32. ipt_exchval.enable = !bool;
  33. ipt_rem.enable = !bool;
  34. ipt_unitfromdt.enable = !bool;
  35. ipt_unittodt.enable = !bool;
  36. }
  37. //datagrid.vscroll.atttribute("hopos") = XX
  38. /**
  39. * @desc : 단위리스트 조회
  40. * @
  41. * @param :
  42. * @return :
  43. * @---------------------------------------------------
  44. */
  45. function fReqUnitlist(){
  46. fCtrlDisabled(true);
  47. ds_send_reqdata.copyRow(0, ds_main_condition, 0);
  48. var oParam = {};
  49. oParam.id = "TRMRF00801";
  50. oParam.service = "formmngtapp.UnitMngt";
  51. oParam.method = "reqGetUnitList";
  52. oParam.inds = "req=ds_send_reqdata";
  53. oParam.outds = "ds_main_unitlist=unitlist";
  54. oParam.async = false;
  55. //oParam.callback = "cf_TRMRF00801";
  56. tranf_submit(oParam);
  57. dsf_setDefaultVal(ds_main_unitlist, "itemidxseq:0");
  58. }
  59. /**
  60. * @desc : 단위리스트 추가
  61. * @
  62. * @param :
  63. * @return :
  64. * @---------------------------------------------------
  65. */
  66. function fAddUnitlist(){
  67. /* grd_unitlist.addItem();
  68. iRow = grd_unitlist.row;
  69. grd_unitlist.vscroll.attribute("pos") = iRow * grd_unitlist.dataheight;//새로운 행으로 스크롤 이동*/
  70. ds_main_newunit.clearData();
  71. ds_main_newunit.addRow();
  72. ds_main_newunit.setColumn(0, "unitfromdt", ds_init.getColumn(0, "today"));
  73. ds_main_newunit.setColumn(0, "unittodt" ,"99991231");
  74. ds_main_newunit.setColumn(0, "status" , "i");
  75. fCtrlDisabled(false); //아이템 입력창의 input콘트롤의 활성화
  76. cmb_valiyn.enable = false;
  77. ipt_unitnm.setFocus();
  78. }
  79. /**
  80. * @desc : 단위리스트 수정
  81. * @
  82. * @param :
  83. * @return :
  84. * @---------------------------------------------------
  85. */
  86. function fSetUnitlist(){
  87. var curRow = ds_main_unitlist.rowposition;
  88. if(curRow < 0){
  89. sysf_messageBox("수정할 행을 ","C002");
  90. return;
  91. }
  92. // fValiCheck();
  93. ds_main_newunit.setColumn(0, "status" , "u");
  94. iRow = ds_main_unitlist.rowposition;
  95. if(iRow < 0){
  96. return;
  97. }
  98. ds_main_unitlist.enableevent = false;
  99. ds_main_unitlist.updatecontrol = false;
  100. ds_main_unitlist.setRowType(iRow, 4);
  101. ds_main_unitlist.updatecontrol = true;
  102. ds_main_unitlist.enableevent = true;
  103. fCtrlDisabled(false);
  104. cmb_valiyn.enable = true;
  105. ipt_unitnm.setFocus();
  106. //fCompareNodes 비교위해 copynode
  107. ds_main_newunit2.copyData(ds_main_newunit);
  108. }
  109. /**
  110. * @group :
  111. * @ver : 2007.06.13
  112. * @by :
  113. * @---------------------------------------------------
  114. * @type : function
  115. * @access : public
  116. * @desc : 두개의 노드셋을 비교한다.
  117. * @param : originalNode :
  118. * @param : copyNode :
  119. * @return : true, false
  120. * @---------------------------------------------------
  121. */
  122. function fCompareNodes1(originalNode, copyNode){
  123. var ins = document.models( 0 ).instances( 0 );
  124. var original = ins.selectSingleNode(originalNode).xml;
  125. var copy = ins.selectSingleNode(copyNode).xml;
  126. var replace = original.setReplaceWord("newunit2","newunit");
  127. if(replace == null || copy == null){
  128. return false;
  129. }else if (replace == copy){
  130. return true;
  131. }else{
  132. return false;
  133. }
  134. }
  135. /**
  136. * @desc : 단위리스트 저장
  137. * @
  138. * @param :
  139. * @return :
  140. * @---------------------------------------------------
  141. */
  142. function fSaveUnitlist(){
  143. //status 값 i,u일경우 저장
  144. var flag;
  145. var status = ds_main_newunit.getColumn(0, "status");
  146. if(status == "i" || status =="u")
  147. {
  148. flag = true;
  149. }
  150. if(!flag)
  151. return;
  152. if(status == "u")
  153. {
  154. //수정 여부 check
  155. var compare = false;
  156. if( dsf_getDsCSV(ds_main_newunit2) == dsf_getDsCSV(ds_main_newunit) ){
  157. compare = true;
  158. }
  159. if(status=="u" && compare == true)
  160. {
  161. sysf_messageBox("수정된 내용이","I004");
  162. fCtrlDisabled(true);
  163. cmb_valiyn.enable = false;
  164. return;
  165. }
  166. //2009.01.21 강지훈 수정
  167. //변경이력을 남기지 않고 Update.
  168. var ret = sysf_messageBox("변경 이력을 저장", "S001");
  169. if(ret == "6"){
  170. ds_main_newunit.setColumn(0, "histsaveyn", "Y");
  171. }
  172. else if(ret == "7"){
  173. ds_main_newunit.setColumn(0, "histsaveyn", "N");
  174. }
  175. else{
  176. return;
  177. }
  178. }
  179. ds_send_savedata.copyData(ds_main_newunit);
  180. //fUpdateToDt();
  181. dsf_setDefaultVal(ds_send_savedata, "unitkind:''");
  182. var oParam = {};
  183. oParam.id = "TXMRF00801";
  184. oParam.service = "formmngtapp.UnitMngt";
  185. oParam.method = "reqExeSaveUnitList";
  186. oParam.inds = "req=ds_send_savedata";
  187. oParam.outds = "ds_main_unitlist=unitlist";
  188. oParam.async = false;
  189. //oParam.callback = "cf_TXMRF00801";
  190. tranf_submit(oParam);
  191. fCtrlDisabled(true);
  192. cmb_valiyn.enable = false;
  193. }
  194. /**
  195. * @desc : 단위리스트 newunit으로 복사
  196. * @
  197. * @param :
  198. * @return :
  199. * @---------------------------------------------------
  200. */
  201. function fCopyUnit(){
  202. iRow = ds_main_unitlist.rowposition;
  203. if(iRow < 0){
  204. return;
  205. }
  206. ds_main_newunit.copyRow(0, ds_main_unitlist, iRow);
  207. // itemidxseq를 unitkind에 넣는다.
  208. ds_main_newunit.setColumn(0, "unitkind",ds_main_unitlist.getColumn(iRow, "itemidxseq"));
  209. fCtrlDisabled(true);
  210. cmb_valiyn.enable = false;
  211. var todt = ds_main_unitlist.getColumn(iRow, "unittodt");
  212. var fromdt = ds_main_unitlist.getColumn(iRow, "unitfromdt");
  213. if(fromdt <= utlf_getCurrentDate()+utlf_getCurrentTime && todt > utlf_getCurrentDate()+utlf_getCurrentTime ){
  214. ds_temp.setColumn(0, "valiyn","Y");
  215. } else {
  216. ds_temp.setColumn(0, "valiyn","N");
  217. }
  218. }
  219. /**
  220. * @desc : 단위 리스트입력부분 초기화
  221. * @
  222. * @param :
  223. * @return :
  224. * @---------------------------------------------------
  225. */
  226. function fClearUnit(){
  227. ds_main_newunit.clearData();
  228. ds_main_newunit.addRow();
  229. }
  230. /**
  231. * @desc : 무효 아이템 수정시 valicheck변경
  232. * @
  233. * @param :
  234. * @return :
  235. * @---------------------------------------------------
  236. */
  237. function fValiCheck(){
  238. // 무효 아이템 수정시 valicheck변경
  239. var todt = model.getValue("/root/main/newunit/unittodt");
  240. if(getCurrentDate()+getCurrentTime > todt){
  241. model.setValue("/root/main/valicheck","Y");
  242. }
  243. }
  244. /**
  245. * @desc : 무효화된 단위 수정시 unittodt 새로 넣어준다.
  246. * @
  247. * @param :
  248. * @return :
  249. * @---------------------------------------------------
  250. */
  251. function fUpdateTodt(){
  252. //무효화된 단위 수정시 unittodt 새로 넣어준다.
  253. var valicheck = model.getValue("/root/main/valicheck");
  254. if(valicheck=="Y"){
  255. model.setValue("/root/send/savedata/unittodt","29991231999999");
  256. model.setValue("/root/main/valicheck","N");
  257. model.refresh();
  258. }
  259. }
  260. ]]></Script>