SMRSD06001_물품청구관리(CSR).xrw 60 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 수정이력 :
  4. [2007.10.18 HBH : 공급실 불출구분이 "응급"이면 마감차수를 입력받지 않는다. -> 중앙공급실 출고처리시 프로그램 동반수정해야한다.
  5. -->
  6. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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. <instcd/>
  18. <reqflag/>
  19. <reqdd/>
  20. <reqno/>
  21. <reqseqno/>
  22. <goodcd/>
  23. <goodnm/>
  24. <goodspec/>
  25. <csrsafestocqty/>
  26. <csrddavguseqty/>
  27. <reqqty/>
  28. <requnit/>
  29. <lendqty/>
  30. <lendunit/>
  31. <exchngqty/>
  32. <exchngunit/>
  33. <deliveqty/>
  34. <nodeliveqty/>
  35. <rgstqty/>
  36. <acptflag/>
  37. <cmt/>
  38. <workflag/>
  39. <reqmthdflag/>
  40. <deliveflag/>
  41. <reqpridflag/>
  42. <goodflag/>
  43. <bugtcd/>
  44. <stdysubjno/>
  45. <reqdeptcd/>
  46. <reqcollcdeptcd/>
  47. <delivedeptcd/>
  48. <delivehopedd/>
  49. <reqpsnid/>
  50. <reqtm/>
  51. <ddavguseqty/>
  52. <deptaprvyn/>
  53. <deptaprvdd/>
  54. <acptdd/>
  55. <acptcharid/>
  56. <purcdmnddd/>
  57. <purcdmndno/>
  58. <purcdmndseq/>
  59. <colreqdd/>
  60. <colreqno/>
  61. <colreqseqno/>
  62. <unwinresn/>
  63. <deliveprcsflag/>
  64. <cmt/>
  65. <predeptaprvyn/>
  66. <aprvyn/>
  67. <goodmodel/>
  68. <prodcmpynm/>
  69. <purcunit/>
  70. <stocqty/>
  71. <minexch/>
  72. <basevol/>
  73. <lrgnm/>
  74. <prereqqty/>
  75. <preadjtqty/>
  76. </goodreqlist>
  77. <goodmaxreqno/>
  78. </goodreq>
  79. <rsdhdecrlist/>
  80. </list>
  81. <item/>
  82. </main>
  83. <send>
  84. <save>
  85. <goodreqlist/>
  86. <autoaprv>
  87. <autoaprvyn/>
  88. </autoaprv>
  89. <rsdhdecrlist/>
  90. </save>
  91. <goodreq>
  92. <workflag/>
  93. <instcd/>
  94. <reqflag/>
  95. <deliveflag>1</deliveflag>
  96. <reqdd/>
  97. <reqpridflag/>
  98. <flag/>
  99. <reqdeptcd/>
  100. <reqdeptnm/>
  101. <reqpsnid/>
  102. <retrmaxreqnoyn/>
  103. <reqno>0001</reqno>
  104. <stdysubjno>232312312</stdysubjno>
  105. <stdysubjnm/>
  106. <bugtflag/>
  107. <tmp_goodcd/>
  108. <tmp_goodnm/>
  109. <fromreqdd/>
  110. <toreqdd/>
  111. <rsdhdecryn/>
  112. <sworkflag>5</sworkflag>
  113. <sreqflag>X</sreqflag>
  114. <goodflag/>
  115. <chkyn/>
  116. </goodreq>
  117. <chkgoodreq>
  118. <s/>
  119. </chkgoodreq>
  120. </send>
  121. <init>
  122. <reqselflag>
  123. <label>일반청구</label>
  124. <value>1</value>
  125. <label>정량보충</label>
  126. <value>2</value>
  127. </reqselflag>
  128. <workflag>
  129. <label>청구</label>
  130. <value>1</value>
  131. <label>반납</label>
  132. <value>2</value>
  133. <label>대여</label>
  134. <value>5</value>
  135. </workflag>
  136. <deliveflag>
  137. <label>정기</label>
  138. <value>1</value>
  139. <label>응급</label>
  140. <value>2</value>
  141. </deliveflag>
  142. <reqdeptcd/>
  143. <reqdeptnm/>
  144. <requserno/>
  145. <requsernm/>
  146. <reqfinaldeptcd/>
  147. <reqfinaldeptnm/>
  148. </init>
  149. <hidden/>
  150. <temp/>
  151. <copynode/>
  152. </root>
  153. </instance>
  154. <script type="javascript" ev:event="xforms-ready">
  155. <![CDATA[
  156. //화면 Control을 초기화한다
  157. fCheckAuth();
  158. fInitialize();
  159. ]]>
  160. </script>
  161. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  162. <submission id="TRRSD00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/goodreq" resultref="/root/main/list/goodreq"/>
  163. <submission id="TXRSD00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hidden/temp"/>
  164. <submission id="TXRSD07002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqaprvlist" resultref="/root/temp"/>
  165. <submission id="TRRSD06001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/goodreq" resultref="/root/main/list/rsdhdecrlist"/>
  166. <submission id="TXRSD06001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/list/rsdhdecrlist" resultref="/root/temp"/>
  167. <submission id="TRRSD06012" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/init/reqtimslist"/>
  168. <submission id="TXRSD06011" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/temp"/>
  169. <submission id="TRRSD00431" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/goodreq" resultref="/root/main/list/goodreq"/>
  170. </model>
  171. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  172. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  173. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  174. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  175. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  176. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  177. <script type="javascript">
  178. <![CDATA[
  179. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  180. function fInitialize() {
  181. //model.resetInstanceNode("/root/send");
  182. misfComboComCdListMulti("Z0007", "cmb_instcd");
  183. cmb_instcd.value = getUserInfo("dutplceinstcd");
  184. cmb_instcd.refresh();
  185. cmb_deliveflag.select(0);
  186. // rszfComboBugtList(cmb_bugtflag,getUserInfo("dutplceinstcd"));
  187. //중앙공급실은 권한체크를 하지 않으므로 하단 막음. HBH
  188. // rszfUserReqInstList(ipt_instcd,getUserInfo("userid"),"5","C"); // '5':csr
  189. // 중앙공급실은 사용자별 권한을 체크하지 않는다.
  190. //rszfUserReqFlagList(cmb_reqflag,getUserInfo("dutplceinstcd"),getUserInfo("userid"),"5","C"); // '5' csr
  191. // rszfUserReqFlagList(cmb_reqflag,getUserInfo("dutplceinstcd"),getUserInfo("userid"),"5","S"); // '5' csr
  192. misfGridInit(grd_goodreq);
  193. misfGridInit(grd_rsdhdecrlist);
  194. misfMsterDetailSet(grd_goodreq,null, "TRRSD00401" ,"Y");
  195. misfMsterDetailSet(grd_rsdhdecrlist,null, "TRRSD06001" ,"Y");
  196. //
  197. model.setValue(ipt_reqdd.attribute("ref") , getCurrentDate());
  198. //
  199. // model.setValue(ipt_fromreqdd.attribute("ref") , getCurrentDate());
  200. // model.setValue(ipt_toreqdd.attribute("ref") , getCurrentDate());
  201. // cmb_deliveflag.select(0);
  202. //getUserInfo("dutplceinstcd")
  203. // //if(cmb_instcd.length > 0) cmb_instcd.selectedindex= 0;
  204. // model.setValue(ipt_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
  205. model.setValue(opt_reqdeptcd.attribute("ref") , getUserInfo("dutplcecd"));
  206. model.setValue(opt_reqdeptnm.attribute("ref") , getUserInfo("dutplcenm"));
  207. model.setValue(opt_requser.attribute("ref"), getUserInfo("userid"));
  208. // model.setValue(opt_requser.attribute("ref") , getUserInfo("userid"));
  209. // model.setValue(opt_requsernm.attribute("ref") , getUserInfo("usernm"));
  210. // // 불출구분은 '1"
  211. // model.setValue(opt_goodflag.attribute("ref") , "T");
  212. //
  213. // model.setValue(rdo_rsdhdecryn.attribute("ref") , "N");
  214. // //청구마감reqseq셋팅.
  215. // fSetReqseq();
  216. //// // hidden col
  217. //
  218. // if(cmb_workflag.length> 0) cmb_workflag.selectedindex= 0;
  219. // fSetReqAuth();
  220. grd_goodreq.explorerbar = "sortshow";
  221. fsearch();
  222. }
  223. function fsearch() {
  224. model.makeValue("/root/send/reqdata/reqdeptcd", getUserInfo("dutplcecd"));
  225. model.makeValue("/root/send/reqdata/instcd", getUserInfo("dutplceinstcd"));
  226. submit("TRRSD06012");
  227. var degr = model.getValue("/root/init/reqseqlist/reqseq");
  228. cmb_reqpridflag.value = degr;
  229. }
  230. function fsearch2() {
  231. submit("TRRSD00431");
  232. }
  233. function fCheckAuth() {
  234. btn_search.disabled = !checkAuth("R") ;
  235. //btn_save.disabled = !checkAuth("X") ;
  236. //btn_prt.disabled = !checkAuth("P") ;
  237. }
  238. function fSetReqseq() {
  239. var pvar = 'XX'; //'의미없슴"
  240. var pcurtm = "1111";
  241. model.refresh();
  242. // model.setValue(cmb_reqpridflag.attribute("ref"),"");
  243. //
  244. // var pcurtm = "1111";
  245. // rszfComboCsrReqseqList(cmb_reqpridflag, model.getValue(ipt_instcd.attribute("ref")), model.getValue(ipt_reqdd.attribute("ref")), model.getValue(opt_reqdeptcd.attribute("ref")) ,model.getValue(opt_reqdeptcd.attribute("ref")), pcurtm, "C" );
  246. }
  247. function fDefaultSetting(prow)
  248. {
  249. model.setValue(grd_goodreq.nodeset +"[" + prow+ "]/workflag" ,"");
  250. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/instcd" ,model.getValue( cmb_instcd.attribute("ref")));
  251. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqflag" ,"Y");
  252. // 불출구분 없앰... 기본값('1') settting한다
  253. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdd" ,model.getValue( ipt_reqdd.attribute("ref")));
  254. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdeptcd" ,model.getValue( opt_reqdeptcd.attribute("ref")));
  255. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqpsnid" ,model.getValue( opt_requser.attribute("ref")));
  256. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqseqno" ,fGetMaxReqNo() );
  257. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqno" ,model.getValue( ipt_reqno.attribute("ref")));
  258. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/deliveflag" ,model.getValue(cmb_deliveflag.attribute("ref")));
  259. // model.setValue(grd_goodreq.nodeset +"[" + prow + "]/stdysubjno",model.getValue(ipt_stdysubjno.attribute("ref")));
  260. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/delivedeptcd",model.getValue(opt_reqdeptcd.attribute("ref")));
  261. // model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqcollcdeptcd",rszfGetPurcAuthInfoByCond("reqcollcdeptcd"));
  262. /*------------------------------------------------------------------------------------------------------------
  263. * 비승인자가 승인처리시 에러와 함꼐 OLD값을 넣어준다.
  264. * 행추가시 OLD값을 'N'으로 셋팅함으로 에러처리시 제대로 된다. HBH
  265. ------------------------------------------------------------------------------------------------------------*/
  266. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/predeptaprvyn","N");
  267. /*------------------------------------------------------------------------------------------------------------
  268. * 화면 상단 계정을 bugtcd에 넣는다.
  269. ------------------------------------------------------------------------------------------------------------*/
  270. model.setValue(grd_goodreq.nodeset +"[" + prow + "]/bugtcd","");
  271. }
  272. function fGetMaxReqNo()
  273. {
  274. var maxreqseqno = "";
  275. for(var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows; currow++)
  276. {
  277. if(maxreqseqno < grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqseqno")))
  278. maxreqseqno = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqseqno"));
  279. }
  280. if(maxreqseqno.length == 0)maxreqseqno = "001";
  281. else maxreqseqno = parseInt(maxreqseqno) + 1;
  282. maxreqseqno = "" + maxreqseqno;
  283. return maxreqseqno.getLeftPad(3,"0");
  284. }
  285. function fSettingGoodList(pnode, nodename, userqtynm){
  286. var codynode = instance1.selectNodes(pnode + "/*");
  287. var addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
  288. if(model.getValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd").length > 0)addRow = addRow + 1;
  289. for (var j = 1; j <= codynode.length ; j++) {
  290. if((grd_goodreq.rows - grd_goodreq.fixedRows == 0) ||
  291. (addRow >= grd_goodreq.rows - grd_goodreq.fixedRows))
  292. {
  293. misfGridIUD(grd_goodreq,"A");
  294. addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
  295. fDefaultSetting(addRow );
  296. }
  297. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodcd"));
  298. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodnm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodnm"));
  299. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodspec" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodspec"));
  300. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/csrsafestocqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/safestocqty"));
  301. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodflag"));
  302. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodmodel" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodmodel"));
  303. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/prodcmpynm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/prodcmpynm"));
  304. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/purcunit" , model.getValue(pnode +"/" + nodename + "[" + j + "]/purcunit"));
  305. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/stocqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/stocqty"));
  306. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/" + userqtynm));
  307. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/requnit" , model.getValue(pnode +"/" + nodename + "[" + j + "]/deliveunit"));
  308. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/minexch" , model.getValue(pnode +"/" + nodename + "[" + j + "]/minexch"));
  309. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/basevol" , model.getValue(pnode +"/" + nodename + "[" + j + "]/minexch"));
  310. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/ddavguseqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/ddavguseqty"));
  311. // /*------------------------------------------------------------------------------------------------------------------
  312. // * 공급실 청구 변경 : minexch, basevol .. HBH
  313. // * 조회 col 2개 추가
  314. // ------------------------------------------------------------------------------------------------------------------*/
  315. // model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/csrsafestocqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/safestocqty"));
  316. var ddavguseqty = model.getValue(pnode +"/" + nodename + "[" + j + "]/ddavguseqty");
  317. if(ddavguseqty == "") {
  318. ddavguseqty = 0;
  319. }
  320. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/csrddavguseqty" , ddavguseqty);
  321. //
  322. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/lrgnm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/lrgnm"));
  323. //
  324. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/rgstqty" , "0");
  325. //
  326. // model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqmthdflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/reqmthd"));
  327. model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqmthdflag" , "3");
  328. addRow = addRow + 1;
  329. }
  330. //model.removenode(pnode);
  331. model.refresh();
  332. }
  333. function fCheckRetrieveData(pmsg)
  334. {
  335. if(model.getValue(cmb_workflag.attribute("ref")).length== 0 )
  336. {
  337. if(pmsg == true)
  338. {
  339. messageBox("작업구분을 " ,"C002");
  340. model.setFocus("cmb_workflag");
  341. }
  342. return false;
  343. }
  344. if(model.getValue(ipt_instcd.attribute("ref")).length== 0 )
  345. {
  346. if(pmsg == true)
  347. {
  348. messageBox("기관코드를 " ,"C002");
  349. model.setFocus("ipt_instcd");
  350. }
  351. return false;
  352. }
  353. if(model.getValue(cmb_reqflag.attribute("ref")).length== 0 )
  354. {
  355. if(pmsg == true)
  356. {
  357. messageBox("청구구분을 " ,"C002");
  358. model.setFocus("cmb_reqflag");
  359. }
  360. return false;
  361. }
  362. /*
  363. if(model.getValue(ipt_reqdd.attribute("ref")).length== 0 )
  364. {
  365. if(pmsg == true)
  366. {
  367. messageBox("청구일자를 " ,"C001");
  368. model.setFocus("ipt_reqdd");
  369. }
  370. return false;
  371. }
  372. */
  373. if(model.getValue(opt_reqdeptcd.attribute("ref")).length== 0 )
  374. {
  375. if(pmsg == true)
  376. {
  377. messageBox("청구부서를 " ,"C002");
  378. model.setFocus("opt_reqdeptcd");
  379. }
  380. return false;
  381. }
  382. if(model.getValue(opt_requser.attribute("ref")).length== 0 )
  383. {
  384. if(pmsg == true)
  385. {
  386. messageBox("청구자를 " ,"C002");
  387. model.setFocus("opt_requser");
  388. }
  389. return false;
  390. }
  391. /* 교환물품에 대하여만 마감차수의 의미가 있다. */
  392. /* 응급은 차수가 없다 */
  393. return true;
  394. }
  395. function fCheckSaveData()
  396. {
  397. if(model.getValue(cmb_workflag.attribute("ref")).length== 0 )
  398. {
  399. messageBox("작업구분을 " ,"C002");
  400. model.setFocus("cmb_workflag");
  401. return false;
  402. }
  403. if(model.getValue(ipt_instcd.attribute("ref")).length== 0 )
  404. {
  405. messageBox("기관코드를 " ,"C002");
  406. model.setFocus("ipt_instcd");
  407. return false;
  408. }
  409. if(model.getValue(cmb_reqflag.attribute("ref")).length== 0 )
  410. {
  411. messageBox("청구구분을 " ,"C002");
  412. model.setFocus("cmb_reqflag");
  413. return false;
  414. }
  415. if(model.getValue(ipt_reqdd.attribute("ref")).length== 0 )
  416. {
  417. messageBox("청구일자를 " ,"C001");
  418. model.setFocus("ipt_reqdd");
  419. return false;
  420. }
  421. var basevol = 0;
  422. var stocqty = 0;
  423. var reqqty =0;
  424. var minexch = 0;
  425. for(var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows ; currow++)
  426. {
  427. if(grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")).length == 0)
  428. {
  429. messageBox(currow + " 번째 물품코드를 " ,"C001");
  430. grd_goodreq.row = currow;
  431. grd_goodreq.col= grd_goodreq.colRef("goodcd");
  432. grd_goodreq.editCell();
  433. return false;
  434. }
  435. else
  436. {
  437. for(srcrow = currow + 1 ; srcrow < grd_goodreq.rows ; srcrow++)
  438. {
  439. if(grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")) == grd_goodreq.valueMatrix(srcrow , grd_goodreq.colRef("goodcd")))
  440. {
  441. messageBox("동일 물품코드가 [" + currow + "," +srcrow + "->" + grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")) + "] 존재하여 저장 " ,"E001");
  442. return false;
  443. }
  444. }
  445. }
  446. if(grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqqty")) == 0)
  447. {
  448. messageBox(currow + " 번째 청구량을 " ,"C001");
  449. grd_goodreq.row = currow;
  450. grd_goodreq.col= grd_goodreq.colRef("reqqty");
  451. grd_goodreq.editCell();
  452. return false;
  453. }
  454. basevol = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("basevol"));
  455. stocqty = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("stocqty"));
  456. reqqty = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqqty"));
  457. minexch = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("minexch"));
  458. /*
  459. if(minexch > 0 && (reqqty%minexch != 0))
  460. {
  461. messageBox((currow) + "번째 물품은 최소청구량에 ["+ minexch + "]맞춰서" , "C001");
  462. grd_goodreq.row = currow;
  463. grd_goodreq.col= grd_goodreq.colRef("reqqty");
  464. grd_goodreq.editCell();
  465. return false;
  466. }
  467. */
  468. }
  469. return true;
  470. }
  471. function fSetReqAuth()
  472. {
  473. if(model.getValue(ipt_instcd.attribute("ref")).length==0) return;
  474. if(model.getValue(cmb_reqflag.attribute("ref")).length==0) return;
  475. if(model.getValue(opt_reqdeptcd.attribute("ref")).length==0) return;
  476. rszfGetPurcReqFnlDeptcd(model.getValue(ipt_instcd.attribute("ref")), model.getValue(cmb_reqflag.attribute("ref")) , model.getValue(opt_reqdeptcd.attribute("ref")));
  477. //model.setValue(opt_reqdeptcd.attribute("ref"),rszfGetPurcAuthInfoByCond("reqdeptcd"));
  478. //model.setValue(opt_reqdeptnm.attribute("ref"),rszfGetPurcAuthInfoByCond("reqdeptnm"));
  479. //model.setValue(opt_requser.attribute("ref"),rszfGetPurcAuthInfoByCond("requserno"));
  480. //model.setValue(opt_requsernm.attribute("ref"),rszfGetPurcAuthInfoByCond("requsernm"));
  481. model.setValue(opt_reqfinaldept.attribute("ref"),model.getValue("root/init/reqfnldept/reqfnldeptlist/reqfnldeptcd"));
  482. model.setValue(opt_reqfinaldeptnm.attribute("ref"),model.getValue("root/init/reqfnldept/reqfnldeptlist/reqfnldeptnm"));
  483. model.refresh();
  484. }
  485. function fSetControlDisabled(pDisabled)
  486. {
  487. ipt_reqno.disabled = pDisabled;
  488. }
  489. function fAfterRetr()
  490. {
  491. if(model.getValue("/root/main/list/goodreq/goodmaxreqno/reqfix") == "Y")
  492. {
  493. fSetControlDisabled("true");
  494. }
  495. else
  496. {
  497. fSetControlDisabled("false");
  498. }
  499. model.setValue(ipt_reqno.attribute("ref"),model.getValue("/root/main/list/goodreq/goodmaxreqno/reqno"));
  500. model.refresh();
  501. }
  502. function fRetrByReqNo()
  503. {
  504. if(fCheckRetrieveData(false) == false)return;
  505. model.removenode("/root/main/tmplist");
  506. model.makeNode("/root/main/tmplist/goodreq/goodreqlist");
  507. model.makeNode("/root/main/tmplist/goodreq/goodmaxreqno");
  508. model.copyNode("/root/main/tmplist", "/root/main/list");
  509. model.setValue("/root/send/goodreq/retrmaxreqnoyn","N");
  510. misfMsterDetailRetrieve();
  511. var rtncount = grd_goodreq.rows - grd_goodreq.fixedRows;
  512. if(rtncount == 0)
  513. {
  514. model.copyNode("/root/main/list","/root/main/tmplist");
  515. }
  516. return rtncount;
  517. }
  518. function fSetReqNo(pReqControl,pAdd)
  519. {
  520. if(pAdd == "Y")
  521. {
  522. var reqno = model.getValue(ipt_reqno.attribute("ref"));
  523. reqno = parseInt(reqno) + 1;
  524. reqno = "" + reqno;
  525. reqno = reqno.getLeftPad(4,"0");
  526. }
  527. else
  528. {
  529. var reqno = model.getValue(ipt_reqno.attribute("ref"));
  530. reqno = parseInt(reqno) - 1;
  531. if(reqno == 0)reqno = 1;
  532. reqno = "" + reqno;
  533. reqno = reqno.getLeftPad(4,"0");
  534. }
  535. model.setValue(pReqControl.attribute("ref"), reqno);
  536. model.refresh();
  537. }
  538. function fArrangeControl()
  539. {
  540. //fSetControlDisabled("false");
  541. misfGridInit(grd_goodreq);
  542. model.setValue(cmb_reqflag.attribute("ref"),"");
  543. model.setValue(ipt_reqno.attribute("ref"),"");
  544. model.setValue(ipt_reqdd.attribute("ref"),"");
  545. model.setValue(opt_reqdeptcd.attribute("ref"),"");
  546. model.setValue(opt_reqdeptnm.attribute("ref"),"");
  547. model.setValue(opt_requser.attribute("ref"),"");
  548. model.setValue(opt_requsernm.attribute("ref"),"");
  549. model.setValue(opt_reqfinaldept.attribute("ref"),"");
  550. model.setValue(opt_reqfinaldeptnm.attribute("ref"),"");
  551. model.refresh();
  552. }
  553. function fUpdataGridcheck()
  554. {
  555. for(var i = grd_rsdhdecrlist.fixedRows; i < grd_rsdhdecrlist.rows; i++ )
  556. {
  557. if(grd_rsdhdecrlist.rowStatus(i) == 2)
  558. {
  559. if(grd_rsdhdecrlist.valueMatrix(i, grd_rsdhdecrlist.colRef("rsdhdecryn")) == 'Y')
  560. {
  561. grd_rsdhdecrlist.valueMatrix(i, grd_rsdhdecrlist.colRef("reqddtemp")) = getCurrentDate();
  562. grd_rsdhdecrlist.valueMatrix(i, grd_rsdhdecrlist.colRef("reqpsnid")) = opt_requser.value;
  563. grd_rsdhdecrlist.valueMatrix(i, grd_rsdhdecrlist.colRef("workflag")) = '6' ;
  564. }
  565. }
  566. }
  567. }
  568. function fGrangtCheck(pCheck,pControlList)
  569. {
  570. var control_list = pControlList.split(",");
  571. var obj;
  572. var fbool = false;
  573. if(pCheck == '마감')
  574. {
  575. fbool = true;
  576. }else{
  577. fbool = false;
  578. }
  579. for(var s = 0; s < control_list.length; s++)
  580. {
  581. var control_id = control_list[s];
  582. var control = control_id.split(".");
  583. var obj = document.controls(control[0]);
  584. if (obj != null && obj.elementName == "xforms:datagrid") {
  585. obj.colDisabled(obj.colRef(control[1])) = fbool ;
  586. }else
  587. {
  588. obj.disabled = fbool;
  589. }
  590. obj.refresh();
  591. }
  592. }
  593. ]]>
  594. </script>
  595. </xhtml:head>
  596. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  597. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  598. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:186px; height:14px; ">CSR물품청구</caption>
  599. </group>
  600. <group id="grp_biz" scroll="auto" style="left:0px; top:8px; width:1195px; height:744px; ">
  601. <line id="line1" class="line_1" style="x1:0px; y1:102px; x2:1195px; y2:102px; "/>
  602. <button id="btn_choidel" class="btn2_letter2" style="left:1147px; top:81px; width:42px; height:19px; ">
  603. <caption>저장</caption>
  604. <script type="javascript" ev:event="DOMActivate">
  605. <![CDATA[
  606. var updtdata = getGridUpdateData(grd_goodreq);
  607. model.makeValue("/root/send/reqdata/goodreqlist", updtdata);
  608. if(rszfGetPurcAuthInfoByCond("reqaprvflag") == "2")
  609. model.makeValue("/root/send/reqdata/autoaprvyn","Y");
  610. else
  611. model.makeValue("/root/send/reqdata/autoaprvyn","N");
  612. submit("TXRSD06011");
  613. ]]>
  614. </script>
  615. </button>
  616. <button id="btn_updt" class="btn2_letter2" style="left:1102px; top:81px; width:42px; height:19px; ">
  617. <caption>수정</caption>
  618. <script type="javascript" ev:event="DOMActivate">
  619. <![CDATA[
  620. grd_goodreq.rowStatus(grd_goodreq.row) = "2";
  621. ]]>
  622. </script>
  623. </button>
  624. <button id="btn_reqset" class="btn2_letter2" style="left:1057px; top:81px; width:42px; height:19px; ">
  625. <caption>신규</caption>
  626. <script type="javascript" ev:event="DOMActivate">
  627. <![CDATA[
  628. // if(fCheckRetrieveData(true) == false)return;
  629. model.removenode("/root/copynode");
  630. model.removenode(gvParamPath +"/SMRSD06001_/SMRSD06001_value");
  631. model.makeNode("/root/copynode");
  632. modal("SPRSD06001", "", "", "", "", "", "","width:960px;height:750px;align:left;");
  633. var CSV = model.getValue(gvParamPath + "/SMRSD06001_/SMRSD06001_value");
  634. setCSVToNode("/root/copynode", CSV, "goodreqlist");
  635. fSettingGoodList("/root/copynode", "goodreqlist");
  636. ]]>
  637. </script>
  638. </button>
  639. <button id="btn_excel" class="btn2_letter3" style="left:1000px; top:81px; width:53px; height:19px; ">
  640. <caption>초기화</caption>
  641. <script type="javascript" ev:event="DOMActivate">
  642. <![CDATA[
  643. ]]>
  644. </script>
  645. </button>
  646. <caption id="caption7" class="tit_2" style="left:5px; top:86px; width:542px; height:13px; ">물품청구내역 * 일단위 청구내역은 [일별 청구현황 조회]에서 확인하실 수 있습니다.</caption>
  647. <group id="grp_sea" style="left:0px; top:10px; width:1195px; height:40px; vertical-align:top; ">
  648. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:40px; background-color:#fffbf2; border-color:#ffd799; "/>
  649. <caption id="caption16" class="search_name" style="left:215px; top:11px; width:99px; height:17px; ">청구일자 :</caption>
  650. <caption id="caption18" class="search_name" style="left:410px; top:10px; width:86px; height:17px; ">청구차수 :</caption>
  651. <input id="ipt_reqdd" ref="/root/send/goodreq/reqdd" class="input_s_essential" inputtype="date" format="yyyy-mm-dd" style="left:303px; top:10px; width:94px; height:19px; ">
  652. <script type="javascript" ev:event="xforms-value-changed">
  653. <![CDATA[
  654. //fSetReqseq()
  655. //btn_search.dispatch("DOMActivate");
  656. ]]>
  657. </script>
  658. </input>
  659. <line id="line14" class="line_4" style="x1:1110px; y1:10px; x2:1110px; y2:32px; "/>
  660. <button id="btn_search" class="btn1_letter2" navindex="7" style="left:1125px; top:10px; width:56px; height:22px; text-align:left; ">
  661. <caption>조회</caption>
  662. <script type="javascript" ev:event="DOMActivate">
  663. <![CDATA[
  664. alert(instance1.selectNodesXml("/root/send/goodreq"));
  665. // if(fCheckRetrieveData(false) == false)return;
  666. misfGridInit(grd_goodreq);
  667. //if(model.getValue(ipt_reqno.attribute("ref")).length == 0)model.setValue(ipt_reqdd.attribute("ref") , getCurrentDate());
  668. model.setValue("/root/send/goodreq/retrmaxreqnoyn","Y");
  669. // model.setValue(ipt_reqno.attribute("ref"),"");
  670. // misfMsterDetailRetrieve();
  671. fsearch2();
  672. fAfterRetr();
  673. for(var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows ; fRow++ )
  674. {
  675. if(grd_goodreq.valueMatrix(fRow, grd_goodreq.colRef("acptflag")) == "Y" ||
  676. grd_goodreq.valueMatrix(fRow, grd_goodreq.colRef("deliveprcsflag")) != "1" )
  677. {
  678. grd_goodreq.isReadOnly(fRow, grd_goodreq.fixedCols-1, fRow, grd_goodreq.cols-1) = true;
  679. }
  680. }
  681. model.refresh();
  682. ]]>
  683. </script>
  684. </button>
  685. <select1 id="cmb_reqpridflag" ref="/root/send/goodreq/reqpridflag" appearance="minimal" style="left:500px; top:10px; width:65px; height:19px; ">
  686. <choices>
  687. <itemset nodeset="/root/init/reqtimslist">
  688. <label ref="cdnm"/>
  689. <value ref="cdid"/>
  690. </itemset>
  691. </choices>
  692. </select1>
  693. <select1 id="cmb_deliveflag" ref="/root/send/goodreq/deliveflag" visibility="hidden" appearance="minimal" style="left:985px; top:10px; width:119px; height:19px; ">
  694. <choices>
  695. <item>
  696. <label>정기</label>
  697. <value>1</value>
  698. </item>
  699. <item>
  700. <label>응급</label>
  701. <value>2</value>
  702. </item>
  703. </choices>
  704. <script type="javascript" ev:event="xforms-value-changed">
  705. <![CDATA[
  706. fSetReqseq();
  707. ]]>
  708. </script>
  709. </select1>
  710. <select1 id="cmb_instcd" ref="/root/send/goodreq/instcd" class="combo_s_essential" appearance="minimal" style="left:100px; top:10px; width:95px; height:19px; ">
  711. <choices>
  712. <itemset>
  713. <label/>
  714. <value/>
  715. </itemset>
  716. </choices>
  717. </select1>
  718. <caption id="caption9" class="search_name" style="left:10px; top:12px; width:89px; height:17px; ">기관코드 :</caption>
  719. <select id="chk_chkyn" ref="/root/send/goodreq/chkyn" overflow="visible" appearance="full" style="left:575px; top:10px; width:100px; height:20px; border-style:none; ">
  720. <choices>
  721. <item>
  722. <label>응급여부</label>
  723. <value>Y</value>
  724. </item>
  725. </choices>
  726. <script type="javascript" ev:event="xforms-value-changed">
  727. <![CDATA[
  728. var chk = model.getValue(chk_chkyn.attribute("ref"));
  729. if(chk == "Y") {
  730. cmb_deliveflag.value = "2";
  731. } else {
  732. cmb_deliveflag.value = "1";
  733. }
  734. ]]>
  735. </script>
  736. </select>
  737. <button id="btn_dept" class="icon_search" style="left:840px; top:11px; width:16px; height:16px; ">
  738. <caption/>
  739. <script type="javascript" ev:event="DOMActivate">
  740. <![CDATA[
  741. misfOpenPopUpList("02", opt_reqdeptcd, "", "reqdeptcd,reqdeptnm");
  742. model.refresh();
  743. btn_search.dispatch("DOMActivate");
  744. ]]>
  745. </script>
  746. </button>
  747. <caption id="caption2" class="search_name" style="left:680px; top:11px; width:86px; height:17px; ">청구부서 :</caption>
  748. <output id="opt_reqdeptnm" ref="/root/send/goodreq/reqdeptnm" class="output_fix" appearance="output" style="left:860px; top:10px; width:105px; height:19px; "/>
  749. <input id="opt_reqdeptcd" ref="/root/send/goodreq/reqdeptcd" class="input_search" appearance="output" style="left:765px; top:10px; width:72px; height:19px; ">
  750. <script type="javascript" ev:event="xforms-value-changed">
  751. <![CDATA[
  752. if(opt_reqdeptcd.value.length == 0){
  753. opt_reqdeptnm.value = "";
  754. }else
  755. {
  756. misfValidationCheck("02", "", "reqdeptcd,reqdeptnm" );
  757. }
  758. model.refresh();
  759. btn_search.dispatch("DOMActivate");
  760. ]]>
  761. </script>
  762. </input>
  763. </group>
  764. <datagrid id="grd_goodreq" nodeset="/root/main/list/goodreq/goodreqlist" caption="기관코드^청구구분^청구일자^청구번호^순번^물품코드^물품명^규격^비품기준량^기준대여량^청구^청구^대여^대여^교환^교환^불출^미불출^재멸균^마감^비고" colsep="^" colwidth="0, 0, 0, 0, 35, 106, 172, 100, 72, 83, 63, 42, 63, 42, 63, 42, 60, 60, 73, 58, 228, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" tooltip="true" style="left:0px; top:107px; width:1195px; height:633px; ">
  765. <col ref="instcd" visibility="hidden"/>
  766. <col ref="reqflag" visibility="hidden"/>
  767. <col ref="reqdd" visibility="hidden"/>
  768. <col ref="reqno" visibility="hidden"/>
  769. <col ref="reqseqno" style="text-align:center; "/>
  770. <col ref="goodcd" type="inputbutton" _key="true"/>
  771. <col ref="goodnm"/>
  772. <col ref="goodspec"/>
  773. <col ref="csrsafestocqty" format="#,###" style="text-align:right; "/>
  774. <col ref="csrddavguseqty" format="#,###" style="text-align:right; "/>
  775. <col ref="reqqty" type="input" format="(-)#,###" maxlength="9" style="text-align:right; "/>
  776. <col ref="requnit"/>
  777. <col ref="lendqty" format="#,###" maxlength="9" style="text-align:right; "/>
  778. <col ref="lendunit"/>
  779. <col ref="exchngqty" format="#,###" maxlength="9" style="text-align:right; "/>
  780. <col ref="exchngunit"/>
  781. <col ref="delive" visibility="visible"/>
  782. <col ref="nodelive" visibility="visible"/>
  783. <col ref="rgstqty" type="input" format="#,###" style="text-align:right; "/>
  784. <col checkvalue="Y,N" disabled="true" ref="acptflag" type="checkbox" visibility="hidden"/>
  785. <col ref="cmt" type="input" style="text-align:left; "/>
  786. <col ref="workflag" visibility="hidden"/>
  787. <col ref="reqmthdflag" visibility="hidden"/>
  788. <col ref="deliveflag" visibility="hidden"/>
  789. <col ref="reqpridflag" visibility="hidden"/>
  790. <col ref="goodflag" visibility="hidden"/>
  791. <col ref="bugtcd" visibility="hidden"/>
  792. <col ref="stdysubjno" visibility="hidden"/>
  793. <col ref="reqdeptcd" visibility="hidden"/>
  794. <col ref="reqcollcdeptcd" visibility="hidden"/>
  795. <col ref="delivedeptcd" visibility="hidden"/>
  796. <col ref="delivehopedd" visibility="hidden"/>
  797. <col ref="reqpsnid" visibility="hidden"/>
  798. <col ref="reqtm" visibility="hidden"/>
  799. <col ref="ddavguseqty" visibility="hidden"/>
  800. <col ref="deptaprvyn" visibility="hidden"/>
  801. <col ref="deptaprvdd" visibility="hidden"/>
  802. <col ref="acptdd" visibility="hidden"/>
  803. <col ref="acptcharid" visibility="hidden"/>
  804. <col ref="purcdmnddd" visibility="hidden"/>
  805. <col ref="purcdmndno" visibility="hidden"/>
  806. <col ref="purcdmndseq" visibility="hidden"/>
  807. <col ref="colreqdd" visibility="hidden"/>
  808. <col ref="colreqno" visibility="hidden"/>
  809. <col ref="colreqseqno" visibility="hidden"/>
  810. <col ref="deliveqty" visibility="hidden"/>
  811. <col ref="unwinresn" visibility="hidden"/>
  812. <col ref="deliveprcsflag" visibility="hidden"/>
  813. <col ref="cmt" visibility="hidden"/>
  814. <col ref="predeptaprvyn" visibility="hidden"/>
  815. <col ref="aprvyn" visibility="hidden"/>
  816. <col ref="goodmodel" visibility="hidden"/>
  817. <col ref="prodcmpynm" visibility="hidden"/>
  818. <col ref="purcunit" visibility="hidden"/>
  819. <col ref="stocqty" visibility="hidden"/>
  820. <col ref="minexch" visibility="hidden"/>
  821. <col ref="basevol" visibility="hidden"/>
  822. <col ref="lrgnm" visibility="hidden"/>
  823. <col ref="prereqqty" visibility="hidden"/>
  824. <col ref="preadjtqty" visibility="hidden"/>
  825. <script type="javascript" ev:event="onbuttonclick">
  826. <![CDATA[
  827. if (grd_goodreq.col == grd_goodreq.colRef("goodcd") && grd_goodreq.rowStatus(grd_goodreq.row) == "1" ) {//구성물품코드를 눌렀을 경우
  828. model.removenode("/root/copynode");
  829. model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  830. model.makeNode("/root/copynode");
  831. rszfOpenPopUpListByWndName(grd_goodreq,"","goodcd,goodnm","SPRSD00190","instcd,goodflag,reqflag,reqdeptcd","ipt_instcd,opt_goodflag,cmb_reqflag,opt_reqdeptcd");
  832. var cur_row = grd_goodreq.row;
  833. var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
  834. var CSV = model.getValue(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  835. setCSVToNode("/root/copynode", CSV, "goodreqlist");
  836. fSettingGoodList("/root/copynode", "goodreqlist" , "userqty");
  837. }
  838. ]]>
  839. </script>
  840. <script type="javascript" ev:event="xforms-value-changed">
  841. <![CDATA[
  842. if (grd_goodreq.col == grd_goodreq.colRef("reqqty") )
  843. {
  844. var safestocqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("csrsafestocqty")));
  845. var reqqty = Number(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqqty")));
  846. var rslt = reqqty - safestocqty;
  847. if(reqqty > safestocqty) {
  848. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendqty")) = rslt;
  849. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendunit")) = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("requnit"));
  850. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngqty")) = safestocqty;
  851. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngunit")) = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("requnit"));
  852. } else {
  853. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendqty")) = 0;
  854. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("lendunit")) = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("requnit"));
  855. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngqty")) = reqqty;
  856. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("exchngunit")) = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("requnit"));
  857. }
  858. // csr 마감여부 체크
  859. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/acptflag") == "Y")
  860. {
  861. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty",
  862. model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/prereqqty") ) ;
  863. grd_goodreq.rowStatus(grd_goodreq.row) = "0";
  864. messageBox("공급실 청구 마감되었으므로 재멸균량을 수정" ,"E001");
  865. return;
  866. }
  867. basevol = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("basevol"));
  868. stocqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("stocqty"));
  869. reqqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty"));
  870. minexch = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("minexch"));
  871. if(minexch > 0 && (reqqty%minexch != 0))
  872. {
  873. messageBox((grd_goodreq.row )+ "번째 물품은 최소청구량["+ minexch + "] 에 맞춰서" , "C001");
  874. grd_goodreq.row = grd_goodreq.row;
  875. grd_goodreq.col= grd_goodreq.colRef("reqqty");
  876. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty","");
  877. grd_goodreq.editCell();
  878. return;
  879. }
  880. grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("adjtqty")) = grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("reqqty"));
  881. }
  882. else if (grd_goodreq.col == grd_goodreq.colRef("rgstqty") )
  883. {//청구량조절할경우
  884. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/acptflag") == "Y")
  885. {
  886. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/rgstqty",
  887. model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/preadjtqty") );
  888. grd_goodreq.rowStatus(grd_goodreq.row) = "0";
  889. messageBox("공급실 청구 마감되었으므로 재멸균량을 수정" ,"E001");
  890. return;
  891. }
  892. }
  893. //
  894. // else if(grd_goodreq.col == grd_goodreq.colRef("goodcd") && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length> 0) {
  895. //
  896. // model.removenode("/root/copynode");
  897. // model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  898. // model.makeNode("/root/copynode");
  899. //
  900. // rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd","goodcd," + model.getValue(ipt_instcd.attribute("ref")) + "," +model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodflag") + "," + model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd") + ",,,," + model.getValue(cmb_reqflag.attribute("ref")) +"," + model.getValue(opt_reqdeptcd.attribute("ref")),"","goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag,allsizeyn",grd_goodreq,"SPRSD00190","instcd,goodflag,reqflag,reqdeptcd","ipt_instcd,opt_goodflag,cmb_reqflag,opt_reqdeptcd","Y");
  901. // model.refresh();
  902. //
  903. // if( grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length> 0)
  904. // {
  905. //
  906. // if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/minexch") > 0)
  907. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty",model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/minexch") );
  908. // else model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty","1");
  909. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/requnit",model.getValue("/root/init/main/goodlist/deliveunit"));
  910. //
  911. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/minexch",model.getValue("/root/init/main/goodlist/minexch"));
  912. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/basevol",model.getValue("/root/init/main/goodlist/minexch"));
  913. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/ddavguseqty",model.getValue("/root/init/main/goodlist/ddavguseqty"));
  914. //
  915. // /*----------------------------------------------------------------------------------------------------------
  916. // * 중앙공급실 처리는 일반청구와 다르게 ( 비품기준량,기준대여량)
  917. // * 재멸균은 기본 0
  918. // ---------------------------------------------------------------------------------------------------------- */
  919. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/csrsafestocqty",model.getValue("/root/init/main/goodlist/safestocqty"));
  920. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/csrddavguseqty",model.getValue("/root/init/main/goodlist/ddavguseqty"));
  921. //
  922. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/lrgnm",model.getValue("/root/init/main/goodlist/lrgnm"));
  923. //
  924. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/rgstqty","0");
  925. //
  926. //// model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqmthdflag",model.getValue("/root/init/main/goodlist/reqmthd"));
  927. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqmthdflag","3");
  928. // }
  929. // model.refresh();
  930. //
  931. // var cur_row = grd_goodreq.row;
  932. // var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
  933. //
  934. // var CSV = model.getValue(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  935. //
  936. // if(CSV.length == 0 && grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length == 0)
  937. // {
  938. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd" , "");
  939. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodcd" , "");
  940. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodnm" , "");
  941. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodspec" , "");
  942. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodflag" , "");
  943. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodmodel" , "");
  944. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/prodcmpynm" , "");
  945. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/purcunit" , "");
  946. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/basevol" , "");
  947. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/stocqty" , "");
  948. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/reqqty" , "");
  949. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/requnit" , "");
  950. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/minexch" , "");
  951. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/ddavguseqty" , "");
  952. //
  953. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/lrgnm" , "");
  954. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/csrsafestocqty" , "");
  955. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/csrddavguseqty" , "");
  956. // grd_goodreq.col = grd_goodreq.colRef("goodcd");
  957. // grd_goodreq.editCell();
  958. // }
  959. // else if (CSV.length > 0)
  960. // {
  961. //
  962. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd","");
  963. // setCSVToNode("/root/copynode", CSV, "goodreqlist");
  964. //
  965. // fSettingGoodList("/root/copynode", "goodreqlist" , "userqty");
  966. // }
  967. // }
  968. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  969. // 영양팀은 품목명칭에서 값을 입력할수 있다.. HBH
  970. // 입력값과 일치건이 1일경우 코드 REPLACE
  971. // 없을경우 FIND
  972. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  973. else if(grd_goodreq.col == grd_goodreq.colRef("goodnm") && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodnm")).length> 0
  974. && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length== 0 )
  975. {
  976. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  977. // validation을 하기 위해 임시 column 을 둔다. HBH
  978. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  979. model.setValue(tmp_goodcd.attribute("ref") ,"%" );
  980. model.setValue(tmp_goodnm.attribute("ref") ,grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodnm")) );
  981. model.removenode("/root/copynode");
  982. model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  983. model.makeNode("/root/copynode");
  984. rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd","goodcd," + model.getValue(ipt_instcd.attribute("ref")) + "," + model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodflag") + ","+model.getValue(tmp_goodcd.attribute("ref")) +","+model.getValue(tmp_goodnm.attribute("ref")) + ",,,,,,"+model.getValue(cmb_reqflag.attribute("ref"))+","+model.getValue(opt_reqdeptcd.attribute("ref")) ,"","goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,maincustlastsuplplce,suppcustcd,goodunitcost,deliveunit,exchqty",grd_goodreq,"SPRSD00210","instcd,reqflag,reqdeptcd,goodnm","ipt_instcd,cmb_reqflag,cmb_reqdeptcd,tmp_goodnm","Y");
  985. model.refresh();
  986. if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length> 0)
  987. {
  988. model.removenode("/root/copynode");
  989. model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  990. model.makeNode("/root/copynode");
  991. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodnm","");
  992. model.refresh();
  993. rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd","goodcd," + model.getValue(iptb_instcd.attribute("ref")) + "," +model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodflag") + "," + model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd") + ",,,," + model.getValue(cmb_reqflag.attribute("ref")) +"," + model.getValue(opt_reqdeptcd.attribute("ref")),"","goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag",grd_goodreq,"SPRSD00190","instcd,reqflag,reqdeptced","ipt_instcd,cmb_reqflag,opt_reqdeptcd","Y");
  994. model.refresh();
  995. if( grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length> 0)
  996. {
  997. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/minexch") > 0) model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty",model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/minexch") );
  998. else model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqqty","1");
  999. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/basevol",model.getValue("/root/init/main/goodlist/minexch"));
  1000. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/requnit",model.getValue("/root/init/main/goodlist/deliveunit"));
  1001. // model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqmthdflag",model.getValue("/root/init/main/goodlist/reqmthd"));
  1002. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/reqmthdflag","3");
  1003. /*----------------------------------------------------------------------------------------------------------
  1004. * 중앙공급실 처리는 일반청구와 다르게 ( 비품기준량,기준대여량)
  1005. * 재멸균은 기본 0
  1006. ---------------------------------------------------------------------------------------------------------- */
  1007. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/csrsafestocqty",model.getValue("/root/init/main/goodlist/safestocqty"));
  1008. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/csrddavguseqty",model.getValue("/root/init/main/goodlist/ddavguseqty"));
  1009. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/lrgnm",model.getValue("/root/init/main/goodlist/lrgnm"));
  1010. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/rgstqty","0");
  1011. }
  1012. model.refresh();
  1013. var cur_row = grd_goodreq.row;
  1014. var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
  1015. var CSV = model.getValue(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
  1016. if(CSV.length == 0 && grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length == 0)
  1017. {
  1018. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd" , "");
  1019. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodcd" , "");
  1020. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodnm" , "");
  1021. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodspec" , "");
  1022. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodflag" , "");
  1023. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/goodmodel" , "");
  1024. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/prodcmpynm" , "");
  1025. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/purcunit" , "");
  1026. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/basevol" , "");
  1027. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/stocqty" , "");
  1028. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/reqqty" , "");
  1029. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/requnit" , "");
  1030. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/minexch" , "");
  1031. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/ddavguseqty" , "");
  1032. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/lrgnm" , "");
  1033. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/csrsafestocqty" , "");
  1034. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1) + "]/csrddavguseqty" , "");
  1035. grd_goodreq.col = grd_goodreq.colRef("goodcd");
  1036. grd_goodreq.editCell();
  1037. }
  1038. else if (CSV.length > 0)
  1039. {
  1040. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/goodcd","");
  1041. setCSVToNode("/root/copynode", CSV, "goodreqlist");
  1042. fSettingGoodList("/root/copynode", "goodreqlist" , "userqty");
  1043. }
  1044. }
  1045. }
  1046. else if((grd_goodreq.col == grd_goodreq.colRef("acptflag")))
  1047. {
  1048. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/acptflag") == "Y")
  1049. {
  1050. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/acptflag","N");
  1051. messageBox("마감은 수정하실수 " ,"E001");
  1052. }
  1053. }
  1054. ]]>
  1055. </script>
  1056. <script type="javascript" ev:event="onkeydown">
  1057. <![CDATA[
  1058. // if(event.keyCode == 13)
  1059. // {
  1060. // if(grd_goodreq.col == grd_goodreq.colRef("reqqty"))
  1061. // {
  1062. // if(grd_goodreq.row < grd_goodreq.rows - grd_goodreq.fixedRows)
  1063. // {
  1064. // grd_goodreq.row = grd_goodreq.row + 1;
  1065. // grd_goodreq.select(grd_goodreq.row, grd_goodreq.colRef("reqqty")) = true;
  1066. // }
  1067. // }
  1068. // }
  1069. //
  1070. // if(event.keyCode == 9)
  1071. // {
  1072. // if(event.shiftKey)
  1073. // {
  1074. // if(grd_goodreq.colAttribute(grd_goodreq.col + 1, "type").indexOf ("input") > -1)
  1075. // {
  1076. // for(curcol = grd_goodreq.col -1 ; curcol > -1 ; curcol--)
  1077. // {
  1078. // if(grd_goodreq.colAttribute(curcol, "type").indexOf ("input") > -1)
  1079. // {
  1080. // grd_goodreq.col = curcol;
  1081. // grd_goodreq.editCell();
  1082. // return;
  1083. // }
  1084. // }
  1085. // }
  1086. // }
  1087. // else
  1088. // {
  1089. // if(grd_goodreq.colAttribute(grd_goodreq.col, "type").indexOf ("input") == -1)
  1090. // {
  1091. // if(grd_goodreq.col - 1 == grd_goodreq.colRef("goodcd") && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.col - 1).length == 0)
  1092. // {
  1093. // grd_goodreq.col = grd_goodreq.colRef("goodcd");
  1094. // grd_goodreq.editCell();
  1095. // return;
  1096. // }
  1097. // for(curcol = grd_goodreq.col ; curcol <grd_goodreq.cols ; curcol++)
  1098. // {
  1099. // if(grd_goodreq.colAttribute(curcol, "type").indexOf ("input") > -1)
  1100. // {
  1101. // grd_goodreq.col = curcol;
  1102. // grd_goodreq.editCell();
  1103. // return;
  1104. // }
  1105. // }
  1106. // }
  1107. // }
  1108. // }
  1109. ]]>
  1110. </script>
  1111. <script type="javascript" ev:event="onentercell">
  1112. <![CDATA[
  1113. if((grd_goodreq.col == grd_goodreq.colRef("deptaprvyn")))
  1114. {
  1115. if(rszfGetPurcAuthInfoByCond("reqaprvflag") != "2")
  1116. {
  1117. model.setValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/deptaprvyn",model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/predeptaprvyn") );
  1118. // insert 가 아니면..
  1119. if ( grd_goodreq.rowStatus(grd_goodreq.row) != '3')
  1120. {
  1121. grd_goodreq.rowStatus(grd_goodreq.row) = "0";
  1122. }
  1123. messageBox("청구승인권한이 없으므로 수정" ,"E001");
  1124. }
  1125. else
  1126. {
  1127. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/aprvyn") == "Y")
  1128. {
  1129. grd_goodreq.rowStatus(grd_goodreq.row) = "0";
  1130. messageBox("발주승인이 되었으므로 수정" ,"E001");
  1131. }
  1132. }
  1133. }
  1134. else if(grd_goodreq.col == grd_goodreq.colRef("stocqty"))
  1135. // else if(grd_goodreq.col == grd_goodreq.colRef("reqqty"))
  1136. {
  1137. if(model.getValue(grd_goodreq.nodeset + "[" + (grd_goodreq.row - grd_goodreq.fixedRows + 1)+ "]/predeptaprvyn") == "Y")
  1138. {
  1139. grd_goodreq.rowStatus(grd_goodreq.row) = "0";
  1140. messageBox("청구승인되었으므로 청구량을 수정" ,"E001");
  1141. }
  1142. }
  1143. ]]>
  1144. </script>
  1145. <script type="javascript" ev:event="onaftersort">
  1146. <![CDATA[
  1147. grd_goodreq.gridToInstance();
  1148. ]]>
  1149. </script>
  1150. </datagrid>
  1151. <output id="opt_goodflag" ref="/root/send/goodreq/goodflag" visibility="hidden" style="left:1005px; top:10px; width:25px; height:19px; "/>
  1152. <input id="tmp_goodnm" ref="/root/send/goodreq/tmp_goodnm" visibility="hidden" style="left:1080px; top:8; width:25px; height:19px; "/>
  1153. <input id="tmp_goodcd" ref="/root/send/goodreq/tmp_goodcd" visibility="hidden" style="left:1065px; top:8; width:20px; height:19px; "/>
  1154. <input id="ipt_instcd" ref="/root/send/goodreq/instcd" visibility="hidden" style="left:1040px; top:8; width:25px; height:19px; "/>
  1155. <output id="opt_requser" ref="/root/send/goodreq/reqpsnid" style="left:695px; top:65px; width:100px; height:20px; "/>
  1156. <select1 id="cmb_workflag" ref="/root/send/goodreq/workflag" class="combo_default" visibility="hidden" appearance="minimal" style="left:475px; top:60px; width:151px; height:19px; ">
  1157. <choices>
  1158. <itemset nodeset="root/init/workflag">
  1159. <label ref="label"/>
  1160. <value ref="value"/>
  1161. </itemset>
  1162. </choices>
  1163. <script type="javascript" ev:event="xforms-value-changed">
  1164. <![CDATA[
  1165. if ( model.getValue(cmb_workflag.attribute("ref")) == '3' ||model.getValue(cmb_workflag.attribute("ref")) == '4'||model.getValue(cmb_workflag.attribute("ref")) == '5'||model.getValue(cmb_workflag.attribute("ref")) == '6' )
  1166. {
  1167. if ( model.getValue(cmb_reqflag.attribute("ref")) != 'X' )
  1168. {
  1169. messageBox ( " 대여는 청구구분이 교환물품으로" , "C002" ) ;
  1170. model.setValue(cmb_workflag.attribute("ref"),"");
  1171. model.refresh();
  1172. return;
  1173. }
  1174. }
  1175. btn_search.dispatch("DOMActivate");
  1176. ]]>
  1177. </script>
  1178. </select1>
  1179. <select1 id="cmb_reqflag" ref="/root/send/goodreq/reqflag" class="combo_default" visibility="hidden" appearance="minimal" style="left:820px; top:65px; width:151px; height:19px; ">
  1180. <choices>
  1181. <itemset nodeset="/root/init/reqflag">
  1182. <label ref="reqflagnm"/>
  1183. <value ref="reqflag"/>
  1184. </itemset>
  1185. </choices>
  1186. <script type="javascript" ev:event="xforms-value-changed">
  1187. <![CDATA[
  1188. cmb_workflag.value = '';
  1189. fSetReqAuth();
  1190. fSetReqseq();
  1191. btn_search.dispatch("DOMActivate");
  1192. ]]>
  1193. </script>
  1194. </select1>
  1195. </group>
  1196. </xhtml:body>
  1197. </xhtml:html>