123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462 |
- /* ---------------------------------------------------------------------
-
- SMRSD07000_청구분 접수승인 및 발주처리.xrw (SMRSD07000.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- : Create By Francis Choi
- : 2015.05.02
- ---------------------------------------------------------------------- */
-
- var vGoodReqPath = "/root/main/list/goodreq/goodreqlist";
- var xAuth = !(checkAuth("X"));
- var pAuth = !(checkAuth("P"));
- var DataPath = "/root/main/RscmggbnEmpData";
- var MainPath = "/root/main/RscmggbnLists/rscmggbnlist";
- var ListsPath = "/root/main/RscmggbnEmpLists";
- var ListPath = "/root/main/RscmggbnEmpLists/rscmggbnemplist";
-
- var HidePath = "/root/WorkData/HideData";
-
- var TreePath = "/root/main/RscmgubnLists/TreeList";
- var WorkPath = "/root/init/WorkInit";
- var CompPath = "/root/init/CompareInit";
- // --------------------------------------------------
- // Tree정보 가져오기
- // --------------------------------------------------
- function fInit() {
-
- // 화면 Control을 초기화한다
- fCheckAuth();
- fInitialize();
-
- return;
- }
-
- //------------------------------------------------
- // 화면 권한관리 CHECK
- //------------------------------------------------
- function fCheckAuth() {
- btn_search.disabled = !checkAuth("R") ;
- //btn_save.disabled = !checkAuth("X") ;
- //btn_prt.disabled = !checkAuth("P") ;
- }
-
-
-
-
-
- // --------------------------------------------------------------
- // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
- // --------------------------------------------------------------
- function fInitialize() {
-
- model.resetInstanceNode("/root/send");
-
- misfGridInit(grd_goodreq);
- misfMsterDetailSet(grd_goodreq, null, "TRRSD07001", "Y");
-
- //기관코드
- misfComboComCdListMulti("Z0007", "cmb_instcd");
- //권한별 청구구분
- rszfReqFlagComboComCdList(getUserInfo("userid"),cmb_reqflag);
- var curdate = getCurrentDate();
- var cvtdate = curdate.toDate("YYYYMMDD");
-
- model.setValue(ipt_reqfrdd.attribute("ref") , cvtdate.getAddDate(-10,"D").getDateFormat("YYYYMMDD"));
- model.setValue(ipt_reqtodd.attribute("ref") , curdate);
- model.setValue(cmb_instcd.attribute("ref") , getUserInfo("dutplceinstcd"));
- model.setValue(ipt_reqdeptcd.attribute("ref") , getUserInfo("dutplcecd"));
- model.setValue(ipt_reqdeptnm.attribute("ref") , getUserInfo("dutplcenm"));
-
- rbo_deptaprvyn.select(0);
- btn_accept.disabled = true;
-
- for(licol = 0; licol < grd_goodreq.cols ; licol++) if(grd_goodreq.colRef("reqdeptnm") != licol) grd_goodreq.mergecol(licol) = false;
-
- grd_goodreq.mergecells = "bycol";
-
- model.refresh();
- }
-
- function fCheckRetrieveData(pmsg) {
-
- if (model.getValue(cmb_instcd.attribute("ref")).length== 0 ) {
-
- if (pmsg == true) {
- messageBox("기관코드를 " ,"C002");
- model.setFocus("cmb_instcd");
- }
-
- return false;
- }
-
- if (model.getValue(cmb_reqflag.attribute("ref")).length== 0 ) {
- if (pmsg == true) {
- messageBox("청구구분을 " ,"C002");
- model.setFocus("cmb_reqflag");
- }
-
- return false;
- }
-
- if (model.getValue(ipt_reqfrdd.attribute("ref")).length== 0 ) {
- if (pmsg == true) {
- messageBox("청구시작일자를 " ,"C001");
- model.setFocus("ipt_reqfrdd");
- }
- return false;
- }
-
- if(model.getValue(ipt_reqtodd.attribute("ref")).length== 0 ) {
- if (pmsg == true) {
- messageBox("청구종료일자를 " ,"C001");
- model.setFocus("ipt_reqtodd");
- }
- return false;
- }
-
- }
- // -----------------------------------------------
- // 작업 권한체크
- // -----------------------------------------------
- function fSetReqAuth() {
- // ---------------------------------------------------------------------------------------
- // 수리,장비등 청구주기가 없는 것들은 '1'로셋팅
- // -------------------------------------------------------------------------------------*/
- rszfGetPurcReqAuthInfo(model.getValue(cmb_instcd.attribute("ref")), model.getValue(cmb_reqflag.attribute("ref")) , getUserInfo("dutplcecd"), getUserInfo("userid"),"1");
-
- if(rszfGetPurcAuthInfoByCond("reqaprvflag") != "2")btn_accept.disabled = true;
- else btn_accept.disabled = false;
- model.setValue(ipt_reqdeptcd.attribute("ref"),rszfGetPurcAuthInfoByCond("reqdeptcd"));
- model.setValue(ipt_reqdeptnm.attribute("ref"),rszfGetPurcAuthInfoByCond("reqdeptnm"));
-
- model.refresh();
- }
-
-
- // -----------------------------------------------
- // 기본자료 Setting
- // -----------------------------------------------
- function fDefaultSetting(prow)
- {
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/workflag" ,model.getValue("/root/send/goodreq/workflag" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/instcd" ,model.getValue("/root/send/goodreq/instcd" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqflag" ,model.getValue("/root/send/goodreq/reqflag" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/deliveflag" ,model.getValue("/root/send/goodreq/deliveflag" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdd" ,model.getValue("/root/send/goodreq/reqdd" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqpridflag",model.getValue("/root/send/goodreq/reqpridflag"));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdeptcd" ,model.getValue("/root/init/reqfinaldeptcd" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqpsnid" ,model.getValue("/root/init/requserno" ));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqseqno" ,prow);
- }
-
- // -----------------------------------------------
- // 물품 기본자료 Setting
- // -----------------------------------------------
- function fSettingGoodList(pnode, nodename, userqtynm){
-
- var codynode = instance1.selectNodes(pnode + "/*");
- var addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
-
- if(model.getValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd").length > 0) addRow = addRow + 1;
-
- for (var j = 1; j <= codynode.length ; j++) {
- if (addRow > grd_goodreq.rows - grd_goodreq.fixedRows) {
- misfGridIUD(grd_goodreq,"A");
- addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
- fDefaultSetting(addRow );
- }
-
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodcd" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodnm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodnm" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodspec" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodspec" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodflag" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/goodmodel" , model.getValue(pnode +"/" + nodename + "[" + j + "]/goodmodel" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/prodcmpynm" , model.getValue(pnode +"/" + nodename + "[" + j + "]/prodcmpynm" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/purcunit" , model.getValue(pnode +"/" + nodename + "[" + j + "]/purcunit" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/basevol" , model.getValue(pnode +"/" + nodename + "[" + j + "]/minexch" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/stocqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/stocqty" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/" + userqtynm));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/requnit" , model.getValue(pnode +"/" + nodename + "[" + j + "]/purcunit" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/minexch" , model.getValue(pnode +"/" + nodename + "[" + j + "]/minexch" ));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/ddavguseqty" , model.getValue(pnode +"/" + nodename + "[" + j + "]/ddavguseqty"));
- model.setValue(grd_goodreq.nodeset + "[" + addRow + "]/reqmthdflag" , model.getValue(pnode +"/" + nodename + "[" + j + "]/reqmthd" ));
- addRow = addRow + 1;
- }
-
- model.refresh();
- }
- function fCheckSaveData() {
-
- if (model.getValue(rbo_workflag.attribute("ref")).length== 0 ) {
- messageBox("작업구분을 " ,"C002");
- model.setFocus("rbo_workflag");
- return false;
- }
-
- if (model.getValue(cmb_instcd.attribute("ref")).length== 0 ) {
- messageBox("기관코드를 " ,"C002");
- model.setFocus("cmb_instcd");
- return false;
- }
- if (model.getValue(cmb_reqflag.attribute("ref")).length== 0 ) {
- messageBox("청구구분을 " ,"C002");
- model.setFocus("cmb_reqflag");
- return false;
- }
- if (model.getValue(cmb_deliveflag.attribute("ref")).length== 0 ) {
- messageBox("불출구분을 " ,"C002");
- model.setFocus("cmb_deliveflag");
- return false;
- }
- if (model.getValue(ipt_reqdd.attribute("ref")).length== 0 ) {
- messageBox("청구일자를 " ,"C001");
- model.setFocus("ipt_reqdd");
- return false;
- }
- if (model.getValue(cmb_reqpridflag.attribute("ref")).length== 0 ) {
- messageBox("청구주기를 " ,"C002");
- model.setFocus("cmb_reqpridflag");
- return false;
- }
-
- var basevol = 0;
- var stocqty = 0;
- var reqqty = 0;
- var minexch = 0;
-
- for (var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows ; currow++)
- {
- if (grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")).length == 0) {
- messageBox(currow + " 번째 물품코드를 " ,"C001");
- grd_goodreq.row = currow;
- grd_goodreq.col = grd_goodreq.colRef("goodcd");
- grd_goodreq.editCell();
- return false;
- }
-
- if (grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqqty")) == 0) {
- messageBox(currow + " 번째 청구량을 " ,"C001");
- grd_goodreq.row = currow;
- grd_goodreq.col = grd_goodreq.colRef("reqqty");
- grd_goodreq.editCell();
- return false;
- }
-
- basevol = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("basevol"));
- stocqty = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("stocqty"));
- reqqty = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("reqqty"));
- minexch = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("minexch"));
-
- if (minexch > 0 && (reqqty%minexch != 0)) {
- messageBox((currow) + "번째 물품은 최소청구량에 ["+ minexch + "]맞춰서" , "C001");
- grd_goodreq.row = currow;
- grd_goodreq.col= grd_goodreq.colRef("reqqty");
- grd_goodreq.editCell();
- return false;
- }
-
- }
- }
-
- function fInsertReqRow() {
-
- if(fCheckRetrieveData(true) == false)return;
- misfGridIUD(grd_goodreq, "A");
- grd_goodreq.row = grd_goodreq.rows - grd_goodreq.fixedRows ;
- tar_cmt.value = "";
- fDefaultSetting(grd_goodreq.row );
- grd_goodreq.col = grd_goodreq.colRef("goodcd");
- grd_goodreq.editCell();
- }
-
- function fDeleteReqRow()
- {
- misfGridIUD(grd_goodreq, "D");
- }
-
- function fGetReqSetList()
- {
- if(fCheckRetrieveData(true) == false)return;
-
- model.removenode("/root/copynode");
- model.makeNode("/root/copynode");
-
- rszfOpenPopUpListByWndName(grd_goodreq,"","goodcd,goodnm","SMRSD00210","instcd,reqdeptcd,reqprid","cmb_instcd,ipt_reqdeptnm,cmb_reqpridflag");
-
- var cur_row = grd_goodreq.row;
- var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
-
- var CSV = model.getValue("/root/hidden/parameters/SMRSD00210_/SMRSD00210_value");
-
- setCSVToNode("/root/copynode", CSV, "goodreqlist");
-
- fSettingGoodList("/root/copynode", "goodreqlist" , "goodqty");
- }
-
- function fSaveReqRece()
- {
- model.setValue("/root/send/reqdetaillist" ,grd_goodreq.getUpdateData());
- submit("TXRSO03001");
- misfMsterDetailRetrieve();
- }
-
- function fSaveReqAprv()
- {
- model.setValue("/root/send/reqaprvlist" ,grd_goodreq.getUpdateData());
- submit("TXRSD07002");
- misfMsterDetailRetrieve();
- }
-
- function fAfterRetrieve(pSelectIndex)
- {
- var nonaprvcnt = 0;
- var aprvcnt = 0;
-
- for(var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows ; currow++)
- {
- if(grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("deptaprvyn")) == "Y") aprvcnt++;
- else nonaprvcnt++;
- }
-
- model.setValue(opt_nonaprvcnt.attribute("ref" ), nonaprvcnt );
- model.setValue(opt_aprvcnt.attribute("ref" ), aprvcnt );
- model.setValue(opt_totalaprvcnt.attribute("ref"), (nonaprvcnt + aprvcnt));
-
- model.refresh();
- }
-
- function fDataSearchTree()
- {
- if (fCheckRetrieveData(false) == false) return;
-
- misfGridInit(grd_goodreq);
- // misfMsterDetailRetrieve();
- // fAfterRetrieve();
-
- submit("TRRSD07002");
- trv_setcode.rebuild();
-
- }
-
- function fDataSearchDetail(pIdx)
- {
- var rPath = "/root/send/goodreq";
- var dPath = "/root/send/gooddetail";
- var tPath = "/root/main/RsdhdemdTrees/TreeList";
- var Idx = pIdx + 1;
- var sDepth = model.getValue(tPath +"["+Idx+"]/depth" );
- var vCodeCd = model.getValue(tPath +"["+Idx+"]/codecd" );
- var vCodeNm = model.getValue(tPath +"["+Idx+"]/codenm" );
- var vBaseCd = model.getValue(tPath +"["+Idx+"]/basecode");
- cpt_disp.value = "";
- cpt_disp.refresh();
- misfGridInit(grd_goodreq);
-
- if (vCodeCd == "") return;
-
- model.setValue(dPath + "/instcd" , model.getValue(rPath + "/instcd" ));
- model.setValue(dPath + "/reqflag" , model.getValue(rPath + "/reqflag" ));
- model.setValue(dPath + "/reqfrdd" , "" );
- model.setValue(dPath + "/reqtodd" , "" );
- model.setValue(dPath + "/reqdeptcd" , "" );
- model.setValue(dPath + "/reqdeptnm" , "" );
- model.setValue(dPath + "/deptaprvyn", model.getValue(rPath + "/deptaprvyn"));
- if (sDepth == "1") {
- model.setValue(dPath + "/reqfrdd" , vCodeCd);
- model.setValue(dPath + "/reqtodd" , vCodeCd);
-
- cpt_disp.value = " 청구일 : "+vCodeCd;
- grd_goodreq.colwidth(1) = "115";
-
- } else {
- model.setValue(dPath + "/reqdeptcd" , vCodeCd );
- model.setValue(dPath + "/reqdeptnm" , vCodeNm);
-
- vCode = model.getValue(tPath +"[pcode='"+ vBaseCd+"']/codecd");
-
- model.setValue(dPath + "/reqfrdd" , vCode);
- model.setValue(dPath + "/reqtodd" , vCode);
- cpt_disp.value = " 청구일 : "+vCode + " 청구부서 : "+vCodeCd+ " - "+vCodeNm;
-
- grd_goodreq.colwidth(1) = "0";
- }
- cpt_disp.refresh();
- misfMsterDetailRetrieve();
- fAfterRetrieve();
- }
- // --------------------------------------------------
- // 물품 찾기 속성변경 처리하는 함수
- // --------------------------------------------------
- function fDisplayToggle(pCls) {
-
- if (pCls =="0") { // Key 조회
- // 메인 Grup
- grp_main.attribute("left" ) = "332";
- grp_main.attribute("top" ) = "15" ;
- grp_main.attribute("width" ) = "863";
- grp_main.attribute("height" ) = "720";
-
- lin_main.attribute("x2" ) = "861";
- grp_button.attribute("left" ) = "155";
- tar_cmt.attribute("width" ) = "752";
- grd_goodreq.attribute("width")= "860";
-
- } else { //
- // 메인 Grup
- grp_main.attribute("left" ) = "0" ;
- grp_main.attribute("top" ) = "15" ;
- grp_main.attribute("width" ) = "1195";
- grp_main.attribute("height" ) = "720" ;
-
- lin_main.attribute("x2" ) = "1192";
- grp_button.attribute("left" ) = "485";
- tar_cmt.attribute("width" ) = "1084";
- grd_goodreq.attribute("width")= "1195";
- }
-
- grp_main.refresh();
- }
-
- // <DispList01><colnm>청구부서</colnm><colno>01</colno><colsize>115</colsize><coldefault>0</coldefault></DispList01>
- // <DispList02><colnm>청구번호</colnm><colno>02</colno><colsize>111</colsize><coldefault>111</coldefault></DispList02>
- // <DispList06><colnm>물품코드</colnm><colno>06</colno><colsize>71</colsize><coldefault>71</coldefault></DispList06>
- // <DispList07><colnm>물품명 </colnm><colno>07</colno><colsize>268</colsize><coldefault>268</coldefault></DispList07>
- // <DispList08><colnm>규격 </colnm><colno>08</colno><colsize>110</colsize><coldefault>110</coldefault></DispList08>
- // <DispList09><colnm>모델 </colnm><colno>09</colno><colsize>37</colsize><coldefault>0</coldefault></DispList09>
- // <DispList10><colnm>제조회사</colnm><colno>10</colno><colsize>60</colsize><coldefault>0</coldefault></DispList10>
- // <DispList11><colnm>구매단위</colnm><colno>11</colno><colsize>54</colsize><coldefault>0</coldefault></DispList11>
- // <DispList12><colnm>청구 </colnm><colno>12</colno><colsize>40</colsize><coldefault>40</coldefault></DispList12>
- // <DispList13><colnm>청구단위</colnm><colno>13</colno><colsize>55</colsize><coldefault>0</coldefault></DispList13>
- // <DispList14><colnm>비고 </colnm><colno>14</colno><colsize>30</colsize><coldefault>30</coldefault></DispList14>
- // <DispList15><colnm>전월 </colnm><colno>15</colno><colsize>48</colsize><coldefault>48</coldefault></DispList15>
- // <DispList16><colnm>접수 </colnm><colno>16</colno><colsize>48</colsize><coldefault>48</coldefault></DispList16>
- // <DispList17><colnm>승인 </colnm><colno>17</colno><colsize>30</colsize><coldefault>30</coldefault></DispList17>
- // <DispList18><colnm>승인 </colnm><colno>18</colno><colsize>48</colsize><coldefault>48</coldefault></DispList18>
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
|