SMRSD00400.xjs 48 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[var xAuth = frmf_checkAuth("X");
  3. var pAuth = frmf_checkAuth("P");
  4. var vPurcAuth = "1";
  5. var gExeptionFlag = true;
  6. var gExeptionInstcd1 = "012";
  7. var gExeptionInstcd2 = "012";
  8. var gExeptionInstcd3 = "012";
  9. var gExeptionInstcd4 = "012";
  10. var gPurcDeptcd = "" ;
  11. var gcount = 0 ;
  12. var gReqNoReadFlag = true;
  13. var cmbworkflagold = "X" ;
  14. function fInit()
  15. {
  16. fCheckAuth();
  17. fInitialize();
  18. return;
  19. }
  20. function fCheckAuth()
  21. {
  22. grp_sea.btn_search.enable = frmf_checkAuth("R") ;
  23. }
  24. function fInitialize()
  25. {
  26. ds_send_goodlist.clearData();
  27. ds_send_goodlist.addRow();
  28. ds_send_goodreq.clearData();
  29. ds_send_goodreq.addRow();
  30. grp_button.btn_save.enable = false;
  31. grp_button.btn_accept.enable = false;
  32. grp_button.ckb_accept.visible = false;
  33. misfGridInit(grd_goodreq);
  34. misfMsterDetailSet(grd_goodreq,null, "TRRSD00411" ,"Y");
  35. grp_sea.opt_instcd.value = sysf_getUserInfo("dutplceinstcd");
  36. grp_sea.opt_instcdnm.value = sysf_getUserInfo("dutplceinstnm");
  37. gExeptionFlag = (gExeptionInstcd1 == grp_sea.opt_instcd.value) ? true : false;
  38. gExeptionFlag = (gExeptionInstcd2 == grp_sea.opt_instcd.value) ? true : false;
  39. gExeptionFlag = (gExeptionInstcd3 == grp_sea.opt_instcd.value) ? true : false;
  40. gExeptionFlag = (gExeptionInstcd4 == grp_sea.opt_instcd.value) ? true : false;
  41. grp_sea.opt_requser.value = sysf_getUserInfo("userid");
  42. grp_sea.opt_requsernm.value = sysf_getUserInfo("usernm");
  43. rszfUserReqFlagList("swt_search.gd_find.group2.cmb_reqflag",sysf_getUserInfo("dutplceinstcd"),grp_sea.opt_requser.value, "1", "S" );
  44. grp_sea.ipt_reqdd.value = utlf_getCurrentDate();
  45. grp_sea.ipt_reqddnew.value = utlf_getCurrentDate();
  46. grp_sea.rdo_inputmethod.value = "1";
  47. grp_sea.sel_goodflag.index = 0;
  48. if (ds_init_workflag_workflaglist.rowcount > 0)
  49. {
  50. grp_sea.cmb_workflag.index = 0;
  51. }
  52. swt_search.gd_find.grd_goodlist.setCellProperty("Head", 1, "text", 1);
  53. ds_send_reqpsn.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  54. ds_send_reqpsn.setColumn(0, "emplno", grp_sea.opt_requser.value);
  55. var oParam = {};
  56. oParam.id = "TRRSD00407";
  57. oParam.service = "purcbaseapp.PurcBaseMngt";
  58. oParam.method = "reqGetReqPsnList";
  59. oParam.inds = "req=ds_send_reqpsn";
  60. oParam.outds = "ds_main_ReqpsnLists_reqpsnlist=reqpsnlist";
  61. oParam.async = false;
  62. //oParam.callback = "cf_TRRSD00407";
  63. tranf_submit(oParam);
  64. rszfRscsysinftLists(sysf_getUserInfo("dutplceinstcd"));
  65. gPurcDeptcd = getRscsysinftInfo("purcdept");
  66. fSetTempDept();
  67. fReqdeptCopy();
  68. gReqNoReadFlag = false;
  69. fDeptReqNoQuery();
  70. }
  71. function fSetTempDept()
  72. {
  73. if( gPurcDeptcd == sysf_getUserInfo("dutplcecd"))
  74. {
  75. grp_sea.cpt_dept.visible = true;
  76. grp_sea.ipt_tempdeptcd.visible = true;
  77. grp_sea.ipt_tempdeptnm.visible = true;
  78. grp_sea.btn_tempdeptcd.visible = true;
  79. ds_send_goodlist.setColumn(0, "purcdeptflag", "P");
  80. }
  81. else
  82. {
  83. grp_sea.cpt_dept.visible = false;
  84. grp_sea.ipt_tempdeptcd.visible = false;
  85. grp_sea.ipt_tempdeptnm.visible = false;
  86. grp_sea.btn_tempdeptcd.visible = false;
  87. ds_send_goodlist.setColumn(0, "purcdeptflag", "X");
  88. }
  89. }
  90. function fReqdeptCopy()
  91. {
  92. var cPath = ds_init_CopyData;
  93. var sPath = ds_main_ReqpsnLists_reqpsnlist;
  94. var tPath = ds_init_ReqDeptLists_reqdeptlist;
  95. var iDataCnt = sPath.rowcount;
  96. if (iDataCnt < 1)
  97. {
  98. return;
  99. }
  100. tPath.rowcount;
  101. var iDataCnt = sPath.rowcount;
  102. var Idx = 0;
  103. if (!utlf_isNull(sPath.lookup("reqdeptcd", sysf_getUserInfo("dutplcecd"), "reqdeptnm")))
  104. {
  105. dsf_makeValue(cPath, "value", "string", sPath.lookup("reqdeptcd", sysf_getUserInfo("dutplcecd"), "reqdeptcd"), 0);
  106. dsf_makeValue(cPath, "label", "string", sPath.lookup("reqdeptcd", sysf_getUserInfo("dutplcecd"), "reqdeptnm"), 0);
  107. tPath.copyData(cPath);
  108. Idx++;
  109. }
  110. for (var k = 0; k < iDataCnt; k++)
  111. {
  112. vReqDept = sPath.getColumn(k, "reqdeptcd");
  113. vReqDeptNm = sPath.getColumn(k, "reqdeptnm");
  114. if (!utlf_isNull(vReqDeptNm) && utlf_isNull(tPath.lookup("value", vReqDept, "value")))
  115. {
  116. cPath.addRow();
  117. cPath.setColumn(eval(cPath.rowcount - 1), "value", vReqDept);
  118. cPath.setColumn(eval(cPath.rowcount - 1), "label", vReqDeptNm);
  119. tPath.copyData(cPath);
  120. Idx++;
  121. } //end if
  122. } //end for
  123. grp_sea.cmb_reqdeptcd.index = 0;
  124. fReqpridCopy();
  125. }
  126. function fReqpridCopy()
  127. {
  128. var cPath = ds_init_CopyData;
  129. var sPath = ds_main_ReqpsnLists_reqpsnlist;
  130. var tPath = ds_init_ReqpridLists_reqpridlist;
  131. if(String(grp_sea.cmb_reqdeptcd.value).length== 0 )
  132. {
  133. sysf_messageBox("청구부서를 " ,"C002");
  134. grp_sea.cmb_reqdeptcd.setFocus();
  135. return;
  136. }
  137. var iDataCnt = sPath.rowcount;
  138. if (iDataCnt < 1)
  139. {
  140. return;
  141. }
  142. tPath.clearData();
  143. var Idx = 0;
  144. var iDataCnt = sPath.rowcount;
  145. var tReqDept = grp_sea.cmb_reqdeptcd.value;
  146. for (var k = 0; k < iDataCnt; k++)
  147. {
  148. vReqDept = sPath.getColumn(k, "reqdeptcd");
  149. if (vReqDept == tReqDept)
  150. {
  151. vReqPrid = sPath.getColumn(k, "reqprid");
  152. vReqPridNm = sPath.getColumn(k, "reqpridnm");
  153. if (!utlf_isNull(vReqPridNm) && utlf_isNull(tPath.lookup("value", vReqPrid, "value")))
  154. {
  155. dsf_makeValue(cPath, "value", "string", vReqPrid, Idx);
  156. dsf_makeValue(cPath, "label", "string", vReqPridNm, Idx);
  157. tPath.copyData(cPath);
  158. Idx++;
  159. }
  160. }
  161. }
  162. if (ds_send_goodlist.getColumn(0, "purcdeptflag") == "P")
  163. {
  164. var codynode = tPath;
  165. if (codynode.rowcount < 1)
  166. {
  167. tPath.addRow();
  168. dsf_makeValue(cPath, "value", "string", "1", 0);
  169. dsf_makeValue(cPath, "label", "string", "일", 0);
  170. tPath.copyRow(0, cPath, 0);
  171. tPath.addRow();
  172. dsf_makeValue(cPath, "value", "string", "4", 0);
  173. dsf_makeValue(cPath, "label", "string", "월", 0);
  174. tPath.copyRow(1, cPath, 0);
  175. tPath.addRow();
  176. dsf_makeValue(cPath, "value", "string", "2", 0);
  177. dsf_makeValue(cPath, "label", "string", "주", 0);
  178. tPath.copyRow(2, cPath, 0);
  179. }
  180. }
  181. grp_sea.cmb_reqpridflag.index = 0;
  182. }
  183. function fDeptReqNoQuery()
  184. {
  185. if (gReqNoReadFlag) return;
  186. if(!utlf_isNull(grp_sea.cmb_reqdeptcd.value) && !utlf_isNull(grp_sea.cmb_reqpridflag.value) && !utlf_isNull(grp_sea.ipt_reqdd.value) && !utlf_isNull(grp_sea.cmb_workflag.value))
  187. {
  188. var oParam = {};
  189. oParam.id = "TRRSD00408";
  190. oParam.service = "reqapp.ReqMngt";
  191. oParam.method = "reqGetDeptReqNo";
  192. oParam.inds = "req=ds_send_goodreq";
  193. oParam.outds = "ds_main_DeptReqnoLists_reqnolist=reqnolist";
  194. oParam.async = false;
  195. //oParam.callback = "cf_TRRSD00408";
  196. tranf_submit(oParam);
  197. if (ds_main_DeptReqnoLists_reqnolist.rowcount < 1)
  198. {
  199. grp_sea.chk_reqnonew.value = "Y";
  200. fNewReqNoVisibility();
  201. }
  202. else
  203. {
  204. grp_sea.chk_reqnonew.value = "";
  205. fNewReqNoVisibility();
  206. grp_sea.cmb_reqno.index = 0;
  207. }
  208. }
  209. }
  210. function fNewReqNoVisibility()
  211. {
  212. if (grp_sea.chk_reqnonew.value == "Y")
  213. {
  214. grp_sea.ipt_reqdd.visible = false;
  215. grp_sea.ipt_reqddnew.visible = true
  216. grp_sea.ipt_reqddnew.value = utlf_getCurrentDate();
  217. }
  218. else
  219. {
  220. grp_sea.ipt_reqddnew.visible = false;
  221. grp_sea.ipt_reqdd.visible = true;
  222. }
  223. }
  224. var vInstcd = "";
  225. var vReqdeptcd = "";
  226. function fReqSetList()
  227. {
  228. var vReqSetFlag = "N";
  229. if (utlf_isNull(grp_sea.opt_instcd.value))
  230. {
  231. sysf_messageBox("기관을 " ,"C002");
  232. return;
  233. }
  234. if (utlf_isNull(grp_sea.cmb_reqdeptcd.value))
  235. {
  236. sysf_messageBox("청구 부서를 " ,"C002");
  237. return;
  238. }
  239. if (vInstcd != grp_sea.opt_instcd.value) vReqSetFlag = "Y";
  240. if (vReqdeptcd != grp_sea.cmb_reqdeptcd.value) vReqSetFlag = "Y";
  241. if (vReqSetFlag == "N") return;
  242. vInstcd = grp_sea.opt_instcd.value;
  243. vReqdeptcd = grp_sea.cmb_reqdeptcd.value;
  244. ds_send_reqmst.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  245. ds_send_reqmst.setColumn(0, "reqdeptcd", grp_sea.cmb_reqdeptcd.value);
  246. swt_search.gd_set.grd_reqset.setCellProperty("Head", 1, "text", 1);
  247. misfGridInit(swt_search.gd_set.grd_reqset);
  248. misfGridInit(swt_search.gd_set.grd_setlist);
  249. var oParam = {};
  250. oParam.id = "TRRSD00211";
  251. oParam.service = "reqapp.ReqMngt";
  252. oParam.method = "reqGetReqMstSetList";
  253. oParam.inds = "req=ds_send_reqmst";
  254. oParam.outds = "ds_main_list_reqmst_reqsetmst=reqsetmst";
  255. oParam.async = false;
  256. //oParam.callback = "cf_TRRSD00211";
  257. tranf_submit(oParam);
  258. if (ds_main_list_reqmst_reqsetmst.rowcount == 0) return;
  259. if (utlf_isNull(ds_main_list_reqmst_reqsetmst.getColumn(0, "reqdeptcd"))) return;
  260. ds_main_list_reqmst_reqsetmst.rowposition = 0;
  261. fReqSetRead(ds_main_list_reqmst_reqsetmst.rowposition);
  262. misfMsterDetailRetrieve();
  263. }
  264. function fReqSetRead(pRow)
  265. {
  266. ds_send_reqset.setColumn(0, "instcd", ds_main_list_reqmst_reqsetmst.getColumn(pRow, "instcd"));
  267. ds_send_reqset.setColumn(0, "reqdeptcd", ds_main_list_reqmst_reqsetmst.getColumn(pRow, "reqdeptcd"));
  268. ds_send_reqset.setColumn(0, "reqprid", ds_main_list_reqmst_reqsetmst.getColumn(pRow, "reqprid"));
  269. ds_send_reqset.setColumn(0, "goodsetcd", ds_main_list_reqmst_reqsetmst.getColumn(pRow, "goodsetcd"));
  270. ds_send_reqset.setColumn(0, "goodsetnm", ds_main_list_reqmst_reqsetmst.getColumn(pRow, "goodsetnm"));
  271. misfGridInit(swt_search.gd_set.grd_reqset);
  272. var oParam = {};
  273. oParam.id = "TRRSD00210";
  274. oParam.service = "reqapp.ReqMngt";
  275. oParam.method = "reqGetReqSetList";
  276. oParam.inds = "req=ds_send_reqset";
  277. oParam.outds = "ds_main_list_reqset_reqsetlist=reqsetlist";
  278. oParam.async = false;
  279. //oParam.callback = "cf_TRRSD00210";
  280. tranf_submit(oParam);
  281. }
  282. function fAddReqDeptcdCombo()
  283. {
  284. var cPath = ds_init_CopyData;
  285. var sPath = ds_tempdept;
  286. var tPath = ds_init_ReqDeptLists_reqdeptlist;
  287. var iDataCnt = sPath.rowcount;
  288. if ( iDataCnt < 1)
  289. {
  290. return;
  291. }
  292. var ComboDataCnt = tPath.addRow();
  293. var vTempDeptCd = sPath.getColumn(0, "tempdeptcd");
  294. var vTempDeptNm = sPath.getColumn(0, "tempdeptnm");
  295. if (!utlf_isNull(vTempDeptCd))
  296. {
  297. dsf_makeValue(cPath, "value", "string", vTempDeptCd, 0);
  298. dsf_makeValue(cPath, "label", "string", vTempDeptNm, 0);
  299. tPath.copyRow(ComboDataCnt, cPath, 0);
  300. grp_sea.cmb_reqdeptcd.index = ComboDataCnt-1;
  301. }
  302. }
  303. function fSetReqAuth()
  304. {
  305. grp_button.btn_excel.enable = false;
  306. grp_button.btn_insert.enable = false;
  307. grp_button.btn_delete.enable = false;
  308. grp_button.btn_choice.enable = false;
  309. grp_button.btn_accept.enable = false;
  310. grp_button.btn_save.enable = false;
  311. grp_button.ckb_accept.value = "N";
  312. grp_button.ckb_accept.visible = false;
  313. if(String(grp_sea.opt_instcd.value).length==0) return;
  314. if(String(grp_sea.cmb_reqdeptcd.value).length==0) return;
  315. if(String(grp_sea.cmb_reqpridflag.value).length==0) return;
  316. if(grp_sea.cmb_reqpridflag.value == "1" && gExeptionFlag)
  317. {
  318. grp_button.btn_save.enable = true;
  319. grp_button.btn_accept.enable = true;
  320. grp_button.ckb_accept.value = "Y";
  321. grp_button.ckb_accept.visible = true;
  322. grp_button.btn_excel.enable = true;
  323. grp_button.btn_insert.enable = true;
  324. grp_button.btn_delete.enable = true;
  325. grp_button.btn_choice.enable = true;
  326. }
  327. else
  328. {
  329. fPurcAuthInfo(); // 청구승인자 Check
  330. if (grp_sea.cmb_reqpridflag.value == "4")
  331. {
  332. if (fLastDayCheck_2() )
  333. {
  334. grp_button.btn_save.enable = false;
  335. }
  336. else
  337. {
  338. grp_button.btn_save.enable = true;
  339. }
  340. }
  341. else
  342. {
  343. grp_button.btn_save.enable = true;
  344. }
  345. grp_button.btn_excel.enable = true;
  346. grp_button.btn_insert.enable = true;
  347. grp_button.btn_delete.enable = true;
  348. grp_button.btn_choice.enable = true;
  349. }
  350. if (ds_send_goodlist.getColumn(0, "purcdeptflag") == "P")
  351. {
  352. grp_button.btn_accept.enable = true;
  353. grp_button.ckb_accept.value = "Y";
  354. grp_button.ckb_accept.visible = true;
  355. }
  356. fDeptReqNoQuery();
  357. }
  358. function fPurcAuthInfo()
  359. {
  360. vPurcAuth = "1";
  361. grp_button.ckb_accept.value = "";
  362. var sPath = ds_main_ReqpsnLists_reqpsnlist;
  363. var iDataCnt = sPath.rowcount;
  364. if (iDataCnt < 1)
  365. {
  366. return;
  367. }
  368. tPath.clearData();
  369. var iDataCnt = sPath.rowcount;
  370. var tReqDept = grp_sea.cmb_reqdeptcd.value;
  371. var tReqprid = grp_sea.cmb_reqpridflag.value;
  372. for (var k = 0; k < iDataCnt; k++)
  373. {
  374. vReqDept = sPath.getColumn(k, "reqdeptcd");
  375. vReqprid = sPath.getColumn(k, "reqprid");
  376. if ((vReqDept == tReqDept) && (vReqprid == tReqprid))
  377. {
  378. if (sPath.getColumn(k, "reqaprvflag") == "2")
  379. {
  380. vPurcAuth = "2";
  381. grp_button.ckb_accept.value = "Y";
  382. break;
  383. }
  384. }
  385. }
  386. }
  387. function fLastDaySearch_2(pDate)
  388. {
  389. ds_send_lastdatesearch.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  390. ds_send_lastdatesearch.setColumn(0, "deldeptcd", gPurcDeptcd);
  391. ds_send_lastdatesearch.setColumn(0, "reqym", String(pDate).substr(0,6));
  392. var oParam = {};
  393. oParam.id = "TRRSC01701";
  394. oParam.service = "purcbaseapp.PurcBaseMngt";
  395. oParam.method = "reqGetRsdhdeymList";
  396. oParam.inds = "req=ds_send_lastdatesearch";
  397. oParam.outds = "ds_main_rsdhdeymlist=rsdhdeymlist";
  398. oParam.async = false;
  399. //oParam.callback = "cf_TRRSC01701";
  400. tranf_submit(oParam);
  401. }
  402. function fLastDayCheck_2()
  403. {
  404. var fbool = false;
  405. if (utlf_isNull(grp_sea.ipt_todd.value))
  406. {
  407. return false;
  408. }
  409. if (grp_sea.sel_goodflag.value == "PH")
  410. {
  411. return false;
  412. }
  413. if (grp_sea.cmb_reqpridflag.value == "4")
  414. {
  415. if (grp_sea.ipt_todd.value < utlf_getCurrentDate())
  416. {
  417. alert("청구 마감일이 지났습니다. 구매팀에 문의 하십시요!!");
  418. return true;
  419. }
  420. }
  421. return fbool;
  422. }
  423. function fLastDaySearch()
  424. {
  425. ds_send_lastdatesearch.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  426. ds_send_lastdatesearch.setColumn(0, "deldeptcd", grp_sea.cmb_reqdeptcd.value);
  427. ds_send_lastdatesearch.setColumn(0, "reqym", String(grp_sea.ipt_reqdd.value).substr(0,6));
  428. var oParam = {};
  429. oParam.id = "TRRSC01701";
  430. oParam.service = "purcbaseapp.PurcBaseMngt";
  431. oParam.method = "reqGetRsdhdeymList";
  432. oParam.inds = "req=ds_send_lastdatesearch";
  433. oParam.outds = "ds_main_rsdhdeymlist=rsdhdeymlist";
  434. oParam.async = false;
  435. //oParam.callback = "cf_TRRSC01701";
  436. tranf_submit(oParam);
  437. }
  438. function fNewReqNo()
  439. {
  440. fNewReqNoVisibility();
  441. if (grp_sea.chk_reqnonew.value == "Y")
  442. {
  443. if (ds_main_list_goodreq_goodreqlist.rowcount == 0) return;
  444. RetCls = sysf_messageBox("조회된 자료를 현재일자로 신규 생성합니다","S001");
  445. if ( RetCls == 6) //Yes
  446. {
  447. grp_sea.chk_reqnonew.value = "Y";
  448. fNewReqNoVisibility();
  449. for (var i = 0; i < ds_main_list_goodreq_goodreqlist.rowcount; i++)
  450. {
  451. ds_main_list_goodreq_goodreqlist.updatecontrol = false;
  452. ds_main_list_goodreq_goodreqlist.setRowType(i, "i");
  453. ds_main_list_goodreq_goodreqlist.updatecontrol = true;
  454. ds_main_list_goodreq_goodreqlist.setColumn(i, "deptaprvyn", "N");
  455. ds_main_list_goodreq_goodreqlist.setColumn(i, "deptaprvdd", "");
  456. ds_main_list_goodreq_goodreqlist.setColumn(i, "deptaprvnm", "");
  457. if (ds_main_list_goodreq_goodreqlist.getColumn(i, "acptflag" ) == "Y")
  458. {
  459. ds_main_list_goodreq_goodreqlist.setColumn(i, "acptflag", "N");
  460. ds_main_list_goodreq_goodreqlist.setColumn(i, "acptflagnm", "미접수");
  461. ds_main_list_goodreq_goodreqlist.setColumn(i, "acptdd", "");
  462. ds_main_list_goodreq_goodreqlist.setColumn(i, "acptcharid", "");
  463. ds_main_list_goodreq_goodreqlist.setColumn(i, "purcdmnddd", "");
  464. ds_main_list_goodreq_goodreqlist.setColumn(i, "purcdmndno", "");
  465. ds_main_list_goodreq_goodreqlist.setColumn(i, "purcdmndseq", "");
  466. ds_main_list_goodreq_goodreqlist.setColumn(i, "aprvyn", "N");
  467. ds_main_list_goodreq_goodreqlist.setColumn(i, "deliveprcsflag", "1");
  468. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false);
  469. misfSetReadOnlyCol(grd_goodreq, "all", "false", i);
  470. }
  471. }
  472. }
  473. else if ( RetCls == 7)
  474. {
  475. fNewReqNoVisibility();
  476. misfGridInit(grd_goodreq);
  477. }
  478. else
  479. {
  480. return;
  481. }
  482. }
  483. else
  484. {
  485. grp_sea.btn_search.click();
  486. if (ds_main_list_goodreq_goodreqlist.rowcount < 1)
  487. {
  488. return;
  489. }
  490. }
  491. }
  492. function fSearchButtonClick(fValue)
  493. {
  494. if(fCheckRetrieveData(false) == false)return;
  495. misfGridInit(grd_goodreq);
  496. if(String(grp_sea.cmb_reqno.value).length == 0)
  497. {
  498. grp_sea.ipt_reqdd.value = utlf_getCurrentDate();
  499. }
  500. if (utlf_isNull(grp_sea.cmb_reqno.value)) return;
  501. misfMsterDetailRetrieve();
  502. fGrantsCheck();
  503. fAfterRetr();
  504. var vAcctCnt = 0;
  505. var vReqAuth = "";
  506. var vReqDept = grp_sea.cmb_reqdeptcd.value;
  507. var vReqprid = grp_sea.cmb_reqpridflag.value;
  508. for (var fRow = 0; fRow < ds_main_list_goodreq_goodreqlist.rowcount; fRow++ )
  509. {
  510. vReqFlag = ds_main_list_goodreq_goodreqlist.getColumn(fRow, "reqflag") ;
  511. vReqAuth = fPurcAuthInfoRow(vReqDept,vReqprid,vReqFlag);
  512. ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqauth", vReqAuth);
  513. if (ds_main_list_goodreq_goodreqlist.getColumn(fRow, "allsizeyn") =="Y")
  514. {
  515. misfSetGridColor(grd_goodreq, "stocqty", "#FFFF00", "B", fRow);
  516. }
  517. if (ds_main_list_goodreq_goodreqlist.getColumn(fRow, "acptflag") == "Y" || ds_main_list_goodreq_goodreqlist.getColumn(fRow, "acptflag") == "R")
  518. {
  519. misfSetReadOnlyCol(grd_goodreq, "all", false, fRow);
  520. }
  521. else
  522. {
  523. if (vReqAuth =="2")
  524. {
  525. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false, fRow);
  526. }
  527. else
  528. {
  529. vAcctCnt++;
  530. if (gPurcDeptcd != sysf_getUserInfo("dutplcecd") )
  531. {
  532. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", true, fRow);
  533. }
  534. }
  535. }
  536. }
  537. if (vAcctCnt > 0)
  538. {
  539. if (gPurcDeptcd != sysf_getUserInfo("dutplcecd"))
  540. {
  541. grp_button.ckb_accept.visible = false;
  542. }
  543. grp_button.ckb_accept.value = "N";
  544. }
  545. else
  546. {
  547. grp_button.ckb_accept.visible = true;
  548. }
  549. if (grp_sea.ckb_sapreq.value == "Y")
  550. {
  551. misfColHidden(grd_goodreq, "rgstqty", false);
  552. }
  553. else
  554. {
  555. misfColHidden(grd_goodreq, "rgstqty", true);
  556. }
  557. }
  558. function fCheckRetrieveData(pmsg)
  559. {
  560. if(String(grp_sea.cmb_workflag.value).length== 0 )
  561. {
  562. if(pmsg == true)
  563. {
  564. sysf_messageBox("작업구분을 " ,"C002");
  565. grp_sea.cmb_workflag.setFocus();
  566. }
  567. return false;
  568. }
  569. if(String(grp_sea.opt_instcd.value).length== 0 )
  570. {
  571. if(pmsg == true)
  572. {
  573. sysf_messageBox("기관코드를 " ,"C002");
  574. grp_sea.opt_instcd.setFocus();
  575. }
  576. return false;
  577. }
  578. if(String(grp_sea.ipt_reqdd.value).length== 0 )
  579. {
  580. if(pmsg == true)
  581. {
  582. sysf_messageBox("청구일자를 " ,"C001");
  583. grp_sea.ipt_reqdd.setFocus();
  584. }
  585. return false;
  586. }
  587. if(String(grp_sea.cmb_reqpridflag.value).length== 0 )
  588. {
  589. if(pmsg == true)
  590. {
  591. sysf_messageBox("청구주기를 " ,"C002");
  592. grp_sea.cmb_reqpridflag.setFocus();
  593. }
  594. return false;
  595. }
  596. if(String(grp_sea.cmb_reqdeptcd.value).length== 0 )
  597. {
  598. if(pmsg == true)
  599. {
  600. sysf_messageBox("청구부서를 " ,"C002");
  601. grp_sea.cmb_reqdeptcd.setFocus();
  602. }
  603. return false;
  604. }
  605. if(String(grp_sea.opt_requser.value).length== 0 )
  606. {
  607. if(pmsg == true)
  608. {
  609. sysf_messageBox("청구자를 " ,"C002");
  610. grp_sea.opt_requser.setFocus();
  611. }
  612. return false;
  613. }
  614. return true;
  615. }
  616. function fGrantsCheck()
  617. {
  618. if (vPurcAuth == "2" || grp_sea.cmb_reqpridflag.value =="1")
  619. {
  620. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false);
  621. }
  622. else
  623. {
  624. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", true);
  625. }
  626. }
  627. function fAfterRetr()
  628. {
  629. if (ds_main_list_goodreq_goodmaxreqno.getColumn(0, "reqfix") == "Y")
  630. {
  631. fSetControlDisabled(true);
  632. }
  633. else
  634. {
  635. fSetControlDisabled(false);
  636. }
  637. }
  638. function fSetControlDisabled(pDisabled)
  639. {
  640. grp_sea.cmb_reqno.enable = !pDisabled;
  641. }
  642. function fPurcAuthInfoRow(pReqDept,pReqprid,pReqFlag)
  643. {
  644. var sPath = ds_main_ReqpsnLists_reqpsnlist;
  645. var vReqAuth = sPath.lookupExpr("reqdeptcd == '"+pReqDept+ "' && reqprid == '"+pReqprid+ "' && reqflag == '"+pReqFlag+"'", "reqaprvflag");
  646. vReqAuth = utlf_isNull(vReqAuth) ? "1" : vReqAuth;
  647. return vReqAuth;
  648. }
  649. var tReqFlagData = "A." // 01 Y 의료소모품
  650. + "B." // 02 Z 일반소모품
  651. + "C." // 03 K 의료비품
  652. + "D." // 04 G 일반비품
  653. + "E." // 05 P 약품및재료
  654. + "F." // 06 P 제제약품
  655. + "G." // 07 E 장비
  656. + "H." // 08 P 수액
  657. + "I." // 09 P 조영제
  658. + "S." // 10 B 수리관리
  659. + "X." // 11 T 교환물품
  660. + "Y." // 12 T 청구물품
  661. + "Z" ; // 13 T 멸균의뢰
  662. var tReqFlag = tReqFlagData.split(".");
  663. var tGoodFlagData = "Y." // 01 의료소모품
  664. + "Z." // 02 일반소모품
  665. + "U." // 03 의료비품
  666. + "GE." // 04 일반비품
  667. + "PH." // 05 약품
  668. + "PH." // 06 약품
  669. + "PH." // 07 약품및재료
  670. + "PH." // 08 약품
  671. + "PH." // 09 약품
  672. + "BC." // 10 수리부품
  673. + "TM." // 11 공급실물품
  674. + "TM." // 12 공급실물품
  675. + "TM" ; // 13 공급실물품
  676. var tGoodFlag = tGoodFlagData.split(".");
  677. var tPath = ds_init_cmb_goodflag;
  678. var sPath = ds_init_cmb_goodflagcopy;
  679. function fReqFagChange(pReqFlag)
  680. {
  681. for (i = 0; i < tReqFlag.length; i++)
  682. {
  683. if (tReqFlag[i] == pReqFlag)
  684. {
  685. swt_search.gd_find.group2.cmb_goodflag.value = tGoodFlag[i];
  686. break;
  687. }
  688. }
  689. }
  690. function fGoodListSearch()
  691. {
  692. misfGridInit(swt_search.gd_find.grd_goodlist);
  693. grp_sea.tmpreqdeptcd.value = grp_sea.cmb_reqdeptcd.value;
  694. if(String(grp_sea.opt_instcd.value).length == 0 )return;
  695. if (utlf_isNull(swt_search.gd_find.group2.cmb_reqflag.value))
  696. {
  697. sysf_messageBox("청구구분을 선택하십시요!!", "");
  698. return;
  699. }
  700. if (!utlf_isNull(ds_send.getColumn(0, "goodnm")))
  701. {
  702. ds_send.setColumn(0, "indexnm","");
  703. }
  704. ds_send_goodlist.setColumn(0, "reqprid", "");
  705. ds_send_goodlist.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  706. ds_send_goodlist.setColumn(0, "reqflag", swt_search.gd_find.group2.cmb_reqflag.value);
  707. ds_send_goodlist.setColumn(0, "workflag", "N");
  708. if (grp_sea.cmb_workflag.value == 1 || grp_sea.cmb_workflag.value == 2 || grp_sea.cmb_workflag.value == 6)
  709. {
  710. ds_send_goodlist.setColumn(0, "reqcheck" , "Y");
  711. }
  712. else if (grp_sea.cmb_workflag.value == 3 || grp_sea.cmb_workflag.value == 4 || grp_sea.cmb_workflag.value == 5)
  713. {
  714. ds_send_goodlist.setColumn(0, "reqcheck" , "");
  715. ds_send_goodlist.setColumn(0, "workflag" , "A");
  716. }
  717. else
  718. {
  719. ds_send_goodlist.setColumn(0, "reqcheck" , "Y");
  720. }
  721. var oParam = {};
  722. oParam.id = "TRRSD00406";
  723. oParam.service = "purccommonapp.PurcCommon";
  724. oParam.method = "reqGetGoodListByCond";
  725. oParam.inds = "req=ds_send_goodlist";
  726. oParam.outds = "ds_main_GoodLists_goodlist=goodlist";
  727. oParam.async = false;
  728. //oParam.callback = "cf_TRRSD00406";
  729. tranf_submit(oParam);
  730. ds_main_GoodLists_goodlist.addColumn("select", "string");
  731. ds_send_goodlist.setColumn(0, "reqflag" , "");
  732. }
  733. function fSelectDataApply(pGridSource, pGridTarget, pGridNm, pQtyNm)
  734. {
  735. ds_copynode.clearData();
  736. var vSelect = 0;
  737. for ( var row = 0; row < this.objects[pGridSource.binddataset].rowcount; row++)
  738. {
  739. if(this.objects[pGridSource.binddataset].getColumn(row, "select" ) == "true" && this.objects[pGridSource.binddataset].getColumn(row, "reqprid") == grp_sea.cmb_reqpridflag.value)
  740. {
  741. if(utlf_isNull(this.objects[pGridTarget.binddataset].lookup("goodcd", this.objects[pGridSource.binddataset].getColumn(row, "goodcd"), "goodcd")))
  742. {
  743. vSelect++;
  744. }
  745. else if(utlf_isNull(this.objects[pGridTarget.binddataset].lookup("goodcd", this.objects[pGridSource.binddataset].getColumn(row, "goodcd"), "goodcd")) &&
  746. utlf_isNull(this.objects[pGridTarget.binddataset].lookup("allsizespecid", this.objects[pGridSource.binddataset].getColumn(row, "allsizespecid"), "allsizespecid")))
  747. {
  748. vSelect++;
  749. }
  750. else
  751. {
  752. this.objects[pGridSource.binddataset].setColumn(row, "select" , "false");
  753. }
  754. }
  755. else
  756. {
  757. this.objects[pGridSource.binddataset].setColumn(row, "select" , "false");
  758. }
  759. }
  760. if (vSelect < 1)
  761. {
  762. return;
  763. }
  764. this.objects[pGridSource.binddataset].filterstr = "select == 'true'";
  765. var rCVS = dsf_getDsCSV(this.objects[pGridSource.binddataset], "", "", "");
  766. var cur_row = this.objects[pGridTarget.binddataset].rowposition;
  767. dsf_setCSVToDs("ds_copynode", rCVS);
  768. fSettingGoodList("ds_copynode", pGridNm , pQtyNm);
  769. for (var row = 0; row < this.objects[pGridSource.binddataset].rowcount; row++)
  770. {
  771. this.objects[pGridSource.binddataset].setColumn(row, "select" , "false");
  772. }
  773. }
  774. function fSettingGoodList(pnode, nodename, userqtynm)
  775. {
  776. var vTarget = "";
  777. var vSource = "";
  778. var codynode = eval(pnode);
  779. var addRow = ds_main_list_goodreq_goodreqlist.rowcount-1;
  780. if(String(ds_main_list_goodreq_goodreqlist.getColumn(addRow, "goodcd")).length > 0) addRow = addRow + 1;
  781. for (var j = 0; j < codynode.rowcount; j++)
  782. {
  783. if(ds_main_list_goodreq_goodreqlist.rowcount == 0 || addRow > ds_main_list_goodreq_goodreqlist.rowcount-1)
  784. {
  785. addRow = ds_main_list_goodreq_goodreqlist.addRow()
  786. fDefaultSetting(addRow);
  787. }
  788. vTarget = ds_main_list_goodreq_goodreqlist
  789. vSource = pnode;
  790. fSettingGoodData(vTarget, addRow, vSource, j, userqtynm, "deliveunit");
  791. if (vSource.getColumn(j, "allsizeyn") == "Y")
  792. {
  793. misfSetGridColor(grd_goodreq, "stocqty", "#FFFF00", "B", addRow);
  794. vTarget.setColumn(addRow, "allsizespecid" , vSource.getColumn(j, "allsizespecid"));
  795. vTarget.setColumn(addRow, "allsizespecidnm" , vSource.getColumn(j, "allsizespecidnm"));
  796. if (String(vSource.getColumn(j, "allsizespecid")).length > 0 )
  797. {
  798. vTarget.setColumn(addRow, "goodspec" , vSource.getColumn(j, "allsizespecidnm"));
  799. }
  800. else
  801. {
  802. vTarget.setColumn(addRow, "allsizespecid" , "-");
  803. }
  804. }
  805. addRow = addRow + 1;
  806. }
  807. }
  808. function fDefaultSetting(prow)
  809. {
  810. misfSetReadOnlyCol(grd_goodreq, "stocqty,reqqty", false, "");
  811. grd_goodreq.setCellProperty("Body", grd_goodreq.getBindCellIndex("Body", "stocqty"), "edittype", "normal");
  812. grd_goodreq.setCellProperty("Body", grd_goodreq.getBindCellIndex("Body", "reqqty"), "edittype", "normal");
  813. var workflag = grp_sea.cmb_workflag.value;
  814. if (grp_sea.ckb_sapreq.value == "Y" || grp_sea.cmb_workflag.value == "6") workflag = "1";
  815. ds_main_list_goodreq_goodreqlist.setColumn(prow, "workflag", workflag);
  816. ds_main_list_goodreq_goodreqlist.setColumn(prow, "instcd", grp_sea.opt_instcd.value);
  817. ds_main_list_goodreq_goodreqlist.setColumn(prow, "deliveflag", "1");
  818. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqdd", grp_sea.ipt_reqdd.value);
  819. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqpridflag", grp_sea.cmb_reqpridflag.value);
  820. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqdeptcd", grp_sea.cmb_reqdeptcd.value);
  821. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqpsnid", grp_sea.opt_requser.value);
  822. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqseqno", fGetMaxReqNo());
  823. ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqno", grp_sea.cmb_reqno.value);
  824. ds_main_list_goodreq_goodreqlist.setColumn(prow, "predeptaprvyn", "N");
  825. }
  826. function swt_search_gd_find_grd_goodlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  827. {
  828. if (ds_main_GoodLists_goodlist.rowposition < 0) return;
  829. if(ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "select") == "true" && ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "goodflag") == "RH"
  830. && ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "tmpreqflag") == "N")
  831. {
  832. ds_main_GoodLists_goodlist.setColumn(ds_main_GoodLists_goodlist.rowposition, "select" , "false");
  833. alert("청구 불가능 약품입니다 . 약제팀에 확인要 !!");
  834. return;
  835. }
  836. if(ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "select") == "true" && ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "reqprid") != grp_sea.cmb_reqpridflag.value)
  837. {
  838. ds_main_GoodLists_goodlist.setColumn(ds_main_GoodLists_goodlist.rowposition, "select" , "false");
  839. alert("청구 불가능!! 청구주기를 확인하십시요 !!");
  840. return;
  841. }
  842. if (grp_sea.cmb_workflag.value ==3 || grp_sea.cmb_workflag.value ==4 || grp_sea.cmb_workflag.value ==5 )
  843. {
  844. if (ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "reqmthd") != "1" && ds_main_GoodLists_goodlist.getColumn(ds_main_GoodLists_goodlist.rowposition, "purcflag") != "2")
  845. {
  846. ds_main_GoodLists_goodlist.setColumn(ds_main_GoodLists_goodlist.rowposition, "select" , "false");
  847. alert("상비품이 아닙니다. 확인하십시요!!");
  848. return;
  849. }
  850. }
  851. }
  852. function fGetMaxReqNo()
  853. {
  854. var vMax = 0;
  855. var maxreqseqno = "0";
  856. for (var currow = 0; currow < ds_main_list_goodreq_goodreqlist.rowcount; currow++)
  857. {
  858. if (maxreqseqno < ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqseqno"))
  859. {
  860. maxreqseqno = ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqseqno");
  861. }
  862. }
  863. vMax = parseInt(maxreqseqno, 10);
  864. vMax += 1;
  865. maxreqseqno = "" + vMax;
  866. return String(maxreqseqno).getLeftPad(3,"0");
  867. }
  868. function fSettingGoodData(pTarget, pTargetRow, pSource, pSourceRow, pUserqtynm, pRequnit, pCls)
  869. {
  870. var vReqDept = grp_sea.cmb_reqdeptcd.value;
  871. var vReqprid = grp_sea.cmb_reqpridflag.value;
  872. vReqAuth = fPurcAuthInfoRow(vReqDept,vReqprid, pSource.getColumn(pSourceRow, "reqflag"));
  873. pTarget.setColumn(pTargetRow, "goodcd", pSource.getColumn(pSourceRow, "goodcd"));
  874. pTarget.setColumn(pTargetRow, "goodnm", pSource.getColumn(pSourceRow, "goodnm"));
  875. pTarget.setColumn(pTargetRow, "goodspec", pSource.getColumn(pSourceRow, "goodspec"));
  876. pTarget.setColumn(pTargetRow, "reqflag", pSource.getColumn(pSourceRow, "reqflag"));
  877. pTarget.setColumn(pTargetRow, "goodflag", pSource.getColumn(pSourceRow, "goodflag"));
  878. pTarget.setColumn(pTargetRow, "goodmodel", pSource.getColumn(pSourceRow, "goodmodel"));
  879. pTarget.setColumn(pTargetRow, "prodcmpynm", pSource.getColumn(pSourceRow, "prodcmpynm"));
  880. pTarget.setColumn(pTargetRow, "purcunit", pSource.getColumn(pSourceRow, "purcunit"));
  881. pTarget.setColumn(pTargetRow, "basevol", pSource.getColumn(pSourceRow, pUserqtynm));
  882. pTarget.setColumn(pTargetRow, "stocqty", 0);
  883. pTarget.setColumn(pTargetRow, "reqqty", pSource.getColumn(pSourceRow, pUserqtynm));
  884. pTarget.setColumn(pTargetRow, "reqauth", vReqAuth);
  885. pTarget.setColumn(pTargetRow, "requnit", pSource.getColumn(pSourceRow, pRequnit));
  886. pTarget.setColumn(pTargetRow, "minexch", pSource.getColumn(pSourceRow, "minexch"));
  887. pTarget.setColumn(pTargetRow, "ddavguseqty", pSource.getColumn(pSourceRow, "ddavguseqty"));
  888. pTarget.setColumn(pTargetRow, "exchqty", pSource.getColumn(pSourceRow, "exchqty"));
  889. pTarget.setColumn(pTargetRow, "reqmthdflag", "3");
  890. pTarget.setColumn(pTargetRow, "allsizeyn", pSource.getColumn(pSourceRow, "allsizeyn"));
  891. pTarget.setColumn(pTargetRow, "reqcollcdeptcd", pSource.getColumn(pSourceRow, "reqcollcdeptcd"));
  892. pTarget.setColumn(pTargetRow, "setunit", pSource.getColumn(pSourceRow, "setunit"));
  893. if (pCls == "S")
  894. {
  895. pTarget.setColumn(pTargetRow, "delivedeptcd", pSource.getColumn(pSourceRow, "delivedeptcd"));
  896. }
  897. else
  898. {
  899. pTarget.setColumn(pTargetRow, "delivedeptcd", pSource.getColumn(pSourceRow, "reqfnldeptcd"));
  900. }
  901. if (utlf_isNull(pTarget.getColumn(pTargetRow, "delivedeptcd")))
  902. {
  903. pTarget.setColumn(pTargetRow, "delivedeptcd", gPurcDeptcd);
  904. }
  905. pTarget.setColumn(pTargetRow, "rgstqty", "0");
  906. if (vReqAuth == "2")
  907. {
  908. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false);
  909. }
  910. else
  911. {
  912. misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", true);
  913. }
  914. }
  915. function fViewToggle(pCls)
  916. {
  917. if (pCls == 1)
  918. {
  919. bbt_large.visible = false;
  920. bbt_right.visible = false;
  921. grd_goodreq.position.left = 0;
  922. grd_goodreq.position.width = 1195;
  923. grd_goodreq.position.right = 1195;
  924. grp_button.position.left = 585;
  925. grp_button.position.right = 1195;
  926. grp_button.position.width = 606;
  927. }
  928. else
  929. {
  930. bbt_large.visible = true;
  931. bbt_right.visible = true;
  932. grd_goodreq.position.left = 585;
  933. grd_goodreq.position.width = 610;
  934. grd_goodreq.position.right = 1195;
  935. grp_button.position.left = 585;
  936. grp_button.position.width = 604;
  937. grp_button.position.right = 1195;
  938. }
  939. }
  940. function fGoodListReady(pGoodCd, pGoodName)
  941. {
  942. misfGridInit(swt_search.gd_find.grd_goodlist);
  943. fGoodListKeySet();
  944. if (String(ds_target_defaultvalue.getColumn(0, "reqdeptcd")).length == 0 )
  945. {
  946. ds_send_goodlist.setColumn(0, "reqdeptcd", sysf_getUserInfo("dutplcecd"));
  947. }
  948. else
  949. {
  950. ds_send_goodlist.setColumn(0, "reqdeptcd", grp_sea.cmb_reqdeptcd.value);
  951. }
  952. if (String(pGoodCd).length > 0)
  953. {
  954. ds_send_goodlist.setColumn(0, "goodcd", pGoodCd);
  955. }
  956. else if (String(pGoodName).length > 0)
  957. {
  958. ds_send_goodlist.setColumn(0, "goodnm", pGoodName);
  959. }
  960. }
  961. function fGoodListKeySet()
  962. {
  963. ds_send_goodlist.setColumn(0, "lrgcd", "");
  964. ds_send_goodlist.setColumn(0, "mdlcd", "");
  965. ds_send_goodlist.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  966. ds_send_goodlist.setColumn(0, "reqprid", grp_sea.cmb_reqpridflag.value);
  967. rszfLMSComboList(swt_search.gd_find.group2.cmb_goodflag.value, "", "", "swt_search.gd_find.group2.ipt_lrgcd", "", "L","Y");
  968. swt_search.gd_find.group2.ipt_lrgcd.index = 0;
  969. ds_send_goodlist.setColumn(0, "instcdnm", grp_sea.opt_instcdnm.value);
  970. ds_send_goodlist.setColumn(0, "reqflagnm", swt_search.gd_find.group2.cmb_reqflag.text);
  971. ds_send_goodlist.setColumn(0, "reqpridnm", grp_sea.cmb_reqpridflag.text);
  972. }
  973. function fGoodreqButtonClick()
  974. {
  975. grp_allsize.visible = false;
  976. if (grd_goodreq.currentcell == grd_goodreq.getBindCellIndex("Body","goodcd") && ds_main_list_goodreq_goodreqlist.getRowType(ds_main_list_goodreq_goodreqlist.rowposition) == 2)
  977. {
  978. swt_search.tabindex = 2;
  979. swt_search.gd_find.group2.cmb_reqflag.index = 0;
  980. fReqFagChange(swt_search.gd_find.group2.cmb_reqflag.value);
  981. fGoodListReady(ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition, "goodcd"), "");
  982. }
  983. else if (grd_goodreq.currentcell == grd_goodreq.getBindCellIndex("Body", "goodspec") && ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition, "allsizeyn") == "Y" )
  984. {
  985. fAllSizeRead(ds_main_list_goodreq_goodreqlist.rowposition, grd_goodreq.currentcol, grd_goodreq.position.y);
  986. }
  987. }
  988. var vAllSizeCol = 0;
  989. var vAllSizeRow = 0;
  990. var vAllSizePath = ds_main_codelist;
  991. var vGoodReqPath = ds_main_list_goodreq_goodreqlist;
  992. function fAllSizeRead(pRow, pCol, pPos)
  993. {
  994. var iClickY = pPos - 100;
  995. vAllSizeCol = pCol;
  996. vAllSizeRow = pRow;
  997. if (iClickY > 375) iClickY = iClickY - 319;
  998. grp_allsize.position.top = iClickY;
  999. grp_allsize.visible = true;
  1000. ds_send_allsize.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  1001. ds_send_allsize.setColumn(0, "goodcd", ds_main_list_goodreq_goodreqlist.getColumn(pRow, "goodcd"));
  1002. var oParam = {};
  1003. oParam.id = "TRRSD00281";
  1004. oParam.service = "purccommonapp.PurcCommon";
  1005. oParam.method = "reqGetGoodCode";
  1006. oParam.inds = "req=ds_send_allsize";
  1007. oParam.outds = "ds_main_codelist=codelist";
  1008. oParam.async = false;
  1009. //oParam.callback = "cf_TRRSD00281";
  1010. tranf_submit(oParam);
  1011. }
  1012. function fSettingReqAprv()
  1013. {
  1014. for (var liRow = 0; liRow < ds_main_list_goodreq_goodreqlist.rowcount; liRow++)
  1015. {
  1016. if (ds_main_list_goodreq_goodreqlist.getColumn(liRow, "aprvyn") != "Y")
  1017. {
  1018. if (gPurcDeptcd == sysf_getUserInfo("dutplcecd") || ds_main_list_goodreq_goodreqlist.getColumn(liRow, "reqauth") == "2")
  1019. {
  1020. if (ds_main_list_goodreq_goodreqlist.getColumn(liRow, "deptaprvyn") == "Y")
  1021. {
  1022. ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvyn", "N");
  1023. ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvdd", "");
  1024. if (ds_main_list_goodreq_goodreqlist.getRowType(liRow) == 1)
  1025. {
  1026. ds_main_list_goodreq_goodreqlist.updatecontrol = false;
  1027. ds_main_list_goodreq_goodreqlist.setRowType(liRow, "u");
  1028. ds_main_list_goodreq_goodreqlist.updatecontrol = true;
  1029. }
  1030. }
  1031. else
  1032. {
  1033. ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvyn", "Y");
  1034. ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvdd", utlf_getCurrentDate());
  1035. if (ds_main_list_goodreq_goodreqlist.getRowType(liRow) == 1)
  1036. {
  1037. ds_main_list_goodreq_goodreqlist.updatecontrol = false;
  1038. ds_main_list_goodreq_goodreqlist.setRowType(liRow, "u");
  1039. ds_main_list_goodreq_goodreqlist.updatecontrol = true;
  1040. }
  1041. }
  1042. }
  1043. }
  1044. }
  1045. }
  1046. function fSaveReqAprv()
  1047. {
  1048. var oParam = {};
  1049. oParam.id = "TXRSD07002";
  1050. oParam.service = "reqapp.ReqMngt";
  1051. oParam.method = "reqExeSaveReqAprv";
  1052. oParam.inds = "req=ds_main_list_goodreq_goodreqlist:u";
  1053. oParam.outds = "";
  1054. oParam.async = false;
  1055. oParam.callback = "cf_TXRSD07002";
  1056. tranf_submit(oParam);
  1057. }
  1058. function cf_TXRSD07002(sSvcId, nErrorCode, sErrorMsg)
  1059. {
  1060. if(nErrorCode < 0) return;
  1061. else misfMsterDetailRetrieve();
  1062. }
  1063. function fSaveData()
  1064. {
  1065. ds_main_messagelists_messagelist.clearData();
  1066. ds_send_message.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  1067. ds_send_message.setColumn(0, "goodflag", "PH");
  1068. var oParam = {};
  1069. oParam.id = "TRRSD00433";
  1070. oParam.service = "reqapp.ReqMngt";
  1071. oParam.method = "reqGetReqFlagMessage";
  1072. oParam.inds = "req=ds_send_message";
  1073. oParam.outds = "ds_main_messagelists_messagelist=messagelist";
  1074. oParam.async = false;
  1075. //oParam.callback = "cf_TRRSD00433";
  1076. tranf_submit(oParam);
  1077. var hDesc = "";
  1078. var HMagamTime = "";
  1079. for (var fRow = 0; fRow < ds_main_messagelists_messagelist.rowcount; fRow++)
  1080. {
  1081. if (ds_main_messagelists_messagelist.getColumn(fRow, "reqflag") == "H" )
  1082. {
  1083. hDesc = ds_main_messagelists_messagelist.getColumn(fRow, "closdesc") +"\n" ;
  1084. HMagamTime = ds_main_messagelists_messagelist.getColumn(fRow, "clostm");
  1085. break;
  1086. }
  1087. }
  1088. var vReqFlag = "";
  1089. var ReqflagE = 0 ; // 05 P 약품및재료
  1090. var ReqflagF = 0 ; // 06 P 제제약품
  1091. var ReqflagI = 0 ; // 09 P 조영제
  1092. var ReqflagH = 0 ; // 10 P 수액
  1093. if (grp_sea.chk_reqnonew.value == "Y")
  1094. {
  1095. vReqdd = grp_sea.ipt_reqddnew.value;
  1096. }
  1097. else
  1098. {
  1099. vReqdd = grp_sea.ipt_reqdd.value;
  1100. }
  1101. for (var fRow = 0; fRow < ds_main_list_goodreq_goodreqlist.rowcount; fRow++)
  1102. {
  1103. vReqFlag = ds_main_list_goodreq_goodreqlist.getColumn(fRow, "reqflag");
  1104. if (vReqFlag == "H")
  1105. {
  1106. if (utlf_getCurrentTime() > HMagamTime && vReqdd == utlf_getCurrentDate() && ds_main_list_goodreq_goodreqlist.getRowType(fRow) != 1)
  1107. {
  1108. sysf_messageBox(hDesc, "I");
  1109. return;
  1110. }
  1111. ReqflagH = 1 ;
  1112. }
  1113. else
  1114. {
  1115. ReqflagE = (vReqFlag == "E") ? 1 : ReqflagE; // 05 P 약품및재료
  1116. ReqflagF = (vReqFlag == "F") ? 2 : ReqflagF; // 06 P 제제약품
  1117. ReqflagI = (vReqFlag == "I") ? 4 : ReqflagI;
  1118. }
  1119. }
  1120. lastDesc = (ReqflagH == 1) ? ds_main_messagelists_messagelist.lookup("reqflag", "H", "closdesc") : "";
  1121. lastDesc += (ReqflagE == 1) ? ds_main_messagelists_messagelist.lookup("reqflag", "E", "closdesc") : "";
  1122. lastDesc += (ReqflagF == 2) ? ds_main_messagelists_messagelist.lookup("reqflag", "F", "closdesc") : "";
  1123. lastDesc += (ReqflagI == 4) ? ds_main_messagelists_messagelist.lookup("reqflag", "I", "closdesc") : "";
  1124. if (!utlf_isNull(lastDesc))
  1125. {
  1126. sysf_messageBox(lastDesc,"I");
  1127. }
  1128. fConfirmSaveData();
  1129. }
  1130. function fConfirmSaveData()
  1131. {
  1132. if (fCheckSaveData() == false) return;
  1133. ds_send_save_autoaprv.setColumn(0, "instcd", grp_sea.opt_instcd.value);
  1134. ds_send_save_autoaprv.setColumn(0, "reqdeptcd", grp_sea.cmb_reqdeptcd.value);
  1135. var vReqdd = "";
  1136. if (grp_sea.chk_reqnonew.value == "Y")
  1137. {
  1138. vReqdd = grp_sea.ipt_reqddnew.value;
  1139. }
  1140. else
  1141. {
  1142. vReqdd = grp_sea.ipt_reqdd.value;
  1143. }
  1144. ds_send_save_autoaprv.setColumn(0, "reqdd", vReqdd);
  1145. if (grp_sea.cmb_reqpridflag.value == "1")
  1146. {
  1147. ds_send_save_autoaprv.setColumn(0, "autoaprvyn","Y");
  1148. }
  1149. else
  1150. {
  1151. if (gPurcDeptcd == sysf_getUserInfo("dutplcecd"))
  1152. {
  1153. if (grp_button.ckb_accept.value = "Y")
  1154. {
  1155. var ret = sysf_messageBox("구매팀인 경우만 권한 상관없이 동시승인 가능합니다!! ","Q003");
  1156. if (ret == 6)
  1157. {
  1158. ds_send_save_autoaprv.setColumn(0, "autoaprvyn", "Y");
  1159. }
  1160. else
  1161. {
  1162. ds_send_save_autoaprv.setColumn(0, "autoaprvyn", "N");
  1163. }
  1164. }
  1165. else
  1166. {
  1167. ds_send_save_autoaprv.setColumn(0, "autoaprvyn", "N");
  1168. }
  1169. }
  1170. else
  1171. {
  1172. ds_send_save_autoaprv.setColumn(0, "autoaprvyn", "N");
  1173. }
  1174. }
  1175. var oParam = {};
  1176. oParam.id = "TXRSD00411";
  1177. oParam.service = "reqapp.ReqMngt";
  1178. oParam.method = "reqExeSaveGoodReqNew";
  1179. oParam.inds = "req=ds_main_list_goodreq_goodreqlist:u autoaprv=ds_send_save_autoaprv";
  1180. oParam.outds = "ds_main_list_goodreq_goodmaxreqno=goodmaxreqno";
  1181. oParam.async = false;
  1182. oParam.callback = "cf_TXRSD00411";
  1183. tranf_submit(oParam);
  1184. if (grp_sea.chk_reqnonew.value == "Y")
  1185. {
  1186. if (grp_sea.ipt_reqdd.value == grp_sea.ipt_reqddnew.value)
  1187. {
  1188. fDeptReqNoQuery();
  1189. }
  1190. else
  1191. {
  1192. grp_sea.ipt_reqdd.value = grp_sea.ipt_reqddnew.value;
  1193. }
  1194. fNewReqNoVisibility();
  1195. grp_sea.btn_search.click();
  1196. }
  1197. else
  1198. {
  1199. grp_sea.btn_search.click();
  1200. if (ds_main_list_goodreq_goodreqlist.rowcount == 0)
  1201. {
  1202. fDeptReqNoQuery();
  1203. fNewReqNoVisibility();
  1204. }
  1205. }
  1206. }
  1207. function cf_TXRSD00411(sSvcId, nErrorCode, sErrorMsg)
  1208. {
  1209. if(nErrorCode < 0) return;
  1210. }
  1211. function fCheckSaveData()
  1212. {
  1213. if (String(grp_sea.cmb_workflag.value).length== 0 )
  1214. {
  1215. sysf_messageBox("작업구분을 " ,"C002");
  1216. grp_sea.cmb_workflag.setFocus();
  1217. return false;
  1218. }
  1219. if (String(grp_sea.opt_instcd.value).length== 0 )
  1220. {
  1221. sysf_messageBox("기관코드를 " ,"C002");
  1222. grp_sea.opt_instcd.setFocus();
  1223. return false;
  1224. }
  1225. if(String(grp_sea.ipt_reqdd.value).length == 0 )
  1226. {
  1227. sysf_messageBox("청구일자를 " ,"C001");
  1228. grp_sea.ipt_reqdd.setFocus();
  1229. return false;
  1230. }
  1231. if (String(grp_sea.cmb_reqpridflag.value).length== 0 )
  1232. {
  1233. sysf_messageBox("청구주기를 " ,"C002");
  1234. grp_sea.cmb_reqpridflag.setFocus();
  1235. return false;
  1236. }
  1237. var basevol = 0;
  1238. var stocqty = 0;
  1239. var reqqty = 0;
  1240. var minexch = 0;
  1241. for(var currow = 0; currow < ds_main_list_goodreq_goodreqlist.rowcount; currow++)
  1242. {
  1243. if (ds_main_list_goodreq_goodreqlist.getRowType( currow ) != 8)
  1244. {
  1245. if (String(ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd")).length == 0)
  1246. {
  1247. sysf_messageBox(parseInt(currow+1) + " 번째 물품코드를 " ,"C001");
  1248. ds_main_list_goodreq_goodreqlist.rowposition = currow;
  1249. grd_goodreq.setCellPos(grd_goodreq.getBindCellIndex("body", "goodcd"))
  1250. grd_goodreq.showEditor(true);
  1251. return false;
  1252. }
  1253. else
  1254. {
  1255. for(srcrow = parseInt(currow+1); srcrow < ds_main_list_goodreq_goodreqlist.rowcount; srcrow++)
  1256. {
  1257. if (ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "goodcd") && ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizeyn")== "N"
  1258. && ds_main_list_goodreq_goodreqlist.getRowType(srcrow) != 8)
  1259. {
  1260. sysf_messageBox("동일 물품코드가1 [" + parseInt(currow+1) + "," + parseInt(srcrow+1)+ "->" + ds_main_list_goodreq_goodreqlist.getColumn(currow, "goodcd") + "] 존재하여 저장 " ,"E001");
  1261. return false;
  1262. }
  1263. else if(ds_main_list_goodreq_goodreqlist.getColumn(currow, "goodcd") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "goodcd") &&
  1264. ds_main_list_goodreq_goodreqlist.getColumn(currow, "allsizespecid") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "allsizespecid")&&
  1265. ds_main_list_goodreq_goodreqlist.getRowType(srcrow) != 8)
  1266. {
  1267. sysf_messageBox("동일 물품코드가 (ALL SIZE) [" + parseInt(currow+1) + "," + parseInt(srcrow+1) + "->" + ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd") + "] 존재하여 저장 " ,"E001");
  1268. return false;
  1269. }
  1270. }
  1271. }
  1272. if (ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty") == 0 )
  1273. {
  1274. sysf_messageBox(parseInt(currow+1) + " 번째 청구량을 " ,"C001");
  1275. ds_main_list_goodreq_goodreqlist.rowposition = currow;
  1276. grd_goodreq.setCellPos(grd_goodreq.getBindCellIndex("body", "reqqty"))
  1277. grd_goodreq.showEditor(true);
  1278. return false;
  1279. }
  1280. reqqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty" );
  1281. if (grp_sea.cmb_workflag.value == "2" || grp_sea.cmb_workflag.value == "4")
  1282. {
  1283. if (reqqty > 0)
  1284. {
  1285. ds_main_list_goodreq_goodreqlist.setColumn(currow , "reqqty", reqqty * -1);
  1286. }
  1287. }
  1288. reqqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty" );
  1289. basevol = ds_main_list_goodreq_goodreqlist.getColumn(currow , "basevol" );
  1290. stocqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "stocqty" );
  1291. minexch = ds_main_list_goodreq_goodreqlist.getColumn(currow , "minexch" );
  1292. if(ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizeyn") == "Y" )
  1293. {
  1294. if(String(ds_main_list_goodreq_goodreqlist.getColumn(currow, "allsizespecid")).length == 0 || ds_main_list_goodreq_goodreqlist.getColumn(currow, "allsizespecid") == "-")
  1295. {
  1296. sysf_messageBox(parseInt(currow+1) + " 번째 물품의 ALLSIZE선택을 " ,"C001");
  1297. ds_main_list_goodreq_goodreqlist.rowposition = currow;
  1298. grd_goodreq.setCellPos(grd_goodreq.getBindCellIndex("body", "goodspec"))
  1299. grd_goodreq.showEditor(true);
  1300. return false;
  1301. }
  1302. }
  1303. else
  1304. {
  1305. ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizespecid", "-");
  1306. }
  1307. if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "aprvyn") != "Y")
  1308. {
  1309. if(grp_button.ckb_accept.value = "Y")
  1310. {
  1311. if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "deptaprvyn") != "Y")
  1312. {
  1313. if (gPurcDeptcd == sysf_getUserInfo("dutplcecd"))
  1314. {
  1315. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn", "Y");
  1316. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd", utlf_getCurrentDate());
  1317. }
  1318. else
  1319. {
  1320. if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqauth") == "2")
  1321. {
  1322. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn", "Y");
  1323. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd", utlf_getCurrentDate());
  1324. }
  1325. else
  1326. {
  1327. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn", "N");
  1328. ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd", "");
  1329. }
  1330. }
  1331. }
  1332. }
  1333. }
  1334. if (utlf_isNull(ds_main_list_goodreq_goodreqlist.getColumn(currow, "delivedeptcd")))
  1335. {
  1336. ds_main_list_goodreq_goodreqlist.setColumn(currow, "delivedeptcd", gPurcDeptcd);
  1337. }
  1338. }
  1339. }
  1340. if (String(grp_sea.cmb_reqno.value).length== 0 )
  1341. {
  1342. grp_sea.chk_reqnonew.value = "Y";
  1343. }
  1344. return true;
  1345. }
  1346. function fAllSizeSelect()
  1347. {
  1348. grp_allsize.visible = false;
  1349. var vQty = "0";
  1350. var vSize = "";
  1351. var vSpec = "";
  1352. var vModel = "";
  1353. var vCheck = "";
  1354. var vPath = "";
  1355. var vTarget = "";
  1356. var vSource = "";
  1357. var vGoodcd = vGoodReqPath.getColumn(vAllSizeRow, "goodcd");
  1358. for (var i = 0; i < ds_main_codelist.rowcount; i++)
  1359. {
  1360. if (vAllSizePath.getColumn(i, "chk") == "true")
  1361. {
  1362. vSize = vAllSizePath.getColumn(i, "allsizespecid");
  1363. vSpec = vAllSizePath.getColumn(i, "goodspec");
  1364. vModel = vAllSizePath.getColumn(i, "goodmodel");
  1365. vQty = vAllSizePath.getColumn(i, "qty");
  1366. if (utlf_isNull(vGoodReqPath.lookupExpr("goodcd =='"+ vGoodcd+"' && allsizespecid == '"+vSize+"'", "goodcd")))
  1367. {
  1368. if (utlf_isNull(vCheck))
  1369. {
  1370. vCheck = "Y";
  1371. vTarget = vGoodReqPath;
  1372. addRow = vAllSizeRow;
  1373. if (ds_main_list_goodreq_goodreqlist.getRowType(vAllSizeRow) == 1 )
  1374. {
  1375. ds_main_list_goodreq_goodreqlist.updatecontrol = false;
  1376. ds_main_list_goodreq_goodreqlist.setRowType(vAllSizeRow, "u");
  1377. ds_main_list_goodreq_goodreqlist.updatecontrol = true;
  1378. }
  1379. }
  1380. else
  1381. {
  1382. addRow = ds_main_list_goodreq_goodreqlist.addRow();
  1383. fDefaultSetting(addRow);
  1384. vTarget = ds_main_list_goodreq_goodreqlist;
  1385. vSource = vGoodReqPath ;
  1386. fSettingGoodData(pTarget, addRow, pSource, vAllSizeRow, "basevol", "requnit", "S") ;
  1387. misfSetGridColor(grd_goodreq, "stocqty", "#FFFF00", "B", fRow);
  1388. }
  1389. }
  1390. else
  1391. {
  1392. //vPath = vGoodReqPath.lookupExpr(+"[goodcd='"+ vGoodcd+"' and allsizespecid='"+vSize+"']";
  1393. }
  1394. vTarget.setColumn(addRow, "allsizeyn" , "Y" );
  1395. vTarget.setColumn(addRow, "allsizespecid" , vSize);
  1396. vTarget.setColumn(addRow, "goodspec" , vSpec);
  1397. vTarget.setColumn(addRow, "goodmodel" , vModel);
  1398. if (!utlf_isNull(vQty) && vQty != "0")
  1399. {
  1400. vTarget.setColumn(addRow, "stocqty", vQty );
  1401. }
  1402. }
  1403. }
  1404. } ]]></Script>