SMMNP03910.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602
  1. /* ---------------------------------------------------------------------
  2. 방재고실사입력(SMMNP03900.xfm - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. : Create By 김진명
  6. : 2007.12.18
  7. ---------------------------------------------------------------------- */
  8. /* --------------------------------------------------*/
  9. /* type : function */
  10. /* access : public */
  11. /* desc : 초기화 */
  12. /* param : */
  13. /* return : */
  14. /* --------------------------------------------------*/
  15. function fInit() {
  16. model.removeNodeset("/root/main/stoclist");
  17. submit("TRMNP04604");
  18. var level = model.getValue("/root/temp/logginlevel/usrlevel");
  19. var stocflag = model.getValue("/root/main/cond/stocflag");
  20. grd_stoclist.explorerbar = "sort";
  21. grd_stoclist.fixedcellcheckbox(0,18) = true;
  22. submit("TRMNP03905");
  23. addComboItem("cmb_oproomcd", "전 체", "", "above" );
  24. submit("TRMNP03004") // 수술실(Rosette) 가져오기
  25. addComboItem("cmb_rosette","전체","","above");
  26. model.removenode("/root/send");
  27. //------------(20101011) 경북대)
  28. //model.setValue("/root/main/cond/goodflag", "Y");
  29. addComboItem("cmb_goodflag","전체","","above");
  30. //------------(20101011) 경북대)
  31. model.removeNodeset("/root/init/lrglist");
  32. model.removeNodeset("/root/init/mdllist");
  33. model.removeNodeset("/root/init/smllist");
  34. model.setValue("/root/main/cond/lrgcd", "");
  35. model.setValue("/root/main/cond/mdlcd", "");
  36. model.setValue("/root/main/cond/smlcd", "");
  37. model.makeNode("/root/send/reqdata");
  38. model.copyNode("/root/send/reqdata", "/root/main/cond");
  39. submit("TRMNP04463");
  40. addComboItem("cmb_lrg", "전 체", "", "above" );
  41. //2009-06-22 K.J.M 병원별 Display 여부
  42. model.removenode("/root/send");
  43. model.makeValue("/root/send/reqdata/cdgrupid", "106");//병원별 Display 여부
  44. model.makeValue("/root/send/reqdata/supcdid", "");//서브구분
  45. model.makeValue("/root/send/reqdata/cdid", "");//서브구분
  46. submit("TRMNP04903", false);
  47. if( model.getValue("/root/init/hardcodeinfo/cdid").substr(4, 1) == "Y" ) {//삭제 버튼
  48. btn_delete.visible = "true";
  49. }else {
  50. btn_delete.visible = "false";
  51. }
  52. fChangeBtn();//버튼처리
  53. }
  54. /* --------------------------------------------------*/
  55. /* type : function */
  56. /* access : public */
  57. /* desc : 방재고실사입력 버튼 처리 */
  58. /* param : */
  59. /* return : */
  60. /* --------------------------------------------------*/
  61. function fChangeBtn() {
  62. if( model.getValue("/root/main/cond/cnfmyn") == "Y" ) {//확정
  63. btn_cnclcnfm.visible = true;// 확정취소
  64. btn_cnfm.visible = false;//확정
  65. btn_saveexcel2.attribute("style") = "left:133px; top:1px; width:53px; height:19px; ";
  66. btn_prnt2.attribute("style") = "left:89px; top:1px; width:42px; height:19px; ";
  67. btn_delete.attribute("style") = "left:45px; top:1px; width:42px; height:19px; ";
  68. grd_stoclist.colDisabled(17) = "true";//재고실사
  69. grd_stoclist.colDisabled(15) = "true";//재고등록
  70. grd_stoclist.colDisabled(20) = "true";//불출수량
  71. grd_stoclist.colDisabled(21) = "true";//반납수량
  72. grd_stoclist.colDisabled(22) = "true";//미불출수량
  73. }else {
  74. btn_cnclcnfm.visible = false;// 확정취소
  75. btn_cnfm.visible = true;//확정
  76. btn_saveexcel2.attribute("style") = "left:155px; top:1px; width:53px; height:19px; ";
  77. btn_prnt2.attribute("style") = "left:111px; top:1px; width:42px; height:19px; ";
  78. btn_delete.attribute("style") = "left:67px; top:1px; width:42px; height:19px; ";
  79. grd_stoclist.colDisabled(17) = "true";//재고실사
  80. grd_stoclist.colDisabled(15) = "true";//재고등록
  81. grd_stoclist.colDisabled(20) = "false";//불출수량
  82. grd_stoclist.colDisabled(21) = "false";//반납수량
  83. grd_stoclist.colDisabled(22) = "false";//미불출수량
  84. }
  85. // fSearch();
  86. }
  87. /* --------------------------------------------------*/
  88. /* type : function */
  89. /* access : public */
  90. /* desc : 방재고실사입력 조회(관리자) */
  91. /* param : */
  92. /* return : */
  93. /* --------------------------------------------------*/
  94. function fSearch(flag) {
  95. var goodcd = model.getValue("/root/main/cond/goodcd");
  96. var oproomcd = model.getValue("/root/main/cond/oproomcd");
  97. if(flag=="1") {
  98. } else {
  99. if( oproomcd == "" && goodcd == "") {
  100. messageBox("수술방을 선택하지 ", "E007");
  101. model.setFocus("cmb_oproomcd");
  102. return;
  103. }
  104. }
  105. model.removeNodeset("/root/main/stoclist");
  106. model.removenode("/root/send");
  107. model.makeNode("/root/send/reqdata");
  108. model.copyNode("/root/send/reqdata", "/root/main/cond");
  109. submit("TRMNP03906");
  110. grd_stoclist.colStyle(20, "data", "background-color") = "#ccffcc";
  111. if( model.getValue("/root/main/cond/cnfmyn") == "Y" ) {
  112. grd_stoclist.colDisabled(20) = "true";//불출수량
  113. }else {
  114. grd_stoclist.colDisabled(20) = "false";//불출수량
  115. }
  116. }
  117. /* --------------------------------------------------*/
  118. /* type : function */
  119. /* access : public */
  120. /* desc : 방재고실사입력 버튼 조회 */
  121. /* param : */
  122. /* return : */
  123. /* --------------------------------------------------*/
  124. function fBtnSearch(pFlag) {
  125. var goodcd = model.getValue("/root/main/cond/goodcd");
  126. var oproomcd = model.getValue("/root/main/cond/oproomcd");
  127. var goodnm = model.getValue("/root/main/cond/goodnm");
  128. var refflag = model.getValue("/root/main/cond/refflag");
  129. var variable = model.getValue("/root/main/cond/variable");
  130. var level = model.getValue("/root/temp/logginlevel/usrlevel");
  131. //2009.05.13 조회 버튼 플래그 값 셋팅
  132. model.setValue("/root/main/cond/stocflag", pFlag);
  133. model.setValue("/root/main/cond/searflag", pFlag);
  134. var stocflag = model.getValue("/root/main/cond/stocflag");
  135. if( ( level == "0" ) ) {//일반유저
  136. if( oproomcd == "" ) {
  137. messageBox("수술방을 선택하지 ", "E007");
  138. model.setFocus("cmb_oproomcd");
  139. return;
  140. }
  141. if( stocflag == "R" || stocflag == "U" ) {
  142. grd_stoclist.colDisabled(17) = "true";
  143. grd_stoclist.colDisabled(15) = "false";
  144. grd_stoclist.colDisabled(21) = "true";
  145. grd_stoclist.colDisabled(22) = "true";
  146. grd_stoclist.colDisabled(23) = "true";
  147. }else if( stocflag == "I" ){
  148. grd_stoclist.colDisabled(17) = "false";
  149. grd_stoclist.colDisabled(15) = "true";
  150. grd_stoclist.colDisabled(21) = "true";
  151. grd_stoclist.colDisabled(22) = "true";
  152. grd_stoclist.colDisabled(23) = "true";
  153. }else {
  154. grd_stoclist.colDisabled(17) = "true";
  155. grd_stoclist.colDisabled(15) = "true";
  156. grd_stoclist.colDisabled(21) = "true";
  157. grd_stoclist.colDisabled(22) = "true";
  158. grd_stoclist.colDisabled(23) = "true";
  159. }
  160. }else {
  161. }
  162. model.removeNodeset("/root/main/stoclist");
  163. model.removenode("/root/send");
  164. model.makeNode("/root/send/reqdata");
  165. model.copyNode("/root/send/reqdata", "/root/main/cond");
  166. if( ( level == "M" )||( level == "C" ) ) {//관리자
  167. submit("TRMNP03906");
  168. grd_stoclist.colStyle(20, "data", "background-color") = "#ccffcc";
  169. }else {
  170. submit("TRMNP03904");
  171. if( stocflag == "R" || stocflag == "U" ) {
  172. grd_stoclist.colStyle(15, "data", "background-color") = "#ccffcc";
  173. }else if( stocflag == "I" ){
  174. grd_stoclist.colStyle(17, "data", "background-color") = "#ccffcc";
  175. }else {
  176. grd_stoclist.colStyle(15, "data", "background-color") = "transparent";
  177. grd_stoclist.colStyle(17, "data", "background-color") = "transparent";
  178. }
  179. }
  180. }
  181. /* --------------------------------------------------*/
  182. /* type : function */
  183. /* access : public */
  184. /* desc : 물품 조회 팝업 후 처리 */
  185. /* param : */
  186. /* return : */
  187. /* --------------------------------------------------*/
  188. function fSetGoodCd(paramData) {
  189. var variable = "'";
  190. var goodcd = "";
  191. var goodnm = "";
  192. var oldgoodcd, oldgoodnm, oldvariable;
  193. oldgoodcd = model.getValue("/root/main/cond/goodcd");
  194. oldgoodnm = model.getValue("/root/main/cond/goodnm");
  195. oldvariable = model.getValue("/root/main/cond/variable");
  196. var getData = paramData;
  197. if( getData != "") {
  198. if( model.getValue("/root/temp/chkcncl") != "C" ) {
  199. var getDataTemp1 = getData.split("▩");
  200. for( var i = 0; i < getDataTemp1.length-1; i++) {
  201. var getDataTemp2 = getDataTemp1[i].split("|");
  202. variable = variable + getDataTemp2[0] + getDataTemp2[2] + "'";
  203. goodcd = goodcd + getDataTemp2[0];
  204. goodnm = goodnm + getDataTemp2[1];
  205. if(( i+1) != (getDataTemp1.length-1) ) {
  206. variable = variable + ", '";
  207. goodcd = goodcd + ", ";
  208. goodnm = goodnm + ", ";
  209. }
  210. }
  211. if( oldgoodcd != "" ) {
  212. goodcd = oldgoodcd + ", " + goodcd
  213. }
  214. if( oldgoodnm != "" ) {
  215. goodnm = oldgoodnm + ", " + goodnm
  216. }
  217. if( oldvariable != "" ) {
  218. variable = oldvariable + ", " + variable
  219. }
  220. model.setValue("/root/main/cond/goodcd", goodcd);
  221. model.setValue("/root/main/cond/goodnm", goodnm);
  222. model.setValue("/root/main/cond/variable", variable);
  223. model.refresh();
  224. fSearch();
  225. }
  226. }
  227. }
  228. /* --------------------------------------------------*/
  229. /* type : function */
  230. /* access : public */
  231. /* desc : 방재고실사입력 실사량입력 */
  232. /* param : */
  233. /* return : */
  234. /* --------------------------------------------------*/
  235. function fSave( ) {
  236. var iRows = -1;
  237. var chkflag, oproomcd, goodcd, allsizespecid, bfsafestocqty, safestocqty, reqcnfmyn;
  238. var stocqty, refdeptflag, stocflag, undeliveqty, deliveqty, stat, cnfmyn, reqdd, inspqty, reqqty;
  239. var cnt = 0, chkcnt = 0;
  240. iRows = grd_stoclist.rows;
  241. var stoclist = "m▦oproomcd▦goodcd▦allsizespecid▦bfsafestocqty▦inspqty▦refdeptflag▦safestocqty▦stocflag▦reqqty▦deliveqty▦undeliveqty▦cnfmyn▦reqdd";
  242. if( model.getValue("/root/main/cond/searflag") == "A" ) {
  243. messageBox("전체조회시는 저장을 ", "E001");
  244. return;
  245. }
  246. for( var i = 1; i <= iRows; i++ ) {
  247. chkflag = model.getValue("/root/main/stoclist[" + i + "]/chkflag");
  248. oproomcd = model.getValue("/root/main/stoclist[" + i + "]/oproomcd");
  249. goodcd = model.getValue("/root/main/stoclist[" + i + "]/goodcd");
  250. allsizespecid = model.getValue("/root/main/stoclist[" + i + "]/allsizespecid");
  251. bfsafestocqty = model.getValue("/root/main/stoclist[" + i + "]/bfsafestocqty");
  252. safestocqty = model.getValue("/root/main/stoclist[" + i + "]/safestocqty");
  253. stocqty = model.getValue("/root/main/stoclist[" + i + "]/stocqty");
  254. inspqty = model.getValue("/root/main/stoclist[" + i + "]/inspqty");
  255. deliveqty = model.getValue("/root/main/stoclist[" + i + "]/deliveqty");
  256. rtnqty = model.getValue("/root/main/stoclist[" + i + "]/rtnqty");
  257. undeliveqty = model.getValue("/root/main/stoclist[" + i + "]/undeliveqty");
  258. stat = model.getValue("/root/main/stoclist[" + i + "]/stat");
  259. reqdd = model.getValue("/root/main/stoclist[" + i + "]/reqdd");
  260. reqcnfmyn = model.getValue("/root/main/stoclist[" + i + "]/reqcnfmyn");
  261. refdeptflag = model.getValue("/root/main/cond/refdeptflag");
  262. stocflag = model.getValue("/root/main/cond/stocflag");
  263. if( reqcnfmyn == "Y"&&reqdd == getCurrentDate().substr(0, 8) ) {
  264. messageBox("확정된 당일의뢰는 CCR에서 확정취소를 해야만 수정가능합니다.", "E000");
  265. return;
  266. }
  267. if( stocflag == "R"||stocflag == "U" ) {//재고등록, 변경일때는 실사량 0
  268. inspqty = "0";
  269. cnfmyn = "N";
  270. reqqty = (parseInt(safestocqty) - parseInt(bfsafestocqty));
  271. }else {
  272. cnfmyn = "N";//재고실사일경우 자동 승인 ==> CSR 승인으로 변경 2009.04.13
  273. reqqty = "0";
  274. }
  275. if( chkflag == "true" ) {
  276. //if( stocflag == "R" ) {
  277. // if( parseInt(bfsafestocqty) > 1 ) {//안전재고가 있으면 변경으로 해야함
  278. // messageBox("안전재고가 있는경우 안전재고 변경으로 변경 가능합니다.", "E000");
  279. // return;
  280. // }
  281. //}
  282. if( stocflag == "R"||stocflag == "U" ) {//재고등록, 변경
  283. if( parseInt(reqqty) == 0 ) {
  284. chkcnt += 1;
  285. continue;
  286. }
  287. if( parseInt(bfsafestocqty) < 1 ) {//이전 재고가 있으면 0입력가능
  288. if( safestocqty == "0"||safestocqty == "" ) {
  289. messageBox("수량을 입력하지 않았습니다.!", "E000");
  290. return;
  291. }
  292. }
  293. }else {
  294. if( inspqty == "0"||inspqty == "" ) {//실사량을 입력하지 않으면 리턴
  295. messageBox("수량을 입력하지 않았습니다.!", "E000");
  296. return;
  297. }
  298. if( reqcnfmyn == "Y" ) {//실사, 확정이면 I
  299. stat = "I";
  300. }
  301. }
  302. //2009.05.13 안전재고등록, 변경 확정된 조회리스트에서 수량변경시 재고변경 및 입력으로 플래그 셋팅
  303. if( (reqqty != 0)&&(parseInt(inspqty) == 0)&&(stocflag == "R"||stocflag == "U")&&(reqcnfmyn == "Y") ) {
  304. stocflag = "U";
  305. stat = "I";
  306. }
  307. cnt += 1;
  308. stoclist = stoclist + "▩" + stat + "▦" + oproomcd + "▦" + goodcd + "▦" + allsizespecid + "▦" + bfsafestocqty + "▦" + inspqty
  309. + "▦" + refdeptflag + "▦" + safestocqty + "▦" + stocflag + "▦" + reqqty
  310. + "▦" + "0" + "▦" + "0" + "▦" + cnfmyn + "▦" + reqdd;
  311. }
  312. }
  313. if( cnt > 0 ) {
  314. model.removenode("/root/send");
  315. model.makeNode("/root/send/reqdata");
  316. model.makeNode("/root/send/savedata");
  317. model.copyNode("/root/send/reqdata", "/root/main/cond");
  318. model.setValue("/root/send/savedata", stoclist);
  319. submit("TXMNP03901");
  320. }else {
  321. if( chkcnt > 0 ) {
  322. messageBox("변경된 수량이 없습니다.", "E000");
  323. }else {
  324. messageBox("선택한것이", "I004");
  325. }
  326. }
  327. }
  328. /* --------------------------------------------------*/
  329. /* type : function */
  330. /* access : public */
  331. /* desc : 재고 신청 확정 */
  332. /* param : */
  333. /* return : */
  334. /* --------------------------------------------------*/
  335. function fCnfmSave() {
  336. var iRows = -1;
  337. var chkflag, oproomcd, goodcd, allsizespecid, bfsafestocqty, safestocqty, stocqty, refdeptflag, stocflag, reqqty, deliveqty;
  338. var undeliveqty, cnfmyn, stat, reqdd, bfdeliveqty, inspqty, reqcnfmyn, realdeliveqty;
  339. var cnt = 0, chkcnt = 0;
  340. iRows = grd_stoclist.rows;
  341. var stoclist = "m▦oproomcd▦goodcd▦allsizespecid▦bfsafestocqty▦inspqty▦refdeptflag▦safestocqty▦stocflag▦reqqty▦deliveqty▦undeliveqty▦cnfmyn▦reqdd▦realdeliveqty";
  342. for( var i = 1; i <= iRows; i++ ) {
  343. chkflag = model.getValue("/root/main/stoclist[" + i + "]/chkflag");
  344. oproomcd = model.getValue("/root/main/stoclist[" + i + "]/oproomcd");
  345. goodcd = model.getValue("/root/main/stoclist[" + i + "]/goodcd");
  346. allsizespecid = model.getValue("/root/main/stoclist[" + i + "]/allsizespecid");
  347. bfsafestocqty = model.getValue("/root/main/stoclist[" + i + "]/bfsafestocqty");
  348. safestocqty = model.getValue("/root/main/stoclist[" + i + "]/safestocqty");
  349. stocqty = model.getValue("/root/main/stoclist[" + i + "]/stocqty");
  350. deliveqty = model.getValue("/root/main/stoclist[" + i + "]/deliveqty");
  351. bfdeliveqty = model.getValue("/root/main/stoclist[" + i + "]/bfdeliveqty");
  352. rtnqty = model.getValue("/root/main/stoclist[" + i + "]/rtnqty");
  353. reqqty = model.getValue("/root/main/stoclist[" + i + "]/reqqty");
  354. undeliveqty = model.getValue("/root/main/stoclist[" + i + "]/undeliveqty");
  355. stat = model.getValue("/root/main/stoclist[" + i + "]/stat");
  356. reqdd = model.getValue("/root/main/stoclist[" + i + "]/reqdd");
  357. inspqty = model.getValue("/root/main/stoclist[" + i + "]/inspqty");
  358. stocflag = model.getValue("/root/main/stoclist[" + i + "]/stocflag");
  359. refdeptflag = model.getValue("/root/main/cond/refdeptflag");
  360. //stocflag = model.getValue("/root/main/cond/stocflag");
  361. reqcnfmyn = model.getValue("/root/main/stoclist[" + i + "]/reqcnfmyn");
  362. if( stocflag == "R"||stocflag == "U" ) {//재고등록, 변경일때는 실사량 0
  363. inspqty = "0";
  364. }
  365. if( undeliveqty > 0 ) {//미불출있으면 일부승인 플래그
  366. cnfmyn = "S";
  367. if( chkflag == "true" ) {
  368. if( parseInt(deliveqty) == parseInt(bfdeliveqty) ) {
  369. messageBox("이미 불출한 수량입니다.", "E000");
  370. return;
  371. }
  372. }
  373. }else {
  374. cnfmyn = "Y";
  375. }
  376. if( rtnqty > 0 ) {
  377. deliveqty = -(rtnqty);
  378. }
  379. if( chkflag == "true" ) {
  380. if( reqcnfmyn == "Y" ) {
  381. chkcnt += 1;
  382. continue;
  383. }
  384. cnt += 1;
  385. stoclist = stoclist + "▩" + stat + "▦" + oproomcd + "▦" + goodcd + "▦" + allsizespecid + "▦" + bfsafestocqty + "▦" + inspqty
  386. + "▦" + refdeptflag + "▦" + safestocqty + "▦" + stocflag + "▦" + reqqty
  387. + "▦" + deliveqty + "▦" + undeliveqty + "▦" + cnfmyn + "▦" + reqdd + "▦" + deliveqty;
  388. }
  389. }
  390. if( cnt > 0 ) {
  391. model.removenode("/root/send");
  392. model.makeNode("/root/send/reqdata");
  393. model.makeNode("/root/send/savedata");
  394. model.copyNode("/root/send/reqdata", "/root/main/cond");
  395. model.setValue("/root/send/savedata", stoclist);
  396. submit("TXMNP03902");
  397. }else {
  398. if( chkcnt > 0 ) {
  399. messageBox("이미 확정된것만 선택하셨습니다.", "E000");
  400. }else {
  401. messageBox("선택한것이", "I004");
  402. }
  403. }
  404. }
  405. /* --------------------------------------------------*/
  406. /* type : function */
  407. /* access : public */
  408. /* desc : 재고 신청 확정취소 */
  409. /* param : */
  410. /* return : */
  411. /* --------------------------------------------------*/
  412. function fCnclCnfmSave() {
  413. var iRows = -1;
  414. var chkflag, oproomcd, goodcd, allsizespecid, bfsafestocqty, safestocqty, stocqty, refdeptflag, stocflag, reqqty, deliveqty, undeliveqty, cnfmyn, stat, reqdd, bfdeliveqty;
  415. var cnt = 0, chkcnt = 0;
  416. iRows = grd_stoclist.rows;
  417. var stoclist = "m▦oproomcd▦goodcd▦allsizespecid▦bfsafestocqty▦inspqty▦refdeptflag▦safestocqty▦stocflag▦reqqty▦deliveqty▦undeliveqty▦cnfmyn▦reqdd▦realdeliveqty";
  418. for( var i = 1; i <= iRows; i++ ) {
  419. chkflag = model.getValue("/root/main/stoclist[" + i + "]/chkflag");
  420. oproomcd = model.getValue("/root/main/stoclist[" + i + "]/oproomcd");
  421. goodcd = model.getValue("/root/main/stoclist[" + i + "]/goodcd");
  422. allsizespecid = model.getValue("/root/main/stoclist[" + i + "]/allsizespecid");
  423. bfsafestocqty = model.getValue("/root/main/stoclist[" + i + "]/bfsafestocqty");
  424. safestocqty = model.getValue("/root/main/stoclist[" + i + "]/safestocqty");
  425. stocqty = model.getValue("/root/main/stoclist[" + i + "]/stocqty");
  426. deliveqty = model.getValue("/root/main/stoclist[" + i + "]/deliveqty");
  427. bfdeliveqty = model.getValue("/root/main/stoclist[" + i + "]/bfdeliveqty");
  428. rtnqty = model.getValue("/root/main/stoclist[" + i + "]/rtnqty");
  429. reqqty = model.getValue("/root/main/stoclist[" + i + "]/reqqty");
  430. undeliveqty = model.getValue("/root/main/stoclist[" + i + "]/undeliveqty");
  431. stat = model.getValue("/root/main/stoclist[" + i + "]/stat");
  432. reqdd = model.getValue("/root/main/stoclist[" + i + "]/reqdd");
  433. inspqty = model.getValue("/root/main/stoclist[" + i + "]/inspqty");
  434. stocflag = model.getValue("/root/main/stoclist[" + i + "]/stocflag");
  435. refdeptflag = model.getValue("/root/main/cond/refdeptflag");
  436. //stocflag = model.getValue("/root/main/cond/stocflag");
  437. reqcnfmyn = model.getValue("/root/main/stoclist[" + i + "]/reqcnfmyn");
  438. cnfmyn = "N";
  439. if( chkflag == "true" ) {
  440. if( reqcnfmyn == "N" ) {//미확정이면 확정취소 불가
  441. chkcnt += 1;
  442. continue;
  443. }
  444. cnt += 1;
  445. stoclist = stoclist + "▩" + "C" + "▦" + oproomcd + "▦" + goodcd + "▦" + allsizespecid + "▦" + bfsafestocqty + "▦" + inspqty
  446. + "▦" + refdeptflag + "▦" + safestocqty + "▦" + stocflag + "▦" + reqqty
  447. + "▦" + deliveqty + "▦" + undeliveqty + "▦" + cnfmyn + "▦" + reqdd + "▦" + bfdeliveqty;
  448. }
  449. }
  450. if( cnt > 0 ) {
  451. model.removenode("/root/send");
  452. model.makeNode("/root/send/reqdata");
  453. model.makeNode("/root/send/savedata");
  454. model.copyNode("/root/send/reqdata", "/root/main/cond");
  455. model.setValue("/root/send/savedata", stoclist);
  456. submit("TXMNP03902");
  457. }else {
  458. if( chkcnt > 0 ) {
  459. messageBox("미확정 리스트는 확정 취소를 ", "E001");
  460. }else {
  461. messageBox("선택한것이", "I004");
  462. }
  463. }
  464. }
  465. /* --------------------------------------------------*/
  466. /* type : function */
  467. /* access : public */
  468. /* desc : 방재고 등록 이력 삭제 */
  469. /* param : */
  470. /* return : */
  471. /* --------------------------------------------------*/
  472. function fDelHist() {
  473. var chkflag, goodcd, allsizespecid, oproomcd, refdeptflag, pFlag, reqdd;
  474. var cnt = 0;
  475. var dellist = "m▦goodcd▦allsizespecid▦oproomcd▦refdeptflag▦reqdd";
  476. for( var i = 1; i <= grd_stoclist.rows; i++ ) {
  477. chkflag = model.getValue("/root/main/stoclist[" + i + "]/chkflag");
  478. goodcd = model.getValue("/root/main/stoclist[" + i + "]/goodcd");
  479. allsizespecid = model.getValue("/root/main/stoclist[" + i + "]/allsizespecid");
  480. oproomcd = model.getValue("/root/main/stoclist[" + i + "]/oproomcd");
  481. reqdd = model.getValue("/root/main/stoclist[" + i + "]/reqdd");
  482. refdeptflag = model.getValue("/root/main/cond/refdeptflag");
  483. if( chkflag == "true" ) {
  484. dellist = dellist + "▩" + "C" + "▦" + goodcd + "▦" + allsizespecid + "▦" + oproomcd + "▦" + refdeptflag + "▦" + reqdd;
  485. cnt++;
  486. }
  487. }
  488. if( cnt > 0 ) {
  489. model.removenode("/root/send");
  490. model.makeNode("/root/send/reqdata");
  491. model.makeNode("/root/send/savedata");
  492. model.copyNode("/root/send/reqdata", "/root/main/cond");
  493. model.setValue("/root/send/savedata", dellist);
  494. submit("TXMNP03903");
  495. pFlag = model.getValue("/root/temp/btnflag");
  496. fBtnSearch(pFlag);
  497. }else {
  498. messageBox("선택하신 물품이 없습니다.!", "E000");
  499. return;
  500. }
  501. }
  502. /* --------------------------------------------------*/
  503. /* type : function */
  504. /* access : public */
  505. /* desc : 다음 행으로 자동 이동 이벤트 */
  506. /* param : */
  507. /* return : */
  508. /* --------------------------------------------------*/
  509. function fNextRowM() {
  510. var row = -1;
  511. var rows = -1;
  512. var col = -1;
  513. var stocflag = model.getValue("/root/main/cond/stocflag");
  514. row = grd_stoclist.row;
  515. rows = grd_stoclist.rows;
  516. col = grd_stoclist.col;
  517. if( (row == (rows-1))||(row < 1)||(col == 1) ) {
  518. return;
  519. }else {
  520. if( col == 20 ) {
  521. grd_stoclist.row = row + 1;
  522. grd_stoclist.editCell();
  523. }
  524. }
  525. }
  526. function fSubmitOnScroll() {
  527. if(grd_stoclist.vscroll.attribute("max") == grd_stoclist.vscroll.attribute("pos")) {
  528. // end of scroll
  529. model.removenode("/root/send");
  530. model.makeNode("/root/send/reqdata");
  531. model.copyNode("/root/send/reqdata", "/root/main/cond");
  532. model.setValue("/root/send/reqdata/offset", grd_stoclist.rows-grd_stoclist.fixedRows); // grid의 header row는 제외
  533. submit("TRMNP03906");
  534. grd_stoclist.dispatch("onmouseup"); // 스크롤바 처리를 위한 이벤트 발생
  535. }
  536. }