SMMNR03500.xjs 24 KB

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