SMLAW00100_물품입고.xrw 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLAW00100_물품입고.xfm
  4. * 설 명 : 물품입고
  5. * 설 계 자 : 설계자가 별도로 존재시 작성
  6. * 작 성 자 : 김성희
  7. * 작 성 일 : 2007.10.02
  8. * 수정이력 : 최종작성일 기준으로 변경사항 이력관리
  9. * 기 타 : 주석문에 반영되어야 할 사항 표기
  10. -->
  11. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title>물품입고관리</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <wingood>
  20. <wingoodlist>
  21. <choi/>
  22. <dutdeptnm/>
  23. <goodcd/>
  24. <goodnm/>
  25. <lotno/>
  26. <spec/>
  27. <unit/>
  28. <appqty/>
  29. <winqty/>
  30. <unitcost/>
  31. <instcd/>
  32. <posdeptcd/>
  33. <dutdeptcd/>
  34. <windd/>
  35. <windg/>
  36. <bfwinqty/>
  37. <valiterm/>
  38. <prodcustnm/>
  39. <suppcustnm/>
  40. <allsizespecid/>
  41. <adjtflagcd/>
  42. <adjtflagnm/>
  43. <setunit/>
  44. <model/>
  45. <stocqty/>
  46. <reqdd/>
  47. <reqno/>
  48. <seaflagcd/>
  49. <keeptmpr/>
  50. </wingoodlist>
  51. </wingood>
  52. <barcd>
  53. <barcdlist>
  54. <barcd/>
  55. <goodcd/>
  56. <goodnm/>
  57. <unit/>
  58. <validd/>
  59. <lotno/>
  60. </barcdlist>
  61. </barcd>
  62. <filewin>
  63. <filewinlist>
  64. <dutdeptcd/>
  65. <goodcd/>
  66. <goodnm/>
  67. <lotno/>
  68. <spec/>
  69. <winqty/>
  70. <unitcost/>
  71. <valiterm/>
  72. </filewinlist>
  73. </filewin>
  74. </main>
  75. <send/>
  76. <init>
  77. <seaval/>
  78. <seamthdcd>
  79. </seamthdcd>
  80. <useflagcd/>
  81. <dutdept>
  82. <appdeptcd/>
  83. </dutdept>
  84. <dutdeptcd/>
  85. <seamthdcd/>
  86. <winfromdd/>
  87. <wintodd/>
  88. <popupmenu>
  89. <item>
  90. <name>행추가</name>
  91. <func>fExeInsertRow</func>
  92. </item>
  93. <item>
  94. <name>행삭제</name>
  95. <func>fExeDeleteRow</func>
  96. </item>
  97. </popupmenu>
  98. <winbase/>
  99. <appdeptcd/>
  100. <deptinfo>
  101. <cd/>
  102. </deptinfo>
  103. <seaflagcd/>
  104. <goodshop/>
  105. <custinfo>
  106. <custlist>
  107. <instcd/>
  108. <entrregno/>
  109. <custnm/>
  110. </custlist>
  111. </custinfo>
  112. <adjtflagcd/>
  113. <dginfo>
  114. <windg/>
  115. </dginfo>
  116. </init>
  117. <hidden>
  118. <barcd>
  119. <barcdprnt/>
  120. <barcdprntcnt/>
  121. <barcdprntdirec/>
  122. </barcd>
  123. </hidden>
  124. </root>
  125. </instance>
  126. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  127. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  128. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  129. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  130. <script type="javascript" src="../../../lis/commonweb/js/LZZ001.js"/>
  131. <script type="javascript" src="../../../lis/commonweb/js/LPZ001.js"/>
  132. <script type="javascript" src="../../../lis/commonweb/js/LAZ001.js"/>
  133. <script type="javascript" src="../../../lis/commonweb/js/HanFont24.js"/>
  134. <submission id="TRLLC90101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/barcdprntsetup"/>
  135. <submission id="TRLAF00402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/deptinfo"/>
  136. <submission id="TRLAW00802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/custinfo/custlist"/>
  137. <submission id="TRLAA00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/dutdept/appdeptcd"/>
  138. <submission id="TRLAW00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/wingood/wingoodlist"/>
  139. <submission id="TRLAW00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/wingood/wingoodlist"/>
  140. <submission id="TRLAW00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/dginfo"/>
  141. <submission id="TXLAW00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/wingoodlist" replace="instance" resultref="/root/main/barcd/barcdlist"/>
  142. <submission id="TXLAW00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/wincancel" replace="instance"/>
  143. <submission id="TXLAW00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/barcdlist" replace="instance" resultref="/root/main/barcd/barcdlist"/>
  144. <bind id="bind1" ref="/root/main/wingood/wingoodlist/choi" readonly="../choi/@readonly = 'true'"/>
  145. <script type="javascript" ev:event="xforms-model-construct-done">
  146. <![CDATA[
  147. fExeInitialize();
  148. ]]>
  149. </script>
  150. </model>
  151. <script type="javascript">
  152. <![CDATA[
  153. /* @group : 초기화
  154. * @ver : 2007.10.02 (CMCDEV-0001)
  155. * @by : 김성희
  156. * @-----------------------------------
  157. * @type : function
  158. * @access : public
  159. * @desc : 초기화 Function
  160. */
  161. function fExeInitialize() {
  162. //현재날짜
  163. var toDay = getCurrentDate();
  164. model.makeValue("/root/send/scrnid", getScreenID());
  165. submit("TRLLC90101");
  166. //---------------------------------
  167. lzzfMakeBrcdPrntObjHanDo("CommAX");
  168. //--------------------------------
  169. model.removeNodeset("/root/send");
  170. model.removeNodeset("/root/main/goodcd/goodcdlist"); // 물품코드목록 초기화
  171. model.removeNodeset("/root/main/winappgood/winappgoodlist"); // 입고신청 물품목록 초기화
  172. model.removeNodeset("/root/main/wingood/wingoodlist"); // 입고물품 목록 초기화
  173. //--------------------------------------
  174. // 해더 부분의 전체선택 체크박스가 보임.
  175. grd_winlist.fixedcellcheckbox(0, 1) = true;
  176. //grd_winlist.colWidth(9) = 0; // 청구수량
  177. grd_winlist.colHidden(grd_winlist.colRef("appqty")) = true;
  178. grd_winlist.colHidden(grd_winlist.colRef("windd")) = true;
  179. //-------------------------------------------------------
  180. model.makeValue("/root/hidden/barcd/barcdprnt", "0"); // 바코드 자동출력(0:자동, 1:수동)
  181. model.makeValue("/root/hidden/barcd/barcdprntdirec", "0"); // 바코드 출력방향(0:로컬, 1:원격)
  182. model.makeValue("/root/hidden/barcd/barcdprntcnt", "1"); // 바코드 출력매수
  183. //--------------------------------------------------------------------
  184. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
  185. model.makeValue("/root/send/userid", getUserInfo("userid"));
  186. submit("TRLAF00402", false); // 사용자가 속한 과코드 조회
  187. model.makeValue("/root/send/posdeptcd", model.getValue("/root/init/deptinfo/cd"));
  188. submit("TRLAA00103"); // 부서코드 목록
  189. submit("TRLAW00802"); // 거래처 목록
  190. if(model.getValue("/root/init/deptinfo/cd") == "L"){
  191. grd_winlist.colAttribute(grd_winlist.colRef("keeptmpr"), "visibility") = "visible";
  192. grd_winlist.colHidden(grd_winlist.colRef("keeptmpr")) = false;
  193. }
  194. /*
  195. //---------------------
  196. // 검색부서에 전체 추가
  197. var iLastNo = Number(getNodesetCount("/root/init/dutdept/appdeptcd"))+1;
  198. model.makeValue("/root/init/dutdept/appdeptcd["+iLastNo+"]/cd", "-");
  199. model.makeValue("/root/init/dutdept/appdeptcd["+iLastNo+"]/nm", "전체");
  200. */
  201. //------------------------------------------
  202. //model.setValue("/root/init/appdeptcd", "-"); // 검색부서
  203. cmb_seadept.select(0);
  204. model.setValue("/root/init/goodshop", "00");
  205. //------------------------------------------
  206. model.makeValue("/root/init/seaval", ""); // 검색값 초기화
  207. model.makeValue("/root/init/seamthdcd", "0"); // 검색방법 초기화(0:바코드, 1:물품코드, 2:물품명)
  208. model.makeValue("/root/init/winfromdd", toDay); // 입고일자(시작)
  209. model.makeValue("/root/init/wintodd", toDay); // 입고일자(종료)
  210. model.makeValue("/root/init/winbase", "0"); // 입고기준(0:청구량, 1:분배량)
  211. model.makeValue("/root/init/seaflagcd", "2"); // 조회기준(0:청구, 1:입고, 2:재고)
  212. model.makeValue("/root/init/adjtflagcd", "0"); // 재고보정(0:입고, 1:보정)
  213. ipt_fromdd.disabled = true;
  214. ipt_todd.disabled = true;
  215. fExeSeaFlagChange(); //조회기준에 따른 그리드, 버튼 설정
  216. //--------------
  217. model.refresh();
  218. }
  219. /* @group : 입고신청 목록
  220. * @ver : 2007.10.02 (CMCDEV-0001)
  221. * @by : 김성희
  222. * @-----------------------------------
  223. * @type : function
  224. * @access : public
  225. * @desc : 입고신청 물품 목록 조회 Function
  226. */
  227. function fGetWInAppGoodList() {
  228. var iWinDG = 0;
  229. var sWinDG = "";
  230. var sNode = "/root/main/wingood/wingoodlist";
  231. //--------------------------------
  232. model.removeNodeset("/root/send");
  233. model.removeNodeset("/root/main/wingood/wingoodlist");
  234. //--------------------------------------------------------------------
  235. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); // 기관코드
  236. model.makeValue("/root/send/posdeptcd", model.getValue("/root/init/deptinfo/cd")); // 로그인 사용자의 부서코드
  237. model.makeValue("/root/send/dutdeptcd", model.getValue("/root/init/appdeptcd")); // 검색부서
  238. model.makeValue("/root/send/seaval", model.getValue("/root/init/seaval")); // 검색값
  239. model.makeValue("/root/send/seamthdcd", cmb_seamthdcd.value); // 검색방법
  240. model.makeValue("/root/send/winbase", model.getValue("/root/init/winbase")); // 입고기준
  241. model.makeValue("/root/send/winfromdd", model.getValue("/root/init/winfromdd")); // 청구시작일자
  242. model.makeValue("/root/send/wintodd", model.getValue("/root/init/wintodd")); // 청구종료일자
  243. model.makeValue("/root/send/goodshop", model.getValue("/root/init/goodshop")); // 거래처
  244. model.makeValue("/root/send/goodflag", ""); // 물품구분
  245. model.makeValue("/root/send/seaflagcd", model.getValue("/root/init/seaflagcd")); // 조회기준, 현재 청구중 구매만 조회하고 있어 수탁도 조회할수 있게 해달라는 요청사항 20090930 승현 추가
  246. //-------------------------
  247. if (submit("TRLAW00102")) {
  248. //--------------------------------------------------
  249. if (model.getValue("/root/init/seaflagcd") == "0" || model.getValue("/root/init/seaflagcd") == "3") {
  250. grd_winlist.colDisabled(grd_winlist.colRef("choi")) = false;
  251. //청구한 수량보다 입고한 수량이 크거나 같다면 완료된 항목으로 보고 색깔 변경.. 변경요청 7172
  252. for(i = 1; i < grd_winlist.rows; i++){
  253. if(model.getValue("/root/main/wingood/wingoodlist[" + i + "]/choi/@readonly") == "true"){
  254. grd_winlist.rowStyle(i, "data", "background-color") = "#e5f3c2";
  255. }
  256. }
  257. grd_winlist.refresh();
  258. }
  259. }
  260. }
  261. /* @group : 입고물품 목록
  262. * @ver : 2007.10.02 (CMCDEV-0001)
  263. * @by : 김성희
  264. * @-----------------------------------
  265. * @type : function
  266. * @access : public
  267. * @desc : 입고된 물품 목록 조회 Function
  268. */
  269. function fGetWinGoodList() {
  270. //----------------------------------------------------------------------------------------------
  271. if(model.getValue("/root/init/winfromdd") == "" || model.getValue("/root/init/wintodd") == "") {
  272. messageBox("입고일자가 입력되지 않았습니다.","I007");
  273. return false;
  274. }
  275. //--------------------------------
  276. model.removeNodeset("/root/send");
  277. model.removeNodeset("/root/main/wingood/wingoodlist");
  278. //--------------------------------------------------------------------
  279. model.makeValue("/root/send/instcd", getUserInfo("dutplceinstcd")); // 기관코드
  280. model.makeValue("/root/send/posdeptcd", model.getValue("/root/init/deptinfo/cd")); // 과코드
  281. model.makeValue("/root/send/dutdeptcd", model.getValue("/root/init/appdeptcd")); // 부서코드
  282. model.makeValue("/root/send/subdutdeptcd", model.getValue("/root/init/subappdeptcd")); // 재고부서코드
  283. model.makeValue("/root/send/seaval", model.getValue("/root/init/seaval")); // 검색값
  284. model.makeValue("/root/send/seamthdcd", model.getValue("/root/init/seamthdcd")); // 검색방법
  285. model.makeValue("/root/send/winfromdd", model.getValue("/root/init/winfromdd")); // 입고일자(From)
  286. model.makeValue("/root/send/wintodd", model.getValue("/root/init/wintodd")); // 입고일자(T0)
  287. model.makeValue("/root/send/goodshop", model.getValue("/root/init/goodshop")); // 거래처
  288. model.makeValue("/root/send/seaflagcd", model.getValue("/root/init/seaflagcd")); // 조회기준(0:청구, 1:입고, 2:재고)
  289. model.makeValue("/root/send/goodflag", ""); // 물품구분
  290. //-------------------
  291. submit("TRLAW00103");
  292. //-----------------
  293. for (var iNo=1; iNo <= getNodesetCount("/root/main/wingood/wingoodlist"); iNo++) {
  294. if (model.getValue("/root/main/wingood/wingoodlist["+iNo+"]/adjtflagcd") == "1") {
  295. grd_winlist.rowStyle(iNo, "data", "background-color") = "#99ffcc";
  296. }
  297. }
  298. }
  299. /* @group :
  300. * @ver : 2007.10.02 (CMCDEV-0001)
  301. * @by : 김성희
  302. * @-----------------------------------
  303. * @type : function
  304. * @access : public
  305. * @desc : 그리드 Mouse Down처리 Function
  306. */
  307. function fExeMouseDown() {
  308. //-----------------------------------------
  309. // 마우스 오른쪽 버튼클릭 검사(1:왼쪽, 3:우측)
  310. // grd_winlist.mouseRow : 클릭 로우
  311. // grd_winlist.fixedrows : 고정 로우 수
  312. if(event.button == 3){
  313. if(grd_winlist.isCell(event.target) && grd_winlist.mouseRow >= grd_winlist.fixedrows){
  314. window.setPopupMenu(true, "/root/init/popupmenu/item", "name", "func", false);
  315. }else{
  316. window.setPopupMenu(false);
  317. }
  318. }
  319. }
  320. /* @group : 그리드 행 추가
  321. * @ver : 2007.10.02 (CMCDEV-0001)
  322. * @by : 김성희
  323. * @-----------------------------------
  324. * @type : function
  325. * @access : public
  326. * @desc : 그리드 행 추가 Function
  327. */
  328. function fExeInsertRow() {
  329. if(getNodesetCount("/root/main/wingood/wingoodlist") > 0) {
  330. grd_winlist.insertRow(grd_winlist.row, true);
  331. model.copyNode("/root/main/wingood/wingoodlist["+ grd_winlist.row+"]" , "/root/main/wingood/wingoodlist["+ (grd_winlist.row-1)+"]");
  332. model.setValue("/root/main/wingood/wingoodlist["+ grd_winlist.row+"]/winqty", "0");
  333. model.makeValue("/root/main/wingood/wingoodlist["+ grd_winlist.row+"]/windg", "0");
  334. grd_winlist.refresh();
  335. }
  336. }
  337. /* @group : 그리드 행 삭제
  338. * @ver : 2007.10.02 (CMCDEV-0001)
  339. * @by : 김성희
  340. * @-----------------------------------
  341. * @type : function
  342. * @access : public
  343. * @desc : 그리드 행 삭제 Function
  344. */
  345. function fExeDeleteRow() {
  346. grd_winlist.deleteRow(grd_winlist.row, true);
  347. }
  348. /* @group : 바코드 재출력
  349. * @ver : 2007.10.02 (CMCDEV-0001)
  350. * @by : 김성희
  351. * @-----------------------------------
  352. * @type : function
  353. * @access : public
  354. * @desc : 바코드 재출력 Function
  355. */
  356. function fExeBarCdPrntData() {
  357. var sNode = "/root/main/wingood/wingoodlist";
  358. var barcdCnt = Number(getNodesetCount(sNode));
  359. var rowStatus = "";
  360. var iCnt = 0;
  361. var iFindNo = 0;
  362. //--------------------------------------------------
  363. if (model.getValue("/root/init/seaflagcd") == "0" || model.getValue("/root/init/seaflagcd") == "3") {
  364. messageBox("입고된 내역이 아닙니다. 재출력 ", "E001");
  365. return false;
  366. }
  367. //-----------------
  368. if (barcdCnt > 0) {
  369. model.makeNode("/root/send/barcdlist");
  370. model.setValue("/root/send/barcdlist", grd_winlist.getUpdateData());
  371. //--------------------------------------------------------
  372. iFindNo = grd_winlist.findRow("true", 1, 1, false, false);
  373. if ( Number(iFindNo) <= 0) {
  374. messageBox("바코드 재출력 내역을 선택해주세요. 재출력 ","E001");
  375. return false;
  376. }
  377. //-----------------------------------------------
  378. if (messageBox("바코드 재출력을", "Q004") == 6) {
  379. // //정상적으로 처리되면
  380. // if(submit("TXLAW00103")){
  381. // //바코드 출력
  382. // if (model.getValue("/root/hidden/barcd/barcdprnt") == "0") {
  383. // lis/gooddeliveweb/js/LAZ001.js
  384. //fExeBarCdPrnt("/root/main/barcd/barcdlist");
  385. fExeBarCdPrnt("/root/main/wingood/wingoodlist");
  386. // }
  387. // }
  388. }
  389. }
  390. }
  391. /* @group : 물품입고
  392. * @ver : 2007.10.02 (CMCDEV-0001)
  393. * @by : 김성희
  394. * @-----------------------------------
  395. * @type : function
  396. * @access : public
  397. * @desc : 그리드 포커스 아웃 Function
  398. */
  399. function fExeFocusOut() {
  400. window.setPopupMenu(false);
  401. }
  402. /* @group : 파일입고
  403. * @ver : 2007.10.04 (CMCDEV-0001)
  404. * @by : 김성희
  405. * @-----------------------------------
  406. * @type : function
  407. * @access : public
  408. * @desc : 피일입고 Function
  409. */
  410. function fExeFileWin() {
  411. var sNode = "/root/main/filewin/filewinlist";
  412. //--------------------------------------------------
  413. if (model.getValue("/root/init/seaflagcd") != "0" && model.getValue("/root/init/seaflagcd") != "3") {
  414. messageBox("조회기준을 청구량으로 변경하여야 합니다! ", "I007");
  415. return false;
  416. }
  417. // var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls|CSV Files(*.csv)|*.csv");
  418. var fileName = window.fileDialog("open", ",", false, "", "xls", "Excel Files(*.xls)|*.xls|CSV Files(*.csv)|*.csv");
  419. //---------------------------------------
  420. if (fileName == "" || fileName == null) {
  421. messageBox("입고할 파일을 선택하세요", "E", "");
  422. return false;
  423. }
  424. //-------------------------------------------------
  425. var sStr = fileName.substring(fileName.length - 3);
  426. //---------------------
  427. // 파일입고 Node 초기화
  428. model.removeNodeset(sNode);
  429. //--------------------------------
  430. if (sStr.toLowerCase() == "csv") {
  431. grd_filewin.loadText(fileName);
  432. } else if(sStr.toLowerCase() == "xls") {
  433. grd_filewin.loadExcel(fileName);
  434. } else {
  435. messageBox("Excel파일을 선택하세요", "E", "");
  436. return;
  437. }
  438. //---------------------------------------
  439. // 파일 입고 시 추가적인 컬럼을 생성한다.
  440. for (var iNo=1; iNo <= getNodesetCount(sNode); iNo++) {
  441. //------------------------------------------------------
  442. if (model.getValue(sNode+"["+iNo+"]/dutdeptcd") == "") {
  443. messageBox("부서코드가 입력되지 않았습니다! Excel파일을 ", "I007");
  444. return false;
  445. }
  446. //---------------------------------------------------
  447. model.makeValue(sNode+"["+iNo+"]/choi", "true");
  448. model.makeValue(sNode+"["+iNo+"]/instcd", getUserInfo("dutplceinstcd"));
  449. model.makeValue(sNode+"["+iNo+"]/posdeptcd", model.getValue("/root/init/deptinfo/cd"));
  450. model.makeValue(sNode+"["+iNo+"]/dutdeptnm", "파일입고");
  451. model.makeValue(sNode+"["+iNo+"]/appqty", "0");
  452. model.makeValue(sNode+"["+iNo+"]/unit", "-");
  453. model.makeValue(sNode+"["+iNo+"]/windd", "-");
  454. model.makeValue(sNode+"["+iNo+"]/windg", "0");
  455. model.makeValue(sNode+"["+iNo+"]/bfwinqty", "0");
  456. }
  457. //----------------------------------------------
  458. // 파일입고 물품목록 Node를 등록대상 Node로 복사
  459. model.removeNodeset("/root/main/wingood/wingoodlist");
  460. model.makeNode("/root/main/wingood/wingoodlist");
  461. copyNodesetType("/root/main/wingood/wingoodlist", sNode+"[*]");
  462. //--------------------
  463. fExeSeaClick(); //물품목록 리스트 재조회
  464. grd_winlist.refresh();
  465. }
  466. /* @group : 엑셀저장
  467. * @ver : 2007.10.02 (CMCDEV-0001)
  468. * @by : 김성희
  469. * @-----------------------------------
  470. * @type : function
  471. * @access : public
  472. * @desc : 엑셀저장 Function
  473. */
  474. function fExeExcel() {
  475. var fileName = window.fileDialog("save", ",", false, "물품입고목록", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  476. if (fileName != ""){
  477. grd_winlist.saveExcel(fileName);
  478. }
  479. }
  480. /* @group : 물품입고
  481. * @ver : 2007.10.04 (CMCDEV-0001)
  482. * @by : 김성희
  483. * @-----------------------------------
  484. * @type : function
  485. * @access : public
  486. * @desc : 물품입고 처리 Function
  487. */
  488. function fExeGoodWin() {
  489. var iCnt = 0;
  490. var iFindNo = 0;
  491. var sDescNode = "/root/main/wingood/wingoodlist";
  492. //------------------------------------------------------
  493. iFindNo = grd_winlist.findRow("true", 1, 1, true, true);
  494. if (Number(iFindNo) <= 0) {
  495. messageBox("입고할 물품을 선택하여 주십시오!", "I007");
  496. return false;
  497. }
  498. //------------------------
  499. grd_winlist.clearStatus();
  500. for (var iNo=1; iNo <= getNodesetCount(sDescNode); iNo++) {
  501. //---------------------------------------------------------
  502. if (model.getValue(sDescNode+"["+iNo+"]/choi") == "true") {
  503. //----------------------
  504. // Lot번호 입력여부 검사
  505. if (model.getValue(sDescNode+"["+iNo+"]/lotno") == "") {
  506. messageBox(iNo+" 행에 Lot번호가 입력되지 않았습니다.","I007");
  507. return false;
  508. }
  509. //----------------------
  510. // 입고수량 입력여부 검사
  511. if (model.getValue(sDescNode+"["+iNo+"]/winqty") == "" || Number(model.getValue(sDescNode+"["+iNo+"]/winqty")) == 0) {
  512. messageBox(iNo+" 행에 입고수량이 입력되지 않았습니다.","I007");
  513. return false;
  514. }
  515. //----------------------
  516. // 유효기간 입력여부 검사
  517. if (model.getValue(sDescNode+"["+iNo+"]/valiterm") == "") {
  518. messageBox(iNo+" 행에 Lot번호가 입력되지 않았습니다.","I007");
  519. return false;
  520. }
  521. //------------------
  522. // 재고보정구분 설정
  523. model.setValue(sDescNode+"["+iNo+"]/adjtflagcd", model.getValue("/root/init/adjtflagcd"));
  524. //조회 기준에 따라 물품 입고 테이블에 winflag에 넣을거임.. 20091007 컬럼 추가에 따른 사항
  525. model.setValue(sDescNode+"["+iNo+"]/seaflagcd", model.getValue("/root/init/seaflagcd"));
  526. //------------------------------------------------------
  527. if (model.getValue(sDescNode+"["+iNo+"]/windg") == "" || model.getValue(sDescNode+"["+iNo+"]/windg") == "0") {
  528. grd_winlist.addStatus(iNo, "insert");
  529. } else {
  530. grd_winlist.addStatus(iNo, "update");
  531. }
  532. }
  533. }
  534. grd_winlist.refresh();
  535. //--------------------------------
  536. model.removeNodeset("/root/send");
  537. model.makeValue("/root/send/wingoodlist", grd_winlist.getUpdateData());
  538. //-----------------------------------------------
  539. // 입고가 정상적으로 처리되면 자동으로 바코드출력
  540. if (submit("TXLAW00101")) {
  541. fGetGoodCodeSubList();
  542. // //------------
  543. // // 바코드 출력
  544. // if (model.getValue("/root/hidden/barcd/barcdprnt") == "0") {
  545. // lis/gooddeliveweb/js/LAZ001.js
  546. fExeBarCdPrnt("/root/main/wingood/wingoodlist");
  547. // }
  548. //---------------------------------------------
  549. //model.removeNodeset(sDescNode+"[choi='true']"); // 입고물품 목록 초기화
  550. model.refresh();
  551. }
  552. fExeSeaClick(); //물품목록 리스트 재조회
  553. }
  554. /* @group : 입고취소
  555. * @ver : 2007.10.02 (CMCDEV-0001)
  556. * @by : 김성희
  557. * @-----------------------------------
  558. * @type : function
  559. * @access : public
  560. * @desc : 입고취소 Function
  561. */
  562. function fCancelWin() {
  563. var iCnt = 0;
  564. var iFindNo = 0;
  565. var sDescNode = "/root/main/wingood/wingoodlist";
  566. var vWinQty, vTmpwinQty;
  567. //------------------------------------------------------
  568. iFindNo = grd_winlist.findRow("true", 1, 1, true, true);
  569. if (Number(iFindNo) <= 0) {
  570. messageBox("입고취소할 물품을 선택하여 주십시오!", "I007");
  571. return false;
  572. }
  573. //------------------------
  574. grd_winlist.clearStatus();
  575. for (var iNo=1; iNo <= getNodesetCount(sDescNode); iNo++) {
  576. //---------------------------------------------------------
  577. if (model.getValue(sDescNode+"["+iNo+"]/choi") == "true") {
  578. if (model.getValue(sDescNode+"["+iNo+"]/windg") == "" || Number(model.getValue(sDescNode+"["+iNo+"]/windg")) == 0) {
  579. messageBox("입고된 내역만 취소 할 수 있습니다.","I007");
  580. return false;
  581. }
  582. vWinQty = model.getValue(sDescNode+"["+iNo+"]/winqty"); //입고수량
  583. vTmpwinQty = model.getValue(sDescNode+"["+iNo+"]/tmpwinqty"); //입고수량
  584. //조회시 수량과 취소시 수량을 비교하기 위함
  585. if(vWinQty != vTmpwinQty){
  586. messageBox("입고수량을 수정 후 취소 할 수 없습니다.\n" + model.getValue(sDescNode+"["+iNo+"]/goodcd")+ "항목을","I007");
  587. return false;
  588. }
  589. //-----------------------------------
  590. grd_winlist.addStatus(iNo, "delete");
  591. }
  592. }
  593. //--------------------------------
  594. model.removeNodeset("/root/send");
  595. model.makeValue("/root/send/wincancel", grd_winlist.getUpdateData());
  596. //------------------------------------
  597. if (messageBox("취소", "Q004") == 6) {
  598. if (submit("TXLAW00102")) {
  599. //model.removeNodeset(sDescNode+"[choi='true']"); // 입고물품 목록 초기화
  600. fGetGoodCodeSubList();
  601. grd_winlist.clearStatus();
  602. model.refresh();
  603. }
  604. }
  605. fExeSeaClick(); //물품목록 리스트 재조회
  606. }
  607. /* @group : 물품입고
  608. * @ver : 2007.10.02 (CMCDEV-0001)
  609. * @by : 김성희
  610. * @-----------------------------------
  611. * @type : function
  612. * @access : public
  613. * @desc : 물품코드 목록 선택 체크시 입고물품 목록으로 값 추가 Function
  614. */
  615. function fExeChoiTrue(str) {
  616. var sSrcNode = "/root/main/winappgood/winappgoodlist";
  617. var sDescNode = "/root/main/wingood/wingoodlist";
  618. var sGoodNode = "/root/main/goodcd/goodcdlist";
  619. //-----------------
  620. if (str == "good") { //물품목록
  621. if (model.getValue(sGoodNode+"["+ grd_goodlist.row +"]/choi") == "true") {
  622. var goodcd = model.getValue(sGoodNode+"["+ grd_goodlist.row+"]/goodcd");
  623. //-------------------
  624. grd_winlist.addRow();
  625. //-----------------------------------------------------------------------
  626. model.makeValue(sDescNode+"["+grd_winlist.row+"]/choi", "true");
  627. model.makeValue(sDescNode+"["+grd_winlist.row+"]/goodcd", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/goodcd"));
  628. model.makeValue(sDescNode+"["+grd_winlist.row+"]/allsizespecid", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/allsizespecid"));
  629. model.makeValue(sDescNode+"["+grd_winlist.row+"]/goodnm", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/goodnm"));
  630. model.makeValue(sDescNode+"["+grd_winlist.row+"]/lotno", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/lotno"));
  631. model.makeValue(sDescNode+"["+grd_winlist.row+"]/spec", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/goodspec"));
  632. model.makeValue(sDescNode+"["+grd_winlist.row+"]/unit", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/deliveunit"));
  633. model.makeValue(sDescNode+"["+grd_winlist.row+"]/unitcost", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/goodunitcost"));
  634. model.makeValue(sDescNode+"["+grd_winlist.row+"]/stocqty", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/stocqty"));
  635. model.makeValue(sDescNode+"["+grd_winlist.row+"]/bfwinqty", "0");
  636. model.makeValue(sDescNode+"["+grd_winlist.row+"]/instcd", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/instcd"));
  637. model.makeValue(sDescNode+"["+grd_winlist.row+"]/posdeptcd", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/posdeptcd"));
  638. model.makeValue(sDescNode+"["+grd_winlist.row+"]/dutdeptcd", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/dutdeptcd"));
  639. model.makeValue(sDescNode+"["+grd_winlist.row+"]/dutdeptnm", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/dutdeptnm"));
  640. model.makeValue(sDescNode+"["+grd_winlist.row+"]/valiterm", "99991231");
  641. model.makeValue(sDescNode+"["+grd_winlist.row+"]/windd", "-");
  642. model.makeValue(sDescNode+"["+grd_winlist.row+"]/windg", "0");
  643. model.makeValue(sDescNode+"["+grd_winlist.row+"]/prodcustnm", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/prodcustnm"));
  644. model.makeValue(sDescNode+"["+grd_winlist.row+"]/suppcustnm", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/suppcustnm"));
  645. model.makeValue(sDescNode+"["+grd_winlist.row+"]/setunit", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/setunit"));
  646. model.makeValue(sDescNode+"["+grd_winlist.row+"]/model", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/model"));
  647. model.makeValue(sDescNode+"["+grd_winlist.row+"]/keeptmpr", model.getValue(sGoodNode+"["+grd_goodlist.row+"]/keeptmpr"));
  648. grd_winlist.refresh();
  649. }
  650. }
  651. //--------------------
  652. grd_winlist.refresh();
  653. }
  654. function fGridReSet() {
  655. fGetGoodCodeSubList();
  656. model.removeNodeset("/root/main/wingood/wingoodlist"); // 입고물품 목록 초기화
  657. model.refresh();
  658. }
  659. //----------------------
  660. // 조회버튼 클릭 시 처리
  661. function fExeSeaClick() {
  662. //-------------------------
  663. grd_winlist.rebuildStyle();
  664. grd_winlist.rebuild();
  665. //--------------------------------------------------
  666. if (model.getValue("/root/init/seaflagcd") == "0" || model.getValue("/root/init/seaflagcd") == "3") {
  667. fGetWInAppGoodList(); // 청구량 기준으로 조회
  668. } else {
  669. fGetWinGoodList(); // 입고량 기준으로 조회
  670. }
  671. //-------------------------------------------------------------
  672. grd_winlist.colStyle(10, "data", "background-color") = "yellow";
  673. grd_winlist.fixedcellischeck(0,1) = false;
  674. }
  675. //----------------------
  676. // 조회기준 변경 시 처리
  677. function fExeSeaFlagChange() {
  678. if (model.getValue("/root/init/seaflagcd") == "0" || model.getValue("/root/init/seaflagcd") == "3") {
  679. cap_apptitle.value = "청구일자 : ";
  680. //grd_winlist.colWidth(9) = 60;
  681. //grd_winlist.colWidth(15) = 0;
  682. grd_winlist.colHidden(grd_winlist.colRef("appqty")) = false;
  683. grd_winlist.colHidden(grd_winlist.colRef("windd")) = true;
  684. grd_winlist.colHidden(grd_winlist.colRef("reqdd")) = false;
  685. ipt_fromdd.disabled = false;
  686. ipt_todd.disabled = false;
  687. button1.disabled = false;
  688. btn_save.disabled = false;
  689. btn_can.disabled = true;
  690. btn_save.value = "저장";
  691. } else if (model.getValue("/root/init/seaflagcd") == "1") {
  692. cap_apptitle.value = "입고일자 : ";
  693. //grd_winlist.colWidth(9) = 0;
  694. //grd_winlist.colWidth(15) = 80;
  695. grd_winlist.colHidden(grd_winlist.colRef("appqty")) = true;
  696. grd_winlist.colHidden(grd_winlist.colRef("windd")) = false;
  697. grd_winlist.colHidden(grd_winlist.colRef("reqdd")) = true;
  698. ipt_fromdd.disabled = false;
  699. ipt_todd.disabled = false;
  700. button1.disabled = false; //파일입고
  701. btn_save.disabled = false; //저장(수정)
  702. btn_can.disabled = false; //취소
  703. btn_save.value = "수정";
  704. } else {
  705. cap_apptitle.value = "청구일자 : ";
  706. //grd_winlist.colWidth(9) = 0;
  707. //grd_winlist.colWidth(15) = 0;
  708. grd_winlist.colHidden(grd_winlist.colRef("appqty")) = true;
  709. grd_winlist.colHidden(grd_winlist.colRef("windd")) = true;
  710. grd_winlist.colHidden(grd_winlist.colRef("reqdd")) = true;
  711. ipt_fromdd.disabled = true;
  712. ipt_todd.disabled = true;
  713. button1.disabled = false;
  714. btn_save.disabled = false;
  715. btn_can.disabled = true;
  716. btn_save.value = "저장";
  717. model.makeValue("/root/init/winfromdd", getCurrentDate()); // 입고일자(시작)
  718. model.makeValue("/root/init/wintodd", getCurrentDate()); // 입고일자(종료)
  719. }
  720. //----------------------------------------------------
  721. model.removeNodeset("/root/main/wingood/wingoodlist");
  722. //grd_winlist.refresh();
  723. model.refresh();
  724. }
  725. //----------------------------
  726. // 검색값 입력 후 Enter키 입력
  727. function fExeSeaValOnKeyPress() {
  728. if (event.keyCode == "13") {
  729. model.setValue("/root/init/seaval", ipt_seaval.currentText);
  730. ipt_seaval.refresh();
  731. //-------------
  732. fExeSeaClick();
  733. }
  734. }
  735. //----------------------------------
  736. // 입고물품 선택 시 수량 기본값 설정
  737. function fExeGoodChoi(pRow) {
  738. var iSNo = Number(pRow);
  739. var iENo = Number(pRow);
  740. var sNode = "/root/main/wingood/wingoodlist";
  741. //----------------------
  742. // 전체 선택의 경우 처리
  743. if (Number(pRow) <= 0) {
  744. iSNo = 1;
  745. iENo = getNodesetCount(sNode);
  746. }
  747. //-------------------------------------------------------------
  748. // 청구일 경우 물품 선택 시 청구수량을 입고수량으로 기본값 적용
  749. if (model.getValue("/root/init/seaflagcd") == "0" || model.getValue("/root/init/seaflagcd") == "3") {
  750. for (var iNo=iSNo; iNo <= iENo; iNo++) {
  751. model.setValue(sNode+"["+iNo+"]/winqty", model.getValue(sNode+"["+iNo+"]/appqty"));
  752. }
  753. }
  754. }
  755. //-----------
  756. // 프린터설정
  757. function fSetPrint() {
  758. var count = getNodesetCount("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  759. if(count == 0) {
  760. model.makeNode("/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  761. }
  762. //----------------------------------------------------
  763. open("SPLLC90100_바코드프린터설정.xrw", "", "", "", "", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  764. }
  765. //---------------------------------------
  766. // 입고수량 변경시 선택여부 자동체크 기능
  767. function fExeQtyChange(pGridObj) {
  768. //------------------------------
  769. if (Number(pGridObj.col) != 11) {
  770. return false;
  771. }
  772. var sNode = "/root/main/wingood/wingoodlist";
  773. //var iUseQty = Number(model.getValue(sNode+"["+Number(pGridObj.row)+"]/winqty"));
  774. //---------------------------------------------------------------
  775. model.makeValue(sNode+"["+Number(pGridObj.row)+"]/choi", "true");
  776. //pGridObj.refresh();
  777. //--------------------------------------------------------
  778. if ( (Number(pGridObj.rows) - 1) > Number(pGridObj.row)) {
  779. pGridObj.row = Number(pGridObj.row) + 1;
  780. //pGridObj.col = 10;
  781. //pGridObj.selected = true;
  782. }
  783. }
  784. ]]>
  785. </script>
  786. </xhtml:head>
  787. <xhtml:body guideline="1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  788. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  789. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">물품입고관리</caption>
  790. </group>
  791. <group id="grp_biz" scroll="auto" style="left:0px; top:35px; width:1195px; height:744px; ">
  792. <group id="group2" style="left:0px; top:10px; width:1194; height:35; vertical-align:top; ">
  793. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:1194; height:35; "/>
  794. <caption id="caption1" class="search_name" style="left:15px; top:9px; width:86px; height:17px; ">검색값 :</caption>
  795. <caption id="caption7" class="search_name" style="left:290px; top:9px; width:91px; height:17px; ">조회기준 :</caption>
  796. <line id="line1" class="line_4" style="x1:1107px; y1:7px; x2:1107px; y2:29; "/>
  797. <input id="ipt_seaval" ref="/root/init/seaval" class="input_search" navindex="2" style="left:177px; top:8px; width:103px; height:19px; ">
  798. <script type="javascript" ev:event="onkeypress">
  799. <![CDATA[
  800. fExeSeaValOnKeyPress();
  801. ]]>
  802. </script>
  803. </input>
  804. <caption id="caption26" class="search_name" style="left:946px; top:9px; width:61px; height:17px; ">부서 :</caption>
  805. <select1 id="cmb_seadept" ref="/root/init/appdeptcd" class="combo_search" navindex="7" appearance="minimal" style="left:1010px; top:8px; width:80px; height:19px; ">
  806. <choices>
  807. <itemset nodeset="/root/init/dutdept/appdeptcd">
  808. <label ref="nm"/>
  809. <value ref="cd"/>
  810. </itemset>
  811. </choices>
  812. <script type="javascript" ev:event="xforms-select">
  813. <![CDATA[
  814. //fGridReSet();
  815. ]]>
  816. </script>
  817. </select1>
  818. <button id="btn_sea" class="btn1_letter2" navindex="8" style="left:1125; top:7; width:56px; height:22px; ">
  819. <caption>조회</caption>
  820. <script type="javascript" ev:event="DOMActivate">
  821. <![CDATA[
  822. fExeSeaClick();
  823. ]]>
  824. </script>
  825. </button>
  826. <select1 id="cmb_seamthdcd" ref="/root/init/seamthdcd" class="combo_search" navindex="1" appearance="minimal" style="left:92px; top:8px; width:82px; height:19px; ">
  827. <choices>
  828. <item>
  829. <label>물품코드</label>
  830. <value>0</value>
  831. </item>
  832. <item>
  833. <label>물품명</label>
  834. <value>1</value>
  835. </item>
  836. </choices>
  837. </select1>
  838. <caption id="caption4" class="search_no_b" style="left:648px; top:9px; width:12px; height:17px; ">~</caption>
  839. <input id="ipt_todd" ref="/root/init/wintodd" class="input_s_essential" navindex="5" inputtype="date" required="true" style="left:663px; top:8px; width:90px; height:19px; background-image:../../../com/commonweb/images/input_s_essential.gif; "/>
  840. <input id="ipt_fromdd" ref="/root/init/winfromdd" class="input_s_essential" navindex="4" inputtype="date" required="true" style="left:555px; top:8px; width:90px; height:19px; background-image:../../../com/commonweb/images/input_s_essential.gif; "/>
  841. <caption id="cap_apptitle" class="search_name" style="left:464px; top:9px; width:86px; height:17px; ">청구일자 :</caption>
  842. <select1 id="cbo_seabase" ref="/root/init/seaflagcd" navindex="3" appearance="minimal" style="left:381px; top:8px; width:69px; height:19px; ">
  843. <choices>
  844. <item>
  845. <label>청구(구매)</label>
  846. <value>0</value>
  847. </item>
  848. <item>
  849. <label>청구(수탁)</label>
  850. <value>3</value>
  851. </item>
  852. <item>
  853. <label>입고내역</label>
  854. <value>1</value>
  855. </item>
  856. <item>
  857. <label>가납입고</label>
  858. <value>2</value>
  859. </item>
  860. </choices>
  861. <script type="javascript" ev:event="xforms-value-changed">
  862. <![CDATA[
  863. fExeSeaFlagChange();
  864. ]]>
  865. </script>
  866. </select1>
  867. <caption id="caption2" class="search_name" style="left:763px; top:9px; width:73px; height:17px; ">거래처 :</caption>
  868. <select1 id="cbo_custlist" ref="/root/init/goodshop" navindex="6" appearance="minimal" itemcount="20" style="left:840px; top:8px; width:99px; height:19px; font-weight:normal; ">
  869. <choices>
  870. <itemset nodeset="/root/init/custinfo/custlist">
  871. <label ref="custnm"/>
  872. <value ref="entrregno"/>
  873. </itemset>
  874. </choices>
  875. </select1>
  876. </group>
  877. <line id="line2" class="line_1" style="x1:305px; y1:70px; x2:1194px; y2:70px; "/>
  878. <caption id="caption5" class="tit_2" style="left:310px; top:55px; width:144px; height:14px; ">입고신청 물품목록</caption>
  879. <button id="btn_excsave" class="btn2_letter4" navindex="11" style="left:1129px; top:50px; width:64px; height:19px; ">
  880. <caption>엑셀저장</caption>
  881. <script type="javascript" ev:event="DOMActivate">
  882. <![CDATA[
  883. fExeExcel();
  884. ]]>
  885. </script>
  886. </button>
  887. <datagrid id="grd_winlist" nodeset="/root/main/wingood/wingoodlist" class="datagrid2" caption="선&#xA;택^부서명^보정&#xA;여부^물품코드^물품명^Lot번호^규격^기준&#xA;단위^청구&#xA;수량^재고&#xA;수량^입고&#xA;수량^단가^instcd^posdeptcd^dutdeptcd^입고일자^입고차수^bfwinqty^유효일자^포장구성단위^제조사^모델^납품처^ALL SIZE^adjtflagcd^청구일자^의뢰번호^seaflagcd^보관온도" colsep="^" colwidth="40, 60, 0, 70, 140, 110, 60, 50, 50, 50, 50, 0, 0, 0, 0, 80, 0, 0, 80, 80, 70, 80, 80, 0, 0, 70, 0, 0, 60" dataheight="23" ellipsis="true" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" navindex="9" style="left:305px; top:75px; width:889px; height:668px; ">
  888. <col ref="choi" type="checkbox"/>
  889. <col class="text_center" ref="dutdeptnm"/>
  890. <col class="text_center" ref="adjtflagnm"/>
  891. <col class="text_center" ref="goodcd"/>
  892. <col ref="goodnm"/>
  893. <col class="text_center" ref="lotno" type="input" maxlength="30"/>
  894. <col class="text_center" ref="spec"/>
  895. <col class="text_center" ref="unit"/>
  896. <col class="text_right" ref="appqty" format="(-)#,###" mask="exclude" showmask="true"/>
  897. <col class="text_right" ref="stocqty" format="#,###" mask="exclude" showmask="true"/>
  898. <col ref="winqty" type="input" format="(-)#,###" maxlength="6" style="text-align:right; "/>
  899. <col ref="unitcost" secretendposition="20" secretmark="*" secretstartposition="0" format="#,###" style="text-align:right; "/>
  900. <col ref="instcd"/>
  901. <col ref="posdeptcd"/>
  902. <col ref="dutdeptcd"/>
  903. <col ref="windd" format="yyyy-mm-dd" mask="exclude" maxlength="8" showmask="true"/>
  904. <col ref="windg"/>
  905. <col ref="bfwinqty"/>
  906. <col ref="valiterm" type="inputdate" format="yyyy-mm-dd" mask="exclude" maxlength="8" showmask="true"/>
  907. <col class="text_center" ref="setunit"/>
  908. <col ref="prodcustnm"/>
  909. <col ref="model"/>
  910. <col ref="suppcustnm"/>
  911. <col ref="allsizespecid"/>
  912. <col ref="adjtflagcd"/>
  913. <col ref="reqdd" format="yyyy-mm-dd"/>
  914. <col ref="reqno"/>
  915. <col ref="seaflagcd"/>
  916. <col ref="keeptmpr" visibility="hidden"/>
  917. <script type="javascript" ev:event="onmousedown">
  918. <![CDATA[
  919. fExeMouseDown();
  920. ]]>
  921. </script>
  922. <script type="javascript" ev:event="DOMFocusOut">
  923. <![CDATA[
  924. fExeFocusOut();
  925. ]]>
  926. </script>
  927. <script type="javascript" ev:event="xforms-select">
  928. <![CDATA[
  929. fExeGoodChoi(grd_winlist.row);
  930. ]]>
  931. </script>
  932. <script type="javascript" ev:event="xforms-value-changed">
  933. <![CDATA[
  934. fExeQtyChange(grd_winlist);
  935. ]]>
  936. </script>
  937. <script type="javascript" ev:event="onaftersort">
  938. <![CDATA[
  939. grd_winlist.gridToInstance();
  940. ]]>
  941. </script>
  942. </datagrid>
  943. <import id="imp_goodlist" instancetype="merge" src="SSLAW00100_물품목록.xrw" style="left:0px; top:55px; width:300px; height:688px; "/>
  944. <button id="btn_del" class="btn2_letter3" navindex="14" style="left:1073px; top:50px; width:53px; height:19px; ">
  945. <caption>행삭제</caption>
  946. <script type="javascript" ev:event="DOMActivate">
  947. <![CDATA[
  948. fExeDeleteRow();
  949. ]]>
  950. </script>
  951. </button>
  952. <button id="button4" class="btn2_letter3" navindex="10" style="left:1017px; top:50px; width:53px; height:19px; ">
  953. <caption>행추가</caption>
  954. <script type="javascript" ev:event="DOMActivate">
  955. <![CDATA[
  956. fExeInsertRow();
  957. ]]>
  958. </script>
  959. </button>
  960. <datagrid id="grd_filewin" nodeset="/root/main/filewin/filewinlist" visibility="hidden" caption="dutdeptcd^goodcd^goodnm^lotno^spec^winqty^unitcost^valiterm" colsep="^" colwidth="100, 100, 100, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:20px; top:260px; width:710px; height:150px; ">
  961. <col ref="dutdeptcd"/>
  962. <col ref="goodcd"/>
  963. <col ref="goodnm"/>
  964. <col ref="lotno"/>
  965. <col ref="spec"/>
  966. <col ref="winqty"/>
  967. <col ref="unitcost"/>
  968. <col ref="valiterm"/>
  969. </datagrid>
  970. <bool id="bool_adjtflagcd" visibility="hidden" checkvalue="1,0" ref="/root/init/adjtflagcd" style="left:869px; top:50px; width:25px; height:20px; font-weight:bold; "/>
  971. <caption id="caption3" visibility="hidden" style="left:892px; top:51px; width:100px; height:20px; ">재고보정</caption>
  972. </group>
  973. <group id="grp_btn" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  974. <line id="line32" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  975. <button id="btn_save" class="btn4_letter2" navindex="15" style="left:1079; top:3px; width:56px; height:22px; ">
  976. <caption>저장</caption>
  977. <script type="javascript" ev:event="DOMActivate">
  978. <![CDATA[
  979. fExeGoodWin();
  980. ]]>
  981. </script>
  982. </button>
  983. <button id="button1" class="btn4_letter4" navindex="13" visibility="visible" style="left:996px; top:3px; width:80px; height:22px; ">
  984. <caption>파일입고</caption>
  985. <script type="javascript" ev:event="DOMActivate">
  986. <![CDATA[
  987. fExeFileWin();
  988. ]]>
  989. </script>
  990. </button>
  991. <button id="btn_can" class="btn4_letter2" navindex="16" style="left:1138px; top:3px; width:56px; height:22px; ">
  992. <caption>취소</caption>
  993. <script type="javascript" ev:event="onclick">
  994. <![CDATA[
  995. fCancelWin();
  996. ]]>
  997. </script>
  998. </button>
  999. <button id="button2" class="btn3_letter6" navindex="12" style="left:0px; top:3px; width:104px; height:22px; ">
  1000. <caption>바코드재출력</caption>
  1001. <script type="javascript" ev:event="DOMActivate">
  1002. <![CDATA[
  1003. fExeBarCdPrntData();
  1004. ]]>
  1005. </script>
  1006. </button>
  1007. <button id="btn_prnt" class="btn3_letter5" navindex="18" style="left:105px; top:3px; width:92px; height:22px; ">
  1008. <caption>프린터설정</caption>
  1009. <script type="javascript" ev:event="DOMActivate">
  1010. <![CDATA[
  1011. //fSetPrntSetting();
  1012. fSetPrint();
  1013. ]]>
  1014. </script>
  1015. </button>
  1016. </group>
  1017. </xhtml:body>
  1018. </xhtml:html>