SPMMO15500_지정일자분류등록.xrw 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="F:/CMCOracle/application/webapps/com/commonweb/css/common.css" type="text/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>Untitle</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <example>Sample</example>
  10. </root>
  11. </instance>
  12. </model>
  13. </xhtml:head>
  14. <xhtml:body pagewidth="220" pageheight="260" style="background-color:transparent; margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  15. <datagrid id="grd_setday" caption="Day 분류명" colsep="^" colwidth="188" extendlastcol="noscroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:7px; top:26px; width:213px; height:184px; ">
  16. <col type="input"/>
  17. </datagrid>
  18. <caption id="caption1" class="tit_2" style="left:5px; top:5px; width:131px; height:13px; ">지정일자 분류 등록</caption>
  19. <button id="button7" class="btn2_letter2" style="left:83px; top:213px; width:42px; height:19px; ">
  20. <caption>신규</caption>
  21. <script type="javascript" ev:event="DOMActivate">
  22. <![CDATA[
  23. //검사항목리스트의 총 개수
  24. var rows = grd_testitemnvalrslt.rows - grd_testitemnvalrslt.fixedRows;
  25. //수치검사항목 팝업으로 총개수를 넘겨줌
  26. setParameter("count", rows);
  27. //수치검사항목 팝업으로 코드 값을 넘겨주기 위해 코드 값을 받아옴
  28. for(var i = 1 ; i <= rows ; i++){
  29. var testitemcd = model.getValue("/root/main/info/testiteminfo/testitemlist[" + i + "]/testitemcd");
  30. //var testcd = model.getValue("/root/main/info/testiteminfo/testitemlist[" + i + "]/testcd");
  31. if(i == 1){
  32. setParameter("cd", testitemcd);
  33. }else{
  34. addParameter("cd", testitemcd);
  35. }
  36. }
  37. //관심슬립 리스트에 선택된 로우값을 받아옴
  38. var row = grd_concslip.row;
  39. //현재 관심슬립의 슬립번호를 받아옴
  40. var no = model.getValue("/root/main/cond/slipno");
  41. //검사항목 총개수에서 하나씩 추가할 로우개수
  42. var usercount = 0;
  43. //관심슬립번호가 존재하지 않거나 현재 선택된 관심슬립이 없는경우 메세지
  44. if((row == -1) || (no == '')){
  45. messageBox("관심슬립을","C002");
  46. }else{
  47. //수치검사항목 팝업을 띠움
  48. //수정전 팝업
  49. //modal("SPMMB01300", "1","150", "150", "SPMMB01300", "", "");
  50. modal("SPMMB01500", "1","150", "150", "SPMMB01500", "", "");
  51. //검사항목 총 개수
  52. var gridrows = grd_testitemnvalrslt.rows;
  53. //수치검사항목 팝업에서 넘겨받은 신규로 등록한 개수
  54. var count = model.getValue("/root/hidden/testiteminfo/count");
  55. //수치검사항목에서 넘겨받은 데이타의 사용여부
  56. var useyn = model.getValue("/root/hidden/testiteminfo/useyn");
  57. //수치검사항목에서 넘겨받은 데이타의 사용여부가 yes인경우 (확인)
  58. if(useyn == 'Y'){
  59. //신규로 등록한 개수 대로 나타내기
  60. for(var i=1; i<=count ; i++){
  61. //중복여부 변수
  62. var dupl = 0;
  63. //검사항목 총개수
  64. var rows = grd_testitemnvalrslt.rows - grd_testitemnvalrslt.fixedRows;
  65. //검사항목 총개수에서 로우를 증가를 위한 값
  66. usercount = rows + 1 ;
  67. //수치검사항목 팝업창에서 받아옴 데이타를 하나씩 받아옴
  68. var testcd = model.getValue("/root/hidden/testiteminfo/testitemlist[" + i + "]/testcd");
  69. var testitemcd = model.getValue("/root/hidden/testiteminfo/testitemlist[" + i + "]/testitemcd");
  70. var testnm = model.getValue("/root/hidden/testiteminfo/testitemlist[" + i + "]/testnm");
  71. var testitemnm = model.getValue("/root/hidden/testiteminfo/testitemlist[" + i + "]/testitemnm");
  72. var rsltunit = model.getValue("/root/hidden/testiteminfo/testitemlist[" + i + "]/rsltunit");
  73. // if(testnm != ''){
  74. // //model.makeNode("/root/main/testiteminfo/testitemlist[" + i + "]/testnm");
  75. // model.setValue("/root/main/testiteminfo/testitemlist[" + i + "]/testnm",testnm);
  76. // }else{
  77. // //model.makeNode("/root/main/testiteminfo/testitemlist[" + i + "]/testnm");
  78. // model.setValue("/root/main/tstiteminfo/testitemlist[" + i + "]/testnm이",'');
  79. // }
  80. // model.makeNode("/root/main/testiteminfo/testitemlist[" + count + "]/slipno");
  81. // model.makeNode("/root/main/testiteminfo/testitemlist[" + count + "]/testcd");
  82. //신규로 받아온 데이타의 검사코드와 현재 있는 검사코드가 같은 경우가 있는지 확인
  83. for(var j= 1 ; j<=rows ; j++){
  84. var usertestcd = model.getValue("/root/main/info/testiteminfo/testitemlist[" + j + "]/testitemcd");
  85. //var usertestnm = model.getValue("/root/main/info/testiteminfo/testitemlist[" + j + "]/testitemnm");
  86. //중복된 코드가 잇는 경우 메세지 출력
  87. if(testitemcd == usertestcd){
  88. //messageBox(usertestnm + " 검사명이","E006");
  89. dupl = dupl + 1;
  90. }
  91. }
  92. //중복된 코드가 없는 경우 그리드에 신규로 추가
  93. if(dupl == 0){
  94. grd_testitemnvalrslt.addRow(false);
  95. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/testcd",testcd);
  96. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/testitemcd",testitemcd);
  97. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/testnm",testnm);
  98. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/testitemnm",testitemnm);
  99. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/slipno",no);
  100. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/refhval",'0');
  101. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/reflval",'0');
  102. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/hvalappflag",'Y');
  103. model.setValue("/root/main/info/testiteminfo/testitemlist[" + usercount + "]/lvalappflag",'Y');
  104. }
  105. }
  106. model.refresh();
  107. }
  108. }
  109. ]]>
  110. </script>
  111. </button>
  112. <button id="button8" class="btn2_letter2" style="left:128px; top:213px; width:42px; height:19px; ">
  113. <caption>삭제</caption>
  114. <script type="javascript" ev:event="DOMActivate">
  115. <![CDATA[
  116. //삭제를 원하는 로우를 얻어온다.
  117. var selectedRows = grd_testitemnvalrslt.selectedRows;
  118. //선택한 삭제로우행을 받아오기 위해 배열지정
  119. var row = new Array();
  120. //멀티로 선택한 로우행값을 받아옴
  121. for (i= selectedRows-1; i >= 0; i--){
  122. row[i] = grd_testitemnvalrslt.selectedrow(i);
  123. }
  124. //선택한 로우가 없는 경우 메세지
  125. if(selectedRows == 0){
  126. messageBox("삭제할검사항목을 ", "C002");
  127. }else{
  128. xPath = "/root/main/info/testiteminfo/testitemlist";
  129. var savedata ="m▦testnm▦testitemnm▦refhval▦reflval▦testcd▦slipno▦testitemcd▦hvalappflag▦lvalappflag▦rsltunit▩";
  130. for (i= selectedRows-1; i >= 0; i--){
  131. savedata += 'd' + "▦";
  132. savedata += model.getValue(xPath+"["+ row[i] +"]/testnm") + "▦";
  133. savedata += model.getValue(xPath+"["+ row[i] +"]/testitemnm" ) + "▦";
  134. savedata += model.getValue(xPath+"["+ row[i] +"]/refhval" ) + "▦";
  135. savedata += model.getValue(xPath+"["+ row[i] +"]/reflval" ) + "▦";
  136. savedata += model.getValue(xPath+"["+ row[i] +"]/testcd" ) + "▦";
  137. savedata += model.getValue(xPath+"["+ row[i] +"]/slipno" ) + "▦";
  138. savedata += model.getValue(xPath+"["+ row[i] +"]/testitemcd" ) + "▦";
  139. savedata += model.getValue(xPath+"["+ row[i] +"]/hvalappflag" ) + "▦";
  140. savedata += model.getValue(xPath+"["+ row[i] +"]/lvalappflag" ) + "▦";
  141. savedata += model.getValue(xPath+"["+ row[i] +"]/rsltunit" ) + "▩";
  142. }
  143. //멀티로 원한 데이타를 가지고 삭제하러 간다
  144. //model.copyNode("/root/send/reqdata","");
  145. model.setValue("/root/send/savedata",savedata);
  146. //검사항목을 삭제
  147. submit("TXMMO08602");
  148. }
  149. model.refresh();
  150. //검사명, 상태검사명 병합
  151. grd_testitemnvalrslt.mergecol(6) = false;
  152. grd_testitemnvalrslt.mergecol(7) = false;
  153. grd_testitemnvalrslt.mergecol(8) = false;
  154. grd_testitemnvalrslt.mergecol(9) = false;
  155. grd_testitemnvalrslt.mergecol(10) = false;
  156. grd_testitemnvalrslt.mergecells = "bycol";
  157. ]]>
  158. </script>
  159. </button>
  160. <line id="line7" class="line_1" style="x1:8px; y1:20px; x2:220px; y2:20px; "/>
  161. <button id="button9" class="btn5_letter2" style="left:174px; top:213px; width:42px; height:19px; ">
  162. <caption>저장</caption>
  163. <script type="javascript" ev:event="DOMActivate">
  164. <![CDATA[
  165. //검사항목 등록이나, 수정인경우 저장하러 간다~
  166. var grd_concslip_row = grd_concslip.row;
  167. model.setValue("/root/send/savedata",grd_testitemnvalrslt.getUpdateData());
  168. submit("TXMMO08602");
  169. grd_testitemnvalrslt.mergecol(6) = false;
  170. grd_testitemnvalrslt.mergecol(7) = false;
  171. grd_testitemnvalrslt.mergecol(8) = false;
  172. grd_testitemnvalrslt.mergecol(9) = false;
  173. grd_testitemnvalrslt.mergecol(10) = false;
  174. grd_testitemnvalrslt.mergecells = "bycol";
  175. grd_concslip.row = grd_concslip_row;
  176. grd_concslip.dispatch("onclick");
  177. ]]>
  178. </script>
  179. </button>
  180. </xhtml:body>
  181. </xhtml:html>