MMR04400.xjs 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  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 nMax = ds_main_formsubtitle_formsubtitlelist.getCaseMax("!utlf_isNull(seq)", "seq");
  42. if( utlf_isNull(nMax) ){
  43. nMax = 0;
  44. }
  45. var maxseq = parseInt(nMax) + 1; //seq의 최대값 + 1
  46. ds_main_formsubtitle_formsubtitlelist.setColumn(nRow, "seq", maxseq);
  47. ds_main_formsubtitle_formsubtitlelist.rowposition = nRow;
  48. grd_formsubtitle.setCellPos(1);
  49. grd_formsubtitle.showEditor(true);
  50. }
  51. /**
  52. * @desc : 라인삭제
  53. * @
  54. * @param :
  55. * @return :
  56. * @authur : 박종훈
  57. * @---------------------------------------------------
  58. */
  59. function fDelRow()
  60. {
  61. var arrRow = grdf_getSelectedRows(grd_formsubtitle);
  62. grdf_setStatus(grd_formsubtitle, "D", arrRow)
  63. }
  64. /**
  65. * @desc : 저장
  66. * @
  67. * @param :
  68. * @return :
  69. * @authur : 박종훈
  70. * @---------------------------------------------------
  71. */
  72. function fSave()
  73. {
  74. if(fChkPreSave())
  75. {
  76. var oDsUpdate = grdf_getGridUpdateData(grd_formsubtitle);
  77. grdf_setStatusColumn(oDsUpdate, "status");
  78. ds_send_formsublist.copyData(oDsUpdate, true);
  79. var oParam = {};
  80. oParam.id = "TXMMR04401";
  81. oParam.service = "medirecapp.ComnMediRec";
  82. oParam.method = "reqExeFormSubTitle";
  83. oParam.inds = "req=ds_send_userid formsublist=ds_send_formsublist";
  84. oParam.outds = "ds_main_formsubtitle_formsubtitlelist=formsubtitlelist";
  85. oParam.async = false;
  86. oParam.callback = "cf_TXMMR04401";
  87. tranf_submit(oParam);
  88. } else {
  89. sysf_messageBox("빈 항목을", "C001");
  90. }
  91. }
  92. function cf_TXMMR04401(sSvcId, nErrorCode, sErrorMsg) {
  93. if(nErrorCode < 0) return;
  94. ////////////////
  95. //20101124, 주희경, 저장 변경된 데이터를 sysMessage로 복사
  96. var viewerObj = frmf_getViewer("top");
  97. var srcNode = viewerObj.dv_orderbasicinfo.lf_getOrderBaseInfo("formsubtitlelist");
  98. srcNode.copyData(ds_main_formsubtitle_formsubtitlelist);
  99. ////////////
  100. ds_main_formsubtitle_formsubtitlelist.applyChange(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  101. this.close();
  102. }
  103. /**
  104. * @desc : 저장전 체크 로직
  105. * @
  106. * @param :
  107. * @return :
  108. * @authur : 박종훈
  109. * @---------------------------------------------------
  110. */
  111. function fChkPreSave()
  112. {
  113. var chknull = true;
  114. for(var i = 0; i < ds_main_formsubtitle_formsubtitlelist.rowcount; i++)
  115. {
  116. var subtitle = ds_main_formsubtitle_formsubtitlelist.getColumn(i, "formsubtitle");
  117. var seq = ds_main_formsubtitle_formsubtitlelist.getColumn(i, "seq");
  118. if(utlf_isNull(subtitle)|| utlf_isNull(seq))
  119. {
  120. chknull = false;
  121. }
  122. }
  123. return chknull;
  124. }
  125. /**
  126. * @desc : 순서이동(위로)
  127. * @
  128. * @param :
  129. * @return :
  130. * @authur : 박종훈
  131. * @---------------------------------------------------
  132. */
  133. function fMoveUp()
  134. {
  135. var oDs = ds_main_formsubtitle_formsubtitlelist;
  136. var iRow = oDs.rowposition;
  137. if (iRow > 0){
  138. var oldseq = oDs.getColumn(iRow, "seq");
  139. var newseq = oDs.getColumn(iRow-1, "seq");
  140. oDs.setColumn(iRow, "seq", newseq);
  141. oDs.setColumn(iRow-1, "seq", oldseq);
  142. oDs.moveRow(iRow, iRow-1);
  143. oDs.rowposition = iRow-1;
  144. grd_formsubtitle.setCellPos(1);
  145. }
  146. }
  147. /**
  148. * @desc : 순서이동(아래로)
  149. * @
  150. * @param :
  151. * @return :
  152. * @authur : 박종훈
  153. * @---------------------------------------------------
  154. */
  155. function fMoveDown()
  156. {
  157. var oDs = ds_main_formsubtitle_formsubtitlelist;
  158. var iRow = oDs.rowposition;
  159. var iRows = oDs.rowcount;
  160. if (iRow < (iRows - 1) && iRow > -1){
  161. var oldseq = oDs.getColumn(iRow, "seq");
  162. var newseq = oDs.getColumn(iRow+1, "seq");
  163. oDs.setColumn(iRow, "seq", newseq);
  164. oDs.setColumn(iRow+1, "seq", oldseq);
  165. oDs.moveRow(iRow, iRow+1);
  166. oDs.rowposition = iRow+1;
  167. grd_formsubtitle.setCellPos(1);
  168. }
  169. }
  170. /**
  171. * @desc : 창닫기
  172. * @
  173. * @param :
  174. * @return :
  175. * @authur : 박종훈
  176. * @---------------------------------------------------
  177. */
  178. function fClose()
  179. {
  180. ds_main_formsubtitle_formsubtitlelist.applyChange();
  181. this.close();
  182. }]]></Script>