SMMNR03500.js 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625
  1. /*
  2. 간호기록항목SET관리(SMMNR03400_간호기록항목SET관리.xfm - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. var sITEMSETLIST_HIDDEN = "/root/hidden/itemsetinfo/itemsetlist";
  7. var sITEMSETLIST = "/root/main/itemsetinfo/itemsetlist";
  8. var sITEMTLIST_HIDDEN = "/root/hidden/iteminfo/itemlist";
  9. var sCONDITEMTLIST = "/root/main/cond/item";
  10. var xItemSrchPath = "/root/main/itemsrch/itemlist";
  11. var sSET = "/root/main/set";
  12. var sITEMSETDTLINFO = "/root/main/itemdtlinfo";
  13. var sITEMSETDTLLIST = "/root/main/itemdtlinfo/itemdtllist";
  14. var sITEMSETDTLLIST_HIDDEN = "/root/hidden/itemdtlinfo/itemdtllist";
  15. var sIPTBOX = "/root/main/iptbox";
  16. /**
  17. * @group :
  18. * @ver : 2007.05.21
  19. * @by : 최경용
  20. * @---------------------------------------------------
  21. * @type : function
  22. * @access : public
  23. * @desc : 화면 초기화
  24. * @param :
  25. * @return :
  26. * @---------------------------------------------------
  27. */
  28. function fInitialize(){
  29. model.makeValue("/root/send/reqdata/flag","combo");
  30. submit("TRMNR03504"); // 분류명 조회
  31. model.setValue("/root/main/cond/item/clscd","%");
  32. //item 조회
  33. fGetItemList();
  34. //Item SET 조회
  35. fGetItemSetList();
  36. model.removenode(sITEMSETDTLLIST);
  37. model.refresh();
  38. }
  39. /**
  40. * @group :
  41. * @ver : 2007.05.21
  42. * @by : 최경용
  43. * @---------------------------------------------------
  44. * @type : function
  45. * @access : public
  46. * @desc : 약속항목 SET상세항목으로 이동
  47. * @param :
  48. * @return :
  49. * @---------------------------------------------------
  50. */
  51. function fSendItemInfo(){
  52. // var setno = model.getValue(sSET + "/setno");
  53. // var setnm = model.getValue(sSET + "/setnm");
  54. // var sItemLevl = 0;
  55. // var itemdtlrow = 0;
  56. // var sItemcd = "";
  57. // var supcd = "";
  58. // var sChkYN = false; // 항목 체크 여부
  59. // var sInsYN = false; // 실제 신규항목 존재여부
  60. // if(setnm == ""){
  61. // messageBox("SET종류를 먼저","C002");
  62. // return;
  63. // }
  64. // for(var itemrow=grd_srchitem.fixedrows;itemrow<=grd_srchitem.rows-grd_srchitem.fixedrows;itemrow++){
  65. // if(model.getValue(xItemSrchPath+"["+itemrow+"]/check") == "true"){
  66. // sChkYN = true;
  67. // sItemLevl = eval(model.getValue(xItemSrchPath+"["+itemrow+"]/depth"));
  68. // sItemcd = model.getValue(xItemSrchPath+"["+itemrow+"]/itemcd");
  69. // supcd = model.getValue(xItemSrchPath+"["+itemrow+"]/supcd");
  70. // if(sItemLevl == 1) continue;
  71. // if(grd_srchdtlitem.rows > 1 && model.getValue(sITEMSETDTLLIST+"[itemcd='"+sItemcd+"']/itemcd") != "") continue;
  72. // grd_srchdtlitem.addRow(false);
  73. // itemdtlrow = grd_srchdtlitem.rows-grd_srchdtlitem.fixedrows;
  74. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/status","I");
  75. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/setno",setno);
  76. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/instcd", model.getValue(sSET + "/instcd"));
  77. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/itemcd",sItemcd);
  78. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/itemnm",model.getValue(xItemSrchPath+"["+itemrow+"]/itemnm"));
  79. // model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/supcd",supcd);
  80. // sInsYN = true;
  81. // }
  82. // }
  83. // if(!sChkYN){
  84. // messageBox("등록할 항목을 먼저","C002");
  85. // return;
  86. // }
  87. // if(sChkYN == true && sInsYN == false){
  88. // messageBox("이미 항목 등록이","I002");
  89. // return;
  90. // }
  91. var sChkYN = false; // 항목 체크 여부
  92. for(var itemrow=grd_srchdtlitem.fixedrows ; itemrow <= grd_srchdtlitem.rows-grd_srchdtlitem.fixedrows ; itemrow++){
  93. if(grd_srchdtlitem.valueMatrix(itemrow, 2) != "-"){
  94. sChkYN = true;
  95. }
  96. }
  97. if(!sChkYN){
  98. messageBox("저장할 내역이","I004");
  99. return;
  100. }
  101. model.makeValue("/root/send/griddata", getGridUpdateData(grd_srchdtlitem));
  102. //model.refresh();
  103. if(submit("TXMNR03502")){
  104. grd_srchdtlitem.mergecells = "bycol";
  105. grd_srchdtlitem.mergecol(2) = false;
  106. grd_srchdtlitem.mergecol(3) = false;
  107. grd_srchdtlitem.mergecol(4) = false;
  108. // for(var itemrow=grd_srchitem.fixedrows;itemrow<=grd_srchitem.rows-grd_srchitem.fixedrows;itemrow++){
  109. // if(model.getValue(xItemSrchPath+"["+itemrow+"]/check") == "true"){
  110. // model.setValue(xItemSrchPath+"["+itemrow+"]/check","");
  111. // }
  112. // }
  113. grd_srchitem.rebuild();
  114. setTree(grd_srchitem,13,3,false);
  115. if(model.getValue(sSET + "/trgtflag") == "B" && model.getValue(sSET + "/setno") == "0" && grd_srchdtlitem.rows > 0 ){
  116. model.setValue("/root/main/itemsetinfo/itemsetlist["+eval(trv_itemsetlist.focusIndex+1)+"]/setno", grd_srchdtlitem.valueMatrix(1, grd_srchdtlitem.colRef("setno")));
  117. model.setValue(sSET + "/setno", grd_srchdtlitem.valueMatrix(1, grd_srchdtlitem.colRef("setno")));
  118. }
  119. }
  120. }
  121. /**
  122. * @group :
  123. * @ver : 2007.05.23
  124. * @by : 최경용
  125. * @---------------------------------------------------
  126. * @type : function
  127. * @access : public
  128. * @desc : Item 조회
  129. * @param :
  130. * @return :
  131. * @---------------------------------------------------
  132. */
  133. function fGetItemList(){
  134. model.removeNode("/root/send");
  135. model.makeValue("/root/send/recflag", model.getValue(sCONDITEMTLIST + "/recflag"));
  136. model.makeValue("/root/send/itemnm", model.getValue(sCONDITEMTLIST + "/itemnm"));
  137. model.makeValue("/root/send/clscd", model.getValue(sCONDITEMTLIST + "/clscd"));
  138. model.makeValue("/root/send/srchflag", model.getValue(sCONDITEMTLIST + "/srchflag"));
  139. if(submit("TRMNR03503")){
  140. setTree(grd_srchitem,14,3,false);
  141. }
  142. }
  143. /**
  144. * @group :
  145. * @ver : 2007.05.23
  146. * @by : 최경용
  147. * @---------------------------------------------------
  148. * @type : function
  149. * @access : public
  150. * @desc : Item Set 조회
  151. * @param :
  152. * @return :
  153. * @---------------------------------------------------
  154. */
  155. function fGetItemSetList() {
  156. model.makeValue("/root/send/savedata/trgtflag","S");
  157. submit("TRMNR03501");
  158. }
  159. /**
  160. * @group :
  161. * @ver : 2007.05.21
  162. * @by : 최경용
  163. * @---------------------------------------------------
  164. * @type : function
  165. * @access : public
  166. * @desc : 약속SET상세 조회
  167. * @param :
  168. * @return :
  169. * @---------------------------------------------------
  170. */
  171. function fReqItemSetDet(){
  172. var item = trv_itemsetlist.item(trv_itemsetlist.selectedIndex);
  173. var rowPos = item.index + 1;
  174. var setno = model.getValue(sITEMSETLIST + "[" + rowPos + "]/setno");
  175. var setnm = model.getValue(sITEMSETLIST + "[" + rowPos + "]/setnm");
  176. var instcd = model.getValue(sITEMSETLIST + "[" + rowPos + "]/instcd");
  177. var levl = model.getValue(sITEMSETLIST + "[" + rowPos + "]/levl");
  178. var orddeptcd = model.getValue(sITEMSETLIST + "[" + rowPos + "]/orddeptcd");
  179. var trgtflag = model.getValue(sITEMSETLIST + "[" + rowPos + "]/trgtflag");
  180. ipt_setnm.disabled = true;
  181. btn_saveitem.Disabled = true;
  182. if(levl != "1") {
  183. model.setValue(sIPTBOX + "/setnm", setnm);
  184. model.setValue(sSET + "/setno", setno);
  185. model.setValue(sSET + "/setnm", setnm);
  186. model.setValue(sSET + "/instcd", instcd);
  187. model.setValue(sSET + "/orddeptcd", orddeptcd);
  188. model.setValue(sSET + "/trgtflag", trgtflag);
  189. fGetItemDtlList();
  190. }else{
  191. model.setValue(sIPTBOX + "/setnm", "");
  192. model.setValue(sSET + "/setno", "");
  193. model.setValue(sSET + "/setnm", "");
  194. model.setValue(sSET + "/instcd", "");
  195. model.setValue(sSET + "/orddeptcd", "");
  196. model.removeNodeSet("/root/main/itemdtlinfo/itemdtllist");
  197. }
  198. model.refresh();
  199. }
  200. /**
  201. * @group :
  202. * @ver : 2007.05.25
  203. * @by : 최경용
  204. * @---------------------------------------------------
  205. * @type : function
  206. * @access : public
  207. * @desc : 약속항목SET상세정보 조회
  208. * @param :
  209. * @return :
  210. * @---------------------------------------------------
  211. */
  212. function fGetItemDtlList(){
  213. var setno = model.getValue(sSET + "/setno");
  214. model.makeNode("/root/send/savedata");
  215. model.setValue(sITEMSETDTLLIST_HIDDEN + "/setno", setno);
  216. model.copyNode("/root/send/savedata", sITEMSETDTLLIST_HIDDEN);
  217. if(submit("TRMNR03502")){
  218. grd_srchdtlitem.mergecells = "bycol";
  219. grd_srchdtlitem.mergecol(2) = false;
  220. grd_srchdtlitem.mergecol(3) = false;
  221. grd_srchdtlitem.mergecol(4) = false;
  222. }
  223. }
  224. /**
  225. * @group :
  226. * @ver : 2007.05.21
  227. * @by : 최경용
  228. * @---------------------------------------------------
  229. * @type : function
  230. * @access : public
  231. * @desc : SET 추가
  232. * @param :
  233. * @return :
  234. * @---------------------------------------------------
  235. */
  236. function fAddItemSet(){
  237. if(trv_itemsetlist.selectedIndex < 0){
  238. messageBox("병동명을 선택 후 SET을 등록해 주십시오.\n등록","E001");
  239. return;
  240. }
  241. var item = trv_itemsetlist.item(trv_itemsetlist.selectedIndex);
  242. var rowPos = item.index + 1;
  243. var levl = model.getValue(sITEMSETLIST + "[" + rowPos + "]/levl");
  244. var orddeptcd = model.getValue(sITEMSETLIST + "[" + rowPos + "]/orddeptcd");
  245. if(levl == "1"){
  246. model.setValue(sIPTBOX + "/setnm", "");
  247. ipt_setnm.disabled = false;
  248. btn_saveitem.Disabled = false;
  249. fSetItemSetInfo(rowPos, "I");
  250. model.setValue(sITEMSETLIST_HIDDEN + "/status", "I");
  251. model.setValue(sITEMSETLIST_HIDDEN + "/orddeptcd", orddeptcd);
  252. model.setValue(sITEMSETLIST_HIDDEN + "/setrefseq", 0);
  253. model.setValue(sITEMSETLIST_HIDDEN + "/trgtflag", "S");
  254. model.setFocus("ipt_setnm");
  255. model.refresh();
  256. }else{
  257. messageBox("병동명을 선택 후 SET을 등록해 주십시오.\n등록","E001");
  258. }
  259. }
  260. /**
  261. * @group :
  262. * @ver : 2007.05.21
  263. * @by : 최경용
  264. * @---------------------------------------------------
  265. * @type : function
  266. * @access : public
  267. * @desc : SET 수정
  268. * @param :
  269. * @return :
  270. * @---------------------------------------------------
  271. */
  272. function fUpdtItemSet(){
  273. var item = trv_itemsetlist.item(trv_itemsetlist.selectedIndex);
  274. var rowPos = item.index + 1;
  275. var instcd = model.getValue(sITEMSETLIST + "[" + rowPos + "]/instcd");
  276. var setno = model.getValue(sITEMSETLIST + "[" + rowPos + "]/setno");
  277. var levl = model.getValue(sITEMSETLIST + "[" + rowPos + "]/levl");
  278. var trgtflag = model.getValue(sITEMSETLIST + "[" + rowPos + "]/trgtflag");
  279. if(trgtflag == "B"){
  280. messageBox("부서기본 SET은 수정할 수","I004");
  281. return;
  282. }
  283. if(levl != "1"){
  284. fSetItemSetInfo(rowPos, "U");
  285. ipt_setnm.disabled = false;
  286. btn_saveitem.disabled = false;
  287. model.setValue(sITEMSETLIST_HIDDEN + "/status", "U");
  288. model.setValue(sITEMSETLIST_HIDDEN + "/instcd", instcd);
  289. model.setValue(sITEMSETLIST_HIDDEN + "/setno", setno);
  290. model.setValue(sITEMSETLIST_HIDDEN + "/trgtflag", trgtflag);
  291. model.setFocus("ipt_setnm");
  292. model.refresh();
  293. } else{
  294. messageBox("SET을 선택한 후 수정해 주십시오.\n수정","E001");
  295. }
  296. }
  297. /**
  298. * @group :
  299. * @ver : 2007.05.21
  300. * @by : 최경용
  301. * @---------------------------------------------------
  302. * @type : function
  303. * @access : public
  304. * @desc : SET 삭제
  305. * @param :
  306. * @return :
  307. * @---------------------------------------------------
  308. */
  309. function fDelItemSet(){
  310. var item = trv_itemsetlist.item(trv_itemsetlist.selectedIndex);
  311. var rowPos = item.index + 1;
  312. var instcd = model.getValue(sITEMSETLIST + "[" + rowPos + "]/instcd");
  313. var setno = model.getValue(sITEMSETLIST + "[" + rowPos + "]/setno");
  314. var trgtflag = model.getValue(sITEMSETLIST + "[" + rowPos + "]/trgtflag");
  315. if(trgtflag == "B"){
  316. messageBox("부서기본 SET은 삭제할 수","I004");
  317. return;
  318. }
  319. fSetItemSetInfo(rowPos, "D");
  320. model.setValue(sITEMSETLIST_HIDDEN + "/status", "D");
  321. model.setValue(sITEMSETLIST_HIDDEN + "/instcd", instcd);
  322. model.setValue(sITEMSETLIST_HIDDEN + "/setno", setno);
  323. model.copyNode("/root/send/savedata", sITEMSETLIST_HIDDEN);
  324. submit("TXMNR03501");
  325. trv_itemsetlist.rebuild();
  326. model.removenode(sITEMSETDTLINFO);
  327. model.refresh();
  328. }
  329. /**
  330. * @group :
  331. * @ver : 2007.05.21
  332. * @by : 최경용
  333. * @---------------------------------------------------
  334. * @type : function
  335. * @access : public
  336. * @desc : 간호기록항목 SET정보 SETTING
  337. * @param :
  338. * @return :
  339. * @---------------------------------------------------
  340. */
  341. function fSetItemSetInfo(rowPos, status){
  342. var levl = model.getValue(sITEMSETLIST + "[" + rowPos + "]/levl");
  343. var setnm = model.getValue(sITEMSETLIST + "[" + rowPos + "]/setnm");
  344. if(status == "U"){
  345. model.setValue("/root/main/iptbox/setnm", setnm);
  346. } else{
  347. model.setValue("/root/main/iptbox/setnm", "");
  348. }
  349. model.refresh();
  350. }
  351. /**
  352. * @group :
  353. * @ver : 2007.05.21
  354. * @by : 최경용
  355. * @---------------------------------------------------
  356. * @type : function
  357. * @access : public
  358. * @desc : 간호기록항목 SET저장
  359. * @param :
  360. * @return :
  361. * @---------------------------------------------------
  362. */
  363. function fSaveItemSet(){
  364. var setnm = model.getValue("/root/main/iptbox/setnm");
  365. var orddeptcd = model.getValue(sITEMSETLIST_HIDDEN + "/orddeptcd");
  366. var status = model.getValue(sITEMSETLIST_HIDDEN + "/status");
  367. var setno = model.getValue(sITEMSETLIST_HIDDEN + "/setno");
  368. var currow = 0;
  369. model.setValue(sITEMSETLIST_HIDDEN + "/setnm", setnm);
  370. model.copyNode("/root/send/savedata", sITEMSETLIST_HIDDEN);
  371. submit("TXMNR03501");
  372. ipt_setnm.disabled = true;
  373. btn_saveitem.disabled = true;
  374. var sRowCnt = getNodesetCount(sITEMSETLIST);
  375. for(var i=1; i<= sRowCnt; i++){
  376. if(status == "U"){
  377. if(setno == model.getValue(sITEMSETLIST + "[" + i + "]/setno")){
  378. currow = i-1;
  379. }
  380. }
  381. if(status == "I"){
  382. if(orddeptcd == model.getValue(sITEMSETLIST + "[" + i + "]/orddeptcd")){
  383. currow = i-1;
  384. }
  385. }
  386. }
  387. trv_itemsetlist.select(currow);
  388. trv_itemsetlist.rebuild();
  389. model.refresh();
  390. }
  391. /**
  392. * @group :
  393. * @ver : 2007.05.28
  394. * @by : 최경용
  395. * @---------------------------------------------------
  396. * @type : function
  397. * @access : public
  398. * @desc : 약속항목SET상세정보 삭제
  399. * @param :
  400. * @return :
  401. * @---------------------------------------------------
  402. */
  403. function fDelDetGridRow(){
  404. // var iRowCnt = grd_srchdtlitem.rows-grd_srchdtlitem.fixedRows;
  405. // var sChkYN = false;
  406. //
  407. // for(var i=1; i<=iRowCnt; i++){
  408. // if(model.getValue(sITEMSETDTLLIST + "[" + i + "]/check") == "true"){
  409. // model.setValue(sITEMSETDTLLIST + "[" + i + "]/status", "D");
  410. // model.setValue(sITEMSETDTLLIST + "[" + i + "]/check", "false");
  411. // grd_srchdtlitem.rowStatus(i) = 4;
  412. // sChkYN = true;
  413. // }
  414. // }
  415. // if(!sChkYN){
  416. // messageBox("선택된 항목이","I004");
  417. // return;
  418. // }
  419. var sFrstRow = "";
  420. var sLastRow = "";
  421. if(grd_srchdtlitem.selectedRow(0) == grd_srchdtlitem.row){
  422. sFrstRow = grd_srchdtlitem.row - grd_srchdtlitem.fixedRows;
  423. sLastRow = sFrstRow + grd_srchdtlitem.selectedRows ;
  424. }else{
  425. sFrstRow = grd_srchdtlitem.selectedRow(0) - 1;
  426. sLastRow = grd_srchdtlitem.selectedRow(0) + grd_srchdtlitem.selectedRows - 1 ;
  427. }
  428. var sChkYN = false;
  429. for(var i=sFrstRow+1; i<=sLastRow; i++){
  430. if(grd_srchdtlitem.valueMatrix( i, 2 ) == "-" || grd_srchdtlitem.valueMatrix( i, 2 ) == "I"){
  431. grd_srchdtlitem.valueMatrix( i, 2 ) = "D" ;
  432. grd_srchdtlitem.rowStatus(i) = 4;
  433. sChkYN = true;
  434. }else{
  435. grd_srchdtlitem.valueMatrix( i, 2 ) = "-" ;
  436. grd_srchdtlitem.rowStatus(i) = 0;
  437. sChkYN = true;
  438. }
  439. }
  440. if(!sChkYN){
  441. messageBox("선택된 항목이","I004");
  442. return;
  443. }
  444. // return;
  445. // model.setValue("/root/send/griddata", getGridUpdateData(grd_srchdtlitem));
  446. // submit("TXMNR03502");
  447. }
  448. /**
  449. * @group :
  450. * @ver : 2007.07.25
  451. * @by : 이은영
  452. * @---------------------------------------------------
  453. * @type : function
  454. * @access : public
  455. * @desc : 그리드 클릭시..
  456. * @param :
  457. * @return :
  458. * @---------------------------------------------------
  459. */
  460. function fClickedGridRow(pFlag){
  461. var iCol = 0;
  462. var iRow = 0;
  463. var sCheck = "";
  464. switch(pFlag){
  465. case "Item" :
  466. iRow = grd_srchitem.row;
  467. iCol = grd_srchitem.col;
  468. if(iRow < 1) return;
  469. var sDepth = eval(model.getValue(xItemSrchPath+"["+iRow+"]/depth"));
  470. var iDepth = 0;
  471. sCheck = model.getValue(xItemSrchPath+"["+iRow+"]/check");
  472. var sItemCD = "";
  473. var sStatus = "";
  474. if(sDepth == 1){
  475. sItemCD = model.getValue(xItemSrchPath+"["+iRow+"]/itemcd");
  476. if(iCol == 3){
  477. // 자식 트리 접기
  478. for(var i = iRow; i <grd_srchitem.rows; i++)
  479. {
  480. iDepth = eval(model.getValue(xItemSrchPath+"["+i+"]/depth"));
  481. if(iRow!= i && iDepth==1) break;
  482. if(grd_srchitem.iscollapsed(i)){
  483. grd_srchitem.iscollapsed(i)=false; //자식 트리 접기
  484. }else{
  485. grd_srchitem.iscollapsed(i)=true; //자식 트리 접기
  486. }
  487. }
  488. }else{
  489. if(grd_srchitem.iscollapsed(iRow)) return;
  490. if(iCol == 1){
  491. sStatus = sCheck;
  492. }else{
  493. if( sCheck == "true"){
  494. sStatus = "false";
  495. }else{
  496. sStatus = "true";
  497. }
  498. model.setValue(xItemSrchPath+"["+iRow+"]/check",sStatus);
  499. }
  500. for(var i=iRow; i<=grd_srchitem.rows - grd_srchitem.fixedrows; i++){
  501. if(model.getValue(xItemSrchPath+"["+i+"]/supcd") == sItemCD){
  502. model.setValue(xItemSrchPath+"["+i+"]/check",sStatus);
  503. }
  504. }
  505. }
  506. }else{
  507. if(iCol == 1) return;
  508. if( sCheck == "true"){
  509. model.setValue(xItemSrchPath+"["+iRow+"]/check","false");
  510. }else{
  511. model.setValue(xItemSrchPath+"["+iRow+"]/check","true");
  512. }
  513. }
  514. break;
  515. case "SET" :
  516. iRow = grd_srchdtlitem.row;
  517. iCol = grd_srchdtlitem.col;
  518. if(iRow < 1) return;
  519. if(iCol == 2) return;
  520. sCheck = model.getValue(sITEMSETDTLLIST+"["+iRow+"]/check");
  521. if(sCheck == "true"){
  522. model.setValue(sITEMSETDTLLIST+"["+iRow+"]/check","");
  523. }else{
  524. model.setValue(sITEMSETDTLLIST+"["+iRow+"]/check","true");
  525. }
  526. grd_srchdtlitem.rebuild();
  527. break;
  528. }
  529. }
  530. function fSelectItemMove(){
  531. var setno = model.getValue(sSET + "/setno");
  532. var setnm = model.getValue(sSET + "/setnm");
  533. var sItemLevl = 0;
  534. var itemdtlrow = 0;
  535. var sItemcd = "";
  536. var supcd = "";
  537. var orddeptcd = model.getValue(sSET + "/orddeptcd");
  538. var sChkYN = false; // 항목 체크 여부
  539. var sInsYN = false; // 실제 신규항목 존재여부
  540. if(setnm == ""){
  541. messageBox("SET종류를 먼저","C002");
  542. return;
  543. }
  544. for(var itemrow=grd_srchitem.fixedrows;itemrow<=grd_srchitem.rows-grd_srchitem.fixedrows;itemrow++){
  545. if(model.getValue(xItemSrchPath+"["+itemrow+"]/check") == "true"){
  546. sChkYN = true;
  547. sItemLevl = eval(model.getValue(xItemSrchPath+"["+itemrow+"]/depth"));
  548. sItemcd = model.getValue(xItemSrchPath+"["+itemrow+"]/itemcd");
  549. supcd = model.getValue(xItemSrchPath+"["+itemrow+"]/supcd");
  550. model.setValue(xItemSrchPath+"["+itemrow+"]/check", "false");
  551. if(sItemLevl == 1) continue;
  552. if(grd_srchdtlitem.rows > 1 && model.getValue(sITEMSETDTLLIST+"[itemcd='"+sItemcd+"']/itemcd") != "") continue;
  553. grd_srchdtlitem.addRow(false);
  554. itemdtlrow = grd_srchdtlitem.rows-grd_srchdtlitem.fixedrows;
  555. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/status","I");
  556. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/setno",setno);
  557. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/instcd", model.getValue(sSET + "/instcd"));
  558. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/itemcd",sItemcd);
  559. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/itemnm",model.getValue(xItemSrchPath+"["+itemrow+"]/itemnm"));
  560. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/supcd",supcd);
  561. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/orddeptcd",orddeptcd);
  562. //2008-05-26 변경
  563. model.setValue(sITEMSETDTLLIST + "[" + itemdtlrow + "]/supnm", model.getValue(xItemSrchPath+"[itemcd ='" + supcd + "']/itemnm"));
  564. sInsYN = true;
  565. }
  566. }
  567. if(!sChkYN){
  568. messageBox("등록할 항목을 먼저","C002");
  569. return;
  570. }
  571. if(sChkYN == true && sInsYN == false){
  572. messageBox("이미 항목 등록이","I002");
  573. return;
  574. }
  575. }