SPAER00803_SET수정등록.xrw 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158
  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>SET수정/등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <prmsprcpsetinfo>
  11. <prmsprcpsetlist>
  12. <levl/>
  13. <setno/>
  14. <supsetno/>
  15. <sortno/>
  16. <setkindcd/>
  17. <setclscd/>
  18. <settrgtcd/>
  19. <setnm/>
  20. <settypecd/>
  21. </prmsprcpsetlist>
  22. </prmsprcpsetinfo>
  23. <testgrupdetl>
  24. <chk/>
  25. <tclsnm/>
  26. <tclscd/>
  27. <spccd/>
  28. <setno/>
  29. <tclscddispseq/>
  30. <iudgb/>
  31. <delgb/>
  32. </testgrupdetl>
  33. <tclscdlist>
  34. <ptclscd/>
  35. <tclsnm/>
  36. <tclscd/>
  37. <spccd/>
  38. <lvl/>
  39. </tclscdlist>
  40. <iptbox>
  41. <setnm/>
  42. </iptbox>
  43. </main>
  44. <send>
  45. <codeflag/>
  46. <setkindcd>D</setkindcd>
  47. <deptsetcd/>
  48. <deptcd/>
  49. <deptnm/>
  50. <foldernm/>
  51. <testmdlcd/>
  52. <testgrupnm/>
  53. <grddata/>
  54. <gruprow/>
  55. <detlrow/>
  56. <globalinstance>
  57. <instance1/>
  58. </globalinstance>
  59. <setno/>
  60. <savedata/>
  61. <userdeptflagcd/>
  62. <searchflag/>
  63. </send>
  64. <hidden>
  65. <prmsprcpsetinfo>
  66. <prmsprcpsetlist>
  67. <status/>
  68. <levl/>
  69. <setno/>
  70. <supsetno/>
  71. <sortno/>
  72. <setkindcd/>
  73. <setclscd/>
  74. <settrgtcd/>
  75. <setnm/>
  76. <settypecd/>
  77. </prmsprcpsetlist>
  78. </prmsprcpsetinfo>
  79. <menu>
  80. <menu>
  81. <label>새폴더</label>
  82. <func>fAddPrmsDiagSet</func>
  83. </menu>
  84. <menu>
  85. <label>폴더이름 바꾸기</label>
  86. <func>fUpdtPrmsDiagSet</func>
  87. </menu>
  88. <menu>
  89. <label>폴더삭제</label>
  90. <func>fDelPrmsDiagSet</func>
  91. </menu>
  92. <menu>
  93. <label/>
  94. <func/>
  95. </menu>
  96. <!--
  97. <menu>
  98. <label>붙여넣기</label>
  99. <func>fPasteCD</func>
  100. </menu>
  101. -->
  102. </menu>
  103. <extrdt/>
  104. <testgrupnm/>
  105. <testitem/>
  106. <mdlcd>00</mdlcd>
  107. <nuflag>1</nuflag>
  108. <testgruplist>
  109. <testgrupcd/>
  110. <testgrupnm/>
  111. <etc01/>
  112. <etc02/>
  113. <etc03/>
  114. </testgruplist>
  115. <testgrupdetl>
  116. <chk/>
  117. <tclsnm/>
  118. <tclscd/>
  119. <spccd/>
  120. <setno/>
  121. <tclscddispseq/>
  122. <iudgb/>
  123. <delgb/>
  124. </testgrupdetl>
  125. <temp/>
  126. <tclscdlist>
  127. <tclscdlist/>
  128. <tclsnmlist/>
  129. <tclscdlist2/>
  130. <tclsnmlist2/>
  131. </tclscdlist>
  132. <popupmenu>
  133. <grid01>
  134. <item>
  135. <name>행 삭제</name>
  136. <func>fTestGrupDelete</func>
  137. </item>
  138. </grid01>
  139. </popupmenu>
  140. </hidden>
  141. <init>
  142. <today/>
  143. <deptlist>
  144. <deptlist/>
  145. </deptlist>
  146. </init>
  147. <temp>
  148. <trvprmsprcpsetlist/>
  149. </temp>
  150. </root>
  151. </instance>
  152. <script type="javascript" ev:event="xforms-ready">
  153. <![CDATA[
  154. group1.attribute("height") = 0;
  155. grd_testgrupdetl.fixedcellcheckbox(0,1)=true;
  156. aezfSetSuppDeptcd();
  157. model.setValue("/root/send/deptcd", model.getValue("/root/send/data/singdata/deptcd"));
  158. // 2. 중분류 리스트 조회
  159. model.setValue("/root/send/codeflag", "0102|+"); // 0102= 중분류 // 0103 검사그룹
  160. submit("TRLZZ00101");
  161. // 검사그룹 목록 초기화
  162. //grd_testgruplist.deleteRow(1);
  163. model.removeNodeset("/root/main/testgruplist");
  164. // 상세정보 목록 초기화
  165. //grd_testgrupdetl.deleteRow(1);
  166. model.removeNodeset("/root/main/testgrupdetl");
  167. model.setValue("/root/send/searchflag", "2");
  168. readfunc();
  169. // 3. 검사항목 리스트 조회
  170. fGetTclscdList("00");
  171. ]]>
  172. </script>
  173. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/LB0103"/>
  174. <submission id="TRLLF90402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/tclscdlist"/>
  175. <submission id="TRLLF90403" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testgruplist"/>
  176. <submission id="TRAER00813" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/prmsprcpsetinfo"/>
  177. <submission id="TRAER00814" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testgrupdetl"/>
  178. <submission id="TRAER00815" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/deptlist"/>
  179. <submission id="TXAER00813" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/prmsprcpsetinfo"/>
  180. <submission id="TXAER00814" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  181. <submission id="TXAER00815" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance"/>
  182. <submission id="TXMMB00603" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/prmsprcpsetinfo"/>
  183. <submission id="TXMMB00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/etcprmsprcpsetdetlinfo"/>
  184. <submission id="TRMMB00602" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/etcprmsprcpsetdetlinfo"/>
  185. </model>
  186. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  187. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  188. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  189. <script type="javascript" src="../../../ast/examcureweb/js/SMAER00803.js"/>
  190. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  191. <script type="javascript" src="../../../ast/examcureweb/js/AEZ0001.js"/>
  192. <script type="javascript">
  193. <![CDATA[
  194. var iudGbn = null;
  195. function readfunc(){
  196. var setkindcd = model.getValue("/root/send/setkindcd") ;
  197. if (setkindcd == "P" || setkindcd == "D"){
  198. cmb_deptset.disabled = true;
  199. }
  200. if (setkindcd == "D") {
  201. model.setValue("/root/send/deptsetcd", getUserInfo("dutplcecd"));
  202. model.setValue("/root/send/deptnm", getUserInfo("dutplcenm"));
  203. }
  204. submit("TRAER00813");
  205. if(setkindcd =="T" && isNull(model.getValue("/root/send/deptsetcd"))) {
  206. model.setValue("/root/send/deptsetcd", "-");
  207. }
  208. model.setValue("/root/send/foldernm", "");
  209. model.setValue(trv_prmsprcpsetlist.attribute("ref"), "");
  210. trv_prmsprcpsetlist.rebuild();
  211. }
  212. // 검사그룹 목록 조회
  213. function fGetTestGrupList(ref){
  214. submit("TRLLF90403");
  215. grd_testgruplist.row = ref;
  216. fGetTestGrupDetlList();
  217. }
  218. // 검사항목 리스트 조회
  219. function fGetTclscdList(cd){
  220. model.removeNodeset("/root/main/tclscdlist");
  221. if (isNull(cd)) {
  222. model.setValue("/root/hidden/testitem", "");
  223. model.makeValue("/root/send/searchtext", "");
  224. cd = model.getValue("/root/hidden/mdlcd");
  225. }
  226. if (cd == "00") {
  227. model.setValue("/root/hidden/mdlcd", "00");
  228. }
  229. model.setValue("/root/send/testmdlcd", cd);
  230. model.setValue("/root/send/userdeptflagcd", "1");
  231. submit("TRLLF90402");
  232. //fSetMakeTree();
  233. // 공통팀에서 만든 SetTree를 사용한다.
  234. if (model.getValue("/root/hidden/mdlcd") != "00") {
  235. model.setValue("/root/hidden/testitem", "");
  236. setTree(grd_testitemlist, 4, 1, false);
  237. } else if (isNull(model.getValue("/root/hidden/testitem")) ) {
  238. model.setValue("/root/hidden/mdlcd", "00");
  239. setTree(grd_testitemlist, 4, 1, true);
  240. } else {
  241. model.setValue("/root/hidden/mdlcd", "00");
  242. cmb_mdl.refresh();
  243. setTree(grd_testitemlist, 4, 1, false);
  244. }
  245. }
  246. // 트리구조 만들기
  247. function fSetMakeTree(){
  248. for(var i = 1; i<grd_testitemlist.rows; i++) {
  249. grd_testitemlist.IsSubtotal(i) = true; //그리드의 모든 row를 subtotal 속성을 가진 row로 변경 해주셔야 합니다..
  250. grd_testitemlist.outlinelevel(i) = grd_testitemlist.TextMatrix(i, 4); //인스턴스H_DEPTH 값임 (이넘이 그리드에서 각 로우가 트리상 어떤 Depth를 갖는지 결정하는 넘입니다..)
  251. }
  252. grd_testitemlist.OutlineCol = 1; // 트리 만들 col
  253. grd_testitemlist.OutlineBar = 4; //+ , - , 사각형 안보이게 하려면 0 으로 세팅 //4가 정상
  254. grd_testitemlist.TreeColor = "gray";
  255. }
  256. // 검사항목에서 더블클릭시 검사그룹 상세 정보 목록으로 보내기
  257. function fSetTestGrupDetl(){
  258. var detlrow = grd_testgrupdetl.rows;
  259. var sTclscd = model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/tclscd");
  260. var findrow = grd_testgrupdetl.findRow(sTclscd , 1,3 , true,true);
  261. if(findrow >0 ) {
  262. messageBox("이미 선택된 검사코드 ", "E008"); //이미 선택된 검사코드입니다.
  263. return;
  264. }
  265. if(model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/lvl") != "1"){
  266. grd_testgrupdetl.addRow();
  267. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/chk");
  268. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/tclsnm");
  269. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/tclscd");
  270. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/spccd");
  271. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/setno");
  272. model.makeNode("/root/main/testgrupdetl["+detlrow+"]/tclscddispseq");
  273. model.setValue("/root/main/testgrupdetl["+detlrow+"]/tclsnm", model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/tclsnm"));
  274. model.setValue("/root/main/testgrupdetl["+detlrow+"]/tclscd", model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/tclscd"));
  275. model.setValue("/root/main/testgrupdetl["+detlrow+"]/spccd", model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/spccd"));
  276. model.setValue("/root/main/testgrupdetl["+detlrow+"]/tclscddispseq", grd_testgrupdetl.row);
  277. model.setValue("/root/main/testgrupdetl["+detlrow+"]/setno", model.getValue("/root/send/setno"));
  278. model.setValue("/root/main/testgrupdetl["+detlrow+"]/iudgb", "I");
  279. //grd_testgrupdetl.rowStatus(detlrow) = 1;
  280. detlrow++;
  281. iudGbn = 0;
  282. }
  283. }
  284. // 검사항목에서 더블클릭시 검사그룹 상세 정보 목록으로 보내기(배터리 같은거 한꺼번에)
  285. function fSetTestGrupDetlAll(){
  286. var tclscd = model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/tclscd");
  287. var tlvl = model.getValue("/root/main/tclscdlist["+grd_testitemlist.row+"]/lvl");
  288. var detlrow = grd_testgrupdetl.rows;
  289. var itemrow = grd_testitemlist.row;
  290. var rr = itemrow;
  291. }
  292. // 검사그룹명 엔터
  293. function fKeyEvent(){
  294. if(event.keyCode == "13"){
  295. if(event.target == "ipt_testgrup"){
  296. model.setvalue("/root/hidden/testgrupnm", ipt_testgrup.currentText);
  297. var testgrup = model.getValue("/root/hidden/testgrupnm");
  298. var grupRow = grd_testgruplist.findRow(testgrup, 1,1, false, true);
  299. grd_testgruplist.rebuild();
  300. if(grupRow < 1){
  301. // 행추가 + 그룹명 set
  302. var grupRS = grd_testgruplist.rows;
  303. //grd_testgruplist.addItem(grupRS);
  304. grd_testgruplist.addRow(grupRS);
  305. model.setValue("/root/main/testgruplist["+grupRS+"]/nm", model.getValue("/root/hidden/testgrupnm"));
  306. grd_testgrupdetl.select(grupRS,1,grupRS,1) = true;
  307. //model.resetInstanceNode("/root/main/testgrupdetl");
  308. model.removeNodeset("/root/main/testgrupdetl");
  309. grd_testgrupdetl.rebuild();
  310. //grd_testgrupdetl.deleteItem(1);
  311. //grd_testgrupdetl.deleteRow(1);
  312. }else{
  313. // 검사그룹에서 조회
  314. grd_testgruplist.row = grupRow;
  315. fGetTestGrupDetlList();
  316. }
  317. ipt_testgrup.selBegin = 0;
  318. ipt_testgrup.selEnd = ipt_testgrup.currentText.length;
  319. }
  320. }
  321. }
  322. // 검사항목 검색 , 사용안함
  323. function fGetTestItemList(){
  324. var testitem = model.getValue("/root/hidden/testitem");
  325. var itemRow = grd_testitemlist.findRow(testitem, 1,1, false, false);
  326. for(i=0; i< grd_testitemlist.rows;i++){
  327. grd_testitemlist.rowStyle(i, "data", "background-color") = "#ffffff";
  328. //grd_testgruplist.rebuild();
  329. }
  330. if(itemRow > 0){
  331. grd_testitemlist.rowStyle(itemRow, "data", "background-color") = "#f3e1bf";
  332. grd_testitemlist.select(itemRow,1,itemRow,1) = true;
  333. //grd_testitemlist.isselected(itemRow) = true;
  334. }
  335. }
  336. // 검사그룹 등록, 수정
  337. function fExeTestGrup(){
  338. // 상세목록 없으면 등록 안되게
  339. if(grd_testgrupdetl.rows < 1){
  340. messageBox("검사그룹 상세 정보를", "C001");
  341. return;
  342. }
  343. var chk = "";
  344. var loopcnt = 0;
  345. for( var i = 1 ; i <= grd_testgrupdetl.rows ; i++ ) {
  346. chk = model.getValue("/root/main/testgrupdetl[" + i + "]/chk");
  347. if ( chk == "Y" ) {
  348. loopcnt++;
  349. }
  350. }
  351. if ( loopcnt == 0 ) {
  352. messageBox("저장할 [검사그룹 상세 정보 목록]을 선택해 주십시오.","I999");
  353. return;
  354. }
  355. // tclscddispseq 사용자가 지정하는 조회 순서로 변경하기 위해 수정 : 김건기 2008.10.24
  356. for (var i = 1; i < grd_testgrupdetl.rows; i++){
  357. var tclscddispseq = model.getValue("/root/main/testgrupdetl[" + i + "]/tclscddispseq");
  358. if (tclscddispseq == "") {
  359. model.setValue("/root/main/testgrupdetl[" + i + "]/tclscddispseq", i);
  360. }
  361. }
  362. /* var detldata = grd_testgrupdetl.getUpdateDataAll("i"); */
  363. //var update = getGridUpdateData(grd_testgrupdetl);
  364. var nodeList = instance1.selectNodes("/root/main/testgrupdetl[chk='Y']");
  365. var detldata = getNodeListCSV(nodeList);
  366. //alert(detldata);
  367. if ( detldata == null ) {
  368. messageBox("처방내역을 선택해 주십시오.","I999");
  369. return;
  370. }
  371. model.setValue("/root/send/grddata", detldata);
  372. //return;
  373. if(submit("TXAER00814")==true){
  374. fGetTestGrupDetlList();
  375. }
  376. }
  377. // 검사그룹 상세 정보 목록
  378. function fGetTestGrupDetlList(){
  379. //model.removeNodeset("/root/hidden/testgrupdetl");
  380. var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
  381. var rowpos = item.index + 1;
  382. model.setValue("/root/send/setno", model.getValue("/root/main/prmsprcpsetinfo/prmsprcpsetlist[" + rowpos + "]/setno"));
  383. submit("TRAER00814");
  384. //fSetdetlrowstatus();
  385. }
  386. // 검사그룹 상세정보 목록 위치 이동 , 사용안함
  387. function fSetDetlListMode(gbn){
  388. var row = grd_testgrupdetl.row;
  389. if(gbn =="1"){
  390. if(row == grd_testgrupdetl.rows-1){
  391. return;
  392. }
  393. pRow = parseInt(row) +1;
  394. model.copyNode("/root/hidden/testgrupdetl", "/root/main/testgrupdetl["+pRow+"]");
  395. model.copyNode("/root/main/testgrupdetl["+pRow+"]", "/root/main/testgrupdetl["+row+"]" );
  396. model.copyNode("/root/main/testgrupdetl["+row+"]", "/root/hidden/testgrupdetl");
  397. }else{
  398. if(row < 1 || row == 1 ){
  399. return;
  400. }
  401. mRow = parseInt(row) -1;
  402. model.copyNode("/root/hidden/testgrupdetl", "/root/main/testgrupdetl["+mRow+"]");
  403. model.copyNode("/root/main/testgrupdetl["+mRow+"]", "/root/main/testgrupdetl["+row+"]" );
  404. model.copyNode("/root/main/testgrupdetl["+row+"]", "/root/hidden/testgrupdetl");
  405. }
  406. grd_testgrupdetl.rebuild();
  407. if(gbn == 1){
  408. //grd_testgrupdetl.select(pRow,1,pRow,1) = true;
  409. grd_testgrupdetl.row= pRow;
  410. }else{
  411. grd_testgrupdetl.row= mRow;
  412. //grd_testgrupdetl.select(mRow,1,mRow,1) = true;
  413. }
  414. iudGbn = 1;
  415. //fSetdetlrowstatus();
  416. }
  417. // 행삭제
  418. function fSetdeleterow(){
  419. var gRow = grd_testgrupdetl.row;
  420. //grd_testgrupdetl.deleteItem(gRow);
  421. grd_testgrupdetl.deleteRow(gRow);
  422. iudGbn = 1;
  423. //fSetdetlrowstatus();
  424. }
  425. // 검사그룹 상세 정보 목록 row 상태 변경
  426. function fSetdetlrowstatus(){
  427. for(i=1; i<grd_testgrupdetl.rows; i++){
  428. grd_testgrupdetl.rowStatus(i) = 1;
  429. }
  430. }
  431. // 검사항목 그리드 팝업
  432. function fGridPopup(){
  433. if(event.button == 3){
  434. if(grd_testitemlist.isCell(event.target) && grd_testitemlist.mouseRow >= grd_testitemlist.fixedrows){
  435. window.setPopupMenu(true, "/root/codedata/popupmenu/grid/item", "name", "func", false);
  436. }else{
  437. window.setPopupMenu(false);
  438. }
  439. }
  440. }
  441. // 검사그룹 상세 정보 목록 메인으로 넘기기
  442. // 검사그룹 삭제 2007-07-31 누가지웠어???
  443. function fTestGrupDelete(){
  444. //messageBox("[SET코드 삭제]를 하실 수 없습니다. 담당부서에 문의 바랍니다.","I999");
  445. //return;
  446. // 상세목록 없으면 등록 안되게
  447. if(grd_testgrupdetl.rows < 1){
  448. messageBox("검사그룹 상세 정보를", "C001");
  449. return;
  450. }
  451. model.setValue("/root/main/testgrupdetl[" + grd_testgrupdetl.row + "]/chk","Y");
  452. var k = "0";
  453. for (var i = 1; i < grd_testgrupdetl.rows; i++){
  454. if (model.getValue("/root/main/testgrupdetl[" + i + "]/chk") == "Y"){
  455. }else{
  456. k = parseInt(k) + 1;
  457. model.setValue("/root/main/testgrupdetl[" + i + "]/tclscddispseq", k);
  458. }
  459. model.setValue("/root/main/testgrupdetl[" + i + "]/delgb", "Y");
  460. }
  461. var detldata = grd_testgrupdetl.getUpdateDataAll("i");
  462. //var update = getGridUpdateData(grd_testgrupdetl);
  463. model.setValue("/root/send/grddata", detldata);
  464. if(submit("TXAER00814")==true){
  465. fGetTestGrupDetlList();
  466. }
  467. }
  468. // 순서변경 하는 함수
  469. function fSetMenuGroupSeq(toSeq, type) { // 순서 변경 함수
  470. var isSeq = grd_testgrupdetl.row; //클릭한 로우
  471. var fixRow = grd_testgrupdetl.fixedRows;
  472. if(isSeq > 0){ // 클릭한 로우가 존재할 때
  473. var srcSeq = (isSeq > toSeq) ? isSeq+1 : isSeq; //클릭한 행과 이동할 행을 비교하여 클릭한 행이 클 때는
  474. grd_testgrupdetl.insertRow(toSeq, type, false); // 이동할 위치에 행을 하나 삽입한다.
  475. model.copyNode("/root/main/testgrupdetl["+grd_testgrupdetl.row+"]", "/root/main/testgrupdetl["+srcSeq+"]");
  476. grd_testgrupdetl.deleteRow(srcSeq, false);
  477. if(isSeq > toSeq) {
  478. startRow = toSeq;
  479. endRow = isSeq;
  480. grd_testgrupdetl.row = startRow; //위로 올릴때 포커스는 시작점
  481. } else {
  482. startRow = isSeq;
  483. endRow = toSeq;
  484. grd_testgrupdetl.row = endRow; //밑으로 내릴 때 포커스는 끝나는점
  485. }
  486. model.refresh();
  487. }else{
  488. messageBox("변경할 메뉴그룹을","C002");
  489. }
  490. }
  491. function fOrdPatWaitSeqChng() { //대기환자 순서 변경 함수
  492. var idxRows=grd_ordschelistinfo.rows;
  493. var idxFixRows=grd_ordschelistinfo.fixedRows;
  494. var idxRow=grd_ordschelistinfo.row; //클릭한 행 반환
  495. var upRow=idxRow-1; //클릭한 행 윗 행
  496. var downRow=idxRow+1; //클릭한 행 아래 행
  497. if(isNull(upordrsrvtm)) {
  498. upordrsrvtm = downordrsrvtm -1;
  499. }
  500. if (isNull(upordrsrvseqno) || upordrsrvseqno == "1.#Q") {
  501. upordrsrvseqno = "0000";
  502. }
  503. if (isNull(downordrsrvseqno) || downordrsrvseqno == "1.#Q") {
  504. downordrsrvseqno = "0000";
  505. }
  506. //alert(upordrsrvseqno+".."+upordrsrvseqno+".."+downordrsrvseqno);
  507. // ordrsrvtm이 위 아래 같으면 down+up/2, 다르면 up+10000/2
  508. if(upordrsrvseqno=='0000'&& downordrsrvseqno=='0000')
  509. {
  510. model.makeValue("/root/send/savedata/ordrsrvseqno",'5000');
  511. //alert('5000');
  512. }
  513. else if(upordrsrvseqno>downordrsrvseqno) {
  514. var midseqno=(parseInt(10000)+parseInt(upordrsrvseqno))/2;
  515. //var subordrsrvseqno=round(midseqno);
  516. var subordrsrvseqno=Math.round(midseqno);
  517. //alert(subordrsrvseqno);
  518. model.makeValue("/root/send/savedata/ordrsrvseqno",subordrsrvseqno);
  519. //alert("1:"+upordrsrvseqno+".."+parseInt(upordrsrvseqno)+".."+(parseInt(10000)+parseInt(upordrsrvseqno))+".."+(parseInt(10000)+parseInt(upordrsrvseqno))/2);
  520. }
  521. else if(upordrsrvseqno<downordrsrvseqno) {
  522. var midseqno2=(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))/2;
  523. //var subordrsrvseqno=round(midseqno2,0);
  524. var subordrsrvseqno=Math.round(midseqno2);
  525. //alert(subordrsrvseqno);
  526. model.makeValue("/root/send/savedata/ordrsrvseqno",subordrsrvseqno);
  527. //alert(upordrsrvseqno+downordrsrvseqno);
  528. //alert("2:"+(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))+".."+(parseInt(upordrsrvseqno)+parseInt(downordrsrvseqno))/2);
  529. } else if (upordrsrvseqno ==downordrsrvseqno) {
  530. model.makeValue("/root/send/savedata/ordrsrvseqno",'5000');
  531. }
  532. var pid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/pid");
  533. var orddd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddd");
  534. var cretno=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/cretno");
  535. var orddrid=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddrid");
  536. var orddeptcd=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/orddeptcd");
  537. var patstat=model.getValue("/root/main/ordschelist/ordschelistinfo"+"["+idxRow+"]/patstat");
  538. // alert(idxRow+"idxrow"+pid+"pid"+orddd+"orddd"+cretno+"cretno"+orddrid+"orddrid"+orddeptcd+"orddeptcd"+patstat+"patstat");
  539. model.makeValue("/root/send/savedata/ordrsrvtm",upordrsrvtm);
  540. model.makeValue("/root/send/savedata/pid",pid);
  541. model.makeValue("/root/send/savedata/orddd",orddd);
  542. model.makeValue("/root/send/savedata/cretno",cretno);
  543. model.makeValue("/root/send/savedata/orddrid",orddrid);
  544. model.makeValue("/root/send/savedata/orddeptcd",orddeptcd);
  545. model.makeValue("/root/send/savedata/patstat","D"); //환자 대기 상태로 셋팅
  546. model.makeValue("/root/send/savedata/dspflag","O"); //진료구분 (O - 외래, T-검사)';
  547. if(submit("TXMNV07003")==true)
  548. {
  549. //messageBox("순서변경이","I002");
  550. fOrdScheList();
  551. model.removeNodeset("/root/chkvalue/chk"); //체크값 리셋
  552. }
  553. model.refresh();
  554. }
  555. ]]>
  556. </script>
  557. </xhtml:head>
  558. <xhtml:body visibility="visible" pagewidth="850px" pageheight="755px" guideline="1,230;1,1193;2,751;" style="border-color:#c7a3cf; margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  559. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:106px; height:14px; ">SET수정/등록</caption>
  560. <treeview id="trv_prmsprcpsetlist" ref="/root/temp/trvprmsprcpsetlist" dragmode="true" dropmode="true" expanddepth="5" fullrowselect="false" itemsettype="depth" style="left:0px; top:148px; width:230px; height:582px; border-color:#c7a3cf; border-style:solid; ">
  561. <itemset nodeset="/root/main/prmsprcpsetinfo/prmsprcpsetlist">
  562. <label ref="setnm"/>
  563. <value ref="setno"/>
  564. <depth ref="levl"/>
  565. </itemset>
  566. <script type="javascript" ev:event="onmousedown">
  567. <![CDATA[
  568. var setkindcd = model.getValue("/root/send/setkindcd")
  569. if (setkindcd != "T") {
  570. setPopupMenu("trv_prmsprcpsetlist", false , "/root/hidden/menu/menu", "label", "func");
  571. }
  572. //alert('check->'+check);
  573. //rdo_setflag.dispatch("onclick");
  574. //fMouseRghtBtnPopup();
  575. ]]>
  576. </script>
  577. <script type="javascript" ev:event="ondragstart">
  578. <![CDATA[
  579. fPrmsDiagSetDrag();
  580. ]]>
  581. </script>
  582. <script type="javascript" ev:event="ondrop">
  583. <![CDATA[
  584. fOndrop();
  585. ]]>
  586. </script>
  587. <script type="javascript" ev:event="ondragover">
  588. <![CDATA[
  589. fOnDragMouseOver();
  590. ]]>
  591. </script>
  592. <script type="javascript" ev:event="xforms-select">
  593. <![CDATA[
  594. fGetTestGrupDetlList();
  595. ]]>
  596. </script>
  597. <script type="javascript" ev:event="ondblclick">
  598. <![CDATA[
  599. fGetTestGrupDetlList();
  600. ]]>
  601. </script>
  602. </treeview>
  603. <switch id="switch1" style="left:0px; top:45px; width:230px; height:101px; border-color:#c7a3cf; ">
  604. <case id="protocol">
  605. <shape id="roundrect4" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:4px; top:5px; width:222px; height:90px; background-color:#fffbf2; border-color:#ffd799; "/>
  606. <caption id="caption5" class="search_name" style="left:15px; top:19px; width:156px; height:17px; ">약속프로토콜 SET명 :</caption>
  607. <button id="button2" class="btn2_letter2" style="left:169px; top:70px; width:42px; height:19px; ">
  608. <caption>검색</caption>
  609. <script type="javascript" ev:event="DOMActivate">
  610. <![CDATA[
  611. fSrchDiagSetNM();
  612. ]]>
  613. </script>
  614. </button>
  615. <input id="ipt_protofoldnm" ref="/root/main/cond/foldernm" style="left:15px; top:45px; width:197px; height:19px; ">
  616. <script type="javascript" ev:event="onkeypress">
  617. <![CDATA[
  618. inputEnterKey("btn_srchprcp", "DOMActivate");
  619. ]]>
  620. </script>
  621. </input>
  622. </case>
  623. <case id="prmscomn" selected="true">
  624. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:5px; top:5px; width:221px; height:90px; background-color:#fffbf2; border-color:#ffd799; "/>
  625. <caption id="caption1" class="search_name" style="left:10px; top:66px; width:86px; height:17px; ">폴더명 :</caption>
  626. <select1 id="cmb_deptset" ref="/root/send/deptsetcd" disabled="true" appearance="minimal" style="left:21px; top:39px; width:164px; height:19px; ">
  627. <choices>
  628. <itemset nodeset="/root/init/deptlist/deptlist">
  629. <label ref="deptnm"/>
  630. <value ref="deptcd"/>
  631. </itemset>
  632. </choices>
  633. <script type="javascript" ev:event="xforms-value-changed">
  634. <![CDATA[
  635. //fSelectDeptCmb();
  636. //model.setValue("/root/send/deptnm", cmb_deptset.label);
  637. //readfunc();
  638. var index = cmb_deptset.focusIndex+1;
  639. model.setValue("/root/send/deptsetcd", model.getValue("/root/init/deptlist/deptlist["+index+"]/deptcd"));
  640. model.setValue("/root/send/deptnm", model.getValue("/root/init/deptlist/deptlist["+index+"]/deptnm"));
  641. //model.refresh();
  642. //alert(model.getValue("/root/send/deptsetcd"));
  643. //alert(model.getValue("/root/send/deptnm"));
  644. if (model.getValue("/root/send/deptsetcd") == "-") {
  645. model.setValue("/root/send/deptsetcd", "-");
  646. model.setValue("/root/send/deptnm", "");
  647. }
  648. readfunc();
  649. // model.setValue("/root/send/deptsetcd", "");
  650. // model.setValue("/root/send/deptnm", "");
  651. model.refresh();
  652. ]]>
  653. </script>
  654. </select1>
  655. <input id="ipt_foldnm" ref="/root/send/foldernm" style="left:85px; top:65px; width:85px; height:19px; ">
  656. <script type="javascript" ev:event="onkeypress">
  657. <![CDATA[
  658. inputEnterKey("btn_srch", "DOMActivate");
  659. ]]>
  660. </script>
  661. </input>
  662. <select1 id="rdo_setflag" ref="/root/send/setkindcd" appearance="full" cellspacing="15" cols="3" rows="1" overflow="visible" style="left:21px; top:13px; width:179px; height:20px; border-style:none; ">
  663. <choices>
  664. <item>
  665. <label>개인</label>
  666. <value>P</value>
  667. </item>
  668. <item>
  669. <label>과</label>
  670. <value>D</value>
  671. </item>
  672. <item>
  673. <label>타과</label>
  674. <value>T</value>
  675. </item>
  676. </choices>
  677. <script type="javascript" ev:event="onclick">
  678. <![CDATA[
  679. if (model.getValue("/root/send/setkindcd") == "P" || model.getValue("/root/send/setkindcd") == "D"){
  680. submit("TRAER00815");
  681. readfunc();
  682. cmb_deptset.disabled = true;
  683. btn_insert.disabled = false;
  684. btn_del.disabled = false;
  685. grd_testitemlist.disabled = false;
  686. button12.disabled = false;
  687. btn_to_up.disabled = false;
  688. btn_to_enddown.disabled = false;
  689. btn_to_topup.disabled = false;
  690. btn_to_down.disabled = false;
  691. }else{
  692. submit("TRAER00815");
  693. cmb_deptset.disabled = false;
  694. btn_insert.disabled = true;
  695. btn_del.disabled = true;
  696. grd_testitemlist.disabled = true;
  697. button12.disabled = true;
  698. btn_to_up.disabled = true;
  699. btn_to_enddown.disabled = true;
  700. btn_to_topup.disabled = true;
  701. btn_to_down.disabled = true;
  702. readfunc();
  703. model.setValue("/root/send/deptsetcd", "-");
  704. }
  705. model.refresh();
  706. ]]>
  707. </script>
  708. </select1>
  709. <caption id="caption2" visibility="hidden" style="left:36px; top:12px; width:43px; height:20px; font-weight:bold; color:#ff0000; ">개인</caption>
  710. <caption id="caption3" visibility="hidden" style="left:96px; top:12px; width:29px; height:20px; font-weight:bold; color:#ff0000; ">과</caption>
  711. <caption id="caption7" visibility="hidden" style="left:142px; top:12px; width:43px; height:20px; font-weight:bold; color:#ff0000; border-color:transparent; ">타과</caption>
  712. <button id="btn_srch" class="btn2_letter2" style="left:174px; top:65px; width:42px; height:19px; ">
  713. <caption>검색</caption>
  714. <script type="javascript" ev:event="DOMActivate">
  715. <![CDATA[
  716. fSrchFolderNM();
  717. ]]>
  718. </script>
  719. </button>
  720. </case>
  721. </switch>
  722. <group id="group1" style="left:6px; top:195px; width:218px; height:55px; background-color:#99ccff; border-color:#3366ff; border-style:solid; ">
  723. <caption id="caption4" style="left:5px; top:5px; width:41px; height:20px; font-weight:bold; vertical-align:middle; ">폴더명</caption>
  724. <input id="ipt_setnm" ref="/root/main/iptbox/setnm" class="input_default" style="left:55px; top:5px; width:154px; height:19px; border-color:#3366ff; border-style:solid; ">
  725. <script type="javascript" ev:event="onkeypress">
  726. <![CDATA[
  727. inputEnterKey("btn_cnfm", "DOMActivate");
  728. var keycode = event.keyCode;
  729. if(keycode == 27){
  730. group1.attribute("height") = 0;
  731. model.setFocus("trv_etcprmsprcpsetlist");
  732. return;
  733. }
  734. ]]>
  735. </script>
  736. </input>
  737. <button id="btn_cnfm" class="btn2_letter2" style="left:122px; top:26px; width:42px; height:19px; ">
  738. <caption>확인</caption>
  739. <script type="javascript" ev:event="DOMActivate">
  740. <![CDATA[
  741. group1.attribute("height") = 0;
  742. model.setFocus("trv_etcprmsprcpsetlist");
  743. model.refresh();
  744. fSavePrmsDiagSet();
  745. ]]>
  746. </script>
  747. </button>
  748. <button id="button3" class="btn2_letter2" style="left:166px; top:26px; width:42px; height:19px; ">
  749. <caption>취소</caption>
  750. <script type="javascript" ev:event="DOMActivate">
  751. <![CDATA[
  752. group1.attribute("height") = 0;
  753. ]]>
  754. </script>
  755. </button>
  756. </group>
  757. <caption id="caption22" class="tit_2" style="left:3px; top:30px; width:82px; height:13px; ">폴더관리</caption>
  758. <button id="btn_down" class="icon_bottom" visibility="hidden" style="left:288px; top:171px; width:26px; height:19px; ">
  759. <caption/>
  760. <script type="javascript" ev:event="DOMActivate">
  761. <![CDATA[
  762. fSetDetlListMode("1");
  763. ]]>
  764. </script>
  765. </button>
  766. <line id="line9" class="line_1" style="x1:556px; y1:115px; x2:826px; y2:115px; "/>
  767. <datagrid id="grd_testitemlist" nodeset="/root/main/tclscdlist" caption="검사명^kind^tclscd^lvl^ptclscd^spccd" colsep="^" colwidth="235, 0, 0, 0, 0, 0" dataheight="23" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="select" rowheight="23" rowsep="|" tooltip="true" style="left:556px; top:120px; width:270px; height:610px; ">
  768. <col ref="tclsnm"/>
  769. <col ref="tclskind"/>
  770. <col ref="tclscd"/>
  771. <col ref="lvl"/>
  772. <col ref="ptclscd"/>
  773. <col ref="spccd"/>
  774. <script type="javascript" ev:event="ondblclick">
  775. <![CDATA[
  776. if ( grd_testitemlist.isCell(event.target) && grd_testitemlist.row >= grd_testitemlist.fixedRows ) {
  777. // 검사항목 목록 더블클릭시
  778. if (trv_prmsprcpsetlist.selectedIndex < 1){
  779. messageBox("작성할 폴더를 선택한 후 작업하시기 바랍니다.", "E999", "");
  780. return;
  781. }
  782. fSetTestGrupDetl();
  783. }
  784. ]]>
  785. </script>
  786. <script type="javascript" ev:event="onmousedown">
  787. <![CDATA[
  788. // 검사항목 그리드에서 팝메뉴 보이게
  789. fGridPopup();
  790. ]]>
  791. </script>
  792. <script type="javascript" ev:event="DOMFocusOut">
  793. <![CDATA[
  794. // 검사항목 그리드 아니면 팝메뉴 안보이게
  795. window.setPopupMenu(false);
  796. ]]>
  797. </script>
  798. </datagrid>
  799. <datagrid id="grd_testgrupdetl" nodeset="/root/main/testgrupdetl" caption="^검사명^검사코드^검체코드^setno^조회순서^iudgb^delgb" colsep="^" colwidth="30, 150, 105, 36, 23, 19, 28, 25" dataheight="23" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="100" rowsep="|" style="left:238px; top:70px; width:310px; height:660px; ">
  800. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  801. <col ref="tclsnm" type="input"/>
  802. <col ref="tclscd"/>
  803. <col ref="spccd"/>
  804. <col ref="setno" visibility="hidden"/>
  805. <col ref="tclscddispseq" type="input"/>
  806. <col ref="iudgb" visibility="hidden"/>
  807. <col ref="delgb" visibility="hidden"/>
  808. <script type="javascript" ev:event="onmousedown">
  809. <![CDATA[
  810. var setkindcd = model.getValue("/root/send/setkindcd")
  811. if (setkindcd != "T") {
  812. setPopupMenu("grd_testgrupdetl", false, "/root/hidden/popupmenu/grid01/item", "name", "func");
  813. }
  814. ]]>
  815. </script>
  816. <script type="javascript" ev:event="DOMFocusOut">
  817. <![CDATA[
  818. initPopupMenu();
  819. ]]>
  820. </script>
  821. </datagrid>
  822. <caption id="caption10" class="tit_2" style="left:561px; top:99px; width:151px; height:13px; ">검사항목 목록</caption>
  823. <caption id="caption8" class="cell_1" visibility="hidden" style="left:5px; top:170px; width:100px; height:23px; ">그룹상세</caption>
  824. <caption id="caption9" class="cell_1" style="left:556px; top:72px; width:85px; height:23px; ">검사분류선택</caption>
  825. <caption id="caption11" class="tit_2" visibility="hidden" style="left:10px; top:150px; width:131px; height:13px; ">검사결과 SET 수정</caption>
  826. <caption id="caption12" class="tit_2" style="left:556px; top:30px; width:151px; height:13px; ">검사항목 조회</caption>
  827. <caption id="caption13" class="cell_1" visibility="hidden" style="left:610px; top:5px; width:100px; height:23px; ">검색</caption>
  828. <select1 id="cmb_mdl" ref="/root/hidden/mdlcd" class="combo_essential" appearance="minimal" itemcount="20" style="left:646px; top:73px; width:180px; height:19px; ">
  829. <choices>
  830. <itemset nodeset="/root/init/LB0102">
  831. <label ref="nm"/>
  832. <value ref="cd"/>
  833. </itemset>
  834. </choices>
  835. <script type="javascript" ev:event="xforms-select">
  836. <![CDATA[
  837. fGetTclscdList();
  838. ]]>
  839. </script>
  840. </select1>
  841. <line id="line3" class="line_1" visibility="hidden" style="x1:5px; y1:165px; x2:315px; y2:165px; "/>
  842. <line id="line4" class="line_1" style="x1:238px; y1:45px; x2:548px; y2:45px; "/>
  843. <button id="btn_ref" class="icon_search" style="left:810px; top:50px; width:16px; height:16px; ">
  844. <caption/>
  845. <script type="javascript" ev:event="DOMActivate">
  846. <![CDATA[
  847. // 검사항목 검색
  848. var searchflag = model.getValue("/root/send/searchflag");
  849. model.makeValue("/root/send/searchtext", model.getValue("/root/hidden/testitem"));
  850. if (isNull(searchflag)) {
  851. messageBox("코드나 검사명은 필수 선택입니다.", "I");
  852. return;
  853. }
  854. fGetTclscdList("00");
  855. ]]>
  856. </script>
  857. </button>
  858. <input id="ipt_tclscd" ref="/root/hidden/testitem" class="input_default" style="left:655px; top:50px; width:150px; height:19px; ">
  859. <script type="javascript" ev:event="onkeyup">
  860. <![CDATA[
  861. // 검사항목 검색
  862. inputEnterKey("btn_ref", "DOMActivate");
  863. ]]>
  864. </script>
  865. </input>
  866. <caption id="caption14" class="tit_2" style="left:243px; top:30px; width:162px; height:13px; ">검사그룹 상세 정보 목록</caption>
  867. <line id="line5" class="line_3" visibility="hidden" style="x1:5px; y1:192px; x2:315px; y2:192px; "/>
  868. <button id="btn_up" class="icon_top" visibility="hidden" style="left:259px; top:171px; width:26px; height:19px; ">
  869. <caption/>
  870. <script type="javascript" ev:event="DOMActivate">
  871. <![CDATA[
  872. fSetDetlListMode("2");
  873. ]]>
  874. </script>
  875. </button>
  876. <line id="line6" class="line_1" style="x1:556px; y1:45px; x2:826px; y2:45px; "/>
  877. <line id="line7" class="line_3" style="x1:556px; y1:96px; x2:826px; y2:96px; "/>
  878. <iviewer id="iviewer1" visibility="hidden" style="left:105px; top:20px; width:65px; height:19px; border-color:transparent; border-style:solid; "/>
  879. <button id="btn_del" class="btn4_letter2" visibility="hidden" style="left:491px; top:20px; width:56px; height:22px; ">
  880. <caption>삭제</caption>
  881. <script type="javascript" ev:event="DOMActivate">
  882. <![CDATA[
  883. fTestGrupDelete();
  884. ]]>
  885. </script>
  886. </button>
  887. <button id="btn_reset" class="btn4_letter2" style="left:770px; top:20px; width:56px; height:22px; ">
  888. <caption>닫기</caption>
  889. <script type="javascript" ev:event="DOMActivate">
  890. <![CDATA[
  891. var setkind = opener.javascript.getParameter("SPAER00803_setkind");
  892. if (setkind != "400" ) {
  893. opener.btn_case3.selected = true;
  894. opener.grp_makedset.visible = false; // SET전체항목조회 비활성화
  895. opener.datagrid2.visible = true;
  896. opener.grd_subresultdetail1.visible = false;
  897. opener.javascript.readfunc();
  898. window.close();
  899. } else {
  900. window.close();
  901. }
  902. ]]>
  903. </script>
  904. </button>
  905. <button id="btn_insert" class="btn4_letter2" style="left:489px; top:20px; width:56px; height:22px; ">
  906. <caption>저장</caption>
  907. <script type="javascript" ev:event="DOMActivate">
  908. <![CDATA[
  909. // 검사그룹 등록, 수정
  910. fExeTestGrup();
  911. ]]>
  912. </script>
  913. </button>
  914. <select1 id="radio1" ref="/root/hidden/nuflag" appearance="full" cellspacing="20" cols="2" overflow="visible" style="left:720px; top:99px; width:104px; height:15px; border-style:none; ">
  915. <choices>
  916. <item>
  917. <label>nU</label>
  918. <value>1</value>
  919. </item>
  920. <item>
  921. <label>OCS</label>
  922. <value>2</value>
  923. </item>
  924. </choices>
  925. <script type="javascript" ev:event="xforms-value-changed">
  926. <![CDATA[
  927. var mdlcd = model.getValue("/root/hidden/mdlcd");
  928. if (mdlcd != "") {
  929. fGetTclscdList();
  930. }
  931. ]]>
  932. </script>
  933. </select1>
  934. <button id="btn_to_topup" class="icon_top" style="left:360px; top:50px; width:26px; height:19px; ">
  935. <caption/>
  936. <script type="javascript" ev:event="DOMActivate">
  937. <![CDATA[
  938. if(grd_testgrupdetl.row<=0) {
  939. messageBox("검사명을 선택","I008");
  940. return;
  941. }
  942. if ( grd_testgrupdetl.row == "1") {
  943. messageBox("최상위 검사입니다.", "I");
  944. return;
  945. } else {
  946. fSetMenuGroupSeq("1", "above");
  947. }
  948. ]]>
  949. </script>
  950. <hint>
  951. <![CDATA[맨위로]]>
  952. </hint>
  953. </button>
  954. <button id="btn_to_enddown" class="icon_bottom" style="left:450px; top:50px; width:26px; height:19px; ">
  955. <caption/>
  956. <script type="javascript" ev:event="DOMActivate">
  957. <![CDATA[
  958. if(grd_testgrupdetl.row<=0) {
  959. messageBox("검사를 선택","I008");
  960. return;
  961. }
  962. if( grd_testgrupdetl.rows-grd_testgrupdetl.fixedRows > grd_testgrupdetl.row ) {
  963. fSetMenuGroupSeq(grd_testgrupdetl.rows-grd_testgrupdetl.fixedRows, "below");
  964. }
  965. else {
  966. messageBox("최하위 메뉴그룹이","E005");
  967. }
  968. ]]>
  969. </script>
  970. <hint>
  971. <![CDATA[맨아래로]]>
  972. </hint>
  973. </button>
  974. <button id="btn_to_up" class="icon_top_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:390px; top:50px; width:26px; height:19px; ">
  975. <caption/>
  976. <script type="javascript" ev:event="DOMActivate">
  977. <![CDATA[
  978. if(grd_testgrupdetl.row<=0) {
  979. messageBox("검사를 선택","I008");
  980. return;
  981. }
  982. if (grd_testgrupdetl.row <= 1 ) {
  983. messageBox("최상위입니다.","I");
  984. } else {
  985. fSetMenuGroupSeq(grd_testgrupdetl.row-1, "above");
  986. }
  987. ]]>
  988. </script>
  989. <hint>
  990. <![CDATA[위로]]>
  991. </hint>
  992. </button>
  993. <button id="btn_to_down" class="icon_bottom_direction" disable.background-image="../../../com/commonweb/images/dis_btn2_letter3.gif" style="left:420px; top:50px; width:26px; height:19px; ">
  994. <caption/>
  995. <script type="javascript" ev:event="DOMActivate">
  996. <![CDATA[
  997. if(grd_testgrupdetl.row<=0) {
  998. messageBox("검사를 선택","I008");
  999. return;
  1000. }
  1001. if( grd_testgrupdetl.rows-grd_testgrupdetl.fixedRows > grd_testgrupdetl.row ) {
  1002. fSetMenuGroupSeq(grd_testgrupdetl.row+1, "below");
  1003. }
  1004. else {
  1005. messageBox("최하위 메뉴그룹이","E005");
  1006. }
  1007. ]]>
  1008. </script>
  1009. <hint>
  1010. <![CDATA[아래로]]>
  1011. </hint>
  1012. </button>
  1013. <button id="button12" class="btn2_letter4" style="left:480px; top:50px; width:64px; height:19px; ">
  1014. <caption>순서저장</caption>
  1015. <script type="javascript" ev:event="DOMActivate">
  1016. <![CDATA[
  1017. var i = 0;
  1018. for (i =1; i < grd_testgrupdetl.rows; i++ ) {
  1019. model.setValue("/root/main/testgrupdetl[" + i + "]/tclscddispseq", i);
  1020. model.setValue("/root/main/testgrupdetl[" + i + "]/chk", "Y");
  1021. grd_testgrupdetl.rowStatus(i) = 2;
  1022. }
  1023. model.refresh();
  1024. fExeTestGrup();
  1025. ]]>
  1026. </script>
  1027. </button>
  1028. <line id="line1" class="line_3" style="x1:555px; y1:70px; x2:825px; y2:70px; "/>
  1029. <select1 id="radio2" ref="/root/send/searchflag" appearance="full" cols="2" overflow="visible" style="left:555px; top:50px; width:105px; height:20px; border-style:none; ">
  1030. <choices>
  1031. <item>
  1032. <label>코드</label>
  1033. <value>1</value>
  1034. </item>
  1035. <item>
  1036. <label>검사명</label>
  1037. <value>2</value>
  1038. </item>
  1039. </choices>
  1040. </select1>
  1041. <caption id="caption15" style="left:5px; top:730px; width:410px; height:20px; font-weight:bold; ">*코드 및 검사명 검사항목 조회는 대문자로만 검색이 가능합니다.</caption>
  1042. </xhtml:body>
  1043. </xhtml:html>