SMRSD06002_물품청구관리(CSR).xrw 67 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 수정이력 :
  4. [2007.10.18 HBH : 공급실 불출구분이 "응급"이면 마감차수를 입력받지 않는다. -> 중앙공급실 출고처리시 프로그램 동반수정해야한다.
  5. -->
  6. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  7. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  8. <xhtml:head>
  9. <xhtml:title>물품청구관리</xhtml:title>
  10. <model id="model1">
  11. <instance id="instance1">
  12. <root xmlns="">
  13. <main>
  14. <list>
  15. <goodreq>
  16. <goodreqlist/>
  17. <goodmaxreqno/>
  18. <goodrtnlist/>
  19. <rtnlist/>
  20. </goodreq>
  21. <rsdhdecrlist/>
  22. </list>
  23. <item/>
  24. <popup>
  25. <item>
  26. <name>삭제</name>
  27. <func>setDelStat</func>
  28. </item>
  29. <item2>
  30. <name>삭제</name>
  31. <func>setDelStat2</func>
  32. </item2>
  33. </popup>
  34. </main>
  35. <send>
  36. <save>
  37. <goodreqlist/>
  38. <autoaprv>
  39. <autoaprvyn/>
  40. </autoaprv>
  41. <rsdhdecrlist/>
  42. </save>
  43. <goodreq>
  44. <instcd/>
  45. <reqflag/>
  46. <deliveflag/>
  47. <reqfrdd/>
  48. <reqpridflag/>
  49. <reqdeptcd/>
  50. <reqdeptnm/>
  51. <reqpsnid/>
  52. <retrmaxreqnoyn/>
  53. <reqno/>
  54. <stdysubjno/>
  55. <stdysubjnm/>
  56. <bugtflag/>
  57. <tmp_goodcd/>
  58. <tmp_goodnm/>
  59. <fromreqdd/>
  60. <toreqdd/>
  61. <rsdhdecryn/>
  62. <sworkflag>5</sworkflag>
  63. <sreqflag>X</sreqflag>
  64. <goodflag/>
  65. <eryn/>
  66. </goodreq>
  67. <chkgoodreq>
  68. <s/>
  69. </chkgoodreq>
  70. </send>
  71. <init>
  72. <reqselflag>
  73. <label>일반청구</label>
  74. <value>1</value>
  75. <label>정량보충</label>
  76. <value>2</value>
  77. </reqselflag>
  78. <workflag>
  79. <label>청구</label>
  80. <value>1</value>
  81. <label>반납</label>
  82. <value>2</value>
  83. <label>대여</label>
  84. <value>5</value>
  85. </workflag>
  86. <deliveflag>
  87. <label>정기</label>
  88. <value>1</value>
  89. <label>응급</label>
  90. <value>2</value>
  91. </deliveflag>
  92. <reqdeptcd/>
  93. <reqdeptnm/>
  94. <requserno/>
  95. <requsernm/>
  96. <reqfinaldeptcd/>
  97. <reqfinaldeptnm/>
  98. </init>
  99. <hidden/>
  100. <temp/>
  101. <copynode/>
  102. </root>
  103. </instance>
  104. <script type="javascript" ev:event="xforms-ready">
  105. <![CDATA[
  106. //화면 Control을 초기화한다.
  107. fInitialize();
  108. ]]>
  109. </script>
  110. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  111. <submission id="TRRSD06013" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/tmlist"/>
  112. <submission id="TXRSD06011" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/temp"/>
  113. <submission id="TRRSD00431" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/goodreq" resultref="/root/main/list/goodreq"/>
  114. <submission id="TXRSE00122" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/hidden/temp"/>
  115. <submission id="TXRSD06001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savdata" resultref="/root/temp"/>
  116. <submission id="TRRSD06014" mediatype="application/x-www-form-urlencoded" method="post" resultref="/root/init/holiyn"/>
  117. </model>
  118. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  119. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  120. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  121. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  122. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  123. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  124. <script type="javascript">
  125. <![CDATA[
  126. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  127. model.property("chngyn") = "N";
  128. function fInitialize() {
  129. misfComboComCdListMulti("Z0007", "cmb_instcd");
  130. //model.refresh();
  131. //misfGridComboComCdList("R0025", grd_goodslist, "goodflag");
  132. model.removeNodeset("/root/main/list/goodreq/goodreqlist");
  133. //grd_goodreq.rebuild();
  134. model.setValue(opt_reqdeptcd.attribute("ref") , getUserInfo("dutplcecd"));
  135. model.setValue(opt_reqdeptnm.attribute("ref") , getUserInfo("dutplcenm"));
  136. model.setValue(ipt_reqdd.attribute("ref"), getCurrentDate());
  137. model.setValue(cmb_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
  138. model.makeValue("/root/send/reqdata/reqdeptcd", getUserInfo("dutplcecd"));
  139. model.makeValue("/root/send/reqdata/instcd", getUserInfo("dutplceinstcd"));
  140. fsearch();
  141. grd_goodreq.colHidden(grd_goodreq.colRef("goodspec")) = true;
  142. grd_goodreq.colHidden(grd_goodreq.colRef("goodmodel")) = true;
  143. grd_goodreq.colHidden(grd_goodreq.colRef("dinfflag")) = true;
  144. grd_goodreq.colHidden(grd_goodreq.colRef("dinfdivs")) = true;
  145. //fReqRtnGoodInfoSearch();
  146. //btn_search.dispatch("DOMActivate");
  147. model.refresh();
  148. }
  149. //청구차수를 조회하고 셋팅한다.
  150. function fsearch() {
  151. // model.makeValue("/root/send/reqdata/reqdeptcd", getUserInfo("dutplcecd"));
  152. // model.makeValue("/root/send/reqdata/instcd" , getUserInfo("dutplceinstcd"));
  153. fSetReqSeq();
  154. fSetDate();
  155. fReqRtnGoodInfoSearch();
  156. model.refresh();
  157. }
  158. function fSetReqSeq() {
  159. var daykind = "";
  160. model.makeValue("/root/send/reqdata/reqdd", model.getValue(ipt_reqdd.attribute("ref")));
  161. submit("TRRSD06014");
  162. //getCurrentWeek() : 0이면 일요일 6이면 토요일.
  163. if(model.getValue("/root/init/holiyn/holilist/holiyn") == "Y") { //공휴일일때..
  164. if(getCurrentWeek() == "0") {
  165. daykind = "4";
  166. } else if(getCurrentWeek() == "6") {
  167. daykind = "2";
  168. } else {
  169. daykind = "2";
  170. }
  171. } else {
  172. if(getCurrentWeek() == "0") {
  173. daykind = "4";
  174. } else if(getCurrentWeek() == "6") {
  175. daykind = "3";
  176. } else {
  177. daykind = "1";
  178. }
  179. }
  180. //휴일유무를 Parameter를 넘겨서 올바른 청구차수 정보들을 가져온다.
  181. //daykind가 3(일요일) 인경우에는 무조건 응급, 2(평일이면서 공휴일인경우), 1(월-토 이면서 공휴일이 아닌경우)
  182. model.makeValue("/root/send/reqdata/daykind" , daykind);
  183. submit("TRRSD06013");
  184. }
  185. function fSetDate() {
  186. //현재시간에 맞는 차수를 가져온다.
  187. var degr = model.getValue("/root/init/tmlist/reqseqlist/reqseq");
  188. //현재시간을 가져온다.
  189. var curtm = getCurrentTime().substr(0, 4);
  190. //현재차수에 대한 마감시간을 가져온다.
  191. var clotm = model.getValue("/root/init/tmlist/reqtimslist[cdid = '" + degr + "']/clotm");
  192. var dinfaplyn = model.getValue("/root/init/tmlist/reqseqlist/dinfaplyn");
  193. var node = instance1.selectSingleNode("/root/init/tmlist/reqtimslist");
  194. //정규차수에 대한 정보가 있을때.
  195. if(node != null) {
  196. if(curtm > clotm) {
  197. if(cmb_reqpridflag.length > 0 && model.getValue("/root/init/tmlist/reqseqlist/reqseq") == "" ) {
  198. var reqdd = model.getValue(ipt_reqdd.attribute("ref"));
  199. var dt;
  200. var frdd;
  201. var today = new Date();
  202. var frday = new Date();
  203. var diffdt;
  204. if(getCurrentWeek() == "6") {
  205. diffdt = 2;
  206. } else {
  207. diffdt = 1;
  208. }
  209. frday = today.getAddDate(diffdt , "D");
  210. frdd = frday.getDateFormat();
  211. model.setValue(ipt_reqdd.attribute("ref"), frdd);
  212. ipt_reqdd.refresh();
  213. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  214. }
  215. } else {
  216. model.setValue(ipt_reqdd.attribute("ref"), getCurrentDate());
  217. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  218. model.setValue(cmb_reqpridflag.attribute("ref"), model.getValue("/root/init/tmlist/reqseqlist/reqseq"));
  219. ipt_reqdd.refresh();
  220. cmb_reqpridflag.refresh();
  221. }
  222. chk_eryn.disabled = false;
  223. if(degr == "" || degr == null) {
  224. model.makeValue("/root/init/tmlist/reqseqlist/reqseq", "1");
  225. model.makeValue("/root/init/tmlist/reqseqlist/dinfaplyn", "Y");
  226. degr = "1";
  227. }
  228. chk_eryn.value = "1";
  229. cmb_reqpridflag.value = degr;
  230. cmb_reqpridflag.disabled = false;
  231. } else {
  232. if(getCurrentWeek() != "0") {
  233. //chk_eryn.disabled = true;
  234. messageBox("응급청구만 할 수 있는 시간입니다.", "E");
  235. model.setValue(ipt_reqdd.attribute("ref"), getCurrentDate());
  236. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  237. cmb_reqpridflag.select(0);
  238. model.setValue(chk_eryn.attribute("ref"), "2");
  239. chk_eryn.refresh();
  240. chk_eryn.dispatch("xforms-value-changed");
  241. //grd_goodreq.colDisabled(grd_goodreq.colRef("deliveflag")) = true;
  242. } else {
  243. var reqdd = model.getValue(ipt_reqdd.attribute("ref"));
  244. var dt;
  245. var frdd;
  246. var today = new Date();
  247. var frday = new Date();
  248. var diffdt = 1;
  249. frday = today.getAddDate(diffdt , "D");
  250. frdd = frday.getDateFormat();
  251. model.setValue(ipt_reqdd.attribute("ref"), frdd);
  252. ipt_reqdd.refresh();
  253. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  254. model.makeValue("/root/send/reqdata/reqdd", model.getValue(ipt_reqdd.attribute("ref")));
  255. submit("TRRSD06014");
  256. if(model.getValue("/root/init/holiyn/holilist/holiyn") == "Y") {
  257. daykind = "2";
  258. } else {
  259. daykind = "1";
  260. }
  261. model.makeValue("/root/send/reqdata/daykind" , daykind);
  262. submit("TRRSD06013");
  263. var node = instance1.selectSingleNode("/root/init/tmlist/reqtimslist");
  264. if(node != null) {
  265. model.makeValue("/root/init/tmlist/reqseqlist/reqseq", "1");
  266. model.setValue(cmb_reqpridflag.attribute("ref"), "1");
  267. chk_eryn.value = "1";
  268. cmb_reqpridflag.disabled = false;
  269. } else {
  270. messageBox("응급청구만 할 수 있는 시간입니다.", "E");
  271. model.setValue(ipt_reqdd.attribute("ref"), getCurrentDate());
  272. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  273. cmb_reqpridflag.select(0);
  274. model.setValue(chk_eryn.attribute("ref"), "2");
  275. chk_eryn.refresh();
  276. chk_eryn.dispatch("xforms-value-changed");
  277. //grd_goodreq.colDisabled(grd_goodreq.colRef("deliveflag")) = true;
  278. }
  279. model.makeValue("/root/tmp/curdate", ipt_reqdd.value);
  280. }
  281. }
  282. addComboItem( "cmb_reqpridflag", "전체", "", "above");
  283. }
  284. function fSettingGoodList(pnode, nodename, userqtynm){
  285. var codynode = instance1.selectNodes(pnode + "/*");
  286. var addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
  287. if(model.getValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd").length > 0)addRow = addRow + 1;
  288. for (var j = 1; j <= codynode.length ; j++) {
  289. if((grd_goodreq.rows - grd_goodreq.fixedRows == 0) ||
  290. (addRow >= grd_goodreq.rows - grd_goodreq.fixedRows))
  291. {
  292. misfGridIUD(grd_goodreq,"A");
  293. addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
  294. fDefaultSetting(addRow );
  295. }
  296. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodcd"));
  297. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodnm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodnm"));
  298. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodspec" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodspec"));
  299. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/csrsafestocqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/safestocqty"));
  300. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodflag"));
  301. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodmodel" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodmodel"));
  302. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/reqflag"));
  303. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/realqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/realqty"));
  304. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/rpirqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/rpirqty"));
  305. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqlmtqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/reqlmtqty"));
  306. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/requnit" , model.getValue(pnode +"/" + nodename + "[" + j + "]/deliveunit"));
  307. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/dinfflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/dinfflag"));
  308. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/dinfdivs" , model.getValue(pnode +"/" + nodename + "[" + j + "]/dinfdivs"));
  309. if(model.getValue(pnode + "/" + nodename + "[" + j + "]/deptcgflag") == "D") {
  310. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/bipumyn", "Y");
  311. } else {
  312. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/bipumyn", "N");
  313. }
  314. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/rgstqty" , "");
  315. if(cmb_reqpridflag.length < 2) {
  316. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/deliveflag", "2");
  317. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqpridflag" , "-");
  318. } else {
  319. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/deliveflag", "1");
  320. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqpridflag" , model.getValue("/root/init/tmlist/reqseqlist/reqseq"));
  321. }
  322. addRow = addRow + 1;
  323. }
  324. model.refresh();
  325. }
  326. function fDefaultSetting(prow)
  327. {
  328. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/instcd" ,model.getValue( cmb_instcd.attribute("ref")));
  329. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdd" ,model.getValue( ipt_reqdd.attribute("ref")));
  330. var deptcd;
  331. var deptnm;
  332. //추가시 그리드의 청구부서코드 setting
  333. if(model.getValue( opt_reqdeptcd.attribute("ref")) == "") {
  334. deptcd = getUserInfo("dutplcecd");
  335. } else {
  336. deptcd = model.getValue(opt_reqdeptcd.attribute("ref"));
  337. }
  338. //추가시 그리드의 청구부서명 setting
  339. if(model.getValue( opt_reqdeptnm.attribute("ref")) == "") {
  340. deptnm = getUserInfo("dutplcenm");
  341. } else {
  342. deptnm = model.getValue(opt_reqdeptnm.attribute("ref"));
  343. }
  344. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/delivedeptcd" ,deptcd);
  345. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdeptcd" ,deptcd);
  346. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdeptnm" , deptnm);
  347. }
  348. /*
  349. function fsearch2() {
  350. submit("TRRSD00431");
  351. }*/
  352. function fPrintRex() {
  353. var updtdata = getGridUpdateData(grd_goodreq);
  354. if(updtdata != "") {
  355. messageBox("물품청구중인 물품이 있습니다. 저장을 하시고 다시 출력해주세요.", "E");
  356. return;
  357. }
  358. model.removeNodeset("/root/send/report/goodreqlist");
  359. model.removeNodeset("/root/send/report/rtnlist");
  360. model.makeNode("/root/send/report/goodreqlist");
  361. model.makeNode("/root/send/report/rtnlist");
  362. //copyNodesetType("/root/send/report/prtdata/washdinflist", grd_goodreqdetllist.nodeset + "[reqflag='5']");
  363. var reqflag;
  364. copyNodesetType("/root/send/report/goodreqlist", grd_goodreq.nodeset + "[reqflag='1']");
  365. copyNodesetType("/root/send/report/goodreqlist", grd_goodreq.nodeset + "[reqflag='2']", "after");
  366. copyNodesetType("/root/send/report/goodreqlist", grd_goodreq.nodeset + "[reqflag='3']", "after");
  367. copyNodesetType("/root/send/report/goodreqlist", grd_goodreq.nodeset + "[reqflag='4']", "after");
  368. copyNodesetType("/root/send/report/rtnlist", grd_rtnlist.nodeset + "[reqflag='1']");
  369. copyNodesetType("/root/send/report/rtnlist", grd_rtnlist.nodeset + "[reqflag='2']", "after");
  370. copyNodesetType("/root/send/report/rtnlist", grd_rtnlist.nodeset + "[reqflag='3']", "after");
  371. copyNodesetType("/root/send/report/rtnlist", grd_rtnlist.nodeset + "[reqflag='4']", "after");
  372. model.makeValue("/root/send/report/prtusernm", getUserInfo("usernm"));
  373. model.makeValue("/root/send/report/reqdeptnm", opt_reqdeptnm.value);
  374. model.makeValue("/root/send/report/reqdd" , ipt_reqdd.value);
  375. model.makeValue("/root/send/report/reqpridflag", cmb_reqpridflag.value);
  376. exeReportPreview("RPRSS06002", "XMLSTR", "/root/send/report");
  377. }
  378. function setDelStat() {
  379. if(grd_goodreq.rowStatus(grd_goodreq.row) == "1" || grd_goodreq.rowStatus(grd_goodreq.row) == "3" ) {
  380. grd_goodreq.deleteRow(grd_goodreq.row);
  381. } else {
  382. if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdivs")) < "3") {
  383. grd_goodreq.rowStatus(grd_goodreq.row) = "4"
  384. } else if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdivs")) == "3") {
  385. messageBox("확인된 물품은 삭제할 수 없습니다.", "E");
  386. return;
  387. } else if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdivs")) == "4") {
  388. messageBox("불출된 물품은 삭제할 수 없습니다.", "E");
  389. return;
  390. }
  391. }
  392. }
  393. function setDelStat2() {
  394. if(grd_goodreq.rowStatus(grd_goodreq.row) == "1" || grd_goodreq.rowStatus(grd_goodreq.row) == "3" ) {
  395. grd_goodreq.deleteRow(grd_goodreq.row);
  396. } else {
  397. if(grd_rtnlist.valueMatrix(grd_rtnlist.row, grd_rtnlist.colRef("reqdivs")) == "6") {
  398. messageBox("반납완료된 물품은 삭제할 수 없습니다.", "E");
  399. return;
  400. } else {
  401. var rtn = messageBox("삭제 하시겠습니까?", "Q");
  402. if(rtn == "6") {
  403. grd_rtnlist.rowStatus(grd_rtnlist.row) = "4";
  404. var updtdata = getGridUpdateData(grd_rtnlist);
  405. model.makeValue("/root/send/savdata/rtnlist", updtdata);
  406. submit("TXRSD06001");
  407. window.setPopupMenu(false);
  408. //btn_search.dispatch("DOMActivate");
  409. fReqRtnGoodInfoSearch();
  410. }
  411. }
  412. }
  413. }
  414. /*
  415. 각 부서별에서 청구한 CSR 물품내역 조회(청구/대여,반납,미반납내역 조회)
  416. */
  417. function fReqRtnGoodInfoSearch(){
  418. var reqflag ;
  419. var reqdivs;
  420. var bipumyn;
  421. model.removeNodeset(grd_goodreq.nodeset);
  422. model.makeValue("/root/send/goodreq/reqpridseq", model.getValue("/root/init/tmlist/reqseqlist/reqseq"));
  423. if(submit("TRRSD00431")){
  424. for(var i = grd_goodreq.fixedRows; i < grd_goodreq.rows; i++) {
  425. reqflag = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqflag"));
  426. bipumyn = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("bipumyn"));
  427. if(reqflag == "1") {
  428. if(bipumyn == "Y") {
  429. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("exchngqty"), i, grd_goodreq.colRef("exchngqty")) = "#ffff99";
  430. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  431. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("lendqty"), i, grd_goodreq.colRef("lendqty")) = "#ffff99";
  432. } else {
  433. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("lendqty"), i, grd_goodreq.colRef("lendqty")) = "#ffff99";
  434. }
  435. } else if(reqflag == "2" || reqflag == "4") {
  436. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  437. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("reqqty"), i, grd_goodreq.colRef("reqqty")) = "#ffff99";
  438. } else if(reqflag == "3") {
  439. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  440. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rgstqty"), i, grd_goodreq.colRef("rgstqty")) = "#ffff99";
  441. }
  442. reqdivs = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqdivs"));
  443. if(reqdivs > "2") {
  444. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("exchngqty")) = true;
  445. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("reqqty")) = true;
  446. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("rergstqty")) = true;
  447. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("lendqty")) = true;
  448. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("rgstqty")) = true;
  449. }
  450. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("deliveflag")) = true;
  451. /*
  452. if(reqdivs > "1") {
  453. grd_goodreq.isReadOnly(i, grd_goodreq.colRef("deliveflag")) = true;
  454. }*/
  455. }
  456. }
  457. }
  458. ]]>
  459. </script>
  460. </xhtml:head>
  461. <xhtml:body guideline="2,322;2,752;2,131;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  462. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  463. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:186px; height:14px; ">CSR물품청구</caption>
  464. </group>
  465. <group id="grp_biz" scroll="auto" style="left:0px; top:15px; width:1195px; height:744px; ">
  466. <group id="group1" style="left:0px; top:85px; width:1193px; height:659px; background-color:transparent; border-color:#808080; border-style:solid; ">
  467. <button id="btn_sav" class="btn5_letter2" style="left:1144px; top:5px; width:42px; height:19px; ">
  468. <caption>저장</caption>
  469. <script type="javascript" ev:event="DOMActivate">
  470. <![CDATA[
  471. //현재시간에 맞는 차수를 가져온다.
  472. var degr = model.getValue("/root/init/tmlist/reqseqlist/reqseq");
  473. //현재시간을 가져온다.
  474. var curtm = getCurrentTime().substr(0, 4);
  475. //현재차수에 대한 마감시간을 가져온다.
  476. var clotm = model.getValue("/root/init/tmlist/reqtimslist[cdid = '" + degr + "']/clotm");
  477. var node = instance1.selectSingleNode("/root/init/tmlist/reqtimslist");
  478. var reqdivs;
  479. var deliveflag;
  480. var rowstat;
  481. if(node != null) {
  482. if(curtm >= clotm && model.getValue("/root/tmp/curdate")== getCurrentDate() ){
  483. for(var i = grd_goodreq.fixedRows; i < grd_goodreq.rows; i++) {
  484. //
  485. reqdivs = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqdivs"));
  486. deliveflag = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("deliveflag"));
  487. rowstat = grd_goodreq.rowStatus(i);
  488. if(deliveflag == degr && (rowstat == "1" || rowstat == "2" || rowstat == "3")) {
  489. messageBox("마감시간이 지나서 현재 정규 차수로 청구를 할수 없습니다.", "E");
  490. grd_goodreq.row = i;
  491. grd_goodreq.col = grd_goodreq.colRef("deliveflag");
  492. return;
  493. }
  494. }
  495. //fsearch();
  496. //btn_search.dispatch("DOMActivate");
  497. }
  498. }
  499. //
  500. //
  501. if(!checkKeyColumn("grd_goodreq")) return;
  502. for(var i = grd_goodreq.fixedRows; i < grd_goodreq.rows;i++) {
  503. if(grd_goodreq.rowStatus(i) == "4" || grd_goodreq.rowStatus(i) == "5" || grd_goodreq.rowStatus(i) == "6") {
  504. } else {
  505. if((
  506. (grd_goodreq.valueMatrix(i, grd_goodreq.colRef("exchngqty")) == "" ||
  507. grd_goodreq.valueMatrix(i, grd_goodreq.colRef("exchngqty")) == "0") &&
  508. (grd_goodreq.valueMatrix(i, grd_goodreq.colRef("lendqty")) == "" ||
  509. grd_goodreq.valueMatrix(i, grd_goodreq.colRef("lendqty")) == "0") &&
  510. (grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rgstqty")) == "" ||
  511. grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rgstqty")) == "0") &&
  512. (grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rergstqty")) == "" ||
  513. grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rergstqty")) == "0") &&
  514. (grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqqty")) == "" ||
  515. grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqqty")) == "0")
  516. ) ) {
  517. messageBox("교환, 대여, 멸균, 청구,재멸균 수량이 모두 0일수 없습니다.", "E");
  518. grd_goodreq.col= i;
  519. return;
  520. }
  521. }
  522. }
  523. var reqdivs;
  524. var reqdivs2;
  525. var goodcd;
  526. var goodcd2;
  527. var deliveflag;
  528. var delivaflag2;
  529. var reqpridflag;
  530. var reqpridflag2;
  531. var rows = grd_goodreq.rows;
  532. var exchngqty;
  533. var lendqty;
  534. var rgstqty;
  535. var rergstqty;
  536. var reqqty;
  537. var safestocqty;
  538. var rowstat;
  539. var exchngqty2;
  540. var lendqty2;
  541. var rgstqty2;
  542. var rergstqty2;
  543. var reqqty2;
  544. var rowstat2;
  545. for(var i = grd_goodreq.fixedRows; i < rows; i++) {
  546. reqdivs = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqdivs"));
  547. goodcd = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("goodcd"));
  548. deliveflag = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("deliveflag"));
  549. reqpridflag = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqpridflag"));
  550. exchngqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("exchngqty")));
  551. lendqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("lendqty")));
  552. rgstqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rgstqty")));
  553. rergstqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("rergstqty")));
  554. reqqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqqty")));
  555. safestocqty = Number(grd_goodreq.valueMatrix(i, grd_goodreq.colRef("csrsafestocqty")));
  556. rowstat = grd_goodreq.rowStatus(i);
  557. for(var j = i +1; j < rows; j++) {
  558. reqdivs2 = grd_goodreq.valueMatrix(j, grd_goodreq.colRef("reqdivs"));
  559. goodcd2 = grd_goodreq.valueMatrix(j, grd_goodreq.colRef("goodcd"));
  560. deliveflag2 = grd_goodreq.valueMatrix(j, grd_goodreq.colRef("deliveflag"));
  561. reqpridflag2 = grd_goodreq.valueMatrix(j, grd_goodreq.colRef("reqpridflag"));
  562. exchngqty2 = Number(grd_goodreq.valueMatrix(j, grd_goodreq.colRef("exchngqty")));
  563. lendqty2 = Number(grd_goodreq.valueMatrix(j, grd_goodreq.colRef("lendqty")));
  564. rgstqty2 = Number(grd_goodreq.valueMatrix(j, grd_goodreq.colRef("rgstqty")));
  565. rergstqty2 = Number(grd_goodreq.valueMatrix(j, grd_goodreq.colRef("rergstqty")));
  566. reqqty2 = Number(grd_goodreq.valueMatrix(j, grd_goodreq.colRef("reqqty")));
  567. rowstat2 = grd_goodreq.rowStatus(j);
  568. if(deliveflag == deliveflag2 && reqpridflag == reqpridflag2 && goodcd == goodcd2 && (reqdivs == "1" || reqdivs== "") ) {
  569. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/lendqty" ,lendqty + lendqty2);
  570. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/rgstqty" ,rgstqty + rgstqty2);
  571. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/rergstqty" ,rergstqty + rergstqty2);
  572. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/reqqty" ,reqqty + reqqty2);
  573. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/exchngqty" ,exchngqty + exchngqty2);
  574. if(safestocqty < model.getValue("/root/main/list/goodreq/goodreqlist["+i+"]/exchngqty") ) {
  575. var lendqty = Number(model.getValue("/root/main/list/goodreq/goodreqlist["+i+"]/lendqty"));
  576. var exchngqty = Number(model.getValue("/root/main/list/goodreq/goodreqlist["+i+"]/exchngqty"));
  577. if(exchngqty > safestocqty) {
  578. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/exchngqty", safestocqty);
  579. model.setValue("/root/main/list/goodreq/goodreqlist["+i+"]/lendqty", lendqty + exchngqty - safestocqty);
  580. }
  581. }
  582. if(rowstat == "3" && rowstat2 == "3") {
  583. grd_goodreq.rowStatus(i) = "3";
  584. } else {
  585. grd_goodreq.rowStatus(i) = "2";
  586. }
  587. grd_goodreq.deleteRow(j);
  588. rows -= 1;
  589. }
  590. }
  591. }
  592. var updtdata = getGridUpdateData(grd_goodreq);
  593. if (updtdata == "" ) {
  594. messageBox("변경된 데이터가","I004");
  595. return;
  596. }
  597. model.makeValue("/root/send/reqdata/goodreqlist", updtdata);
  598. if(submit("TXRSD06011")) {
  599. messageBox("저장이 완료되었습니다.", "I");
  600. }
  601. //btn_search.dispatch("DOMActivate");
  602. fReqRtnGoodInfoSearch();
  603. ]]>
  604. </script>
  605. </button>
  606. <caption id="caption1" class="tit_2" style="left:10px; top:238px; width:54px; height:13px; ">반납</caption>
  607. <button id="btn_del" class="btn2_letter2" style="left:1101px; top:5px; width:42px; height:19px; ">
  608. <caption>삭제</caption>
  609. <script type="javascript" ev:event="DOMActivate">
  610. <![CDATA[
  611. setDelStat();
  612. ]]>
  613. </script>
  614. </button>
  615. <line id="line1" class="line_1" style="x1:5px; y1:26px; x2:1187px; y2:26px; "/>
  616. <line id="line2" class="line_1" style="x1:4px; y1:252px; x2:1186px; y2:252px; "/>
  617. <caption id="caption7" class="tit_2" style="left:10px; top:12px; width:95px; height:13px; ">청구/대여</caption>
  618. <button id="btn_add" class="btn2_letter6" style="left:914px; top:5px; width:86px; height:19px; ">
  619. <caption>청구물품등록</caption>
  620. <script type="javascript" ev:event="DOMActivate">
  621. <![CDATA[
  622. model.removenode("/root/copynode");
  623. model.removenode(gvParamPath +"/SPRSD06004_/SPRSD06004_value");
  624. model.makeNode("/root/copynode");
  625. //
  626. // model.property("deptcd") = model.getValue(opt_reqdeptcd.attribute("ref"));
  627. // model.property("deptnm") = model.getValue(opt_reqdeptnm.attribute("ref"));
  628. //
  629. setParameter("deptcd", model.getValue(opt_reqdeptcd.attribute("ref")));
  630. setParameter("deptnm", model.getValue(opt_reqdeptnm.attribute("ref")));
  631. modal("SPRSD06004", "", "", "", "", "", "","width:900px;height:530px;align:left;");
  632. model.property("deptcd") = "";
  633. model.property("deptnm") = "";
  634. var CSV = model.getValue(gvParamPath + "/SPRSD06004_/SPRSD06004_value");
  635. setCSVToNode("/root/copynode", CSV, "goodreqlist");
  636. fSettingGoodList("/root/copynode", "goodreqlist");
  637. // grd_goodreq.cellStyle("background-color", 1, grd_goodreq.colRef("reqqty"), grd_goodreq.rows -1, grd_goodreq.colRef("reqqty")) = "#ffff99";
  638. // grd_csrbipumlist.cellStyle("background-color", 1, grd_csrbipumlist.colRef("safestocqty"), grd_csrbipumlist.rows -1, grd_csrbipumlist.colRef("chngsafestocqty")) = "#e3e3e3";
  639. grd_goodreq.colDisabled(grd_goodreq.colRef("reqdivs")) = true;
  640. grd_goodreq.colDisabled(grd_goodreq.colRef("reqpridflag")) = true;
  641. grd_goodreq.colDisabled(grd_goodreq.colRef("reqflag")) = true;
  642. grd_goodreq.colDisabled(grd_goodreq.colRef("dinfdivs")) = true;
  643. for(var i = grd_goodreq.fixedRows; i < grd_goodreq.rows; i++) {
  644. reqflag = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("reqflag"));
  645. bipumyn = grd_goodreq.valueMatrix(i, grd_goodreq.colRef("bipumyn"));
  646. if(reqflag == "1") {
  647. if(bipumyn == "N") {
  648. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("lendqty"), i, grd_goodreq.colRef("lendqty")) = "#ffff99";
  649. } else {
  650. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("exchngqty"), i, grd_goodreq.colRef("exchngqty")) = "#ffff99";
  651. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  652. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("lendqty"), i, grd_goodreq.colRef("lendqty")) = "#ffff99";
  653. }
  654. } else if(reqflag == "2" || reqflag == "4") {
  655. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  656. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("reqqty"), i, grd_goodreq.colRef("reqqty")) = "#ffff99";
  657. } else if(reqflag == "3") {
  658. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rergstqty"), i, grd_goodreq.colRef("rergstqty")) = "#ffff99";
  659. grd_goodreq.cellStyle("background-color", i, grd_goodreq.colRef("rgstqty"), i, grd_goodreq.colRef("rgstqty")) = "#ffff99";
  660. }
  661. }
  662. ]]>
  663. </script>
  664. </button>
  665. <button id="btn_hide" class="btn2_letter3" style="left:1046px; top:5px; width:53px; height:19px; ">
  666. <caption>펼치기</caption>
  667. <script type="javascript" ev:event="DOMActivate">
  668. <![CDATA[
  669. if(btn_hide.label == "숨기기") {
  670. btn_hide.value = "펼치기";
  671. grd_goodreq.colHidden(grd_goodreq.colRef("goodspec")) = true;
  672. grd_goodreq.colHidden(grd_goodreq.colRef("goodmodel")) = true;
  673. grd_goodreq.colHidden(grd_goodreq.colRef("dinfflag")) = true;
  674. grd_goodreq.colHidden(grd_goodreq.colRef("dinfdivs")) = true;
  675. } else {
  676. btn_hide.value = "숨기기";
  677. grd_goodreq.colHidden(grd_goodreq.colRef("goodspec")) = false;
  678. grd_goodreq.colHidden(grd_goodreq.colRef("goodmodel")) = false;
  679. grd_goodreq.colHidden(grd_goodreq.colRef("dinfflag")) = false;
  680. grd_goodreq.colHidden(grd_goodreq.colRef("dinfdivs")) = false;
  681. }
  682. ]]>
  683. </script>
  684. <hint>
  685. <![CDATA[숨기기를 누를시 규격,모델, 멸균구분, 멸균상세를 숨깁니다. 펼치기를 누르면 원래대로 돌아옵니다.]]>
  686. </hint>
  687. </button>
  688. <datagrid id="grd_rtnlist" nodeset="/root/main/list/goodreq/rtnlist" class="datagrid2" caption="선택^상태^응급&#xA;여부^청구&#xA;차수^기관코드^청구구분^청구&#xA;번호^청구&#xA;순번^청구부서^청구부서명^물품구분^물품코드^물품명^규격^모델^멸균구분^멸균상세^반납&#xA;수량^한계&#xA;수량^기준대여량^수리량^반납일시^청구자^반납자^대여일시^대여청구자^대여자^불출일시^불출자^불출자^최초등록자ID^최초등록일시^최종수정자ID^최종수정일시^청구차수^물품구분^불출부서^기관코드^청구일자^청구부서^청구번호^청구순번^불출순번^반납순번" colsep="^" colwidth="0, 66, 33, 40, 0, 0, 0, 0, 0, 94, 0, 98, 218, 100, 100, 63, 80, 50, 0, 0, 0, 120, 0, 100, 120, 0, 70, 120, 0, 70, 90, 90, 90, 90, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" extendlastcol="scroll" frozencols="13" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:4px; top:257px; width:1182px; height:191px; ">
  689. <col disabled="true" ref="sel" type="checkbox"/>
  690. <col disabled="true" ref="rtnstat" type="combo">
  691. <choices>
  692. <item>
  693. <label>반납</label>
  694. <value>5</value>
  695. </item>
  696. <item>
  697. <label>반납완료</label>
  698. <value>6</value>
  699. </item>
  700. </choices>
  701. </col>
  702. <col checkvalue="2,1" disabled="true" ref="deliveflag" type="checkbox"/>
  703. <col disabled="true" ref="reqpridflag" type="combo" style="text-align:center; ">
  704. <choices>
  705. <item>
  706. <label>1차</label>
  707. <value>1</value>
  708. </item>
  709. <item>
  710. <label>2차</label>
  711. <value>2</value>
  712. </item>
  713. <item>
  714. <label>3차</label>
  715. <value>3</value>
  716. </item>
  717. <item>
  718. <label>4차</label>
  719. <value>4</value>
  720. </item>
  721. <item>
  722. <label>5차</label>
  723. <value>5</value>
  724. </item>
  725. <item>
  726. <label/>
  727. <value/>
  728. </item>
  729. </choices>
  730. </col>
  731. <col ref="instcd" visibility="hidden"/>
  732. <col ref="reqdd" visibility="hidden"/>
  733. <col ref="reqno" visibility="hidden"/>
  734. <col ref="reqseqno" visibility="hidden" style="text-align:center; "/>
  735. <col ref="reqdeptcd" visibility="hidden"/>
  736. <col ref="reqdeptnm" style="text-align:center; "/>
  737. <col disabled="true" ref="reqflag" type="combo">
  738. <choices>
  739. <item>
  740. <label>비품</label>
  741. <value>1</value>
  742. </item>
  743. <item>
  744. <label>소모품</label>
  745. <value>2</value>
  746. </item>
  747. <item>
  748. <label>린넨</label>
  749. <value>4</value>
  750. </item>
  751. <item>
  752. <label>멸균의뢰</label>
  753. <value>3</value>
  754. </item>
  755. </choices>
  756. </col>
  757. <col ref="goodcd" _key="true" style="text-align:center; "/>
  758. <col ref="goodnm"/>
  759. <col ref="goodspec"/>
  760. <col ref="goodmodel"/>
  761. <col ref="dinfflag" type="combo" style="text-align:center; ">
  762. <choices>
  763. <item>
  764. <label>멸균</label>
  765. <value>1</value>
  766. </item>
  767. <item>
  768. <label>비멸균</label>
  769. <value>2</value>
  770. </item>
  771. </choices>
  772. </col>
  773. <col disabled="true" ref="dinfdivs" type="combo" style="text-align:center; ">
  774. <choices>
  775. <item>
  776. <label>고압증기멸균</label>
  777. <value>1</value>
  778. </item>
  779. <item>
  780. <label>가스멸균</label>
  781. <value>2</value>
  782. </item>
  783. <item>
  784. <label>건열멸균</label>
  785. <value>3</value>
  786. </item>
  787. <item>
  788. <label>플라즈마멸균</label>
  789. <value>4</value>
  790. </item>
  791. </choices>
  792. </col>
  793. <col disabled="true" ref="rtnqty" style="text-align:right; "/>
  794. <col ref="reqlmtqty" style="text-align:right; "/>
  795. <col ref="csrddavguseqty" format="#,###" style="text-align:right; "/>
  796. <col ref="rpirqty" visibility="hidden" style="text-align:right; "/>
  797. <col ref="reqdt" format="yyyy-mm-dd hh:nn"/>
  798. <col ref="reqid"/>
  799. <col ref="reqnm"/>
  800. <col ref="lendreqdt" format="yyyy-mm-dd hh:nn"/>
  801. <col ref="lendreqid"/>
  802. <col ref="lendreqnm"/>
  803. <col ref="dlvdt" format="yyyy-mm-dd hh:nn"/>
  804. <col ref="dlvid"/>
  805. <col ref="dlvnm"/>
  806. <col ref="fstrgstrid" visibility="hidden"/>
  807. <col ref="fstrgstdt" visibility="hidden" format="yyyy-mm-dd"/>
  808. <col ref="lastupdtrid" visibility="hidden"/>
  809. <col ref="lastupdtdt" visibility="hidden" format="yyyy-mm-dd"/>
  810. <col ref="reqpridflag" visibility="hidden"/>
  811. <col ref="goodflag" visibility="hidden"/>
  812. <col ref="delivedeptcd" visibility="hidden"/>
  813. <col ref="instcd" visibility="hidden"/>
  814. <col ref="reqdd" visibility="hidden"/>
  815. <col ref="reqdeptcd" visibility="hidden"/>
  816. <col ref="reqno" visibility="hidden"/>
  817. <col ref="reqseqno" visibility="hidden"/>
  818. <col ref="deliveseqno" visibility="hidden"/>
  819. <col ref="rtnseqno" visibility="hidden"/>
  820. <script type="javascript" ev:event="onaftersort">
  821. <![CDATA[
  822. grd_goodreq.gridToInstance();
  823. ]]>
  824. </script>
  825. <script type="javascript" ev:event="onmousedown">
  826. <![CDATA[
  827. if(event.button==3) {
  828. //fShowPopupMenu("grd_opatmngt","/root/init/menu/item");
  829. if(grd_rtnlist.isCell(event.target) && grd_rtnlist.mouseRow >= grd_rtnlist.fixedrows){
  830. window.setPopupMenu(true, "/root/main/popup/item2", "name", "func", false);
  831. }else{
  832. window.setPopupMenu(false);
  833. }
  834. }
  835. ]]>
  836. </script>
  837. <script type="javascript" ev:event="DOMFocusOut">
  838. <![CDATA[
  839. window.setPopupMenu(false);
  840. ]]>
  841. </script>
  842. </datagrid>
  843. <button id="btn_big" class="btn2_letter2" style="left:1002px; top:5px; width:42px; height:19px; ">
  844. <caption>확대</caption>
  845. <script type="javascript" ev:event="DOMActivate">
  846. <![CDATA[
  847. if(btn_big.value == "확대") {
  848. line4.visible = false;
  849. grd_goodreq.attribute("height") = 620;
  850. btn_big.value = "축소";
  851. } else {
  852. line4.visible = true;
  853. grd_goodreq.attribute("height") = 190;
  854. btn_big.value = "확대";
  855. }
  856. ]]>
  857. </script>
  858. </button>
  859. <button id="btn_rtn" class="btn5_letter2" style="left:1143px; top:464px; width:42px; height:19px; ">
  860. <caption>반납</caption>
  861. <script type="javascript" ev:event="DOMActivate">
  862. <![CDATA[
  863. var rtn = messageBox("저장하시겠습니까?", "Q");
  864. var rtnqty;
  865. if(rtn == "6") {
  866. for(var i = grd_goodnortnlist.fixedRows; i < grd_goodnortnlist.rows; i++) {
  867. if(grd_goodnortnlist.rowStatus(i) == "2") {
  868. rtnqty = grd_goodnortnlist.valueMatrix(i, grd_goodnortnlist.colRef("rtnqty"));
  869. if(rtnqty == "" || rtnqty == "0") {
  870. messageBox("반납수량을 입력하여주세요.", "E");
  871. grd_goodnortnlist.row = i;
  872. grd_goodnortnlist.col = grd_goodnortnlist.colRef("rtnqty");
  873. return;
  874. }
  875. if(model.property("chngyn") == "N") {
  876. if(model.getValue("/root/init/tmlist/reqseqlist/reqseq") == "") {
  877. grd_goodnortnlist.valueMatrix(i, grd_goodnortnlist.colRef("deliveflag")) = "2";
  878. } else {
  879. grd_goodnortnlist.valueMatrix(i, grd_goodnortnlist.colRef("deliveflag")) = "1";
  880. grd_goodnortnlist.valueMatrix(i, grd_goodnortnlist.colRef("reqpridflag")) = model.getValue("/root/init/tmlist/reqseqlist/reqseq");
  881. }
  882. }
  883. grd_goodnortnlist.valueMatrix(i, grd_goodnortnlist.colRef("rtndd")) = model.getValue("/root/tmp/curdate");
  884. }
  885. }
  886. //
  887. var updtdata = getGridUpdateData(grd_goodnortnlist);
  888. if (updtdata == "" ) {
  889. messageBox("변경된 데이터가","I004");
  890. return;
  891. }
  892. model.makeValue("/root/send/reqdata/updtdata", updtdata);
  893. if(submit("TXRSE00122")) {
  894. messageBox("저장이 완료되었습니다.", "I");
  895. //btn_search.dispatch("DOMActivate");
  896. fReqRtnGoodInfoSearch();
  897. }
  898. }
  899. ]]>
  900. </script>
  901. </button>
  902. <caption id="caption3" class="tit_2" style="left:9px; top:470px; width:139px; height:13px; ">대여물품 미반납내역</caption>
  903. <line id="line3" class="line_1" style="x1:4px; y1:484px; x2:1186px; y2:484px; "/>
  904. <datagrid id="grd_goodnortnlist" nodeset="/root/main/list/goodreq/goodrtnlist" class="datagrid2" caption="상태^기관코드^청구구분^청구&#xA;번호^청구&#xA;순번^청구부서^물품구분^물품코드^물품명^규격^모델^대여&#xA;수량&#xA;^반납&#xA;수량^청구일^응급&#xA;여부^청구&#xA;차수^한계&#xA;수량^기준대여량^수리량^대여일시^대여자^대여자^불출일시^불출자^불출자^최초등록자ID^최초등록일시^최종수정자ID^최종수정일시^reqprigflag^deliveflag^caption2^caption3^불출일자^불출번호^불출단위^반납일자" colsep="^" colwidth="35, 0, 0, 0, 0, 0, 0, 80, 220, 70, 70, 50, 50, 80, 50, 50, 0, 0, 0, 120, 70, 100, 120, 70, 70, 90, 90, 90, 90, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" extendlastcol="scroll" frozencols="9" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:4px; top:489px; width:1182px; height:160px; ">
  905. <col disabled="true" ref="reqdivs" type="combo">
  906. <choices>
  907. <item>
  908. <label>청구</label>
  909. <value>1</value>
  910. </item>
  911. <item>
  912. <![CDATA[d]]>
  913. <label>마감</label>
  914. <value>2</value>
  915. </item>
  916. <item>
  917. <label>확인</label>
  918. <value>3</value>
  919. </item>
  920. <item>
  921. <label>불출</label>
  922. <value>4</value>
  923. </item>
  924. <item>
  925. <label>반납</label>
  926. <value>5</value>
  927. </item>
  928. <item>
  929. <label>반납완료</label>
  930. <value>6</value>
  931. </item>
  932. </choices>
  933. </col>
  934. <col ref="instcd" visibility="hidden"/>
  935. <col ref="reqdd" visibility="hidden"/>
  936. <col ref="reqno" visibility="hidden"/>
  937. <col ref="reqseqno" visibility="hidden" style="text-align:center; "/>
  938. <col ref="reqdeptcd" visibility="hidden"/>
  939. <col disabled="true" ref="reqflag" type="combo">
  940. <choices>
  941. <item>
  942. <label>비품</label>
  943. <value>1</value>
  944. </item>
  945. <item>
  946. <label>소모품</label>
  947. <value>2</value>
  948. </item>
  949. <item>
  950. <label>린넨</label>
  951. <value>4</value>
  952. </item>
  953. <item>
  954. <label>멸균의뢰</label>
  955. <value>3</value>
  956. </item>
  957. </choices>
  958. </col>
  959. <col ref="goodcd" _key="true"/>
  960. <col ref="goodnm"/>
  961. <col ref="goodspec"/>
  962. <col ref="goodmodel"/>
  963. <col ref="dlvlendqty" style="text-align:right; "/>
  964. <col ref="rtnqty" type="input" style="text-align:right; "/>
  965. <col ref="reqdd" format="yyyy-mm-dd" style="text-align:center; "/>
  966. <col checkvalue="2,1" disabled="true" ref="deliveflag" type="checkbox"/>
  967. <col disabled="true" ref="reqpridflag" type="combo" style="text-align:center; ">
  968. <choices>
  969. <item>
  970. <label>1차</label>
  971. <value>1</value>
  972. </item>
  973. <item>
  974. <label>2차</label>
  975. <value>2</value>
  976. </item>
  977. <item>
  978. <label>3차</label>
  979. <value>3</value>
  980. </item>
  981. <item>
  982. <label>4차</label>
  983. <value>4</value>
  984. </item>
  985. <item>
  986. <label>5차</label>
  987. <value>5</value>
  988. </item>
  989. <item>
  990. <label/>
  991. <value/>
  992. </item>
  993. </choices>
  994. </col>
  995. <col ref="reqlmtqty" style="text-align:right; "/>
  996. <col ref="csrddavguseqty" format="#,###" style="text-align:right; "/>
  997. <col ref="rpirqty" visibility="hidden" style="text-align:right; "/>
  998. <col ref="reqdt" format="yyyy-mm-dd hh:nn"/>
  999. <col ref="reqnm" style="text-align:center; "/>
  1000. <col ref="reqid" visibility="hidden"/>
  1001. <col ref="dlvdt" format="yyyy-mm-dd hh:nn"/>
  1002. <col ref="dlvid" visibility="hidden" style="text-align:center; "/>
  1003. <col ref="dlvnm"/>
  1004. <col ref="fstrgstrid" visibility="hidden"/>
  1005. <col ref="fstrgstdt" visibility="hidden" format="yyyy-mm-dd hh:nn"/>
  1006. <col ref="lastupdtrid" visibility="hidden"/>
  1007. <col ref="lastupdtdt" visibility="hidden" format="yyyy-mm-dd hh:nn"/>
  1008. <col ref="reqpridflag" visibility="hidden"/>
  1009. <col ref="deliveflag" visibility="hidden"/>
  1010. <col ref="goodflag" visibility="hidden"/>
  1011. <col ref="delivedeptcd" visibility="hidden"/>
  1012. <col ref="delivedd" visibility="hidden"/>
  1013. <col ref="deliveseqno" visibility="hidden"/>
  1014. <col ref="deliveunit" visibility="hidden"/>
  1015. <col ref="rtndd" visibility="hidden"/>
  1016. <script type="javascript" ev:event="xforms-value-changed">
  1017. <![CDATA[
  1018. var rtnqty;
  1019. var lendqty;
  1020. var deliveflag;
  1021. if(grd_goodnortnlist.col == grd_goodnortnlist.colRef("deliveflag")) {
  1022. model.property("chngyn") = "Y";
  1023. }
  1024. rtnqty = Number(grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("rtnqty")));
  1025. lendqty = Number(grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("dlvlendqty")));
  1026. deliveflag = grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("deliveflag"));
  1027. //청구차수 및 응급여부 변경시
  1028. if(deliveflag == "2") {
  1029. grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("reqpridflag")) = "-";
  1030. } else {
  1031. grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("reqpridflag")) = model.getValue("/root/init/tmlist/reqseqlist/reqseq");
  1032. }
  1033. //반납수량 변경시.
  1034. if(grd_goodnortnlist.col == grd_goodnortnlist.colRef("rtnqty")) {
  1035. if(rtnqty <= 0) {
  1036. messageBox("반납수량은 0보다 작을수 없습니다." , "E");
  1037. return;
  1038. }
  1039. if(rtnqty > lendqty) {
  1040. messageBox("반납수량이 대여수량보다 클수 없습니다.", "E");
  1041. grd_goodnortnlist.valueMatrix(grd_goodnortnlist.row, grd_goodnortnlist.colRef("rtnqty")) = "";
  1042. grd_goodnortnlist.rowStatus(grd_goodnortnlist.row) = "0";
  1043. return;
  1044. }
  1045. }
  1046. ]]>
  1047. </script>
  1048. <script type="javascript" ev:event="onaftersort">
  1049. <![CDATA[
  1050. grd_goodnortnlist.gridToInstance();
  1051. ]]>
  1052. </script>
  1053. </datagrid>
  1054. <datagrid id="grd_goodreq" nodeset="/root/main/list/goodreq/goodreqlist" class="datagrid2" caption="선택^상태^응급&#xA;여부^청구&#xA;차수^기관코드^청구구분^청구&#xA;번호^청구&#xA;순번^청구부서^청구부서명^물품구분^물품코드^물품명^규격^모델^멸균구분^멸균상세^비품&#xA;수량^재고&#xA;수량^단위^한계&#xA;수량^기준대여량^교환^청구^재멸균&#xA;의뢰^대여^멸균&#xA;의뢰^Total&#xA;수량^수리량^비고^청구일시^청구자^최초등록자ID^최초등록일시^최종수정자ID^최종수정일시^청구차수^물품구분^불출부서^청구자ID^청구부서구분^caption1" colsep="^" colwidth="0, 35, 33, 42, 0, 0, 0, 0, 0, 96, 60, 95, 172, 100, 100, 59, 84, 60, 0, 40, 0, 0, 40, 40, 50, 50, 50, 50, 0, 228, 100, 100, 90, 90, 90, 90, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" extendlastcol="scroll" frozencols="13" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" selectionmode="free" tooltip="true" style="left:4px; top:31px; width:1182px; height:191px; ">
  1055. <col ref="sel" type="checkbox"/>
  1056. <col disabled="true" ref="reqdivs" type="combo">
  1057. <choices>
  1058. <item>
  1059. <label>청구</label>
  1060. <value>1</value>
  1061. </item>
  1062. <item>
  1063. <label>마감</label>
  1064. <value>2</value>
  1065. </item>
  1066. <item>
  1067. <label>확인</label>
  1068. <value>3</value>
  1069. </item>
  1070. <item>
  1071. <label>불출</label>
  1072. <value>4</value>
  1073. </item>
  1074. <item>
  1075. <label>반납</label>
  1076. <value>5</value>
  1077. </item>
  1078. </choices>
  1079. </col>
  1080. <col checkvalue="2,1" ref="deliveflag" type="checkbox"/>
  1081. <col disabled="true" ref="reqpridflag" type="combo" style="text-align:center; ">
  1082. <choices>
  1083. <item>
  1084. <label>1차</label>
  1085. <value>1</value>
  1086. </item>
  1087. <item>
  1088. <label>2차</label>
  1089. <value>2</value>
  1090. </item>
  1091. <item>
  1092. <label>3차</label>
  1093. <value>3</value>
  1094. </item>
  1095. <item>
  1096. <label>4차</label>
  1097. <value>4</value>
  1098. </item>
  1099. <item>
  1100. <label>5차</label>
  1101. <value>5</value>
  1102. </item>
  1103. <item>
  1104. <label/>
  1105. <value/>
  1106. </item>
  1107. </choices>
  1108. </col>
  1109. <col ref="instcd" visibility="hidden"/>
  1110. <col ref="reqdd" visibility="hidden"/>
  1111. <col ref="reqno" visibility="hidden"/>
  1112. <col ref="reqseqno" visibility="hidden" style="text-align:center; "/>
  1113. <col ref="reqdeptcd" visibility="hidden"/>
  1114. <col ref="reqdeptnm" style="text-align:center; "/>
  1115. <col disabled="true" ref="reqflag" type="combo" style="text-align:center; ">
  1116. <choices>
  1117. <item>
  1118. <label>비품</label>
  1119. <value>1</value>
  1120. </item>
  1121. <item>
  1122. <label>소모품</label>
  1123. <value>2</value>
  1124. </item>
  1125. <item>
  1126. <label>린넨</label>
  1127. <value>4</value>
  1128. </item>
  1129. <item>
  1130. <label>멸균의뢰</label>
  1131. <value>3</value>
  1132. </item>
  1133. </choices>
  1134. </col>
  1135. <col ref="goodcd" _key="true" style="text-align:center; "/>
  1136. <col ref="goodnm"/>
  1137. <col ref="goodspec"/>
  1138. <col ref="goodmodel"/>
  1139. <col disabled="true" ref="dinfflag" type="combo" style="text-align:center; ">
  1140. <choices>
  1141. <item>
  1142. <label>멸균</label>
  1143. <value>1</value>
  1144. </item>
  1145. <item>
  1146. <label>비멸균</label>
  1147. <value>2</value>
  1148. </item>
  1149. </choices>
  1150. </col>
  1151. <col disabled="true" ref="dinfdivs" type="combo" style="text-align:center; ">
  1152. <choices>
  1153. <item>
  1154. <label>고압증기멸균</label>
  1155. <value>1</value>
  1156. </item>
  1157. <item>
  1158. <label>가스멸균</label>
  1159. <value>2</value>
  1160. </item>
  1161. <item>
  1162. <label>건열멸균</label>
  1163. <value>3</value>
  1164. </item>
  1165. <item>
  1166. <label>플라즈마멸균</label>
  1167. <value>4</value>
  1168. </item>
  1169. </choices>
  1170. </col>
  1171. <col ref="csrsafestocqty" format="#,###" style="text-align:right; "/>
  1172. <col ref="realqty" format="#,###" style="text-align:right; "/>
  1173. <col ref="requnit" style="text-align:center; "/>
  1174. <col ref="reqlmtqty" style="text-align:right; "/>
  1175. <col ref="csrddavguseqty" format="#,###" style="text-align:right; "/>
  1176. <col ref="exchngqty" type="input" format="#,###" maxlength="9" style="text-align:right; "/>
  1177. <col ref="reqqty" type="input" format="#,###" style="text-align:right; "/>
  1178. <col ref="rergstqty" type="input" format="#,###" style="text-align:right; "/>
  1179. <col ref="lendqty" type="input" format="#,###" maxlength="9" style="text-align:right; "/>
  1180. <col ref="rgstqty" type="input" format="#,###" style="text-align:right; "/>
  1181. <col ref="sumqty" style="text-align:right; "/>
  1182. <col ref="rpirqty" visibility="hidden" style="text-align:right; "/>
  1183. <col ref="cmt" type="input" style="text-align:left; "/>
  1184. <col ref="reqtm" format="yyyy-mm-dd hh:nn"/>
  1185. <col ref="reqpsnnm"/>
  1186. <col ref="fstrgstrid" visibility="hidden"/>
  1187. <col ref="fstrgstdt" visibility="hidden" format="yyyy-mm-dd"/>
  1188. <col ref="lastupdtrid" visibility="hidden"/>
  1189. <col ref="lastupdtdt" visibility="hidden" format="yyyy-mm-dd"/>
  1190. <col ref="reqpridflag" visibility="hidden"/>
  1191. <col ref="goodflag" visibility="hidden"/>
  1192. <col ref="delivedeptcd" visibility="hidden"/>
  1193. <col ref="reqpsnid" visibility="hidden"/>
  1194. <col ref="deptcgflag" visibility="hidden"/>
  1195. <col ref="bipumyn" visibility="hidden"/>
  1196. <script type="javascript" ev:event="xforms-value-changed">
  1197. <![CDATA[
  1198. if(grd_goodreq.col == grd_goodreq.colRef("deliveflag")) {
  1199. if(cmb_reqpridflag.length < 2) {
  1200. messageBox("응급청구만 가능한 시간입니다.", "E");
  1201. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("deliveflag")) = "2";
  1202. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqpridflag")) = "-";
  1203. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdd")) = getCurrentDate();
  1204. } else {
  1205. if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("deliveflag")) == "2") {
  1206. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqpridflag")) = "-";
  1207. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdd")) = getCurrentDate();
  1208. } else {
  1209. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqpridflag")) = model.getValue("/root/init/tmlist/reqseqlist/reqseq");
  1210. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdd")) = model.getValue(ipt_reqdd.attribute("ref"));
  1211. }
  1212. }
  1213. }
  1214. if (grd_goodreq.col == grd_goodreq.colRef("exchngqty") )
  1215. {
  1216. var safestocqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("csrsafestocqty")));
  1217. var exchngqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngqty")));
  1218. var rslt = exchngqty - safestocqty;
  1219. var realqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("realqty")));
  1220. //var reqqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqqty")));
  1221. if(rslt > 0) {
  1222. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngqty")) = safestocqty;
  1223. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendqty")) = rslt;
  1224. } else {
  1225. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngqty")) = exchngqty;
  1226. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendqty")) = 0;
  1227. }
  1228. }
  1229. if( grd_goodreq.col == grd_goodreq.colRef("lendqty") ) {
  1230. var safestocqty = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("csrsafestocqty"));
  1231. }
  1232. ]]>
  1233. </script>
  1234. <script type="javascript" ev:event="onaftersort">
  1235. <![CDATA[
  1236. grd_goodreq.gridToInstance();
  1237. ]]>
  1238. </script>
  1239. <script type="javascript" ev:event="onclick">
  1240. <![CDATA[
  1241. if(grd_goodreq.isCell(event.target) && grd_goodreq.mouseRow >= grd_goodreq.fixedrows){
  1242. var reqflag = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqflag"));
  1243. var reqdivs = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqdivs"));
  1244. var bipumyn = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("bipumyn"));
  1245. if(reqdivs < 3) {
  1246. if(reqflag == "1") {
  1247. if(bipumyn == "Y") {
  1248. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = false;
  1249. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = true;
  1250. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = false;
  1251. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = false;
  1252. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = true;
  1253. } else {
  1254. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = true;
  1255. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = true;
  1256. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = true;
  1257. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = false;
  1258. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = true;
  1259. }
  1260. } else if(reqflag == "2") {
  1261. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = true;
  1262. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = false;
  1263. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = false;
  1264. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = true;
  1265. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = true;
  1266. } else if(reqflag == "3") {
  1267. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = true;
  1268. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = true;
  1269. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = false;
  1270. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = true;
  1271. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = false;
  1272. } else if(reqflag == "4") {
  1273. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = true;
  1274. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = false;
  1275. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = false;
  1276. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = true;
  1277. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = true;
  1278. }
  1279. grd_goodreq.colDisabled(grd_goodreq.colRef("cmt")) = false;
  1280. } else {
  1281. grd_goodreq.colDisabled(grd_goodreq.colRef("exchngqty")) = true;
  1282. grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = true;
  1283. grd_goodreq.colDisabled(grd_goodreq.colRef("rergstqty")) = true;
  1284. grd_goodreq.colDisabled(grd_goodreq.colRef("lendqty")) = true;
  1285. grd_goodreq.colDisabled(grd_goodreq.colRef("rgstqty")) = true;
  1286. grd_goodreq.colDisabled(grd_goodreq.colRef("cmt")) = true;
  1287. }
  1288. }
  1289. ]]>
  1290. </script>
  1291. <script type="javascript" ev:event="onmouseover">
  1292. <![CDATA[
  1293. if(event.button == "3") {
  1294. window.setPopupMenu(false);
  1295. }
  1296. ]]>
  1297. </script>
  1298. <script type="javascript" ev:event="DOMFocusIn">
  1299. <![CDATA[
  1300. window.setPopupMenu(false);
  1301. ]]>
  1302. </script>
  1303. </datagrid>
  1304. </group>
  1305. <group id="grp_sea" style="left:0px; top:10px; width:1195px; height:40px; vertical-align:top; ">
  1306. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:40px; background-color:#fffbf2; border-color:#ffd799; "/>
  1307. <caption id="caption16" class="search_name" style="left:205px; top:11px; width:99px; height:17px; ">청구일자 :</caption>
  1308. <caption id="caption18" class="search_name" style="left:391px; top:10px; width:86px; height:17px; ">청구차수 :</caption>
  1309. <input id="ipt_reqdd" ref="/root/send/goodreq/reqfrdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:293px; top:10px; width:94px; height:19px; ">
  1310. <script type="javascript" ev:event="xforms-value-changed">
  1311. <![CDATA[
  1312. if(ipt_reqdd.value == model.getValue("/root/tmp/curdate")) {
  1313. btn_add.disabled = false;
  1314. btn_del.disabled = false;
  1315. btn_sav.disabled = false;
  1316. } else {
  1317. if(ipt_reqdd.value == getCurrentDate() && chk_eryn.value == "2") {
  1318. btn_add.disabled = false;
  1319. btn_del.disabled = false;
  1320. btn_sav.disabled = false;
  1321. } else {
  1322. btn_add.disabled = true;
  1323. btn_del.disabled = true;
  1324. btn_sav.disabled = true;
  1325. }
  1326. }
  1327. //fSetReqseq()
  1328. //btn_search.dispatch("DOMActivate");
  1329. fReqRtnGoodInfoSearch();
  1330. ]]>
  1331. </script>
  1332. </input>
  1333. <line id="line14" class="line_4" style="x1:999px; y1:10px; x2:999px; y2:32px; "/>
  1334. <button id="btn_search" class="btn1_letter2" navindex="7" style="left:1010px; top:10px; width:56px; height:22px; text-align:left; ">
  1335. <caption>조회</caption>
  1336. <script type="javascript" ev:event="DOMActivate">
  1337. <![CDATA[
  1338. fReqRtnGoodInfoSearch();
  1339. ]]>
  1340. </script>
  1341. </button>
  1342. <select1 id="cmb_instcd" ref="/root/send/goodreq/instcd" class="combo_s_essential" disabled="true" appearance="minimal" style="left:100px; top:10px; width:95px; height:19px; ">
  1343. <choices>
  1344. <itemset>
  1345. <label/>
  1346. <value/>
  1347. </itemset>
  1348. </choices>
  1349. </select1>
  1350. <caption id="caption9" class="search_name" style="left:10px; top:12px; width:89px; height:17px; ">기관코드 :</caption>
  1351. <caption id="caption2" class="search_name" style="left:694px; top:11px; width:86px; height:17px; ">청구부서 :</caption>
  1352. <output id="opt_reqdeptnm" ref="/root/send/goodreq/reqdeptnm" class="output_fix" appearance="output" style="left:874px; top:10px; width:105px; height:19px; "/>
  1353. <input id="opt_reqdeptcd" ref="/root/send/goodreq/reqdeptcd" class="input_search" appearance="output" style="left:779px; top:10px; width:72px; height:19px; ">
  1354. <script type="javascript" ev:event="xforms-value-changed">
  1355. <![CDATA[
  1356. if(opt_reqdeptcd.value.length == 0){
  1357. opt_reqdeptnm.value = "";
  1358. }else
  1359. {
  1360. misfValidationCheck("02", "", "reqdeptcd,reqdeptnm" );
  1361. }
  1362. model.refresh();
  1363. //btn_search.dispatch("DOMActivate");
  1364. fReqRtnGoodInfoSearch();
  1365. ]]>
  1366. </script>
  1367. </input>
  1368. <button id="btn_reqdept" class="icon_search" style="left:854px; top:10px; width:16px; height:16px; ">
  1369. <caption/>
  1370. <script type="javascript" ev:event="DOMActivate">
  1371. <![CDATA[
  1372. modal("SPRSS01203");
  1373. model.setValue(opt_reqdeptcd.attribute("ref"), model.property("deptcd"));
  1374. model.setValue(opt_reqdeptnm.attribute("ref"), model.property("deptnm"));
  1375. //model.setValue(ipt_csrreqdeptcd2.attribute("ref"), model.property("csrreqdeptcd"));
  1376. opt_reqdeptcd.refresh();
  1377. opt_reqdeptnm.refresh();
  1378. model.setValue("/root/send/reqdata/reqdeptcd", model.property("deptcd"));
  1379. model.setValue("/root/send/reqdata/instcd", getUserInfo("dutplceinstcd"));
  1380. fsearch();
  1381. btn_add.disabled = false;
  1382. btn_del.disabled = false;
  1383. btn_sav.disabled = false;
  1384. ]]>
  1385. </script>
  1386. </button>
  1387. <button id="button2" class="btn1_letter2" navindex="7" style="left:1070px; top:10px; width:56px; height:22px; text-align:left; ">
  1388. <caption>엑셀</caption>
  1389. <script type="javascript" ev:event="DOMActivate">
  1390. <![CDATA[
  1391. if(grd_goodreq.rows == "1") {
  1392. messageBox("엑셀로 저장할 데이터가 존재하지않습니다.", "E");
  1393. return;
  1394. }
  1395. var reqdd = model.getValue(ipt_reqdd.attribute("ref"));
  1396. var fileName = window.fileDialog("save", ",", false, "CSR물품청구내역_" + reqdd, "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  1397. if (fileName != "")
  1398. {
  1399. grd_goodreq.saveExcel(fileName, "CSR 청구부서 등록현황");
  1400. }
  1401. ]]>
  1402. </script>
  1403. </button>
  1404. <button id="button3" class="btn1_letter2" navindex="7" style="left:1130px; top:10px; width:56px; height:22px; text-align:left; ">
  1405. <caption>출력</caption>
  1406. <script type="javascript" ev:event="DOMActivate">
  1407. <![CDATA[
  1408. fPrintRex();
  1409. ]]>
  1410. </script>
  1411. </button>
  1412. <select id="chk_eryn" ref="/root/send/goodreq/eryn" overflow="visible" appearance="full" cellspacing="70" cols="2" style="left:485px; top:10px; width:190px; height:15px; border-style:none; ">
  1413. <choices>
  1414. <item>
  1415. <label>정규</label>
  1416. <value>1</value>
  1417. </item>
  1418. <item>
  1419. <label>응급</label>
  1420. <value>2</value>
  1421. </item>
  1422. </choices>
  1423. <script type="javascript" ev:event="xforms-value-changed">
  1424. <![CDATA[
  1425. var eryn = model.getValue(chk_eryn.attribute("ref"));
  1426. var std = isSearchString(eryn, "1");
  1427. var er = isSearchString(eryn, "2");
  1428. if(std) {
  1429. cmb_reqpridflag.disabled = false;
  1430. model.setValue(cmb_reqpridflag.attribute("ref"), model.getValue("/root/init/tmlist/reqseqlist/reqseq"));
  1431. cmb_reqpridflag.refresh();
  1432. } else {
  1433. cmb_reqpridflag.disabled = true;
  1434. cmb_reqpridflag.value = "-";
  1435. }
  1436. ipt_reqdd.dispatch("xfoms-value-chnged");
  1437. ]]>
  1438. </script>
  1439. </select>
  1440. <select1 id="cmb_reqpridflag" ref="/root/send/goodreq/reqpridflag" appearance="minimal" style="left:530px; top:8px; width:65px; height:19px; ">
  1441. <choices>
  1442. <itemset nodeset="/root/init/tmlist/reqtimslist">
  1443. <label ref="cdnm"/>
  1444. <value ref="cdid"/>
  1445. </itemset>
  1446. </choices>
  1447. <script type="javascript" ev:event="xforms-value-changed">
  1448. <![CDATA[
  1449. // if(cmb_reqpridflag.value > 2) {
  1450. // grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = true;
  1451. // } else {
  1452. // grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = false;
  1453. // }
  1454. if(model.getValue(cmb_reqpridflag.attribute("ref")) != model.getValue("/root/init/tmlist/reqseqlist/reqseq")
  1455. || model.getValue(ipt_reqdd.attribute("ref")) != model.getValue("/root/tmp/curdate") ) {
  1456. btn_add.disabled = true;
  1457. btn_sav.disabled = true;
  1458. btn_del.disabled = true;
  1459. } else {
  1460. btn_add.disabled = false;
  1461. btn_sav.disabled = false;
  1462. btn_del.disabled = false;
  1463. }
  1464. ]]>
  1465. </script>
  1466. </select1>
  1467. </group>
  1468. <button id="button4" class="btn2_letter10" style="left:1057px; top:65px; width:130px; height:19px; ">
  1469. <caption>불출/미불출 내역조회</caption>
  1470. <script type="javascript" ev:event="DOMActivate">
  1471. <![CDATA[
  1472. clearParameter("deptcd");
  1473. setParameter("deptcd",model.getValue("/root/send/goodreq/reqdeptcd"));
  1474. modal("SMRSE00200");
  1475. ]]>
  1476. </script>
  1477. </button>
  1478. </group>
  1479. <line id="line4" style="x1:5px; y1:558px; x2:1186px; y2:558px; border-color:#808080; "/>
  1480. </xhtml:body>
  1481. </xhtml:html>