MMR04400.xjs 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/*
  3. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  4. 서식부제목 ( MMR04400_서식부제목관리.xrw - JScript )
  5. - Version :
  6. 1) : Ver.1.00.01
  7. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  8. */
  9. /**
  10. * @desc : 화면 초기화
  11. * @
  12. * @param :
  13. * @return :
  14. * @authur : 박종훈
  15. * @---------------------------------------------------
  16. */
  17. function fInitialize()
  18. {
  19. ds_main_formsubtitle_formsubtitlelist.clearData();
  20. ////////////////////
  21. //20101124, 주희경, 진료 속도 개선을 위해 로그인 시 조회해 놓은 데이터를 복사
  22. ds_init_formsubtitle_formsubtitlelist.clearData();
  23. var viewerObj = frmf_getViewer("top");
  24. var srcNode = viewerObj.dv_orderbasicinfo.lf_getOrderBaseInfo("formsubtitlelist");
  25. dsf_copyColInfo(ds_init_formsubtitle_formsubtitlelist, srcNode);
  26. ds_init_formsubtitle_formsubtitlelist.appendData(srcNode);
  27. ds_main_formsubtitle_formsubtitlelist.copyData(ds_init_formsubtitle_formsubtitlelist);
  28. //grd_formsubtitle.rebuild();
  29. }
  30. /**
  31. * @desc : 라인추가
  32. * @
  33. * @param :
  34. * @return :
  35. * @authur : 박종훈
  36. * @---------------------------------------------------
  37. */
  38. function fAddRow()
  39. {
  40. var nRow = ds_main_formsubtitle_formsubtitlelist.addRow();
  41. var maxseq = parseInt(ds_main_formsubtitle_formsubtitlelist.getCaseMax("!utlf_isNull(seq)", "seq")) + 1; //seq의 최대값 + 1
  42. ds_main_formsubtitle_formsubtitlelist.setColumn(nRow, "seq", maxseq);
  43. ds_main_formsubtitle_formsubtitlelist.rowposition = nRow;
  44. grd_formsubtitle.setCellPos(1);
  45. grd_formsubtitle.showEditor(true);
  46. }
  47. /**
  48. * @desc : 라인삭제
  49. * @
  50. * @param :
  51. * @return :
  52. * @authur : 박종훈
  53. * @---------------------------------------------------
  54. */
  55. function fDelRow()
  56. {
  57. var arrRow = grdf_getSelectedRows(grd_formsubtitle);
  58. grdf_setStatus(grd_formsubtitle, "D", arrRow)
  59. }
  60. /**
  61. * @desc : 저장
  62. * @
  63. * @param :
  64. * @return :
  65. * @authur : 박종훈
  66. * @---------------------------------------------------
  67. */
  68. function fSave()
  69. {
  70. if(fChkPreSave())
  71. {
  72. var oDsUpdate = grdf_getGridUpdateData(grd_formsubtitle);
  73. grdf_setStatusColumn(oDsUpdate, "status");
  74. ds_send_formsublist.copyData(oDsUpdate, true);
  75. var oParam = {};
  76. oParam.id = "TXMMR04401";
  77. oParam.service = "medirecapp.ComnMediRec";
  78. oParam.method = "reqExeFormSubTitle";
  79. oParam.inds = "req=ds_send_userid formsublist=ds_send_formsublist";
  80. oParam.outds = "ds_main_formsubtitle_formsubtitlelist=formsubtitlelist";
  81. oParam.async = false;
  82. oParam.callback = "cf_TXMMR04401";
  83. tranf_submit(oParam);
  84. } else {
  85. sysf_messageBox("빈 항목을", "C001");
  86. }
  87. }
  88. function cf_TXMMR04401(sSvcId, nErrorCode, sErrorMsg) {
  89. if(nErrorCode < 0) return;
  90. ////////////////
  91. //20101124, 주희경, 저장 변경된 데이터를 sysMessage로 복사
  92. var viewerObj = frmf_getViewer("top");
  93. var srcNode = viewerObj.dv_orderbasicinfo.lf_getOrderBaseInfo("formsubtitlelist");
  94. srcNode.copyData(ds_main_formsubtitle_formsubtitlelist);
  95. ////////////
  96. ds_main_formsubtitle_formsubtitlelist.applyChange(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  97. this.close();
  98. }
  99. /**
  100. * @desc : 저장전 체크 로직
  101. * @
  102. * @param :
  103. * @return :
  104. * @authur : 박종훈
  105. * @---------------------------------------------------
  106. */
  107. function fChkPreSave()
  108. {
  109. var chknull = true;
  110. for(var i = 0; i < ds_main_formsubtitle_formsubtitlelist.rowcount; i++)
  111. {
  112. var subtitle = ds_main_formsubtitle_formsubtitlelist.getColumn(i, "formsubtitle");
  113. var seq = ds_main_formsubtitle_formsubtitlelist.getColumn(i, "seq");
  114. if(utlf_isNull(subtitle)|| utlf_isNull(seq))
  115. {
  116. chknull = false;
  117. }
  118. }
  119. return chknull;
  120. }
  121. /**
  122. * @desc : 순서이동(위로)
  123. * @
  124. * @param :
  125. * @return :
  126. * @authur : 박종훈
  127. * @---------------------------------------------------
  128. */
  129. function fMoveUp()
  130. {
  131. var oDs = ds_main_formsubtitle_formsubtitlelist;
  132. var iRow = oDs.rowposition;
  133. if (iRow > 0){
  134. var oldseq = oDs.getColumn(iRow, "seq");
  135. var newseq = oDs.getColumn(iRow-1, "seq");
  136. oDs.setColumn(iRow, "seq", newseq);
  137. oDs.setColumn(iRow-1, "seq", oldseq);
  138. oDs.moveRow(iRow, iRow-1);
  139. oDs.rowposition = iRow-1;
  140. grd_formsubtitle.setCellPos(1);
  141. }
  142. }
  143. /**
  144. * @desc : 순서이동(아래로)
  145. * @
  146. * @param :
  147. * @return :
  148. * @authur : 박종훈
  149. * @---------------------------------------------------
  150. */
  151. function fMoveDown()
  152. {
  153. var oDs = ds_main_formsubtitle_formsubtitlelist;
  154. var iRow = oDs.rowposition;
  155. var iRows = oDs.rowcount;
  156. if (iRow < (iRows - 1) && iRow > -1){
  157. var oldseq = oDs.getColumn(iRow, "seq");
  158. var newseq = oDs.getColumn(iRow+1, "seq");
  159. oDs.setColumn(iRow, "seq", newseq);
  160. oDs.setColumn(iRow+1, "seq", oldseq);
  161. oDs.moveRow(iRow, iRow+1);
  162. oDs.rowposition = iRow+1;
  163. grd_formsubtitle.setCellPos(1);
  164. }
  165. }
  166. /**
  167. * @desc : 창닫기
  168. * @
  169. * @param :
  170. * @return :
  171. * @authur : 박종훈
  172. * @---------------------------------------------------
  173. */
  174. function fClose()
  175. {
  176. ds_main_formsubtitle_formsubtitlelist.applyChange();
  177. this.close();
  178. }]]></Script>