SPAHA03110_건진공통코드조회.xrw 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>공통코드조회</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <codeinfo>
  11. <codelist>
  12. <sel/>
  13. <cdid/>
  14. <cdnm/>
  15. <useyn/>
  16. <cmt/>
  17. <sortseq/>
  18. <cdgrupid/>
  19. </codelist>
  20. </codeinfo>
  21. <tes/>
  22. </main>
  23. <send>
  24. <reqdata>
  25. <cdgrupid/>
  26. <srcd/>
  27. <srnm/>
  28. <offset/>
  29. <pagesize>1000</pagesize>
  30. </reqdata>
  31. </send>
  32. <senddata>
  33. <execdata>
  34. <codelist/>
  35. </execdata>
  36. </senddata>
  37. <popdata>
  38. <cdgrupid/>
  39. </popdata>
  40. <temp/>
  41. </root>
  42. </instance>
  43. <script type="javascript" ev:event="xforms-ready">
  44. <![CDATA[
  45. model.removeNodeset("/root/main/codeinfo/codelist");
  46. fInit();
  47. readfunc();
  48. ]]>
  49. </script>
  50. <script type="javascript" ev:event="xforms-model-destruct">
  51. <![CDATA[
  52. window.close();
  53. ]]>
  54. </script>
  55. <submission id="TRAHA03111" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" add="bottom" resultref="/root/main/codeinfo"/>
  56. </model>
  57. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  58. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  59. <script type="javascript">
  60. <![CDATA[
  61. var vMultiYn = "";
  62. var vGrpCd = "";
  63. var vCdid = "";
  64. var vDesNodeSet = "";
  65. var vDesNodeCd = "";
  66. var vDesNodeNm = "";
  67. function fInit() {
  68. model.setValue("/root/send/reqdata/offset" , 0);
  69. model.setValue("/root/send/reqdata/pagesize" , 1000);
  70. if(checkOpener()) {
  71. vMultiYn = opener.javascript.getParameter("SPAHA03110_PARAM1");
  72. vGrpCd = opener.javascript.getParameter("SPAHA03110_PARAM2");
  73. vCdId = opener.javascript.getParameter("SPAHA03110_PARAM3");
  74. vDesNodeSet = opener.javascript.getParameter("SPAHA03110_PARAM4");
  75. vDesNodeCd = opener.javascript.getParameter("SPAHA03110_PARAM5");
  76. vDesNodeNm = opener.javascript.getParameter("SPAHA03110_PARAM6");
  77. //alert(vMultiYn + " : " + vGrpCd + " : " + vCdId + " : " + vDesNodeSet + " : " + vDesNodeCd + " : " + vDesNodeNm );
  78. }
  79. if(vMultiYn == "Y") {
  80. grd_codelst.colHidden(grd_codelst.colRef("sel")) = false;
  81. }else {
  82. grd_codelst.colHidden(grd_codelst.colRef("sel")) = true;
  83. }
  84. model.setValue("/root/send/reqdata/cdgrupid" , vGrpCd);
  85. model.setValue("/root/send/reqdata/srcd" , vCdId);
  86. }
  87. function readfunc(){ // 해당 조건에 대한 사용자 권한내역을 조회한다.
  88. if (model.getValue("/root/send/reqdata/cdgrupid") == ""){
  89. messageBox("구분코드를 선택한 후 조회하시기 바랍니다.", "E999", "");
  90. return;
  91. }
  92. model.removeNodeset("/root/main/codeinfo/codelist");
  93. model.removeNodeset("/root/main/codeinfo");
  94. btn_save.disabled = false;
  95. if (submit("TRAHA03111")){
  96. }
  97. model.refresh();
  98. }
  99. function fSaveData() {
  100. if(vMultiYn == "Y") {
  101. if(vDesNodeSet == "") {
  102. for(var i = 1; i <= grd_codelst.rows; i++) {
  103. if(grd_codelst.valueMatrix( i , grd_codelst.colRef("sel")) == "Y") {
  104. opener.model.makeNode(vDesNodeCd);
  105. opener.model.makeNode(vDesNodeNm);
  106. opener.model.setValue(vDesNodeCd , grd_codelst.valueMatrix(i , grd_codelst.colRef("cdid")));
  107. opener.model.setValue(vDesNodeNm , grd_codelst.valueMatrix(i , grd_codelst.colRef("cdnm")));
  108. }
  109. }
  110. }else {
  111. var nodeList = instance1.selectNodes(grd_codelst.nodeset + "[sel='Y']");
  112. if( nodeList.length > 0) {
  113. var rCSV = getNodeListCSV(nodeList);
  114. setCSVToNode("/root/temp", rCSV);
  115. opener.model.makeNode(vDesNodeSet);
  116. copyNodesetType(vDesNodeSet, "/root/temp/list", "replace", opener.model, model );
  117. }else {
  118. if(grd_codelst.row > 0) {
  119. var rCSV = getNodeListCSV(instance1.selectNodes(grd_codelst.nodeset + "[" + grd_codelst.row + "]"));
  120. setCSVToNode("/root/temp", rCSV);
  121. opener.model.makeNode(vDesNodeSet);
  122. copyNodesetType(vDesNodeSet, "/root/temp/list", "replace", opener.model, model );
  123. }
  124. }
  125. }
  126. } else {
  127. var idx = grd_codelst.row ;
  128. if ( idx < 1) {
  129. messageBox("항목을 선택하세요.", "E999");
  130. return false;
  131. }
  132. if(vDesNodeSet == "") {
  133. opener.model.makeNode(vDesNodeCd);
  134. opener.model.makeNode(vDesNodeNm);
  135. opener.model.setValue(vDesNodeCd , grd_codelst.valueMatrix(idx , grd_codelst.colRef("cdid")));
  136. opener.model.setValue(vDesNodeNm , grd_codelst.valueMatrix(idx , grd_codelst.colRef("cdnm")));
  137. }else {
  138. var nodeList = instance1.selectNodes(grd_codelst.nodeset + "[ + idx + ]");
  139. if( nodeList.length > 0) {
  140. var rCSV = getNodeListCSV(nodeList);
  141. setCSVToNode("/root/temp", rCSV);
  142. opener.model.makeNode(vDesNodeSet);
  143. copyNodesetType(vDesNodeSet, "/root/temp/list", "replace", opener.model, model );
  144. }
  145. else return false;
  146. }
  147. }
  148. }
  149. function fSubmitOnScroll() {
  150. if(grd_codelst.vscroll.attribute("max") == grd_codelst.vscroll.attribute("pos")) {
  151. // end of scroll
  152. model.setValue("/root/send/reqdata/offset", grd_codelst.rows - grd_codelst.fixedRows); // grid의 header row는 제외
  153. submit("TRAHA03111");
  154. grd_codelst.dispatch("onmouseup"); // 스크롤바 처리를 위한 이벤트 발생
  155. }
  156. }
  157. ]]>
  158. </script>
  159. </xhtml:head>
  160. <xhtml:body pagewidth="730px" pageheight="580px" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  161. <caption id="caption1" class="tit_1" style="left:0px; top:0px; width:252px; height:14px; ">공통코드조회</caption>
  162. <shape id="rectangle1" appearance="roundrect" style="left:3px; top:18px; width:707px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  163. <caption id="caption11" class="search_name" style="left:19px; top:26px; width:94px; height:17px; ">코드검색:</caption>
  164. <input id="ipt_comcd" ref="/root/send/reqdata/srcd" class="input_search" style="left:121px; top:25px; width:114px; height:19px; ">
  165. <script type="javascript" ev:event="onkeyup">
  166. <![CDATA[
  167. if(event.keyCode == "13") {
  168. inputEnterKey("btn_sea", "DOMActivate");
  169. }
  170. ]]>
  171. </script>
  172. </input>
  173. <button id="btn_sea" class="btn1_letter2" style="left:627px; top:24px; width:56px; height:22px; ">
  174. <caption>조회</caption>
  175. <script type="javascript" ev:event="DOMActivate">
  176. <![CDATA[
  177. model.setValue("/root/send/reqdata/offset" , 0);
  178. readfunc();
  179. ]]>
  180. </script>
  181. </button>
  182. <line id="line6" style="x1:617px; y1:24px; x2:617px; y2:46px; border-color:#ffe4bb; border-left-style:solid; "/>
  183. <line id="line7" class="line_1" style="x1:3px; y1:81px; x2:708px; y2:81px; "/>
  184. <datagrid id="grd_codelst" nodeset="/root/main/codeinfo/codelist" caption="선택^Code^Name^사용여부^비고^순번^caption1" colsep="^" colwidth="30, 100, 270, 60, 150, 39, 39" explorerbar="sort" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:3px; top:85px; width:707px; height:450px; ">
  185. <col checkvalue="Y,N" ref="sel" type="checkbox"/>
  186. <col ref="cdid" type="output" maxlength="10" style="text-align:left; "/>
  187. <col ref="cdnm" type="output" style="text-align:left; "/>
  188. <col disabled="true" ref="useyn" type="combo" style="text-align:center; ">
  189. <choices>
  190. <item>
  191. <label>YES</label>
  192. <value>Y</value>
  193. </item>
  194. <item>
  195. <label>NO</label>
  196. <value>N</value>
  197. </item>
  198. </choices>
  199. </col>
  200. <col ref="cmt" type="output" style="text-align:left; "/>
  201. <col ref="sortseq" type="output" format="#####" style="text-align:center; "/>
  202. <col ref="cdgrupid" visibility="hidden"/>
  203. <script type="javascript" ev:event="onaftersort">
  204. <![CDATA[
  205. grd_codelst.gridToInstance();
  206. ]]>
  207. </script>
  208. <script type="javascript" ev:event="ondblclick">
  209. <![CDATA[
  210. if(isDataCell()) {
  211. fSaveData();
  212. window.close();
  213. }
  214. ]]>
  215. </script>
  216. <script type="javascript" ev:event="onscroll">
  217. <![CDATA[
  218. fSubmitOnScroll();
  219. ]]>
  220. </script>
  221. </datagrid>
  222. <caption id="caption4" class="tit_2" style="left:3px; top:65px; width:113px; height:13px; ">코드별 상세정보</caption>
  223. <button id="btn_save" class="btn4_letter2" style="left:597px; top:540px; width:56px; height:22px; ">
  224. <caption>확인</caption>
  225. <script type="javascript" ev:event="DOMActivate">
  226. <![CDATA[
  227. fSaveData();
  228. window.close();
  229. ]]>
  230. </script>
  231. </button>
  232. <line id="line1" class="line_3" style="x1:3px; y1:536px; x2:708px; y2:536px; "/>
  233. <button id="btn_close" class="btn4_letter2" style="left:656px; top:540px; width:56px; height:22px; ">
  234. <caption>닫기</caption>
  235. <script type="javascript" ev:event="DOMActivate">
  236. <![CDATA[
  237. window.close();
  238. ]]>
  239. </script>
  240. </button>
  241. <caption id="caption2" class="search_name" style="left:269px; top:26px; width:94px; height:17px; ">코드명:</caption>
  242. <input id="ipt_comnm" ref="/root/send/reqdata/srnm" class="input_search" style="left:351px; top:25px; width:114px; height:19px; ">
  243. <script type="javascript" ev:event="onkeyup">
  244. <![CDATA[
  245. if(event.keyCode == "13") {
  246. inputEnterKey("btn_sea", "DOMActivate");
  247. }
  248. ]]>
  249. </script>
  250. </input>
  251. </xhtml:body>
  252. </xhtml:html>