SMLLF01000_특수검사연번호그룹관리.xrw 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLLF01000_특수검사연번호그룹관리.xrw
  4. * 설 명 : 특수검사연번호그룹관리
  5. * 설 계 자 : (주)에이씨케이 - 송요셉
  6. * 작 성 자 : (주)에이씨케이 -
  7. * 작 성 일 : 2007. 07. 13
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title/>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root>
  18. <main>
  19. <spcltestgruplist>
  20. <spcltestgrupcd/>
  21. <spcltestgrupnm/>
  22. <spcltestgrupscrnnm/>
  23. <spcltestgrupabbrnm/>
  24. <spcltestgrupprntnm/>
  25. </spcltestgruplist>
  26. <testlist>
  27. <choi/>
  28. <tclscd/>
  29. <tclsnm/>
  30. <spccd/>
  31. <spcnm/>
  32. <spcltestgrupnm/>
  33. <spclrsltkind/>
  34. </testlist>
  35. <choitestlist>
  36. <tclscd/>
  37. <tclsnm/>
  38. <spccd/>
  39. <spcnm/>
  40. <spclrsltkind/>
  41. <spcltestgrupcd/>
  42. </choitestlist>
  43. </main>
  44. <send>
  45. <codeflag/>
  46. <testlrgcd/>
  47. <testmdlcd/>
  48. <spcltestgrupcd/>
  49. <spccd/>
  50. <tclscd/>
  51. <spcldata/>
  52. <choidata/>
  53. </send>
  54. <init>
  55. </init>
  56. <hidden>
  57. <ref>
  58. <testlrgcd>00</testlrgcd>
  59. <testmdlcd>00</testmdlcd>
  60. </ref>
  61. </hidden>
  62. </root>
  63. </instance>
  64. <script type="javascript" ev:event="xforms-ready">
  65. <![CDATA[
  66. model.setValue("/root/send/codeflag", "0104|0102|"); //0104 대분류 0102 중분류
  67. submit("TRLZZ00101");
  68. fGettestlist();
  69. fresetform();
  70. ]]>
  71. </script>
  72. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  73. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/LB0111"/>
  74. <submission id="TRLLF01001" mediatype="application/x-www-form-urlencoded" method="post" ref="root/send" replace="instance" resultref="/root/main/testlist"/>
  75. <submission id="TRLLF01002" mediatype="application/x-www-form-urlencoded" method="post" replace="instance" resultref="/root/main/spcltestgruplist"/>
  76. <submission id="TRLLF01003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/choitestlist"/>
  77. <submission id="TXLLF01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  78. </model>
  79. <script type="javascript">
  80. <![CDATA[
  81. function fresetform(){
  82. model.removeNodeset("/root/main/spcltestgruplist");
  83. spcltestgruplist.refresh();
  84. model.removeNodeset("/root/main/choitestlist");
  85. choitestlist.refresh();
  86. }
  87. function ftestcombo(){
  88. var CD = model.getValue("/root/hidden/ref/testlrgcd");
  89. if(CD == "00"){
  90. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102";
  91. model.setvalue("/root/hidden/ref/testmdlcd" , "00");
  92. testmdlcd.disabled = true;
  93. }
  94. else{
  95. testmdlcd.choices.itemset.attribute("nodeset") = "/root/init/LB0102[cd= '00' or etc01='"+ CD +"']";
  96. model.setvalue("/root/hidden/ref/testmdlcd" , "00");
  97. testmdlcd.disabled = false;
  98. }
  99. testmdlcd.refresh();
  100. }
  101. // 조회구분에서 대분류와 중분류의 값을 받아 검사목록을 출력
  102. function fGettestlist(){
  103. model.setValue("/root/send/testlrgcd", model.getValue("/root/hidden/ref/testlrgcd"));
  104. model.setValue("/root/send/testmdlcd", model.getValue("/root/hidden/ref/testmdlcd"));
  105. submit("TRLLF01001");
  106. }
  107. //선택검사목록
  108. function fSetChoiTestList(){
  109. spcltestgruplist.rowStatus(spcltestgruplist.row) = 1;
  110. if(spcltestgruplist.row != -1){
  111. var equaldata =true;
  112. for(i=1; i<testlist.rows ; i++){
  113. if(model.getValue("/root/main/testlist["+i+"]/choi") == "Y" && model.getValue("/root/main/testlist["+i+"]/spcltestgrupnm") == '' ){
  114. equaldata =true;
  115. for(j=1; j<choitestlist.rows; j++){
  116. if(model.getValue("/root/main/testlist["+i+"]/tclsnm") == model.getValue("/root/main/choitestlist["+j+"]/tclsnm")){
  117. equaldata = false;
  118. }
  119. }
  120. if(equaldata){
  121. choitestlist.addRow(false);
  122. row = choitestlist.row;
  123. model.makeNode("/root/main/choitestlist["+row+"]/tclscd");
  124. model.makeNode("/root/main/choitestlist["+row+"]/tclsnm");
  125. model.makeNode("/root/main/choitestlist["+row+"]/spccd");
  126. model.makeNode("/root/main/choitestlist["+row+"]/spcnm");
  127. model.makeNode("/root/main/choitestlist["+row+"]/spclrsltkind");
  128. model.makeNode("/root/main/choitestlist["+row+"]/spcltestgrupcd");
  129. model.setValue("/root/main/choitestlist["+row+"]/tclscd", model.getValue("/root/main/testlist["+i+"]/tclscd"));
  130. model.setValue("/root/main/choitestlist["+row+"]/tclsnm", model.getValue("/root/main/testlist["+i+"]/tclsnm"));
  131. model.setValue("/root/main/choitestlist["+row+"]/spccd", model.getValue("/root/main/testlist["+i+"]/spccd"));
  132. model.setValue("/root/main/choitestlist["+row+"]/spcnm", model.getValue("/root/main/testlist["+i+"]/spcnm"));
  133. model.setValue("/root/main/choitestlist["+row+"]/spclrsltkind", model.getValue("/root/main/testlist["+i+"]/spclrsltkind"));
  134. model.setValue("/root/main/choitestlist["+row+"]/spcltestgrupcd", model.getValue("/root/main/spcltestgruplist["+spcltestgruplist.row+"]/spcltestgrupcd") );
  135. }
  136. else{
  137. alert(model.getValue("/root/main/testlist["+i+"]/tclsnm") + " 는 이미선택된 항목입니다");
  138. }
  139. }
  140. else if(model.getValue("/root/main/testlist["+i+"]/choi") == "Y" && model.getValue("/root/main/testlist["+i+"]/spcltestgrupnm") != ''){
  141. alert(model.getValue("/root/main/testlist["+i+"]/tclsnm") + " 는 이미선택된 항목입니다");
  142. }
  143. model.setValue("/root/main/testlist["+i+"]/choi", "N");
  144. }
  145. choitestlist.refresh();
  146. }
  147. else{
  148. alert("특수검사그룹이 선택되지않았습니다.");
  149. }
  150. }
  151. //특수검사그룹목록 조회
  152. function fGetspclGrupList() {
  153. submit("TRLLF01002");
  154. }
  155. //행추가
  156. function fAddRow2() {
  157. var nrow = 0;
  158. for(i=1; i<spcltestgruplist.rows; i++){
  159. if(spcltestgruplist.rowStatus(i)==1){
  160. nrow = nrow+1;
  161. }
  162. }
  163. if(nrow<1){
  164. spcltestgruplist.addItem();
  165. //alert(spcltestgruplist.rowStatus(spcltestgruplist.row)) ;
  166. model.removeNodeset("/root/main/choitestlist");
  167. choitestlist.refresh();
  168. }
  169. else{
  170. messageBox("새로운 항목을 저장후에 추가하십시오", "I");
  171. }
  172. }
  173. function fAddRow() {
  174. spcltestgruplist.addItem();
  175. model.removeNodeset("/root/main/choitestlist");
  176. choitestlist.refresh();
  177. }
  178. //행삭제(좌)
  179. function fDelRow() {
  180. /* if(spcltestgruplist.rowStatus(spcltestgruplist.row)==1){
  181. spcltestgruplist.rowStatus(spcltestgruplist.row) = 4;
  182. }
  183. else{
  184. spcltestgruplist.deleteItem(spcltestgruplist.row);
  185. }*/
  186. spcltestgruplist.rowStatus(spcltestgruplist.row) = 4;
  187. for(i = 1; i < choitestlist.rows; i++) {
  188. choitestlist.rowStatus(i) = 4;
  189. }
  190. }
  191. //행삭제(우)
  192. function fDelRow2() {
  193. /* if(choitestlist.rowStatus(choitestlist.row)==0){
  194. choitestlist.rowStatus(choitestlist.row) = 4;
  195. }
  196. else{
  197. choitestlist.deleteItem(choitestlist.row);
  198. }
  199. */
  200. choitestlist.rowStatus(choitestlist.row) = 4;
  201. spcltestgruplist.rowStatus(spcltestgruplist.row) = 4;
  202. }
  203. function fClickspclList() {
  204. var row = spcltestgruplist.row;
  205. /*
  206. for(i=1;i<spcltestgruplist.rows;i++){
  207. if(spcltestgruplist.rowStatus(i)==2 || spcltestgruplist.rowStatus(i)==4){
  208. }else{
  209. spcltestgruplist.rowStatus(i) = 0;
  210. }
  211. }
  212. spcltestgruplist.rowStatus(row) = 1;
  213. */
  214. model.setValue("/root/send/spcltestgrupcd", model.getValue("/root/main/spcltestgruplist["+row+"]/spcltestgrupcd"));
  215. model.setValue("/root/send/tclscd", model.getValue("/root/main/spcltestgruplist["+row+"]/tclscd"));
  216. model.setValue("/root/send/spccd", model.getValue("/root/main/spcltestgruplist["+row+"]/spccd"));
  217. submit("TRLLF01003");
  218. }
  219. function fSaveDivGrupList() {
  220. if(spcltestgruplist.rowStatus(spcltestgruplist.row) == 2 ) {
  221. for(i = 1; i < choitestlist.rows; i++) {
  222. choitestlist.rowStatus(i) = 2;
  223. }
  224. }
  225. if(spcltestgruplist.rowStatus(spcltestgruplist.row) == 0) {
  226. for(i = 1; i < choitestlist.rows; i++) {
  227. if(choitestlist.rowStatus(i) == 2) {
  228. spcltestgruplist.rowStatus(spcltestgruplist.row) = 2;
  229. break;
  230. }
  231. }
  232. }
  233. if(model.getValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupcd") == "") {
  234. messageBox("특수검사그룹코드를", "C001");
  235. return;
  236. }
  237. if(model.getValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupnm") == "") {
  238. messageBox("특수검사그룹명을", "C001");
  239. return;
  240. }
  241. if(model.getValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupscrnnm") == "") {
  242. messageBox("특수검사그룹화면명", "C001");
  243. return;
  244. }
  245. if(model.getValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupabbrnm") == "") {
  246. model.setValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupabbrnm", "-");
  247. }
  248. if(model.getValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupprntnm") == "") {
  249. model.setValue("/root/main/spcltestgruplist["+ spcltestgruplist.row +"]/spcltestgrupprntnm", "-");
  250. }
  251. if(choitestlist.rows < 2) {
  252. messageBox("선택검사목록이 비어있을 수", "I004");
  253. return;
  254. }
  255. model.setValue("/root/send/choidata", choitestlist.getUpdateData());
  256. model.setValue("/root/send/spcldata", spcltestgruplist.getUpdateData());
  257. submit("TXLLF01001");
  258. fresetform();
  259. fGettestlist();
  260. }
  261. ]]>
  262. </script>
  263. </xhtml:head>
  264. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  265. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744; ">
  266. <line id="line1" class="line_1" style="x1:0px; y1:70px; x2:565px; y2:70px; "/>
  267. <caption id="caption1" class="tit_2" style="left:5px; top:55px; width:131px; height:14px; ">특수검사그룹목록</caption>
  268. <caption id="caption3" class="tit_2" style="left:570px; top:435px; width:110px; height:13px; ">검사목록</caption>
  269. <line id="line2" class="line_1" style="x1:570px; y1:450px; x2:1190px; y2:450px; "/>
  270. <group id="group1" style="left:0px; top:10px; width:1195px; height:35px; ">
  271. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194px; height:35px; "/>
  272. <line id="line3" class="line_4" style="x1:1108px; y1:7px; x2:1108px; y2:29px; "/>
  273. <button id="button3" class="btn1_letter2" style="left:1123px; top:7px; width:56px; height:22px; ">
  274. <caption>조회</caption>
  275. <script type="javascript" ev:event="onclick">
  276. <![CDATA[
  277. fGetspclGrupList();
  278. ]]>
  279. </script>
  280. </button>
  281. </group>
  282. <button id="button7" class="btn2_letter3" style="left:456px; top:49px; width:53px; height:19px; ">
  283. <caption>행추가</caption>
  284. <script type="javascript" ev:event="DOMActivate">
  285. <![CDATA[
  286. fAddRow();
  287. ]]>
  288. </script>
  289. </button>
  290. <button id="button1" class="btn2_letter3" style="left:511px; top:49px; width:53px; height:19px; ">
  291. <caption>행삭제</caption>
  292. <script type="javascript" ev:event="DOMActivate">
  293. <![CDATA[
  294. fDelRow();
  295. ]]>
  296. </script>
  297. </button>
  298. <caption id="caption2" class="tit_2" style="left:570px; top:55px; width:110px; height:13px; ">선택검사목록</caption>
  299. <line id="line4" class="line_1" style="x1:570px; y1:70px; x2:1190px; y2:70px; "/>
  300. <button id="button104" class="icon_top" style="left:860px; top:398px; width:26px; height:19px; ">
  301. <caption/>
  302. <script type="javascript" ev:event="DOMActivate">
  303. <![CDATA[
  304. fSetChoiTestList();
  305. ]]>
  306. </script>
  307. </button>
  308. <select1 id="testmdlcd" ref="/root/hidden/ref/testmdlcd" disabled="true" appearance="minimal" style="left:1027px; top:429px; width:162px; height:19px; ">
  309. <choices>
  310. <itemset nodeset="/root/init/LB0102">
  311. <label ref="nm"/>
  312. <value ref="cd"/>
  313. </itemset>
  314. </choices>
  315. <script type="javascript" ev:event="xforms-value-changed">
  316. <![CDATA[
  317. fGettestlist();
  318. ]]>
  319. </script>
  320. </select1>
  321. <caption id="caption4" class="search_name" style="left:769px; top:429px; width:90px; height:17px; ">검사분류 :</caption>
  322. <select1 id="testlrgcd" ref="/root/hidden/ref/testlrgcd" appearance="minimal" style="left:862px; top:429px; width:162px; height:19px; ">
  323. <choices>
  324. <itemset nodeset="/root/init/LB0104">
  325. <label ref="nm"/>
  326. <value ref="cd"/>
  327. </itemset>
  328. </choices>
  329. <script type="javascript" ev:event="xforms-value-changed">
  330. <![CDATA[
  331. ftestcombo();
  332. ]]>
  333. </script>
  334. </select1>
  335. <datagrid id="choitestlist" nodeset="/root/main/choitestlist" caption="검사코드^검사명^검체코드^검체명^검사구분^" colsep="^" colwidth="82, 213, 58, 113, 106,0" dataheight="23" defaultrows="1" explorerbar="sortshow" rowheader="update" rowheight="32" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:570px; top:75px; width:620px; height:308px; ">
  336. <col ref="tclscd"/>
  337. <col ref="tclsnm" style="text-align:left; "/>
  338. <col ref="spccd"/>
  339. <col ref="spcnm" style="text-align:center; "/>
  340. <col ref="spclrsltkind"/>
  341. <col ref="spcltestgrupcd"/>
  342. <script type="javascript" ev:event="onaftersort">
  343. <![CDATA[
  344. choitestlist.gridToInstance();
  345. ]]>
  346. </script>
  347. </datagrid>
  348. <datagrid id="testlist" nodeset="/root/main/testlist" overflow="scroll" scroll="auto" caption="^검사코드^검사명^검체코드^검체명^그룹명^검사구분" colsep="^" colwidth="26, 82, 213, 58, 113, 76, 65" dataheight="23" defaultrows="1" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:570px; top:455px; width:620px; height:276px; ">
  349. <col checkvalue="Y,N" ref="choi" type="checkbox"/>
  350. <col ref="tclscd" style="text-align:center; "/>
  351. <col ref="tclsnm"/>
  352. <col ref="spccd" style="text-align:center; "/>
  353. <col ref="spcnm"/>
  354. <col ref="spcltestgrupnm"/>
  355. <col ref="spclrsltkind" style="left:588px; top:23px; width:65px; height:23px; text-align:center; "/>
  356. <script type="javascript" ev:event="onaftersort">
  357. <![CDATA[
  358. testlist.gridToInstance();
  359. ]]>
  360. </script>
  361. </datagrid>
  362. <datagrid id="spcltestgruplist" nodeset="/root/main/spcltestgruplist" overflow="scroll" scroll="auto" caption="특수검사그룹코드^특수검사그룹명^특수검사그룹화면명^특수검사라벨약어명^특수검사그룹출력명" colsep="^" colwidth="105, 95, 115, 115, 115" dataheight="23" defaultrows="1" explorerbar="sortshow" rowheader="update" rowheight="23" rowsep="|" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:0px; top:75px; width:565px; height:667px; ">
  363. <col ref="spcltestgrupcd" type="input"/>
  364. <col ref="spcltestgrupnm" type="input"/>
  365. <col ref="spcltestgrupscrnnm" type="input"/>
  366. <col ref="spcltestgrupabbrnm" type="input"/>
  367. <col ref="spcltestgrupprntnm" type="input"/>
  368. <script type="javascript" ev:event="onclick">
  369. <![CDATA[
  370. //if(spcltestgruplist.rowStatus(spcltestgruplist.row) == 0){
  371. fClickspclList();
  372. //}
  373. ]]>
  374. </script>
  375. <script type="javascript" ev:event="xforms-value-changed">
  376. <![CDATA[
  377. //if(spcltestgruplist.rowStatus(spcltestgruplist.row) == 0){
  378. // spcltestgruplist.rowStatus(spcltestgruplist.row) = 2;
  379. //}
  380. ]]>
  381. </script>
  382. <script type="javascript" ev:event="onaftersort">
  383. <![CDATA[
  384. spcltestgruplist.gridToInstance();
  385. ]]>
  386. </script>
  387. </datagrid>
  388. <button id="button2" class="btn2_letter3" style="left:1135px; top:49px; width:53px; height:19px; ">
  389. <caption>행삭제</caption>
  390. <script type="javascript" ev:event="DOMActivate">
  391. <![CDATA[
  392. fDelRow2();
  393. ]]>
  394. </script>
  395. </button>
  396. </group>
  397. <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  398. <button id="button5" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  399. <caption>초기화</caption>
  400. <script type="javascript" ev:event="onclick">
  401. <![CDATA[
  402. model.reset();
  403. ]]>
  404. </script>
  405. </button>
  406. <button id="button11" class="btn4_letter2" style="left:1068px; top:3px; width:56px; height:22px; ">
  407. <caption>저장</caption>
  408. <script type="javascript" ev:event="DOMActivate">
  409. <![CDATA[
  410. fSaveDivGrupList();
  411. ]]>
  412. </script>
  413. </button>
  414. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  415. </group>
  416. <group id="group2" style="left:0px; top:0px; width:1195px; height:13px; ">
  417. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">특수검사연번호그룹관리</caption>
  418. </group>
  419. </xhtml:body>
  420. </xhtml:html>