SMMNP00750_삽관류 리스트 관리.xfdl 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNP00750" position="absolute 0 0 597 765" titletext="회복실 코드 관리" onload="SMMNP00750_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 590 27" id="group1">
  8. <Layouts>
  9. <Layout>
  10. <Static text="회복간호기록 삽관류 Check List" position="absolute 0 2 234 27" id="caption6" class="tit_1" anchor="default"/>
  11. </Layout>
  12. </Layouts>
  13. </Div>
  14. <Div position="absolute 0 17 597 765" id="group3" scrollbars="autoboth">
  15. <Layouts>
  16. <Layout>
  17. <Div position="absolute 0 10 597 45" align="align:center top;" id="group2" class="div_SA" anchor="default">
  18. <Layouts>
  19. <Layout>
  20. <Shape position="absolute 523 7 529 29" linetype="vertical" id="line13" anchor="default"/>
  21. <Button position="absolute 475 7 531 29" id="btn_search" class="btn1" text="조회" anchor="default" onclick="group3_group2_btn_search_onclick"/>
  22. </Layout>
  23. </Layouts>
  24. </Div>
  25. <Static text="삽관류 항목" position="absolute 0 50 98 69" id="caption20" class="tit_2" anchor="default"/>
  26. <Shape position="absolute 0 67 597 73" linetype="horizontal" id="line8" class="line_1" style="strokepen:3 solid #33bbbbff;" anchor="default"/>
  27. <Button position="absolute 489 48 542 67" id="button8" class="btn2" text="행추가" anchor="default" onclick="group3_button8_onclick"/>
  28. <Button position="absolute 544 48 597 67" id="button9" class="btn2" text="행삭제" anchor="default" onclick="group3_button9_onclick"/>
  29. <Grid position="absolute 0 72 597 748" id="grd_intublist" visible="true" binddataset="ds_main_list_chklist" anchor="default" onenterdown="group3_grd_intublist_onenterdown" autofittype="col">
  30. <Formats>
  31. <Format id="default">
  32. <Columns>
  33. <Column size="56"/>
  34. <Column size="256"/>
  35. <Column size="69"/>
  36. <Column size="0"/>
  37. <Column size="91"/>
  38. <Column size="81"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. </Columns>
  43. <Rows>
  44. <Row size="24" band="head"/>
  45. <Row size="24"/>
  46. </Rows>
  47. <Band id="head">
  48. <Cell text="항목코드"/>
  49. <Cell col="1" text="항목명"/>
  50. <Cell col="2" text="순서"/>
  51. <Cell col="3" text="위치"/>
  52. <Cell col="4" text="유효시작일"/>
  53. <Cell col="5" text="유효종료일"/>
  54. <Cell col="6" text="lastupdtrid"/>
  55. <Cell col="7" text="cdgrupid"/>
  56. <Cell col="8"/>
  57. </Band>
  58. <Band id="body">
  59. <Cell style="align:left;" text="bind:cdid"/>
  60. <Cell col="1" displaytype="text" edittype="text" style="align:center;" text="bind:cdnm"/>
  61. <Cell col="2" displaytype="text" edittype="text" style="align:center;" text="bind:sortseq"/>
  62. <Cell col="3" displaytype="combo" edittype="combo" style="align:center;" text="bind:supcdid"/>
  63. <Cell col="4" displaytype="date" style="align:center;" text="bind:valifromdd" calendardisplaynulltype="none"/>
  64. <Cell col="5" displaytype="date" style="align:center;" text="bind:valitodd" calendardisplaynulltype="none"/>
  65. <Cell col="6" text="bind:lastupdtrnm"/>
  66. <Cell col="7" text="bind:lastupdtdt"/>
  67. <Cell col="8" text="bind:cdgrupid"/>
  68. </Band>
  69. </Format>
  70. </Formats>
  71. </Grid>
  72. </Layout>
  73. </Layouts>
  74. </Div>
  75. <Button position="absolute 533 34 589 56" id="button2" class="btn4" text="저장" onclick="button2_onclick"/>
  76. </Layout>
  77. </Layouts>
  78. <Objects>
  79. <Dataset id="ds_grd_intublist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  80. <ColumnInfo>
  81. <Column id="cdid" type="STRING"/>
  82. <Column id="cdnm" type="STRING"/>
  83. <Column id="sortseq" type="STRING"/>
  84. <Column id="supcdid" type="STRING"/>
  85. <Column id="valifromdd" type="STRING"/>
  86. <Column id="valitodd" type="STRING"/>
  87. <Column id="lastupdtrnm" type="STRING"/>
  88. <Column id="lastupdtdt" type="STRING"/>
  89. <Column id="cdgrupid" type="STRING"/>
  90. </ColumnInfo>
  91. </Dataset>
  92. <Dataset id="ds_main_list_chklist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  93. <ColumnInfo>
  94. <Column id="cdid" type="STRING" size="256"/>
  95. <Column id="cdnm" type="STRING" size="256"/>
  96. <Column id="sortseq" type="STRING" size="256"/>
  97. <Column id="supcdid" type="STRING" size="256"/>
  98. <Column id="valifromdd" type="STRING" size="256"/>
  99. <Column id="valitodd" type="STRING" size="256"/>
  100. <Column id="lastupdtrnm" type="STRING" size="256"/>
  101. <Column id="lastupdtdt" type="STRING" size="256"/>
  102. <Column id="lastupdtrid" type="STRING" size="256"/>
  103. <Column id="cdgrupid" type="STRING" size="256"/>
  104. </ColumnInfo>
  105. <Rows>
  106. <Row>
  107. <Col id="cdid"/>
  108. <Col id="cdnm"/>
  109. <Col id="sortseq"/>
  110. <Col id="supcdid"/>
  111. <Col id="valifromdd"/>
  112. <Col id="valitodd"/>
  113. <Col id="lastupdtrnm"/>
  114. <Col id="lastupdtdt"/>
  115. <Col id="lastupdtrid"/>
  116. <Col id="cdgrupid"/>
  117. </Row>
  118. </Rows>
  119. </Dataset>
  120. <Dataset id="ds_send_listdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  121. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  122. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  123. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  124. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  125. </Objects>
  126. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  127. * System Name :
  128. * Job Name :
  129. * Creator :
  130. * Make Date : 2015-11-13
  131. * Description :
  132. *---------------------------------------------------------------------------------------
  133. * Modify Date Modifier Modify Description
  134. *---------------------------------------------------------------------------------------
  135. * 2015-11-13 Live Converter TF->XP
  136. *
  137. *---------------------------------------------------------------------------------------
  138. ****************************************************************************************/
  139. include "com_commonxp::comm_main.xjs";
  140. var arErrorCode = new HashArray();
  141. function fInitialize(){
  142. ds_send.clearData();
  143. //dsf_makeValue( ds_send, "temp", "string", "temp");
  144. dsf_makeValue( ds_send, "cdgrupid", "string", "250");
  145. //submit("TRMNP00750");
  146. var oParam = {};
  147. oParam.id = "TRMNP00750";
  148. oParam.service = "opanstapp.OpAnstRef";
  149. oParam.method = "reqGetIntubChkList";
  150. oParam.inds = "req=ds_send";
  151. oParam.outds = "ds_main_list_chklist=chklist";
  152. oParam.async = false;
  153. tranf_submit(oParam);
  154. ds_main_list_chklist.rowposition = -1;
  155. }
  156. function fClickRowAddBtn(){
  157. var cur_row = ds_main_list_chklist.addRow(); // 입력할 행 추가.
  158. sGridPath = "ds_main_list_chklist"
  159. // //줄 추가시 기본세팅
  160. eval(sGridPath).setColumn(cur_row, "cdgrupid", "250" );
  161. //grd_intublist.refresh();
  162. var bodyCellCnt = group3.grd_intublist.getCellCount("body") - 1;
  163. var sCurColIdx = group3.grd_intublist.getCellProperty("body", bodyCellCnt, "col");
  164. var sCurRowIdx = group3.grd_intublist.getCellProperty("body", bodyCellCnt, "row");
  165. group3.grd_intublist.setCellPos("body", bodyCellCnt - group3.grd_intublist.getFormatColCount);
  166. group3.grd_intublist.onenteredit();
  167. }
  168. function fClickDeleteBtn(){
  169. var cur_row = ds_main_list_chklist.rowposition; //grd_intublist.row; // 행 번호 가져오기
  170. var iStatus = ds_main_list_chklist.getRowType(cur_row);
  171. if(cur_row < 0 || cur_row =="undefined") {
  172. alert("삭제할 행을 선택하시기 바랍니다...");
  173. return;
  174. }
  175. if (iStatus == 2) { //iStatus == 1 || iStatus == 3){ // 새로 삽입된 행이면
  176. ds_main_list_chklist.deleteRow(cur_row);// group3.grd_intublist.deleteitem(cur_row);
  177. }else if (iStatus == 8) { //4 삭제로 표시된 행이면
  178. ds_main_list_chklist.deleteRow(cur_row);
  179. }else{
  180. //group3.grd_intublist.addStatus(cur_row, "delete");
  181. ds_main_list_chklist.deleteRow(cur_row);
  182. }
  183. }
  184. function fOnClickSaveBtn(){
  185. //grd_intublist.refresh();
  186. var cnt_row = ds_main_list_chklist.rowcount; //.rows; // 현재 행의 갯수 가져오기
  187. for (var row = 0 ; row < cnt_row ; row++){
  188. if( utlf_isNull(ds_main_list_chklist.getColumn(row, "cdnm")))
  189. {
  190. alert("["+ row +"] 행 항목명에 빈값을 저장할 수 없습니다");
  191. return;
  192. }
  193. }
  194. ds_send_listdata.clearData();
  195. //dsf_makeValue( ds_send, "listdata", "string", grd_intublist.getUpdateData());
  196. ds_send_listdata.assign(ds_main_list_chklist);
  197. grdf_setStatusColumn(ds_send_listdata, "status");
  198. //if ( submit("TXMNP00750") ) {
  199. var oParam = {};
  200. oParam.id = "TXMNP00750";
  201. oParam.service = "opanstapp.OpAnstRef";
  202. oParam.method = "reqSetIntubChkList";
  203. oParam.inds = "listdata=ds_send_listdata:A";
  204. oParam.outds = "ds_main_list_chklist=chklist";
  205. oParam.async = false;
  206. oParam.callback = "cf_TXMNP00750";
  207. tranf_submit(oParam);
  208. ds_main_list_chklist.rowposition = -1;
  209. if ( arErrorCode.pop("TXMNP00750") > -1 ) {
  210. //grd_intublist.clearStatus(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  211. ds_send_listdata.clearData();
  212. }
  213. group3.group2.btn_search.click(); //.dispatch("DOMActivate");
  214. }
  215. function cf_TXMNP00750(sSvcId, nErrorCode, sErrorMsg) {
  216. arErrorCode.push(sSvcId, nErrorCode);
  217. }
  218. function fGridValueChanged(){
  219. // var cur_row = grd_intublist.row; // 추가된 행 번호 가져오기
  220. // var cur_cel = grd_intublist.col;
  221. // var cnt_row = grd_intublist.rows; // 현재 행의 갯수 가져오기
  222. // var stat = grd_intublist.colstatus(0);
  223. // var addcdid = ds_main_list_chklist.getColumn(cur_row, "cdid"))];
  224. //
  225. // if(cur_cel == 1){
  226. // for( row = 1; row < cnt_row-1; row++){
  227. // if(addcdid == ds_main_list_chklist.getColumn(row, "cdid"))]){
  228. // sysf_messageBox("같은 항목코드는 입력하실 수 없습니다. ","I000");
  229. // ds_main_list.setColumn( cur_row , "cdid" , "");
  230. // //grd_intublist.refresh();
  231. // grd_intublist.select(cur_row, 1) = true;
  232. // grd_intublist.editcell();
  233. //grd_intublist.rowstatus(cur_row) = 0;
  234. // return;
  235. // }
  236. //
  237. // }
  238. //
  239. // }
  240. }
  241. function SMMNP00750_onload(obj:Form, e:LoadEventInfo)
  242. {
  243. frmf_initForm(obj); //폼 초기화
  244. //grdf_setRowTypeIcon(group3.grd_intublist, 0);
  245. grdf_initGrid(group3.grd_intublist);
  246. fInitialize();
  247. }
  248. function group3_group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  249. {
  250. fInitialize();
  251. }
  252. function button2_onclick(obj:Button, e:ClickEventInfo)
  253. {
  254. fOnClickSaveBtn();
  255. }
  256. function group3_button8_onclick(obj:Button, e:ClickEventInfo)
  257. {
  258. fClickRowAddBtn();
  259. }
  260. function group3_button9_onclick(obj:Button, e:ClickEventInfo)
  261. {
  262. fClickDeleteBtn();
  263. }
  264. function group3_grd_intublist_onenterdown(obj:Grid, e:GridEditEventInfo)
  265. {
  266. fGridValueChanged();
  267. }]]></Script>
  268. </Form>
  269. </FDL>