SMMNP04600.xjs 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/* ---------------------------------------------------------------------
  3. 누적물품 의뢰/확정 관리(SMMNP04600.xfm - JScript )
  4. - Version :
  5. 1) : Ver.1.00.01
  6. : Create By 김진명
  7. : 2007.08.11
  8. ---------------------------------------------------------------------- */
  9. /* --------------------------------------------------------*/
  10. /* model.getValue(); 를 함수로 만들었습니다. */
  11. /* param1 : node는 grid의 xPath입니다. */
  12. /* param2 : row는 grid에서 선택한 row값입니다. */
  13. /* param3 : element는 getvalue할 해당 element 명입니다. */
  14. /* */
  15. /* 해당 getvalue값을 return 해줍니다. */
  16. /* return 하지 않으면 해당값을 가져올 수 없습니다. */
  17. /* --------------------------------------------------------*/
  18. function fGetDateAdd(day) {
  19. var curtDate = getCurrentDate();
  20. curtDate = curtDate.substr(0, 8);
  21. var curtYY = parseInt(curtDate.substr(0, 4), 10);
  22. var curtMM = parseInt(curtDate.substr(4, 2), 10);
  23. var curtDD = parseInt(curtDate.substr(6, 2), 10);
  24. var cntDay = fGetCntDate(curtYY, curtMM);//구하려는 달의 일자수를 가져온다.
  25. if( (curtDD - day) > 0 ) {
  26. curtDD = curtDD - day;
  27. }else {
  28. if( curtMM == 1 ) {
  29. curtYY = curtYY - 1;
  30. curtMM = 12;
  31. curtDD = cntDay + curtDD - day;
  32. }else {
  33. curtMM = curtMM - 1;
  34. curtDD = cntDay + curtDD - day;
  35. }
  36. }
  37. curtYY = curtYY + "";
  38. curtMM = curtMM + "";
  39. curtDD = curtDD + "";
  40. var bfDay = curtYY + curtMM.getLeftPad(2, '0') + curtDD.getLeftPad(2, '0');
  41. return bfDay;
  42. }
  43. /* --------------------------------------------------*/
  44. /* type : function */
  45. /* access : public */
  46. /* desc : 구하려는 달의 총일수 */
  47. /* param : 구하려는 달 */
  48. /* return : 달의 일수 */
  49. /* --------------------------------------------------*/
  50. function fGetCntDate(year, month) {
  51. var cntday = 0;
  52. switch(month) {
  53. case 1:
  54. cntday = 31;
  55. break;
  56. case 2:
  57. if( ( (Number(year) % 4 == 0) && (Number(year) % 100 != 0) ) || (Number(year) % 400 == 0) ) {
  58. cntday = 29;
  59. }else {
  60. cntday = 28;
  61. }
  62. break;
  63. case 3:
  64. cntday = 31;
  65. break;
  66. case 4:
  67. cntday = 30;
  68. break;
  69. case 5:
  70. cntday = 31;
  71. break;
  72. case 6:
  73. cntday = 30;
  74. break;
  75. case 7:
  76. cntday = 31;
  77. break;
  78. case 8:
  79. cntday = 31;
  80. break;
  81. case 9:
  82. cntday = 30;
  83. break;
  84. case 10:
  85. cntday = 31;
  86. break;
  87. case 11:
  88. cntday = 30;
  89. break;
  90. case 12:
  91. cntday = 31;
  92. break;
  93. }
  94. return cntday;
  95. }
  96. /* --------------------------------------------------*/
  97. /* type : function */
  98. /* access : public */
  99. /* desc : 누적물품 의뢰/불출관리 초기화 */
  100. /* param : */
  101. /* return : */
  102. /* --------------------------------------------------*/
  103. function fInit() {
  104. var reqenddd, deliveday, fromdd, todd;
  105. model.removeNodeset("/root/main/acmlgooddelivelist");
  106. model.setValue("/root/main/cond/refdd", getCurrentDate().substr(0, 8));
  107. submit("TRMNP04604");
  108. var level = model.getValue("/root/temp/logginlevel/usrlevel");
  109. if( ( level == "0" ) ) {//관리자가 아니면 권한관리 버튼 숨김
  110. btn_noprcplist.visible = true;//비처방 물품조회
  111. btn_goodsearch.visible = true;//물품조회
  112. btn_emplevel.visible = false;//권한관리 버튼
  113. btn_delivecnfm.visible = false;//불출확정 버튼
  114. btn_reqsave.visible = true;//의뢰저장 버튼
  115. grd_acmlgooddelivelist.colDisabled(18) = false;//의뢰량
  116. grd_acmlgooddelivelist.colDisabled(22) = true;//불출수량
  117. grd_acmlgooddelivelist.colDisabled(23) = true;//미불출수량
  118. grd_acmlgooddelivelist.colDisabled(28) = true;//미불출사유
  119. btn_tempsave.disabled = false;
  120. document.title = "방재고의뢰물품 불출의뢰";
  121. cap_title.attribute("text") = "방재고의뢰물품 불출의뢰";
  122. }else {
  123. btn_noprcplist.visible = false;//비처방 물품조회
  124. btn_goodsearch.visible = false;//물품조회
  125. btn_emplevel.visible = true;
  126. btn_delivecnfm.visible = true;
  127. btn_reqsave.visible = false;
  128. btn_tempsave.disabled = true;
  129. model.setValue("/root/main/cond/deliveflag", "1");//관리자 미불출자동셋팅
  130. grd_acmlgooddelivelist.colDisabled(18) = true;//의뢰량
  131. grd_acmlgooddelivelist.colDisabled(22) = false;//불출수량
  132. grd_acmlgooddelivelist.colDisabled(23) = false;//미불출수량
  133. grd_acmlgooddelivelist.colDisabled(28) = false;//미불출사유
  134. document.title = "방재고의뢰물품 불출확정";
  135. cap_title.attribute("text") = "방재고의뢰물품 불출확정";
  136. }
  137. model.removenode("/root/send");
  138. model.makeNode("/root/send/reqdata");
  139. model.copyNode("/root/send/reqdata", "/root/main/cond");
  140. submit("TRMNP04605", false);//마감정보 조회
  141. var basedayflag = model.getValue("/root/init/deliveinfo/basedayflag");
  142. var basedtflag = model.getValue("/root/init/deliveinfo/basedtflag");
  143. var message = model.getValue("/root/init/deliveinfo/message");
  144. var basedelive = model.getValue("/root/init/deliveinfo/basedelive");
  145. if( basedelive == "2" ) {//월불출
  146. var maxday = new Date(getCurrentDate().substr(0,4), getCurrentDate().substr(4,2),0);
  147. var maxflag = maxday.getDay();
  148. var maxdate = maxday.getDateFormat();
  149. if( parseInt(maxflag) > parseInt(basedayflag) ) {//월말 요일이 기준요일보다 클경우
  150. reqenddd = getDateAddc(maxdate, (parseInt(basedayflag)-parseInt(maxflag)));
  151. }else if( parseInt(maxflag) == parseInt(basedayflag)) {//같은 요일일때
  152. reqenddd = maxdate;
  153. }else if( parseInt(maxflag) < parseInt(basedayflag)) {// 기준요일이 클때
  154. reqenddd = getDateAddc(maxdate, -7+(parseInt(basedayflag)-parseInt(maxflag)));
  155. }
  156. if( parseInt(basedayflag)+1 == 6 ) {//불출요일이 토요일이면
  157. deliveday = getDateAddc(reqenddd, 2);
  158. }else {
  159. deliveday = getDateAddc(reqenddd, 1);
  160. }
  161. }else if( basedelive == "1" ) {//주불출
  162. var flag = "N";
  163. var todayflag = getCurrentWeek(flag);
  164. if( parseInt(todayflag) > parseInt(basedayflag) ) { //마감요일보다 클때 차주
  165. reqenddd = getDateAddc(getCurrentDate(), 7+(parseInt(basedayflag)-parseInt(todayflag)));
  166. }else if( parseInt(todayflag) < parseInt(basedayflag) ) {//마감요일이 클때
  167. reqenddd = getDateAddc(getCurrentDate(), (parseInt(basedayflag)-parseInt(todayflag)));
  168. }else if( parseInt(todayflag) == parseInt(basedayflag) ) {//같을때
  169. if( basedtflag > parseInt(getCurrentTime().substr(0, 4)) ) {//마감시간보다 작을때
  170. reqenddd = getCurrentDate().substr(0, 8);
  171. }else {
  172. reqenddd = getDateAddc(getCurrentDate(), 7);
  173. }
  174. }
  175. if( parseInt(basedayflag)+1 == 6 ) {//불출요일이 토요일이면
  176. deliveday = getDateAddc(reqenddd, 3);
  177. }else {
  178. deliveday = getDateAddc(reqenddd, 1);
  179. }
  180. }
  181. model.setValue("/root/main/cond/fromdd", getDateAddc(reqenddd, -6));
  182. model.setValue("/root/main/cond/todd", reqenddd);
  183. model.setValue("/root/main/deliveinfo/reqenddt", reqenddd+basedtflag);
  184. model.setValue("/root/main/deliveinfo/delivecnfmdd", deliveday);
  185. model.setValue("/root/main/deliveinfo/delivemessage", message );
  186. submit("TRMNP03004") // 수술실(Rosette) 가져오기
  187. addComboItem("cmb_rosette","전체","","above");
  188. model.removenode("/root/send");
  189. model.makeNode("/root/send");
  190. model.makeValue("/root/send/reqdata/opcnfmdd" ,model.getValue("/root/main/cond/fromdd") );
  191. model.makeValue("/root/send/reqdata/rosette" ,model.getValue("/root/main/cond/oprosette"));
  192. submit("TRMNP03002"); // 수술실코드 가져오기
  193. addComboItem("cmb_oproomlist","전체","","above");
  194. //submit("TRMNP04603", false);
  195. //addComboItem("cmb_oproomlist", "전 체", "", "above" );
  196. grd_acmlgooddelivelist.fixedcellcheckbox(0, 20) = true;
  197. grd_acmlgooddelivelist.explorerbar = "sort";
  198. model.refresh();
  199. }
  200. /* --------------------------------------------------*/
  201. /* type : function */
  202. /* access : public */
  203. /* desc : 방재고 물품조회 */
  204. /* param : */
  205. /* return : */
  206. /* --------------------------------------------------*/
  207. function fOnClickSearchGoodPopUp(){
  208. var xpos = 200; //event.screenX;
  209. var ypos = 300; //event.screenY-300;
  210. //2008-08-21 오전 12:28:09 taebum 약속 처방 조회시 현재 수술방의 방재고를 함께 조회하기 위한 파라미터 설정 추가
  211. var sOproomcd = model.getValue("/root/main/cond/oproomcd");
  212. var sCartGubn = model.getValue("/root/main/cond/deptflag");
  213. if( sOproomcd == "" ) {
  214. messageBox("수술방을 선택하지 않았습니다.!", "E000");
  215. model.setFocus("cmb_oproomlist");
  216. return;
  217. }
  218. setParameter("SPMNP01602_oproomcd", sOproomcd);
  219. setParameter("SPMNP01602_cartgubn", sCartGubn);
  220. open("SPMNP01602" ,"", xpos, ypos, "SPMNP01602", "", "");
  221. }
  222. /* --------------------------------------------------*/
  223. /* type : function */
  224. /* access : public */
  225. /* desc : 비처방성 물품조회 */
  226. /* param : */
  227. /* return : */
  228. /* --------------------------------------------------*/
  229. function fOnClickSearch(){
  230. var xpos = 200; //event.screenX;
  231. var ypos = 300; //event.screenY-300;
  232. //2008-08-21 오전 12:28:09 taebum 약속 처방 조회시 현재 수술방의 방재고를 함께 조회하기 위한 파라미터 설정 추가
  233. var sOproomcd = model.getValue("/root/main/cond/oproomcd");
  234. var sCartGubn = model.getValue("/root/main/cond/deptflag");
  235. if( sOproomcd == "" ) {
  236. messageBox("수술방을 선택하지 않았습니다.!", "E000");
  237. model.setFocus("cmb_oproomlist");
  238. return;
  239. }
  240. setParameter("SPMNP01601_oproomcd", sOproomcd);
  241. setParameter("SPMNP01601_cartgubn", sCartGubn);
  242. setParameter("SPMNP01601_openflag", "4600");
  243. open("SPMNP01601" ,"", xpos, ypos, "SPMNP01601", "", "");
  244. }
  245. /* --------------------------------------------------*/
  246. /* type : function */
  247. /* access : public */
  248. /* desc : 비처방 물품 리스트 추가 */
  249. /* param : */
  250. /* return : */
  251. /* --------------------------------------------------*/
  252. function fGoodDataDisplay(pParamList) {
  253. var iParamData = pParamList.split("▩");
  254. var pData = "", reqflagnm = "";
  255. var erflag = ds_main_cond.getColumn(0, "referflag");
  256. for (var ii = 0; ii < (iParamData.length-1); ii++) {
  257. var nRow = ds_main_acmlgooddelivelist.addRow();
  258. pData = iParamData[ii];
  259. var iSplit_Value = pData.split("|");
  260. if( ds_main_cond.getColumn(0, "oproomcd") != iSplit_Value[12] ) {
  261. sysf_messageBox("물품조회 수술방이 불출의뢰 수술방과 같지않습니다.!", "E000");
  262. return;
  263. }
  264. if( erflag == "Y" ) {
  265. reqflagnm = "응급";
  266. }else {
  267. reqflagnm = "정규";
  268. }
  269. ds_main_acmlgooddelivelist.setColumn(nRow, "reqgoodnm", "비처방");
  270. ds_main_acmlgooddelivelist.setColumn(nRow, "reqgoodflag", "N");
  271. ds_main_acmlgooddelivelist.setColumn(nRow, "deptflag", ds_main_cond.getColumn(0, "deptflag"));
  272. ds_main_acmlgooddelivelist.setColumn(nRow, "purcflag", iSplit_Value[0]);
  273. ds_main_acmlgooddelivelist.setColumn(nRow, "oproomnm", grp_biz.grp_sea.cmb_oproomlist.text);
  274. ds_main_acmlgooddelivelist.setColumn(nRow, "goodcd", iSplit_Value[1]);
  275. ds_main_acmlgooddelivelist.setColumn(nRow, "allsizespecid", iSplit_Value[2]);
  276. ds_main_acmlgooddelivelist.setColumn(nRow, "goodnm", iSplit_Value[3]);
  277. ds_main_acmlgooddelivelist.setColumn(nRow, "goodspec", iSplit_Value[4]);
  278. ds_main_acmlgooddelivelist.setColumn(nRow, "goodmodel", iSplit_Value[5]);
  279. ds_main_acmlgooddelivelist.setColumn(nRow, "prodcmpynm", iSplit_Value[6]);
  280. ds_main_acmlgooddelivelist.setColumn(nRow, "prcpunit", iSplit_Value[7]);
  281. ds_main_acmlgooddelivelist.setColumn(nRow, "prcpqty", 0);
  282. ds_main_acmlgooddelivelist.setColumn(nRow, "acmlbaseqty", 1);
  283. ds_main_acmlgooddelivelist.setColumn(nRow, "reqflagnm", reqflagnm);
  284. ds_main_acmlgooddelivelist.setColumn(nRow, "safestocqty", iSplit_Value[8]);
  285. ds_main_acmlgooddelivelist.setColumn(nRow, "stocqty", iSplit_Value[9]);
  286. ds_main_acmlgooddelivelist.setColumn(nRow, "reqexchqty", 0);
  287. ds_main_acmlgooddelivelist.setColumn(nRow, "reqqty", iSplit_Value[11]);
  288. ds_main_acmlgooddelivelist.setColumn(nRow, "bfreqqty", iSplit_Value[11]);
  289. ds_main_acmlgooddelivelist.setColumn(nRow, "requnit", iSplit_Value[10]);
  290. if( parseInt(iSplit_Value[11]) > 0 ) {
  291. ds_main_acmlgooddelivelist.setColumn(nRow, "chkflag", "true");
  292. }else {
  293. ds_main_acmlgooddelivelist.setColumn(nRow, "chkflag", "false");
  294. }
  295. ds_main_acmlgooddelivelist.setColumn(nRow, "deliveyn", "N");
  296. ds_main_acmlgooddelivelist.setColumn(nRow, "deliveqty", 0);
  297. ds_main_acmlgooddelivelist.setColumn(nRow, "undeliveqty", 0);
  298. ds_main_acmlgooddelivelist.setColumn(nRow, "reqdd", "");
  299. ds_main_acmlgooddelivelist.setColumn(nRow, "reqid", "");
  300. ds_main_acmlgooddelivelist.setColumn(nRow, "delivedd", "");
  301. ds_main_acmlgooddelivelist.setColumn(nRow, "deliveid", "");
  302. ds_main_acmlgooddelivelist.setColumn(nRow, "undeliveresn", "");
  303. ds_main_acmlgooddelivelist.setColumn(nRow, "stat", "I");
  304. ds_main_acmlgooddelivelist.setColumn(nRow, "oproomcd", iSplit_Value[12]);
  305. ds_main_acmlgooddelivelist.setColumn(nRow, "delivereqdd", "");
  306. ds_main_acmlgooddelivelist.setColumn(nRow, "reqno", "");
  307. ds_main_acmlgooddelivelist.setColumn(nRow, "olddeliveqty", "");
  308. }
  309. }
  310. /* --------------------------------------------------*/
  311. /* type : function */
  312. /* access : public */
  313. /* desc : 누적물품 의뢰/불출관리 조회 */
  314. /* param : */
  315. /* return : */
  316. /* --------------------------------------------------*/
  317. function fSearch() {
  318. var oproomcd = model.getValue("/root/main/cond/oproomcd");
  319. var oprosette = model.getValue("/root/main/cond/oprosette");
  320. var referflag = model.getValue("/root/main/cond/referflag");//응급의뢰
  321. var goodcd = model.getValue("/root/main/cond/goodcd");
  322. model.removenode("/root/send");
  323. model.makeNode("/root/send/reqdata");
  324. model.copyNode("/root/send/reqdata", "/root/main/cond");
  325. var level = model.getValue("/root/temp/logginlevel/usrlevel");
  326. if( (level == "C")||(level == "M") ) {
  327. btn_delivecnfm.visible = true;
  328. btn_reqsave.visible = false;
  329. submit("TRMNP04602");
  330. }else {
  331. if( oproomcd == ""&&oprosette == "" ) {
  332. messageBox("수술방이나 Rosette을 선택 하지", "E007");
  333. model.setFocus("cmb_rosette");
  334. return;
  335. }
  336. if( referflag == "Y" ) {//응급의뢰용
  337. if( goodcd == "" ) {
  338. messageBox("응급의뢰 조회일 경우 물품코드를 입력하십시오.!", "E000");
  339. return;
  340. }
  341. }
  342. submit("TRMNP04601");
  343. }
  344. var refMsg = model.getValue("/root/properties/error/msg");
  345. var refMsgCnt = refMsg.substring(0, 1);
  346. if( refMsgCnt == "0" ) {
  347. messageBox("조회된 결과가", "I004");
  348. }
  349. }
  350. /* --------------------------------------------------*/
  351. /* type : function */
  352. /* access : public */
  353. /* desc : 누적물품 의뢰/불출관리 의뢰저장 */
  354. /* param : */
  355. /* return : */
  356. /* --------------------------------------------------*/
  357. function fReqSave(pFlag) {
  358. var iRows = -1;
  359. var deliveyn, reqdd, delivedd, oproomcd, stat, goodcd, allsizespecid, reqqty, acmldeliveqty, chkflag, reqgoodflag;
  360. var cnt = 0, cnt2 = 0;
  361. iRows = grd_acmlgooddelivelist.rows;
  362. var acmlgooddelivelist = "m▦reqdd▦delivedd▦oproomcd▦goodcd▦allsizespecid▦reqqty▦reqflag▦reqgoodflag";
  363. if( pFlag != "E" ) {
  364. if( model.getValue("/root/main/cond/referflag") == "Y" ) {
  365. messageBox("응급의뢰로만 저장 할 수 있습니다.!", "E000");
  366. return;
  367. }
  368. }
  369. for( var i = 1; i <= iRows; i++ ) {
  370. reqdd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqdd");
  371. delivedd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/delivedd");
  372. oproomcd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/oproomcd");
  373. goodcd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/goodcd");
  374. allsizespecid = model.getValue("/root/main/acmlgooddelivelist["+i+"]/allsizespecid");
  375. reqqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqqty");
  376. stat = model.getValue("/root/main/acmlgooddelivelist["+i+"]/stat");
  377. chkflag = model.getValue("/root/main/acmlgooddelivelist["+i+"]/chkflag");
  378. deliveyn = model.getValue("/root/main/acmlgooddelivelist["+i+"]/deliveyn");
  379. reqgoodflag = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqgoodflag");
  380. if( chkflag == "true" ) {
  381. if( deliveyn == "Y" ) {
  382. messageBox("불출된 물품은 의뢰를 ", "E001");
  383. return;
  384. }
  385. if( reqqty > 0 ) {//의뢰량을 입력시에만
  386. acmlgooddelivelist = acmlgooddelivelist + "▩" + stat + "▦" + reqdd + "▦" + delivedd + "▦" + oproomcd
  387. + "▦" + goodcd + "▦" + allsizespecid + "▦" + reqqty + "▦" + pFlag + "▦" + reqgoodflag;
  388. cnt += 1;
  389. }else {
  390. messageBox("의뢰량을 ", "C001");
  391. return;
  392. }
  393. }
  394. }
  395. if( cnt > 0 ) {
  396. model.removenode("/root/send");
  397. model.makeNode("/root/send/reqdata");
  398. model.makeNode("/root/send/savedata");
  399. model.copyNode("/root/send/reqdata", "/root/main/cond");
  400. model.setValue("/root/send/savedata", acmlgooddelivelist);
  401. submit("TXMNP04602");
  402. }else {
  403. messageBox("선택한것이", "I004");
  404. }
  405. }
  406. /* --------------------------------------------------*/
  407. /* type : function */
  408. /* access : public */
  409. /* desc : 누적물품 의뢰/불출관리 불출저장 */
  410. /* param : */
  411. /* return : */
  412. /* --------------------------------------------------*/
  413. function fDeliveCnfm() {
  414. var iRows = -1;
  415. var delivereqdd, delivedd, oproomcd, stat, goodcd, allsizespecid, exchqty, deliveno, deptflag;
  416. var reqno, reqqty, deliveqty, chkflag, sumqty, undeliveresn, acmlbaseqty, olddeliveqty, undeliveqty, reqgoodflag;
  417. var cnt = 0;
  418. iRows = grd_acmlgooddelivelist.rows;
  419. var acmlgooddelivelist = "m▦delivereqdd▦oproomcd▦goodcd▦allsizespecid▦reqqty▦deliveqty▦reqno▦undeliveqty▦undeliveresn▦deliveno▦delivedd▦olddeliveqty▦"
  420. + "exchqty▦deptflag▦difqty▦reqgoodflag";
  421. for( var i = 1; i < iRows; i++ ) {
  422. delivereqdd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/delivereqdd");
  423. delivedd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/delivedd");
  424. oproomcd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/oproomcd");
  425. goodcd = model.getValue("/root/main/acmlgooddelivelist["+i+"]/goodcd");
  426. allsizespecid = model.getValue("/root/main/acmlgooddelivelist["+i+"]/allsizespecid");
  427. reqqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqqty");
  428. deliveqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/deliveqty");
  429. stat = model.getValue("/root/main/acmlgooddelivelist["+i+"]/stat");
  430. chkflag = model.getValue("/root/main/acmlgooddelivelist["+i+"]/chkflag");
  431. reqno = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqno");
  432. undeliveresn = model.getValue("/root/main/acmlgooddelivelist["+i+"]/undeliveresn");
  433. olddeliveqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/olddeliveqty");
  434. deliveno = model.getValue("/root/main/acmlgooddelivelist["+i+"]/deliveno");
  435. acmlbaseqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/acmlbaseqty");
  436. undeliveqty = model.getValue("/root/main/acmlgooddelivelist["+i+"]/undeliveqty");
  437. reqgoodflag = model.getValue("/root/main/acmlgooddelivelist["+i+"]/reqgoodflag");
  438. deptflag = model.getValue("/root/main/cond/deptflag");
  439. var exchqty = (parseInt(deliveqty)-parseInt(olddeliveqty))*parseInt(acmlbaseqty);
  440. var difqty = parseInt(deliveqty)-parseInt(olddeliveqty);
  441. if( model.getValue("/root/main/cond/deliveflag") == "2" ) {
  442. stat = "C";//취소
  443. difqty = -(parseInt(olddeliveqty));
  444. }
  445. if( chkflag == "true" ) {
  446. if( deliveqty > 0 ) {//불출수량이 입력된 경우
  447. acmlgooddelivelist = acmlgooddelivelist + "▩" + stat + "▦" + delivereqdd + "▦" + oproomcd + "▦" + goodcd + "▦" + allsizespecid + "▦" + reqqty
  448. + "▦" + deliveqty + "▦" + reqno + "▦" + undeliveqty + "▦" + undeliveresn + "▦" + deliveno + "▦" + delivedd
  449. + "▦" + olddeliveqty + "▦" + exchqty + "▦" + deptflag + "▦" + difqty + "▦" + reqgoodflag;
  450. cnt += 1;
  451. }
  452. }
  453. }
  454. if( cnt > 0 ) {
  455. model.removenode("/root/send");
  456. model.makeNode("/root/send/reqdata");
  457. model.makeNode("/root/send/savedata");
  458. model.copyNode("/root/send/reqdata", "/root/main/cond");
  459. model.setValue("/root/send/savedata", acmlgooddelivelist);
  460. submit("TXMNP04601");
  461. if( model.getValue("/root/properties/error/msg") == "정상적으로 처리되었습니다." ) {
  462. messageBox("저장이", "I002");
  463. }
  464. }else {
  465. messageBox("선택한것이", "I004");
  466. }
  467. }]]></Script>