SMRSO10000_약국이송출고관리(경북대).xrw 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:ex="http://www.comsquare.co.kr/xforms/excel" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:my="http://www.comsquare.co.kr/example" xmlns:ms="urn:schemas-microsoft-com:xslt" 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" xmlns:cs="http://www.comsquare.co.kr/xforms">
  4. <xhtml:head>
  5. <xhtml:title>약국이송출고관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list>
  11. <gooddelive>
  12. <gooddelivelist>
  13. <deliveseqno/>
  14. <goodlrgnm/>
  15. <goodcd/>
  16. <oldcd/>
  17. <goodnm/>
  18. <goodspec/>
  19. <stocqty/>
  20. <winpackqty/>
  21. <delivedeptqty/>
  22. <reqpackconcat/>
  23. <winpackcntperunit/>
  24. <deliveunit/>
  25. <winpackunit/>
  26. <targetdeliveqty/>
  27. <targetstocqty/>
  28. <targetbaseqty/>
  29. <deliveamt/>
  30. <trantretdd/>
  31. <trantrettm/>
  32. <reqno/>
  33. <iokindcd/>
  34. <delivedeptcd/>
  35. <delivepsn/>
  36. <windeptcd/>
  37. <reqflag/>
  38. <reqdd/>
  39. <reqseqno/>
  40. <prcpstatspk/>
  41. <instcd/>
  42. <goodflag/>
  43. <delivedd/>
  44. <deliveno/>
  45. <predelivedeptqty/>
  46. <minexch/>
  47. <predeliveprcsflag/>
  48. <savedeliveprcsflag/>
  49. <predeliveqty/>
  50. </gooddelivelist>
  51. <goodmaxdeliveno/>
  52. </gooddelive>
  53. <gooddelivereq>
  54. <gooddelivelist/>
  55. <goodmaxdeliveno/>
  56. </gooddelivereq>
  57. </list>
  58. <item/>
  59. </main>
  60. <send>
  61. <save>
  62. <gooddelivelist/>
  63. </save>
  64. <gooddelive>
  65. <instcd/>
  66. <goodflag/>
  67. <delivedd/>
  68. <deliveno/>
  69. <delivedeptcd/>
  70. <delivedeptnm/>
  71. <iokindcd/>
  72. <windeptcd/>
  73. <windeptnm/>
  74. <delivepsn/>
  75. <delivepsnnm/>
  76. <trantretdd/>
  77. <trantrettm/>
  78. <lrgcd/>
  79. <mdlcd/>
  80. <smlcd/>
  81. <goodcd/>
  82. <oldcd/>
  83. <mngtcls/>
  84. <deflag/>
  85. </gooddelive>
  86. </send>
  87. <init>
  88. <deliveqty/>
  89. <deliveamt/>
  90. <deliveflag>A</deliveflag>
  91. </init>
  92. <hidden/>
  93. <temp/>
  94. <copynode/>
  95. </root>
  96. </instance>
  97. <script type="javascript" ev:event="xforms-ready">
  98. <![CDATA[
  99. fInitialize();
  100. ]]>
  101. </script>
  102. <submission id="TRRSO00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/gooddelive" resultref="/root/main/list/gooddelive"/>
  103. <submission id="TRRSO00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/gooddelive" resultref="/root/main/list/gooddelive"/>
  104. <submission id="TXRSO00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hidden/temp">"</submission>
  105. <bind id="bind_reqpackconcat" ref="/root/main/list/gooddelive/gooddelivelist/reqpackconcat" calculate="concat(../winpackcntperunit, ' ', ../deliveunit, '/', ../winpackunit)"/>
  106. <submission id="TRRSO00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/gooddelive" resultref="/root/main/list/gooddelive"/>
  107. </model>
  108. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  109. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  110. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  111. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  112. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  113. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  114. <script type="javascript">
  115. <![CDATA[
  116. /**
  117. * @ver : 2011-01-04
  118. * @desc : 폼 초기화
  119. * @param :
  120. * @return :
  121. * @----------------------------------------
  122. */
  123. function fInitialize() {
  124. rszfComboStockArthDeptcdList(cmb_delivedeptcd,getUserInfo("dutplceinstcd"),"PH" );
  125. misfComboComCdList("030M0003",cmb_mngtcls,"Y");
  126. misfGridInit(grd_gooddelive);
  127. misfMsterDetailSet(grd_gooddelive,null, "TRRSO00101" ,"Y");
  128. model.setValue(ipt_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
  129. model.setValue(ipt_delivedd.attribute("ref") , getCurrentDate());
  130. model.setValue(ipt_sumdeliveqty.attribute("ref"),0);
  131. model.setValue(opt_sumdeliveamt.attribute("ref"),0);
  132. model.setValue(ipt_delivepsn.attribute("ref") , getUserInfo("userid"));
  133. model.setValue(opt_delivepsnnm.attribute("ref") , getUserInfo("usernm"));
  134. model.setValue(cmb_goodflag.attribute("ref") , "PH");
  135. // 이송출고 코드 = >2B
  136. model.setValue(cmb_iokindcd.attribute("ref") , "2B");
  137. // 이송시간 설정
  138. model.setValue(cmb_delivedeptcd.attribute("ref"),getUserInfo("dutplcecd"));
  139. model.setValue(ipt_trantretdd.attribute("ref") ,getCurrentDate());
  140. model.setValue(ipt_trantrettm.attribute("ref") ,getCurrentTime());
  141. grd_gooddelive.selectionmode = "free";
  142. model.refresh();
  143. }
  144. function fCheckRetrieveData(pmsg)
  145. {
  146. if(model.getValue(ipt_instcd.attribute("ref")).length== 0 )
  147. {
  148. if(pmsg == true)
  149. {
  150. messageBox("기관코드를 " ,"C002");
  151. model.setFocus("ipt_instcd");
  152. }
  153. return false;
  154. }
  155. if(model.getValue(ipt_delivedd.attribute("ref")).length== 0 )
  156. {
  157. if(pmsg == true)
  158. {
  159. messageBox("출고일자를 " ,"C001");
  160. model.setFocus("ipt_delivedd");
  161. }
  162. return false;
  163. }
  164. if(model.getValue(cmb_delivedeptcd.attribute("ref")).length== 0 )
  165. {
  166. if(pmsg == true)
  167. {
  168. messageBox("출고부서를 " ,"C001");
  169. model.setFocus("cmb_delivedeptcd");
  170. }
  171. return false;
  172. }
  173. if(model.getValue(cmb_windeptcd.attribute("ref")).length== 0 )
  174. {
  175. if(pmsg == true)
  176. {
  177. messageBox("입고부서를 " ,"C001");
  178. model.setFocus("cmb_windeptcd");
  179. }
  180. return false;
  181. }
  182. return true;
  183. }
  184. function fDefaultSetting(prow)
  185. {
  186. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/instcd",model.getValue(ipt_instcd.attribute("ref")));
  187. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/goodflag",model.getValue(cmb_goodflag.attribute("ref")));
  188. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/delivedd",model.getValue(ipt_delivedd.attribute("ref")));
  189. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/delivedeptcd",model.getValue(cmb_delivedeptcd.attribute("ref")));
  190. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/windeptcd",model.getValue(cmb_windeptcd.attribute("ref")));
  191. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/iokindcd",model.getValue(cmb_iokindcd.attribute("ref")));
  192. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/delivepsn",model.getValue(ipt_delivepsn.attribute("ref")));
  193. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/deliveseqno",fGetMaxDeliveSeqNo());
  194. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/delivedeptqty",0);
  195. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/deliveamt",0);
  196. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/trantretdd", model.getValue(ipt_trantretdd.attribute("ref")));
  197. model.setValue(grd_gooddelive.nodeset+"["+prow+"]/trantrettm", model.getValue(ipt_trantrettm.attribute("ref")));
  198. }
  199. function fDefaultSetting2(flag)
  200. {
  201. grd_gooddelive.rebuildStyle();
  202. for( cnt = grd_gooddelive.fixedRows; cnt < grd_gooddelive.rows; cnt++) {
  203. grd_gooddelive.valueMatrix( cnt, grd_gooddelive.colRef("trantretdd")) = ipt_trantretdd.value;
  204. grd_gooddelive.valueMatrix( cnt, grd_gooddelive.colRef("trantrettm")) = ipt_trantrettm.value;
  205. grd_gooddelive.rowStatus( cnt ) = "1";
  206. var deliveflag = model.getValue("/root/init/deliveflag");
  207. if(deliveflag=="B"){
  208. grd_gooddelive.cellstyle("background-color", cnt, grd_gooddelive.colRef("delivedeptqty"), cnt, grd_gooddelive.colRef("delivedeptqty") ) = "yellow";
  209. grd_gooddelive.cellstyle("background-color", cnt, grd_gooddelive.colRef("delivepackdeptqty"), cnt, grd_gooddelive.colRef("delivepackdeptqty") ) = "transparent";
  210. grd_gooddelive.isReadOnly(cnt,grd_gooddelive.colRef("delivedeptqty")) = false;
  211. grd_gooddelive.isReadOnly(cnt,grd_gooddelive.colRef("delivepackdeptqty")) = true;
  212. }else{
  213. grd_gooddelive.cellstyle("background-color", cnt, grd_gooddelive.colRef("delivedeptqty"), cnt, grd_gooddelive.colRef("delivedeptqty") ) = "transparent";
  214. grd_gooddelive.cellstyle("background-color", cnt, grd_gooddelive.colRef("delivepackdeptqty"), cnt, grd_gooddelive.colRef("delivepackdeptqty") ) = "yellow";
  215. grd_gooddelive.isReadOnly(cnt,grd_gooddelive.colRef("delivedeptqty")) = true;
  216. grd_gooddelive.isReadOnly(cnt,grd_gooddelive.colRef("delivepackdeptqty")) = false;
  217. }
  218. if(flag=="1"){
  219. var seqno;
  220. if(cnt < 10){
  221. seqno ="00"+cnt;
  222. }else if(cnt >=10){
  223. seqno ="0"+cnt;
  224. }else if(cnt >=100){
  225. seqno =cnt;
  226. }
  227. grd_gooddelive.valueMatrix( cnt, grd_gooddelive.colRef("deliveseqno")) = seqno;
  228. }
  229. }
  230. }
  231. function fGetMaxDeliveSeqNo()
  232. {
  233. var maxDeliveSeqNo = "";
  234. /*for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows; currow++)
  235. {
  236. alert("maxDeliveSeqNo======"+maxDeliveSeqNo);
  237. alert("22222222222======"+grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("deliveseqno")));
  238. if(maxDeliveSeqNo < grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("deliveseqno")))
  239. maxDeliveSeqNo = grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("deliveseqno"));
  240. }*/
  241. for(var i = grd_gooddelive.rows-1; i > 0;i--){
  242. if(i==1){
  243. maxDeliveSeqNo="001";
  244. }else{
  245. maxDeliveSeqNo= grd_gooddelive.valueMatrix(i-1,grd_gooddelive.colRef("deliveseqno"));
  246. if(parseFloat(maxDeliveSeqNo) < 9){
  247. maxDeliveSeqNo = "00"+(parseFloat(maxDeliveSeqNo) + 1);
  248. }else if((parseFloat(maxDeliveSeqNo) >=9)&&(parseFloat(maxDeliveSeqNo) < 99)){
  249. maxDeliveSeqNo = "0"+(parseFloat(maxDeliveSeqNo) + 1);
  250. }else{
  251. maxDeliveSeqNo = (parseFloat(maxDeliveSeqNo) + 1);
  252. }
  253. }
  254. break;
  255. }
  256. return maxDeliveSeqNo;//maxDeliveSeqNo.getLeftPad(3,"0");
  257. }
  258. function fCheckSaveData()
  259. {
  260. if(model.getValue(ipt_instcd.attribute("ref")).length== 0 )
  261. {
  262. messageBox("기관코드를 " ,"C002");
  263. model.setFocus("ipt_instcd");
  264. return false;
  265. }
  266. if(model.getValue(cmb_goodflag.attribute("ref")).length== 0 )
  267. {
  268. messageBox("물품구분을 " ,"C002");
  269. model.setFocus("cmb_goodflag");
  270. return false;
  271. }
  272. if(model.getValue(ipt_delivedd.attribute("ref")).length== 0 )
  273. {
  274. messageBox("출고일자를 " ,"C001");
  275. model.setFocus("ipt_delivedd");
  276. return false;
  277. }
  278. if(model.getValue(cmb_delivedeptcd.attribute("ref")).length== 0 )
  279. {
  280. messageBox("출고부서를 " ,"C001");
  281. model.setFocus("cmb_delivedeptcd");
  282. return false;
  283. }
  284. if(model.getValue(cmb_iokindcd.attribute("ref")).length== 0 )
  285. {
  286. messageBox("출고유형을 " ,"C001");
  287. model.setFocus("cmb_iokindcd");
  288. return false;
  289. }
  290. if(model.getValue(cmb_windeptcd.attribute("ref")).length== 0 )
  291. {
  292. messageBox("입고부서를 " ,"C001");
  293. model.setFocus("cmb_windeptcd");
  294. return false;
  295. }
  296. if(model.getValue(ipt_delivepsn.attribute("ref")).length== 0 )
  297. {
  298. messageBox("출고담당자를 " ,"C001");
  299. model.setFocus("ipt_delivepsn");
  300. return false;
  301. }
  302. for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows ; currow++)
  303. {
  304. if(grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("goodcd")).length == 0)
  305. {
  306. messageBox((currow -1)+ " 번째 물품코드를 " ,"C001");
  307. grd_gooddelive.row = currow;
  308. grd_gooddelive.endEditCell();
  309. grd_gooddelive.col= grd_gooddelive.colRef("goodcd");
  310. grd_gooddelive.editCell();
  311. return false;
  312. }
  313. else
  314. {
  315. if(grd_gooddelive.rowStatus(currow)!="0"){ // 20130125_약품이송내역 삭제 시 체크 로직 변경
  316. for(srcrow = currow + 1 ; srcrow < grd_gooddelive.rows ; srcrow++)
  317. {
  318. if(grd_gooddelive.rowStatus(srcrow)!="4"){
  319. if(grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("goodcd")) == grd_gooddelive.valueMatrix(srcrow , grd_gooddelive.colRef("goodcd")))
  320. {
  321. messageBox("동일 물품코드가 [" + currow + "," +srcrow + "->" + grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("goodcd")) + "] 존재하여 저장 " ,"E001");
  322. return false;
  323. }
  324. }
  325. }
  326. }
  327. }
  328. if(grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("delivedeptqty")).length == 0)
  329. {
  330. messageBox((currow -1)+ " 번째 출고수량을 " ,"C001");
  331. grd_gooddelive.row = currow;
  332. grd_gooddelive.endEditCell();
  333. grd_gooddelive.col= grd_gooddelive.colRef("delivedeptqty");
  334. grd_gooddelive.editCell();
  335. return false;
  336. }
  337. }
  338. return true;
  339. }
  340. function fAfterRetrieve()
  341. {
  342. var delivedeptqty = 0;
  343. var deliveamt = 0;
  344. for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows ; currow++)
  345. {
  346. var deliveflag = model.getValue("/root/init/deliveflag");
  347. if(deliveflag=="B"){
  348. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivedeptqty"), currow, grd_gooddelive.colRef("delivedeptqty") ) = "yellow";
  349. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivepackdeptqty"), currow, grd_gooddelive.colRef("delivepackdeptqty") ) = "transparent";
  350. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivedeptqty")) = false;
  351. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivepackdeptqty")) = true;
  352. }else{
  353. grd_gooddelive.cellstyle("background-color",currow, grd_gooddelive.colRef("delivedeptqty"), currow, grd_gooddelive.colRef("delivedeptqty") ) = "transparent";
  354. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivepackdeptqty"), currow, grd_gooddelive.colRef("delivepackdeptqty") ) = "yellow";
  355. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivedeptqty")) = true;
  356. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivepackdeptqty")) = false;
  357. }
  358. delivedeptqty = delivedeptqty + parseFloat( grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("delivedeptqty")));
  359. if(grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("deliveamt")).length>0)
  360. deliveamt = deliveamt + 0 + parseFloat(grd_gooddelive.valueMatrix(currow , grd_gooddelive.colRef("deliveamt")));
  361. }
  362. model.setValue(ipt_sumdeliveqty.attribute("ref"),delivedeptqty);
  363. model.setValue(opt_sumdeliveamt.attribute("ref"),deliveamt);
  364. model.setValue(ipt_deliveno.attribute("ref"),model.getValue("/root/main/list/gooddelive/goodmaxdeliveno/deliveno"));
  365. model.refresh();
  366. }
  367. function fCalcAmt()
  368. {
  369. var pdelivedeptqty = grd_gooddelive.valueMatrix(grd_gooddelive.row, grd_gooddelive.colRef("delivedeptqty"));
  370. var pwinpackcntperunit = grd_gooddelive.valueMatrix(grd_gooddelive.row, grd_gooddelive.colRef("winpackcntperunit"));
  371. var pwinpackqty = parseInt(pdelivedeptqty) / parseInt(pwinpackcntperunit);
  372. model.setValue(grd_gooddelive.nodeset + "[" + (grd_gooddelive.row - grd_gooddelive.fixedRows + 1) + "]/winpackqty" ,pwinpackqty);
  373. }
  374. /**
  375. * @ver : 2011-01-29
  376. * @desc : Popup창에서 해당정보 받기
  377. * @param :
  378. * @return :
  379. * @---------------------------------------------------
  380. */
  381. function fGetDrugGoodReqInfo(getRCVS){
  382. var params = getRCVS.split("▩");
  383. var duplFlag = false;
  384. for(var i = 1; i <(params.length-1); i++){
  385. var sGoodcdEngnm = params[i].split("▦")[0]; //물품영문명
  386. var sReqpackunit = params[i].split("▦")[4]; //발주단위
  387. var sReqpackperunitqty = params[i].split("▦")[5]; //포장단위당갯수
  388. var sDelivepackqty = params[i].split("▦")[8]; //이송량(포장)
  389. var sGoodcd = params[i].split("▦")[9]; //물품코드
  390. var sReqdeptcd = params[i].split("▦")[10]; //청구부서
  391. var sReqdd = params[i].split("▦")[11]; //청구일자
  392. var sReqno = params[i].split("▦")[12]; //청구순번
  393. var sReqseqno = params[i].split("▦")[13]; //청구일련번호
  394. var sReqfla = params[i].split("▦")[15]; //청구금액
  395. var sReqflag = params[i].split("▦")[19]; //청구구분
  396. var sDeliveqty = params[i].split("▦")[24]; //이송량(낱개)
  397. var orgDelivedeptQty; //이전 낱개수량
  398. var orgDelivepackdeptQty; //이전 포장수량
  399. var orgDeliveamt; //이전 낱개금액
  400. var compGoodcd; //이전 약품코드
  401. var compWindeptcd; //이전 요구부서
  402. var orgStocqty; // 재고
  403. var k;
  404. for( k =grd_gooddelive.fixedRows;k <grd_gooddelive.rows;k++){
  405. compGoodcd = grd_gooddelive.valueMatrix(k,grd_gooddelive.colRef("goodcd"));
  406. compWindeptcd = model.getValue("/root/send/gooddelive/windeptcd");
  407. orgDelivedeptQty = grd_gooddelive.valueMatrix(k,grd_gooddelive.colRef("delivedeptqty"));
  408. orgDelivepackdeptQty = grd_gooddelive.valueMatrix(k,grd_gooddelive.colRef("delivepackdeptqty"));
  409. orgDeliveamt = grd_gooddelive.valueMatrix(k,grd_gooddelive.colRef("deliveamt"));
  410. orgStocqty = grd_gooddelive.valueMatrix(k,grd_gooddelive.colRef("stocqty"));
  411. if((sGoodcd == compGoodcd)&&(sReqdeptcd==compWindeptcd)){
  412. duplFlag = true;
  413. break;
  414. }else{
  415. duplFlag = false;
  416. }
  417. }
  418. if(duplFlag == true){
  419. model.setValue("/root/main/list/gooddelive/gooddelivelist[goodcd='"+compGoodcd+"' and windeptcd='"+compWindeptcd+"']/delivepackdeptqty" ,Number(orgDelivepackdeptQty)+Number(sDelivepackqty));
  420. model.setValue("/root/main/list/gooddelive/gooddelivelist[goodcd='"+compGoodcd+"' and windeptcd='"+compWindeptcd+"']/delivedeptqty" ,Number(orgDelivedeptQty)+Number(sDeliveqty));
  421. model.setValue("/root/main/list/gooddelive/gooddelivelist[goodcd='"+compGoodcd+"' and windeptcd='"+compWindeptcd+"']/deliveamt" ,Number(orgDeliveamt)+Number(sReqfla));
  422. model.setValue("/root/main/list/gooddelive/gooddelivelist["+k+"]/reqdd" ,sReqdd);
  423. model.setValue("/root/main/list/gooddelive/gooddelivelist["+k+"]/reqno" ,sReqno);
  424. model.setValue("/root/main/list/gooddelive/gooddelivelist["+k+"]/reqseqno" ,sReqseqno);
  425. model.setValue("/root/main/list/gooddelive/gooddelivelist["+k+"]/reqdeptcd" ,sReqdeptcd);
  426. model.setValue("/root/main/list/gooddelive/gooddelivelist["+k+"]/reqflag" ,sReqflag);
  427. if(Number(orgStocqty) < Number(sDeliveqty)){
  428. messageBox(compGoodcd+"코드의 마약청구량이 재고량보다 많습니다","I007");
  429. grd_gooddelive.cellstyle("background-color", k, grd_gooddelive.colRef("delivedeptqty"), k, grd_gooddelive.colRef("delivedeptqty") ) = "#ff9900";
  430. grd_gooddelive.cellstyle("background-color", k, grd_gooddelive.colRef("stocqty"), k, grd_gooddelive.colRef("stocqty") ) = "#ff9900";
  431. }
  432. if(grd_gooddelive.rowStatus(k)!="1"){
  433. grd_gooddelive.rowStatus(k)="2";
  434. }
  435. }else{
  436. /*grd_gooddelive.addRow(false);
  437. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/goodcd" ,sGoodcd);
  438. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/goodengnm" ,sGoodcdEngnm);
  439. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqqty" ,sPlceordqty);
  440. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/goodunitcost" ,sGoodunitcost);
  441. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqfla" ,sReqfla);
  442. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqpackfla" ,sReqPackfla);
  443. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqdd" ,sReqdd);
  444. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqdeptcd" ,sReqdeptcd);
  445. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqno" ,sReqno);
  446. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqseqno" ,sReqseqno);
  447. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/requnit" ,sRequnit);
  448. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqpackcntperunit" ,sReqpackperunitqty);
  449. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqpackunit" ,sReqpackunit);
  450. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqpackcnt" ,sReqpackqty);
  451. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/goodpurccost" ,sGoodpurccost);
  452. model.makeValue("/root/main/list/gooddelive/gooddelivelist["+grd_gooddelive.row+"]/reqflag" ,sReqflag);
  453. */
  454. messageBox("마약청구부서랑 마약입고할 부서랑 불일치합니다","I007");
  455. return;
  456. }
  457. }
  458. grd_gooddelive.refresh();
  459. }
  460. /**
  461. * @ver : 2011-01-31
  462. * @desc : 포장,낱개이송에 따른 컬럼 isReadOnly
  463. * @param :
  464. * @return :
  465. * @---------------------------------------------------
  466. */
  467. function fChgDeliveFlag(){
  468. var deliveflag = model.getValue("/root/init/deliveflag");
  469. grd_gooddelive.rebuildStyle();
  470. if(deliveflag=="B"){
  471. for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows ; currow++){
  472. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivedeptqty"), currow, grd_gooddelive.colRef("delivedeptqty") ) = "yellow";
  473. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivepackdeptqty"), currow, grd_gooddelive.colRef("delivepackdeptqty") ) = "transparent";
  474. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivedeptqty")) = false;
  475. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivepackdeptqty")) = true;
  476. }
  477. }else{
  478. for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows ; currow++){
  479. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivedeptqty"), currow, grd_gooddelive.colRef("delivedeptqty") ) = "transparent";
  480. grd_gooddelive.cellstyle("background-color", currow, grd_gooddelive.colRef("delivepackdeptqty"), currow, grd_gooddelive.colRef("delivepackdeptqty") ) = "yellow";
  481. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivedeptqty")) = true;
  482. grd_gooddelive.isReadOnly(currow,grd_gooddelive.colRef("delivepackdeptqty")) = false;
  483. }
  484. }
  485. grd_gooddelive.refresh();
  486. }
  487. ]]>
  488. </script>
  489. </xhtml:head>
  490. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  491. <group id="grp_biz" scroll="auto" style="left:0px; top:38px; width:1195; height:744px; ">
  492. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:85px; background-color:#fffbf2; border-color:#ffd799; "/>
  493. <line id="line1" class="line_1" style="x1:0px; y1:135px; x2:1195px; y2:135px; "/>
  494. <datagrid id="grd_gooddelive" nodeset="/root/main/list/gooddelive/gooddelivelist" class="datagrid2" caption="순번^약품코드^약품명^재고량^입고량^포장이송량^낱개이송량^포장^포장^포장^포장^금월사용량^이송부서재고량^이송부서기준량^이송금액^이송일자^이송시간^청구번호^이전출고수량^caption1^caption2^caption3^caption4" colsep="^" colwidth="35, 100, 301, 70, 50, 73, 75, 100, 23, 22, 21, 80, 100, 90, 80, 90, 75, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:140px; width:1195px; height:594px; ">
  495. <col ref="deliveseqno" visibility="hidden" style="text-align:center; "/>
  496. <col ref="goodcd" type="output" _chartype="upper" _key="true"/>
  497. <col ref="goodnm"/>
  498. <col ref="stocqty" style="text-align:right; "/>
  499. <col ref="winpackqty" visibility="hidden" format="#,###" style="text-align:right; "/>
  500. <col ref="delivepackdeptqty" type="input" format="#,###" maxlength="9" style="text-align:right; "/>
  501. <col ref="delivedeptqty" type="input" format="#,###" maxlength="9" style="text-align:right; "/>
  502. <col ref="reqpackconcat" style="text-align:left; "/>
  503. <col ref="winpackcntperunit" visibility="hidden" style="text-align:right; "/>
  504. <col ref="deliveunit" visibility="hidden"/>
  505. <col ref="winpackunit" visibility="hidden"/>
  506. <col ref="targetdeliveqty" visibility="hidden" style="text-align:right; "/>
  507. <col ref="targetstocqty" visibility="hidden" style="text-align:right; "/>
  508. <col ref="targetbaseqty" visibility="hidden" style="text-align:right; "/>
  509. <col ref="deliveamt" format="#,###.##" style="text-align:right; "/>
  510. <col ref="trantretdd" type="inputdate" format="yyyy-mm-dd"/>
  511. <col ref="trantrettm" type="input" format="hh:nn:ss"/>
  512. <col ref="reqno" visibility="hidden"/>
  513. <col ref="iokindcd" visibility="hidden" style="text-align:right; "/>
  514. <col ref="delivedeptcd" visibility="hidden"/>
  515. <col ref="delivepsn" visibility="hidden"/>
  516. <col ref="windeptcd" visibility="hidden"/>
  517. <col ref="reqdeptcd" visibility="hidden"/>
  518. <col ref="reqflag" visibility="hidden"/>
  519. <col ref="reqdd" visibility="hidden"/>
  520. <col ref="reqseqno" visibility="hidden"/>
  521. <col ref="prcpstatspk" visibility="hidden"/>
  522. <col ref="instcd" visibility="hidden"/>
  523. <col ref="goodflag" visibility="hidden"/>
  524. <col ref="delivedd" visibility="hidden"/>
  525. <col ref="deliveno" visibility="hidden"/>
  526. <col ref="predelivedeptqty" visibility="hidden"/>
  527. <col ref="minexch" visibility="hidden"/>
  528. <col ref="predeliveprcsflag" visibility="hidden"/>
  529. <col ref="savedeliveprcsflag" visibility="hidden"/>
  530. <col ref="predeliveqty" visibility="hidden"/>
  531. <col ref="addflag" visibility="hidden"/>
  532. <col ref="goodunitcost" visibility="hidden"/>
  533. <script type="javascript" ev:event="onendedit">
  534. <![CDATA[
  535. var pRow = grd_gooddelive.row - grd_gooddelive.fixedRows + 1;
  536. var delivepackdeptqty = parseFloat(grd_gooddelive.valueMatrix(pRow , grd_gooddelive.colRef("delivepackdeptqty")));
  537. var winpackcntperunit = parseFloat(grd_gooddelive.valueMatrix(pRow , grd_gooddelive.colRef("winpackcntperunit")));
  538. var goodunitcost = parseFloat(grd_gooddelive.valueMatrix(pRow , grd_gooddelive.colRef("goodunitcost")));
  539. if(grd_gooddelive.col == grd_gooddelive.colRef("delivepackdeptqty")){
  540. model.setValue(grd_gooddelive.nodeset+"["+pRow+"]/delivedeptqty" ,delivepackdeptqty*winpackcntperunit);
  541. model.setValue(grd_gooddelive.nodeset+"["+pRow+"]/deliveamt" ,(delivepackdeptqty*winpackcntperunit)*goodunitcost);
  542. if(grd_gooddelive.row < grd_gooddelive.rows - grd_gooddelive.fixedRows){
  543. grd_gooddelive.row = grd_gooddelive.row + 1;
  544. grd_gooddelive.select(grd_gooddelive.row, grd_gooddelive.colRef("delivepackdeptqty")) = true;
  545. }
  546. }else if(grd_gooddelive.col == grd_gooddelive.colRef("delivedeptqty")){
  547. var delivedeptqty = parseFloat(grd_gooddelive.valueMatrix(pRow , grd_gooddelive.colRef("delivedeptqty")));
  548. model.setValue(grd_gooddelive.nodeset+"["+pRow+"]/deliveamt" ,delivedeptqty*goodunitcost);
  549. if(grd_gooddelive.row < grd_gooddelive.rows - grd_gooddelive.fixedRows){
  550. grd_gooddelive.row = grd_gooddelive.row + 1;
  551. grd_gooddelive.select(grd_gooddelive.row, grd_gooddelive.colRef("delivedeptqty")) = true;
  552. }
  553. }
  554. grd_gooddelive.refresh();
  555. ]]>
  556. </script>
  557. </datagrid>
  558. <input id="ipt_delivedd" ref="/root/send/gooddelive/delivedd" class="input_s_essential" inputtype="date" style="left:100px; top:19px; width:152px; height:19px; text-align:center; ">
  559. <script type="javascript" ev:event="xforms-value-changed">
  560. <![CDATA[
  561. btn_search.dispatch("DOMActivate");
  562. ]]>
  563. </script>
  564. </input>
  565. <select1 id="cmb_goodflag" ref="/root/send/gooddelive/goodflag" class="combo_default" visibility="hidden" appearance="minimal" style="left:1066px; top:20px; width:29px; height:19px; ">
  566. <choices>
  567. <itemset nodeset="/root/init/goodflag">
  568. <label ref="cdnm"/>
  569. <value ref="cdid"/>
  570. </itemset>
  571. </choices>
  572. <script type="javascript" ev:event="xforms-value-changed">
  573. <![CDATA[
  574. btn_search.dispatch("DOMActivate");
  575. ]]>
  576. </script>
  577. </select1>
  578. <caption id="caption3" class="tit_2" style="left:5px; top:120px; width:118px; height:14px; ">약품 이송내역</caption>
  579. <input id="ipt_deliveno" ref="/root/send/gooddelive/deliveno" class="input_default" visibility="hidden" editable="false" style="left:285px; top:20px; width:57px; height:19px; ">
  580. <script type="javascript" ev:event="onkeyup">
  581. <![CDATA[
  582. inputEnterKey("btn_search", "DOMActivate");
  583. ]]>
  584. </script>
  585. </input>
  586. <button id="btn_choidel" class="btn2_letter3" visibility="visible" style="left:1091px; top:115px; width:53px; height:19px; ">
  587. <caption>행삭제</caption>
  588. <script type="javascript" ev:event="DOMActivate">
  589. <![CDATA[
  590. var iSelectedCnt = grd_gooddelive.selectedCells.length;
  591. for(var i=0; i<iSelectedCnt; i++){
  592. var iRowIdx = grd_gooddelive.selectedCells.item(i).row;
  593. if((grd_gooddelive.rowstatus(iRowIdx)=="1")||(grd_gooddelive.rowstatus(iRowIdx)=="3")){
  594. grd_gooddelive.deleteRow(grd_gooddelive.row,false);
  595. }else{
  596. grd_gooddelive.rowstatus(iRowIdx)=4;
  597. }
  598. }
  599. model.refresh();
  600. //misfGridIUD(grd_gooddelive, "D");
  601. ]]>
  602. </script>
  603. </button>
  604. <output id="ipt_sumdeliveqty" ref="/root/init/deliveqty" class="output_default" format="#,###.##" style="left:578px; top:114px; width:70px; height:19px; font-weight:bold; text-align:center; "/>
  605. <caption id="caption25" style="left:520px; top:114px; width:74px; height:20px; vertical-align:middle; ">이송건수 :</caption>
  606. <output id="opt_sumdeliveamt" ref="/root/init/deliveamt" class="output_default" format="#,###.##" style="left:383px; top:114px; width:105px; height:19px; font-weight:bold; text-align:right; "/>
  607. <caption id="caption4" style="left:325px; top:115px; width:58px; height:20px; vertical-align:middle; ">이송합계 :</caption>
  608. <select1 id="cmb_iokindcd" ref="/root/send/gooddelive/iokindcd" class="combo_default" visibility="hidden" appearance="minimal" style="left:1067px; top:20px; width:28px; height:19px; ">
  609. <choices>
  610. <itemset nodeset="/root/init/ioflag">
  611. <label ref="cdnm"/>
  612. <value ref="cdid"/>
  613. </itemset>
  614. </choices>
  615. <script type="javascript" ev:event="xforms-value-changed">
  616. <![CDATA[
  617. btn_search.dispatch("DOMActivate");
  618. ]]>
  619. </script>
  620. </select1>
  621. <input id="ipt_delivepsn" ref="/root/send/gooddelive/delivepsn" class="input_default" visibility="hidden" appearance="input" style="left:1072px; top:20px; width:23px; height:19px; "/>
  622. <output id="opt_delivepsnnm" ref="/root/send/gooddelive/delivepsnnm" class="output_fix" appearance="output" style="left:463px; top:19px; width:146px; height:17px; text-align:center; "/>
  623. <button id="btn_search" class="btn1_letter2" navindex="7" style="left:1124px; top:39px; width:56px; height:22px; text-align:left; ">
  624. <caption>조회</caption>
  625. <script type="javascript" ev:event="DOMActivate">
  626. <![CDATA[
  627. if(fCheckRetrieveData(true) == false)return;
  628. misfGridInit(grd_gooddelive);
  629. misfMsterDetailRetrieve();
  630. fAfterRetrieve();
  631. ]]>
  632. </script>
  633. </button>
  634. <select1 id="cmb_delivedeptcd" ref="/root/send/gooddelive/delivedeptcd" class="combo_s_essential" disabled="true" appearance="minimal" style="left:100px; top:55px; width:152px; height:19px; text-align:center; ">
  635. <choices>
  636. <itemset>
  637. <label/>
  638. <value/>
  639. </itemset>
  640. </choices>
  641. </select1>
  642. <select1 id="cmb_windeptcd" ref="/root/send/gooddelive/windeptcd" class="combo_s_essential" appearance="minimal" style="left:463px; top:56px; width:146px; height:19px; text-align:center; ">
  643. <choices>
  644. <itemset nodeset="/root/init/dept/deptcdlist">
  645. <label ref="deptnm"/>
  646. <value ref="deptcd"/>
  647. </itemset>
  648. </choices>
  649. <script type="javascript" ev:event="xforms-value-changed">
  650. <![CDATA[
  651. var delivedeptcd = model.getValue("/root/send/gooddelive/delivedeptcd");
  652. var windeptcd = model.getValue("/root/send/gooddelive/windeptcd");
  653. if(delivedeptcd==windeptcd){
  654. messageBox("같은 부서끼리는 이송을","E001");
  655. return;
  656. }
  657. ]]>
  658. </script>
  659. </select1>
  660. <caption id="caption15" class="search_name" style="left:15px; top:56px; width:86px; height:17px; ">출고부서 :</caption>
  661. <line id="line2" class="line_4" style="x1:1110px; y1:23px; x2:1110px; y2:80px; border-color:#ffe4bb; border-left-style:solid; "/>
  662. <caption id="caption12" class="search_name" style="left:15px; top:19px; width:87px; height:17px; ">이송일자 :</caption>
  663. <caption id="caption13" class="search_name" style="left:360px; top:56px; width:105px; height:17px; ">입 고 부 서 :</caption>
  664. <caption id="caption16" class="search_name" style="left:360px; top:19px; width:105px; height:17px; ">이송담당자 :</caption>
  665. <input id="ipt_instcd" ref="/root/send/gooddelive/instcd" visibility="hidden" style="left:1065px; top:20px; width:30px; height:19px; "/>
  666. <caption id="caption1" class="search_name" style="left:695px; top:19px; width:105px; height:17px; ">이송시간 :</caption>
  667. <input id="ipt_trantretdd" ref="/root/send/gooddelive/trantretdd" inputtype="date" format="yyyy-mm-dd" style="left:785px; top:19px; width:90px; height:17px; text-align:center; "/>
  668. <input id="ipt_trantrettm" ref="/root/send/gooddelive/trantrettm" format="hh:nn:ss" style="left:885px; top:19px; width:65px; height:17px; text-align:center; "/>
  669. <button id="button1" class="btn2_letter6" style="left:1000px; top:115px; width:86px; height:19px; ">
  670. <caption>재고가져오기</caption>
  671. <script type="javascript" ev:event="DOMActivate">
  672. <![CDATA[
  673. if(fCheckRetrieveData(true) == false)return;
  674. // 20120202_laboru_약국 이송등록화면에서 재고가져오기 실행여부
  675. model.makeValue("/root/send/gooddelive/deflag","Y");
  676. if(submit("TRRSO00104")){
  677. ipt_sumdeliveqty.value= "0"; //출고 건수 초기화
  678. if(grd_gooddelive.rows - grd_gooddelive.fixedRows > 0) fDefaultSetting2("1");
  679. }
  680. ]]>
  681. </script>
  682. </button>
  683. <button id="btn_excel" class="btn2_letter2" style="left:1150px; top:115px; width:42px; height:19px; ">
  684. <caption>엑셀</caption>
  685. <script type="javascript" ev:event="DOMActivate">
  686. <![CDATA[
  687. var fileName = window.fileDialog("save", ",", false, "Excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  688. if (fileName != "")
  689. {
  690. grd_gooddelive.saveExcel(fileName, "Excel",false);
  691. }
  692. ]]>
  693. </script>
  694. </button>
  695. <button id="button2" class="btn2_letter6" style="left:910px; top:115px; width:86px; height:19px; ">
  696. <caption>마약이송청구</caption>
  697. <script type="javascript" ev:event="DOMActivate">
  698. <![CDATA[
  699. if(fCheckRetrieveData(true) == false)return;
  700. var sMngtCls = model.getValue("/root/send/gooddelive/mngtcls");
  701. var node = instance1.selectNodes("/root/main/list/gooddelive/gooddelivelist");
  702. if(sMngtCls =="09"){
  703. if(node.length > 0 ){
  704. modal("SPRSO10000");
  705. }else{
  706. messageBox("마약재고 가져오기부터","I008");
  707. return;
  708. }
  709. }else{
  710. messageBox("마약만 이송청구가능합니다","E");
  711. return;
  712. }
  713. ]]>
  714. </script>
  715. </button>
  716. <select1 id="cmb_mngtcls" ref="/root/send/gooddelive/mngtcls" class="combo_s_essential" appearance="minimal" style="left:785px; top:55px; width:146px; height:19px; text-align:center; ">
  717. <choices>
  718. <itemset>
  719. <label/>
  720. <value/>
  721. </itemset>
  722. </choices>
  723. </select1>
  724. <caption id="caption21" class="search_name" style="left:695px; top:56px; width:88px; height:17px; ">관리분류 :</caption>
  725. <select1 id="rdo_deliveflag" ref="/root/init/deliveflag" appearance="full" cols="2" overflow="visible" style="left:755px; top:115px; width:140px; height:20px; border-style:none; ">
  726. <choices>
  727. <item>
  728. <label>포장이송</label>
  729. <value>A</value>
  730. </item>
  731. <item>
  732. <label>낱개이송</label>
  733. <value>B</value>
  734. </item>
  735. </choices>
  736. <script type="javascript" ev:event="xforms-value-changed">
  737. <![CDATA[
  738. fChgDeliveFlag();
  739. ]]>
  740. </script>
  741. </select1>
  742. </group>
  743. <group id="grp_tle" style="left:0px; top:0px; width:1195px; height:13px; ">
  744. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:243px; height:14px; ">약국 이송등록</caption>
  745. </group>
  746. <group id="group1" style="left:0px; top:12; width:1195px; height:27px; ">
  747. <button id="btn_save" class="btn4_letter2" style="left:1070px; top:3px; width:56px; height:22px; ">
  748. <caption>저장</caption>
  749. <script type="javascript" ev:event="DOMActivate">
  750. <![CDATA[
  751. if(fCheckSaveData() == false)return;
  752. for(var currow = grd_gooddelive.fixedRows ; currow < grd_gooddelive.rows ; currow++)
  753. {
  754. var delivepackdeptqty = grd_gooddelive.valueMatrix(currow,grd_gooddelive.colRef("delivepackdeptqty"));
  755. var delivedeptqty = grd_gooddelive.valueMatrix(currow,grd_gooddelive.colRef("delivedeptqty"));
  756. if((delivepackdeptqty == 0)&&(delivedeptqty==0)){
  757. grd_gooddelive.rowStatus(currow)=0;
  758. }
  759. }
  760. misfSave("TXRSO00101");
  761. if (model.getValue(gvErrorMsgPath + "/type") != "error")btn_search.dispatch("DOMActivate");
  762. ]]>
  763. </script>
  764. </button>
  765. <button id="btn_init" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  766. <caption>초기화</caption>
  767. <script type="javascript" ev:event="DOMActivate">
  768. <![CDATA[
  769. fInitialize();
  770. ]]>
  771. </script>
  772. </button>
  773. <line id="line17" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25px; "/>
  774. </group>
  775. </xhtml:body>
  776. </xhtml:html>