1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/* ---------------------------------------------------------------------
-
- SMRSD10000_물품청구관리(경북대).xrw (SMRSD10000.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- ---------------------------------------------------------------------- */
- var xAuth = !(frmf_checkAuth("X"));
- var pAuth = !(frmf_checkAuth("P"));
- var vPurcAuth = "1";
- var gExeptionFlag = true;
- var gPurcDeptcd = "" ;
- var gcount = 0 ; //청구번호 읽기
- var gReqNoReadFlag = true; //청구번호 읽기
- var cmbworkflagold = "X" ; //작업구분콤보의 예전값을 가지고 있는 변수
- /****************************************************************************************
- * Argument : N/A
- * Description : 폼 초기화
- ****************************************************************************************/
- function fInitialize() {
- ds_send.clearData(); ds_send.addRow();
- ds_send_goodreq.clearData(); ds_send_goodreq.addRow();
- ds_send_reqpsn.clearData(); ds_send_reqpsn.addRow();
- ds_send_goodlist.clearData(); ds_send_goodlist.addRow();
- ds_send_message.clearData(); ds_send_message.addRow();
- ds_send_lastdatesearch.clearData(); ds_send_lastdatesearch.addRow();
- ds_send_reqset.clearData(); ds_send_reqset.addRow();
- ds_send_chkgoodreq.clearData(); ds_send_chkgoodreq.addRow();
- ds_send_allsize.clearData(); ds_send_allsize.addRow();
- ds_send_repeatreq.clearData(); ds_send_repeatreq.addRow();
- ds_send_reqmst.clearData(); ds_send_reqmst.addRow();
- grp_main.grp_button.btn_save.enable = false;
- grp_main.grp_button.btn_accept.enable = false;
- grp_main.grp_button.ckb_accept.visible = false;
- misfGridInit(grp_main.grd_goodreq);
- misfMsterDetailSet("grp_main.grd_goodreq", null, "TRRSD00411" ,"Y");
- grp_sea.opt_instcd.value = sysf_getUserInfo("dutplceinstcd");
- grp_sea.opt_instcdnm.value = sysf_getUserInfo("dutplceinstnm");
- grp_sea.opt_requser.value = sysf_getUserInfo("userid");
- grp_sea.opt_requsernm.value = sysf_getUserInfo("usernm");
- grp_sea.ipt_reqdd.value = utlf_getCurrentDate();
- ds_send_goodreq.setColumn( 0, "workflag", "1");
- // grd_goodlist.fixedcellcheckbox(0,grd_goodlist.colRef("select"),false) = true;
- gd_find.grd_goodlist.setCellProperty("head",gd_find.grd_goodlist.getBindCellIndex("body","select"),"text","");
- ds_send_reqpsn.setColumn( 0, "instcd", grp_sea.opt_instcd.value );
- ds_send_reqpsn.setColumn( 0, "emplno", grp_sea.opt_requser.value );
- dsf_createDsRow("ds_req", [
- {col:"instcd", type:"STRING", size:256, val:ds_send_reqpsn.getColumn(0,"instcd")}
- , {col:"reqflag", type:"STRING", size:256, val:""}
- , {col:"reqdeptcd", type:"STRING", size:256, val:""}
- , {col:"emplno", type:"STRING", size:256, val:ds_send_reqpsn.getColumn(0,"emplno")}
- ]);
-
- //청구권한 주기 조회
- var oParam = {};
- oParam.id = "TRRSD00407";
- oParam.service = "purcbaseapp.PurcBaseMngt";
- oParam.method = "reqGetReqPsnList";
- oParam.inds = "req=ds_req";
- oParam.outds = "ds_main_ReqpsnLists_reqpsnlist=reqpsnlist";
- oParam.async = false;
- //oParam.callback = "cf_TRRSD00407";
- tranf_submit(oParam);
- misfComboComCdListMulti("R0025,R0025,030M0003","gd_find.group2.cmb_goodflag,grp_sea.sel_goodflag,gd_find.group2.cmb_mngtcls");
- frmf_addComboItem( "gd_find.group2.cmb_mngtcls", "- 전 체 -", "", "above" );
- gd_find.group2.cmb_mngtcls.index = 0;
-
- ds_send_goodreq.setColumn( 0, "goodflag", ds_tmp_common_goodflaglist.getColumn(0,"cdid"));
- fSetTempDept("PH"); //부서찾기 기능 설정(구매팀일경우에만)
- fReqdeptCopy();
- gReqNoReadFlag = false; //청구번호 읽기
- fDeptReqNoQuery();
-
-
- var userid=sysf_getUserInfo("userid");
-
- if(userid=="AST" || userid="12274") {
- grp_main.grp_button.btn_save.enable = true;
- grp_main.grp_button.btn_accept.enable = true;
- }
- fSearchButtonClick();
- //fGoodListSearch();
-
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 권한체크(청구주기가 일청구이면 권한체크하지 않는다. )
- ****************************************************************************************/
- function fSetReqAuth() {
- // btn 기본처리
- grp_main.grp_button.btn_excel.enable = false;
- grp_main.grp_button.btn_insert.enable = false;
- grp_main.grp_button.btn_delete.enable = false;
- grp_main.grp_button.btn_choice.enable = false;
- grp_main.grp_button.btn_accept.enable = false;
- grp_main.grp_button.btn_save.enable = false;
- grp_main.grp_button.ckb_accept.value = "";
- grp_main.grp_button.ckb_accept.visible = false;
- if(utlf_isNull(grp_sea.opt_instcd.value)) return;
- if(utlf_isNull(grp_sea.cmb_reqdeptcd.value)) return;
- if(utlf_isNull(grp_sea.cmb_reqpridflag.value)) return;
- if (grp_sea.cmb_reqpridflag.value == "1" && gExeptionFlag ) {
- grp_main.grp_button.btn_save.enable = true;
- grp_main.grp_button.btn_accept.enable = true;
- grp_main.grp_button.ckb_accept.value = "Y";
- grp_main.grp_button.ckb_accept.visible = true ;
- grp_main.grp_button.btn_excel.enable = true;
- grp_main.grp_button.btn_insert.enable = true;
- grp_main.grp_button.btn_delete.enable = true;
- grp_main.grp_button.btn_choice.enable = true;
- } else {
- fPurcAuthInfo(); // 청구승인자 Check
- if (grp_sea.cmb_reqpridflag.value == "4") { // 월청구
- if (fLastDayCheck_2() ) {
- grp_main.grp_button.btn_save.enable = false;
- } else {
- grp_main.grp_button.btn_save.enable = true;
- }
- } else {
- grp_main.grp_button.btn_save.enable = true;
- }
- grp_main.grp_button.btn_excel.enable = true;
- grp_main.grp_button.btn_insert.enable = true;
- grp_main.grp_button.btn_delete.enable = true;
- grp_main.grp_button.btn_choice.enable = true;
- }
-
- if (ds_send_goodlist.getColumn(0, "purcdeptflag") == "P") { //구매부서구분 : P
- grp_main.grp_button.btn_accept.enable = true;
- grp_main.grp_button.ckb_accept.value = "Y";
- grp_main.grp_button.ckb_accept.visible = true ;
- }
- }
- /**
- * @ver : 2010-10-17
- * @desc : 불출부서 청구마지막 일자를 불러온다.청구마감일자 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fLastDaySearch() {
- model.setValue("/root/send/lastdatesearch/instcd" , model.getValue(opt_instcd.attribute("ref")) );
- model.setValue("/root/send/lastdatesearch/deldeptcd", grp_sea.cmb_reqdeptcd.value );
- // model.setValue("/root/send/lastdatesearch/deldeptcd", opt_reqfinaldept.value );
- model.setValue("/root/send/lastdatesearch/reqym" , model.getValue(ipt_reqdd.attribute("ref")).substr(0,6));
-
- submit("TRRSC01701", false); // 청구마감일자 조회 purcbaseweb
-
- ipt_todd.refresh();
-
- }
-
- // --------------------------------------------------------------
- // 청구일자가 불출부서의 청구마지막 일자안에 있는지 확인,
- // --------------------------------------------------------------
- function fLastDayCheck() {
-
- var fbool = false;
-
- if (model.getValue(ipt_todd.attribute("ref")) != '') {
- if (model.getValue(ipt_reqdd.attribute("ref")) > model.getValue(ipt_todd.attribute("ref")) ) {
- fbool = true;
- }
- }
-
- return fbool;
- }
-
- // --------------------------------------------------------------
- // 불출부서 청구마지막 일자를 불러온다.청구마감일자 조회
- // --------------------------------------------------------------
- function fLastDaySearch_2(pDate) {
- model.setValue("/root/send/lastdatesearch/instcd" , model.getValue(opt_instcd.attribute("ref")) );
- model.setValue("/root/send/lastdatesearch/deldeptcd", gPurcDeptcd );
- model.setValue("/root/send/lastdatesearch/reqym" , pDate.substr(0,6));
-
- submit("TRRSC01701", false); // 청구마감일자 조회 purcbaseweb
-
- ipt_todd.refresh();
-
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 청구일자가 불출부서의 청구마지막 일자안에 있는지 확인
- ****************************************************************************************/
- function fLastDayCheck_2() {
- var fbool = false;
- var comTodd = frmf_getComponents("ipt_todd", this);
- if (!utlf_isNull(comTodd) && utlf_isNull(comTodd.value)) {
- return false;
- }
- if (grp_sea.sel_goodflag.value == "PH") { // 약품
- return false;
- }
- if (grp_sea.cmb_reqpridflag.value == "4") { // 월청구
- if (!utlf_isNull(comTodd) && comTodd.value < utlf_getCurrentDate()) {
- alert("청구 마감일이 지났습니다. 구매팀에 문의 하십시요!!");
- return true;
- }
- }
- return fbool;
- }
-
- /****************************************************************************************
- * Argument : prow : 행번호
- * Description : 적용버튼 클릭시 Data DefaultSetting
- ****************************************************************************************/
- function fDefaultSetting(prow) {
- // --------------------------------------------------------
- // 일반청구 와 정량보충에 따라서 col을 control한다.
- // --------------------------------------------------------
- // grd_goodreq.colDisabled(grd_goodreq.colRef("stocqty")) = false;
- // grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = false;
- misfSetReadOnlyCol(grp_main.grd_goodreq, "stocqty,reqqty", "N");
-
- var workflag = grp_sea.cmb_workflag.value;
-
- // --------------------------------------------------------
- //작업구분이 [수액청구] == [처방청구]일때 행 추가시 작업 구분은 [일반청구]로 지정
- // --------------------------------------------------------
- if (grp_sea.cmb_workflag.value == "6" ) workflag = "1";
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "workflag" , workflag);
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "instcd" , grp_sea.opt_instcd.value);
- // --------------------------------------------------------
- // 불출구분 없앰... 기본값('1') settting한다
- // --------------------------------------------------------
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "deliveflag" , "1");
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqdd" , grp_sea.ipt_reqdd.value);
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqpridflag" , grp_sea.cmb_reqpridflag.value);
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqdeptcd" , grp_sea.cmb_reqdeptcd.value);
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqpsnid" , grp_sea.opt_requser.value);
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqseqno" , fGetMaxReqNo());
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "reqno" , grp_sea.cmb_reqno.value);
- //-----------------------------------------------------------------------------------------------------------
- // 비승인자가 승인처리시 에러와 함꼐 OLD값을 넣어준다.
- // 행추가시 OLD값을 'N'으로 셋팅함으로 에러처리시 제대로 된다. HBH
- //-----------------------------------------------------------------------------------------------------------
- ds_main_list_goodreq_goodreqlist.setColumn(prow, "predeptaprvyn" , "N");
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 최종 청구번호 가져오기
- ****************************************************************************************/
- function fGetMaxReqNo() {
- var vMax = 0;
- var maxreqseqno = "0";
- for (var currow = 0; currow < ds_main_list_goodreq_goodreqlist.rowcount; currow++) {
- if (maxreqseqno < ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqseqno")) {
- maxreqseqno = ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqseqno");
- }
- }
- vMax = parseInt(maxreqseqno, 10);
- vMax += 1;
- maxreqseqno = "" + vMax;
- return maxreqseqno.getLeftPad(3,"0");
- }
- /****************************************************************************************
- * Argument : N/A
- * Description :
- ****************************************************************************************/
- function fSettingGoodList(pnode, nodename, userqtynm) {
- // var vTarget = "";
- // var vSource = "";
- // var codynode = instance1.selectNodes(pnode + "/*");
- var vSource = eval(pnode+"_"+nodename);
- var addRow = ds_main_list_goodreq_goodreqlist.rowcount - 1;
- if(!utlf_isNull(ds_main_list_goodreq_goodreqlist.getColumn(addRow , "goodcd"))) addRow = addRow + 1;
- for (var j = 0; j < vSource.rowcount ; j++) {
- if((ds_main_list_goodreq_goodreqlist.rowcount == 0) || (addRow > ds_main_list_goodreq_goodreqlist.rowcount - 1)) {
- misfGridIUD(grp_main.grd_goodreq, "A");
- addRow = ds_main_list_goodreq_goodreqlist.rowcount - 1;
- fDefaultSetting(addRow);
- }
- // vTarget = grd_goodreq.nodeset + "[" + addRow + "]/";
- // vSource = pnode +"/" + nodename + "[" + j + "]/";
- fSettingGoodData(ds_main_list_goodreq_goodreqlist, vSource, userqtynm, "deliveunit", "", addRow, j);
- if (vSource.getColumn(j,"allsizeyn") == "Y") {
- //grd_goodreq.cellstyle("background-color" , addRow, 9) = "#FFFF00";
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "allsizespecid" , vSource.getColumn(j, "allsizespecid" ));
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "allsizespecidnm" , vSource.getColumn(j, "allsizespecidnm"));
- if (!utlf_isNull(vSource.getColumn(j, "allsizespecid"))) {
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "goodspec" , vSource.getColumn(j, "allsizespecidnm"));
- } else {
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "allsizespecid" , "-");
- }
- }
- addRow = addRow + 1;
- }
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 조회시 체크로직
- ****************************************************************************************/
- function fCheckRetrieveData(pmsg)
- {
- if(utlf_isNull(grp_sea.cmb_workflag.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("작업구분을 " ,"C002");
- grp_sea.cmb_workflag.setFocus();
- }
- return false;
- }
- if(utlf_isNull(grp_sea.opt_instcd.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("기관코드를 " ,"C002");
- grp_sea.opt_instcd.setFocus();
- }
- return false;
- }
- if(utlf_isNull(grp_sea.ipt_reqdd.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("청구일자를 " ,"C001");
- grp_sea.ipt_reqdd.setFocus();
- }
- return false;
- }
- if(utlf_isNull(grp_sea.cmb_reqpridflag.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("청구주기를 " ,"C002");
- grp_sea.cmb_reqpridflag.setFocus();
- }
- return false;
- }
- if(utlf_isNull(grp_sea.cmb_reqdeptcd.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("청구부서를 " ,"C002");
- grp_sea.cmb_reqdeptcd.setFocus();
- }
- return false;
- }
- if(utlf_isNull(grp_sea.opt_requser.value))
- {
- if(pmsg == true)
- {
- sysf_messageBox("청구자를 " ,"C002");
- grp_sea.opt_requser.setFocus();
- }
- return false;
- }
- return true;
- }
-
- //
- function fCheckLimitTime(pDate)
- {
- return true;
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 저장전 Data를 Check한다.
- ****************************************************************************************/
- function fCheckSaveData()
- {
- if (utlf_isNull(grp_sea.cmb_workflag.value)) {
- sysf_messageBox("작업구분을 " ,"C002");
- grp_sea.cmb_workflag.setFocus();
- return false;
- }
- if (utlf_isNull(grp_sea.opt_instcd.value)) {
- sysf_messageBox("기관코드를 " ,"C002");
- grp_sea.opt_instcd.setFocus();
- return false;
- }
- if (utlf_isNull(grp_sea.ipt_reqdd.value)) {
- sysf_messageBox("청구일자를 " ,"C001");
- grp_sea.ipt_reqdd.setFocus();
- return false;
- }
- if (utlf_isNull(grp_sea.cmb_reqpridflag.value)) {
- sysf_messageBox("청구주기를 " ,"C002");
- grp_sea.cmb_reqpridflag.setFocus();
- return false;
- }
- var basevol = 0;
- var stocqty = 0;
- var reqqty = 0;
- var minexch = 0;
- for(var currow = 0 ; currow < ds_main_list_goodreq_goodreqlist.rowcount ; currow++)
- {
- if (ds_main_list_goodreq_goodreqlist.getRowType(currow) != 8) { // 저장 후 삭제일 경우 ( 4 ) check 하지 말자.
- for(srcrow = currow + 1 ; srcrow < ds_main_list_goodreq_goodreqlist.rowcount ; srcrow++) {
- if (ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "goodcd") &&
- ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizeyn") == "N" &&
- ds_main_list_goodreq_goodreqlist.getRowType(srcrow) != 8 )
- {
- sysf_messageBox("동일 물품코드가1 [" + currow + "," +srcrow + "->" + ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd") + "] 존재하여 저장 " ,"E001");
- return false;
- }
- else if(ds_main_list_goodreq_goodreqlist.getColumn(currow ,"goodcd") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "goodcd") &&
- ds_main_list_goodreq_goodreqlist.getColumn(currow ,"allsizespecid") == ds_main_list_goodreq_goodreqlist.getColumn(srcrow , "allsizespecid") &&
- ds_main_list_goodreq_goodreqlist.getRowType(srcrow) != 8 )
- {
- sysf_messageBox("동일 물품코드가 (ALL SIZE) [" + currow + "," +srcrow + "->" + ds_main_list_goodreq_goodreqlist.getColumn(currow , "goodcd") + "] 존재하여 저장 " ,"E001");
- return false;
- }
- }
- reqqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty" );
- if (grp_sea.cmb_workflag.value=="2" || grp_sea.cmb_workflag.value =="4") {
- if (reqqty > 0) {
- ds_main_list_goodreq_goodreqlist.setColumn(currow , "reqqty", reqqty * -1);
- }
- }
- reqqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty" );
- basevol = ds_main_list_goodreq_goodreqlist.getColumn(currow , "basevol");
- stocqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "stocqty");
- reqqty = ds_main_list_goodreq_goodreqlist.getColumn(currow , "reqqty" );
- minexch = ds_main_list_goodreq_goodreqlist.getColumn(currow , "minexch");
- /* all size 미입력분 체크 2007.09.
- allsizeyn = 'Y' 인데.... allsizespecid선택을 안한경우
- */
- if(ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizeyn") == "Y" )
- {
- if (ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizespecid").length == 0 ||
- ds_main_list_goodreq_goodreqlist.getColumn(currow , "allsizespecid") == '-' )
- {
- sysf_messageBox(currow + " 번째 물품의 ALLSIZE선택을 " ,"C001");
- ds_main_list_goodreq_goodreqlist.rowposition = currow;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(grp_main.grd_goodreq.getBindCellIndex("body","goodspec"));
- grp_main.grd_goodreq.showEditor(true);
- return false;
- }
- } else {
- ds_main_list_goodreq_goodreqlist.setColumn(currow , "allsizespecid", "-");
- }
- if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "aprvyn") != "Y") {
- if (grp_main.grp_button.ckb_accept.value == "Y") {
- if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "deptaprvyn") != "Y") {
- if (gPurcDeptcd == sysf_getUserInfo("dutplcecd") ){
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn" ,"Y");
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd" ,utlf_getCurrentDate());
- } else {
- if (ds_main_list_goodreq_goodreqlist.getColumn(currow, "reqauth") == "2") {
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn" ,"Y");
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd" ,utlf_getCurrentDate());
- } else {
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvyn" ,"N");
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "deptaprvdd","" );
- }
- }
- }
- }
- }
- // 불출부서가 없는경우
- if (utlf_isNull(ds_main_list_goodreq_goodreqlist.getColumn(currow, "delivedeptcd"))) {
- ds_main_list_goodreq_goodreqlist.setColumn(currow, "delivedeptcd", gPurcDeptcd);
- }
- } // status != 4
- } // end for
- /* 청구 번호가 없는 경우 즉 신규인 상황에서 신규체크를 하지 않았을 경우
- * 임의로 신규 체크 여부를 지정한다. [20081126] YYJ
- */
- if (utlf_isNull(grp_sea.cmb_reqno.value))
- {
- grp_sea.chk_reqnonew.value = "Y";
- }
- return true;
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description :
- ****************************************************************************************/
- function fSetControlDisabled(pDisabled) {
- grp_sea.cmb_reqno.enable = !pDisabled;
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description :
- ****************************************************************************************/
- function fAfterRetr() {
- if (ds_main_list_goodreq_goodmaxreqno.getColumn(0,"reqfix") == "Y") {
- fSetControlDisabled(true);
- } else {
- fSetControlDisabled(false);
- }
- }
-
- // --------------------------------------------------
- //
- // --------------------------------------------------
- function fRetrByReqNo() {
-
- if(fCheckRetrieveData(false) == false)return;
-
- model.removenode("/root/main/tmplist");
- model.makeNode("/root/main/tmplist/goodreq/goodreqlist");
- model.makeNode("/root/main/tmplist/goodreq/goodmaxreqno");
- model.copyNode("/root/main/tmplist", "/root/main/list");
-
- model.setValue("/root/send/goodreq/retrmaxreqnoyn","N");
-
- misfMsterDetailRetrieve();
-
- var rtncount = grd_goodreq.rows - grd_goodreq.fixedRows;
- if(rtncount == 0)
- {
- model.copyNode("/root/main/list","/root/main/tmplist");
- }
-
- return rtncount;
- }
-
- // --------------------------------------------------
- //
- // --------------------------------------------------
- function fSetReqNo(pReqControl,pAdd)
- {
- if(pAdd == "Y")
- {
- var reqno = model.getValue(cmb_reqno.attribute("ref"));
- reqno = parseInt(reqno) + 1;
- reqno = "" + reqno;
- reqno = reqno.getLeftPad(4,"0");
- }
- else
- {
- var reqno = model.getValue(cmb_reqno.attribute("ref"));
- reqno = parseInt(reqno) - 1;
- if(reqno == 0)reqno = 1;
- reqno = "" + reqno;
- reqno = reqno.getLeftPad(4,"0");
- }
- model.setValue(pReqControl.attribute("ref"), reqno);
- model.refresh();
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 승인전체/접수전체취소
- ****************************************************************************************/
- function fSettingReqAprv() {
- for (var liRow = 0 ; liRow < ds_main_list_goodreq_goodreqlist.rowcount ; liRow++)
- {
- //----------------------------------------------------------------------------
- // 발주승인건 제외
- //----------------------------------------------------------------------------
- if (ds_main_list_goodreq_goodreqlist.getColumn(liRow, "aprvyn") != "Y") {
- if ((gPurcDeptcd == sysf_getUserInfo("dutplcecd")) || (ds_main_list_goodreq_goodreqlist.getColumn(liRow, "reqauth") == "2")) {
- if (ds_main_list_goodreq_goodreqlist.getColumn(liRow, "deptaprvyn") == "Y") {
- ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvyn","N");
- ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvdd","" );
- if (ds_main_list_goodreq_goodreqlist.getRowType(liRow) == 1) grdf_setStatus(grp_main.grd_goodreq, "U", [liRow]);
- } else {
- ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvyn" ,"Y");
- ds_main_list_goodreq_goodreqlist.setColumn(liRow, "deptaprvdd" ,utlf_getCurrentDate());
- if (ds_main_list_goodreq_goodreqlist.getRowType(liRow) == 1) grdf_setStatus(grp_main.grd_goodreq, "U", [liRow]);
- }
- }
- }
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 승인/미승인 처리
- ****************************************************************************************/
- function fSaveReqAprv()
- {
- dsf_createDs("ds_send_reqaprvlist");
- var dsUpdate = grdf_getGridUpdateData(grp_main.grd_goodreq, "all");
- grdf_setStatusColumn(dsUpdate, "status");
- ds_send_reqaprvlist.copyData(dsUpdate,true);
- var oParam = {};
- oParam.id = "TXRSD07002";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqExeSaveReqAprv";
- oParam.inds = "req=ds_send_reqaprvlist";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TXRSD07002";
- tranf_submit(oParam);
- if (arErrorCode.pop("TXRSD07002") > -1) misfMsterDetailRetrieve();
- }
- function cf_TXRSD07002(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 권한여부에 따른 승인체크 설정.
- ****************************************************************************************/
- function fGrantsCheck()
- {
- if (vPurcAuth == "2" || grp_sea.cmb_reqpridflag.value =="1") {
- misfSetReadOnlyCol(grp_main.grd_goodreq, "deptaprvyn", false);
- }else{
- misfSetReadOnlyCol(grp_main.grd_goodreq, "deptaprvyn", true);
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 물품청구 버튼 Click 처리하는 함수
- ****************************************************************************************/
- function fGoodreqButtonClick(yPos) {
- var cRow = ds_main_list_goodreq_goodreqlist.rowposition;
- var cCol = grp_main.grd_goodreq.currentcol;
- if (cCol == grp_main.grd_goodreq.getBindCellIndex("body","goodcd") &&
- ds_main_list_goodreq_goodreqlist.getRowType(cRow) == 2 ) { //구성물품코드를 눌렀을 경우
- swt_search.tabindex = 1;
- //fViewToggle(2); // 1 :늘리기, 2 : 줄이기
- fGoodListReady(ds_main_list_goodreq_goodreqlist.getColumn(cRow, "goodcd"),""); // 물품찾기 처리하는 함수
- }else if(cCol == grp_main.grd_goodreq.getBindCellIndex("body","goodspec") &&
- ds_main_list_goodreq_goodreqlist.getColumn(cRow, "allsizeyn") == "Y" ) {
- fAllSizeRead(cRow, cCol, yPos);
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 물품청구 내용이 바뀌었을때 처리하는 함수
- ****************************************************************************************/
- function fGoodreqOnChange() {
- var cRow = ds_main_list_goodreq_goodreqlist.rowposition;
- var cCol = grp_main.grd_goodreq.currentcol;
- if (cCol == grp_main.grd_goodreq.getBindCellIndex("body","reqqty")) {
- if (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "acptflag") == "Y")
- {
- sysf_messageBox("구매접수된 내역은 수정","E001");
- return;
- }
- if (grp_sea.cmb_reqpridflag.value !="1")
- {
- if (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "reqauth" ) == "1" &&
- ds_main_list_goodreq_goodreqlist.getColumn(cRow, "predeptaprvyn") == "Y" )
- {
- grdf_setStatus(grp_main.grd_goodreq, "", [cRow]);
- sysf_messageBox("청구승인되었으므로 청구량을 수정" ,"E001");
- return;
- }
- }
- minexch = ds_main_list_goodreq_goodreqlist.getColumn(cRow, "minexch");
- }
- // -----------------------------------------------------------------------------------
- // 청구수량을 정량보충으로 변경함. ( 재고/ 기준량을 입력한다) .2007.08.
- // -----------------------------------------------------------------------------------
- else if (cCol == grp_main.grd_goodreq.getBindCellIndex("body","stocqty") || cCol == grp_main.grd_goodreq.getBindCellIndex("body","basevol"))
- {//재고량조절할경우
- if (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "acptflag") == "Y")
- {
- sysf_messageBox("구매접수된 내역은 수정","E001");
- return;
- }
- if(grp_sea.cmb_reqpridflag.value != "1")
- {
- if (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "reqauth" ) == "1" &&
- ds_main_list_goodreq_goodreqlist.getColumn(cRow, "predeptaprvyn") == "Y")
- {
- grdf_setStatus(grp_main.grd_goodreq, "", [cRow]);
- sysf_messageBox("청구승인되었으므로 재고량을 수정" ,"E001");
- return;
- }
- }
- basevol = ds_main_list_goodreq_goodreqlist.getColumn(cRow, "basevol");
- stocqty = ds_main_list_goodreq_goodreqlist.getColumn(cRow, "stocqty");
- reqqty = ds_main_list_goodreq_goodreqlist.getColumn(cRow, "reqqty" );
- minexch = ds_main_list_goodreq_goodreqlist.getColumn(cRow, "minexch");
- calc_reqqty = basevol - stocqty;
- ds_main_list_goodreq_goodreqlist.setColumn(cRow, "reqqty", calc_reqqty);
- }
- else if (cCol == grp_main.grd_goodreq.getBindCellIndex("body","deptaprvyn")) {
- if ((grp_sea.cmb_reqpridflag.value != "1") &&
- (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "reqauth") != "2" ) ) {
- ds_main_list_goodreq_goodreqlist.setColumn(cRow, "deptaprvyn", ds_main_list_goodreq_goodreqlist.getColumn(cRow, "predeptaprvyn"));
- // insert 가 아니면..
- if (ds_main_list_goodreq_goodreqlist.getRowType(cRow) != 2) {
- grdf_setStatus(grp_main.grd_goodreq, "", [cRow]);
- }
- sysf_messageBox("청구승인권한이 없으므로 수정" ,"E001");
- } else if (ds_main_list_goodreq_goodreqlist.getColumn(cRow, "aprvyn") == "Y") {
- grdf_setStatus(grp_main.grd_goodreq, "", [cRow]);
- sysf_messageBox("발주승인이 되었으므로 수정" ,"E001");
- } else {
- ds_main_list_goodreq_goodreqlist.setColumn(cRow, "deptaprvdd" , utlf_getCurrentDate());
- }
- }
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 입력시 키에 따른 처리
- ****************************************************************************************/
- function fGoodreqOnKeyDown(e) {
- var cCol = grp_main.grd_goodreq.currentcol;
- var cRow = grp_main.grd_goodreq.currentrow;
- if(e.keycode == 13)
- {
- if(cCol == grp_main.grd_goodreq.getBindCellIndex("body","reqqty"))
- {
- if(cRow < ds_main_list_goodreq_goodreqlist.rowcount-1)
- {
- ds_main_list_goodreq_goodreqlist.rowposition = cRow + 1;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(cCol);
- grp_main.grd_goodreq.showEditor(true);
- }
- }
- }
- if(e.keycode == 9)
- {
- if(e.shiftKey)
- {
- if ( grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "normal"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "text"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "masknumber")
- {
- for(var curcol = cCol -1 ; curcol > -1 ; curcol--)
- {
- if ( grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "normal"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "text"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "masknumber")
- {
- //ds_main_list_goodreq_goodreqlist.rowp = cRow + 1;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(curcol);
- grp_main.grd_goodreq.showEditor(true);
- return;
- }
- }
- }
- }
- else
- {
- if ( grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") != "normal"
- && grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") != "text"
- && grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") != "masknumber")
- {
- if(cCol-1 == grp_main.grd_goodreq.getBindCellIndex("body","goodcd") && utlf_isNull(ds_main_list_goodreq_goodreqlist.getColumn(cRow, cCol-1)))
- {
- //ds_main_list_goodreq_goodreqlist.rowp = cRow + 1;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(grp_main.grd_goodreq.getBindCellIndex("body","goodcd"));
- grp_main.grd_goodreq.showEditor(true);
- return;
- }
-
- for(var curcol = cCol ; curcol < grp_main.grd_goodreq.getCellCount("body") ; curcol++)
- {
- if ( grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "normal"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "text"
- || grp_main.grd_goodreq.getCellProperty("body",cCol+1,"edittype") == "masknumber")
- {
- //ds_main_list_goodreq_goodreqlist.rowp = cRow + 1;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(curcol);
- grp_main.grd_goodreq.showEditor(true);
- return;
- }
- }
- }
- }
- }
- }
-
- // --------------------------------------------------
- // 물품청구 Cell 내용이 바뀌었을때 처리하는 함수
- // --------------------------------------------------
- function fGoodreqOnEnterCell() {
-
- if((grd_goodreq.col == grd_goodreq.colRef("deptaprvyn")))
- {
- if (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth" ) != "2" &&
- model.getValue(cmb_reqpridflag.attribute("ref")) !="1" )
- {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/deptaprvyn",model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/predeptaprvyn") );
- // insert 가 아니면..
- if ( grd_goodreq.rowStatus(grd_goodreq.row) != '3')
- {
- grd_goodreq.rowStatus(grd_goodreq.row) = "0";
- }
- messageBox("청구승인권한이 없으므로 수정" ,"E001");
- }
- else
- {
- if(model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/aprvyn") == "Y")
- {
- grd_goodreq.rowStatus(grd_goodreq.row) = "0";
- messageBox("발주승인이 되었으므로 수정" ,"E001");
- }
- }
- }
- else if(grd_goodreq.col == grd_goodreq.colRef("stocqty"))
- // else if(grd_goodreq.col == grd_goodreq.colRef("reqqty"))
- {
- if (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/acptflag") == "Y")
- {
- messageBox("구매접수된 내역은 수정","E001");
- return;
- }
-
- if (model.getValue(cmb_reqpridflag.attribute("ref")) !="1")
- {
- if (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth" ) == "1" &&
- model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/predeptaprvyn") == "Y")
- {
- grd_goodreq.rowStatus(grd_goodreq.row) = "0";
- messageBox("청구승인되었으므로 재고량을 수정" ,"E001");
- return;
- }
- }
- }
- else if(grd_goodreq.col == grd_goodreq.colRef("reqqty"))
- {
- if (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/acptflag") == "Y")
- {
- messageBox("구매접수된 내역은 수정","E001");
- return;
- }
-
- if (model.getValue(cmb_reqpridflag.attribute("ref")) !="1")
- {
- if (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth" ) == "1" &&
- model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/predeptaprvyn") == "Y")
- {
- grd_goodreq.rowStatus(grd_goodreq.row) = "0";
- messageBox("청구승인되었으므로 청구량을 수정" ,"E001");
- return;
- }
- }
- }
-
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : Switch 속성변경 처리하는 함수
- ****************************************************************************************/
- function fViewToggle(pCls) {
- var MOVE_LENGTH = 584;
- if (pCls == 1) {
- grp_main.position.left = 0;
- grp_main.position.width = 1188;
- bbt_large.visible = false;
- //bbt_right.visible = false;
- btn_repeat.visible = true;
- gd_find.visible = false;
- gd_set.visible = false;
- } else if(pCls==2) {
- grp_main.position.left = 0 + MOVE_LENGTH;
- grp_main.position.width = 1188 - MOVE_LENGTH;
- bbt_large.visible = true;
- //bbt_right.visible = true;
- btn_repeat.visible = false;
- gd_find.visible = true;
- gd_set.visible = false;
- } else if(pCls==3) {
- grp_main.position.left = 0 + MOVE_LENGTH;
- grp_main.position.width = 1188 - MOVE_LENGTH;
- bbt_large.visible = false;
- //bbt_right.visible = true;
- btn_repeat.visible = true;
- gd_find.visible = false;
- gd_set.visible = true;
- }
- }
-
- // --------------------------------------------------
- // 물품 찾기 속성변경 처리하는 함수
- // --------------------------------------------------
- function fGoodSearchToggle() {
- if (cpt_cls.attribute("text") =="0") { // 상세접근 조회
- // 메인 Grup
- grd_goodlist.attribute("left" ) = "2" ;
- grd_goodlist.attribute("top" ) = "83" ;
- grd_goodlist.attribute("width" ) = "576";
- grd_goodlist.attribute("height" ) = "574" ;
-
- btn_dtail.attribute("top" ) = "56" ;
- bbt_apply2.attribute("top" ) = "56" ;
- lin_goodlist.attribute("y1" ) = "78";
- lin_goodlist.attribute("y2" ) = "78";
- grp_dtail.attribute("visibility") ="hidden" ;
- cpt_cls.attribute("text") = "1";
-
- } else { // 줄이기
- // 메인 Grup
- grd_goodlist.attribute("left" ) = "2" ;
- grd_goodlist.attribute("top" ) = "285" ;
- grd_goodlist.attribute("width" ) = "576";
- grd_goodlist.attribute("height" ) = "372" ;
- btn_dtail.attribute("top" ) = "258" ;
- bbt_apply2.attribute("top" ) = "258" ;
- lin_goodlist.attribute("y1" ) = "280";
- lin_goodlist.attribute("y2" ) = "280";
- grp_dtail.attribute("visibility") ="visible" ;
-
- cpt_cls.attribute("text") = "0";
- }
-
- grd_goodlist.refresh();
- }
- // --------------------------------------------------
- // 물품 찾기 속성변경 처리하는 함수
- // --------------------------------------------------
- var vInstcd = "";
- var vReqdeptcd = "";
-
- function fReqSetList(flag) {
- var vReqSetFlag = "N";
-
- var instcd = grp_sea.opt_instcd.value;
- var reqdeptcd = grp_sea.cmb_reqdeptcd.value;
-
- if (instcd == "") {
- sysf_messageBox("기관을 " ,"C002");
- return;
- }
- //
- if (reqdeptcd == ""){
- sysf_messageBox("청구 부서를 " ,"C002");
- return;
- }
- //
- if (vInstcd != instcd) vReqSetFlag = "Y";
- if (vReqdeptcd != reqdeptcd) vReqSetFlag = "Y";
- /*
- if(flag != 1) {
- if (vReqSetFlag == "N") return;
- }
- */
- vInstcd = instcd;
- vReqdeptcd = reqdeptcd;
- ds_send_reqset.setColumn( 0, "instcd" , instcd);
- ds_send_reqset.setColumn( 0, "reqdeptcd" , reqdeptcd);
- // submit("TRRSD00211");
- var oParam = {};
- oParam.id = "TRRSD00211";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqGetReqMstSetList";
- oParam.inds = "req=ds_send_reqset";
- oParam.outds = "ds_main_list_reqmst_reqsetmst=reqsetmst";
- oParam.async = false;
- oParam.callback = "cf_TRRSD00211";
- tranf_submit(oParam);
- }
- function cf_TRRSD00211(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- }
-
- // 부서 청구SET 물품
- function fReqSetRead(pRow) {
- ds_send_reqset.setColumn( 0, "instcd" , ds_main_list_reqmst_reqsetmst.getColumn(pRow, "instcd"));
- ds_send_reqset.setColumn( 0, "reqdeptcd" , ds_main_list_reqmst_reqsetmst.getColumn(pRow, "reqdeptcd"));
- ds_send_reqset.setColumn( 0, "reqprid" , ds_main_list_reqmst_reqsetmst.getColumn(pRow, "reqprid"));
- ds_send_reqset.setColumn( 0, "goodsetnm" , ds_main_list_reqmst_reqsetmst.getColumn(pRow, "goodsetnm"));
- // submit("TRRSD00210"); // 청구마감일자 조회 purcbaseweb
- var oParam = {};
- oParam.id = "TRRSD00210";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqGetReqSetList";
- oParam.inds = "req=ds_send_reqset";
- oParam.outds = "ds_main_list_reqset_reqsetlist=reqsetlist";
- oParam.async = false;
- oParam.callback = "cf_TRRSD00210";
- tranf_submit(oParam);
- }
- /*-**************************************************************************************
- * Argument : N/A
- * Description : 선택물품을 적용
- ****************************************************************************************/
- function fSelectDataApply2() {
-
- dsf_createDs("ds_temp_copyData");
- var chk;
- for(var i = 0; i < ds_main_list_reqset_reqsetlist.rowcount; i++) {
- chk = ds_main_list_reqset_reqsetlist.getColumn(i, "chk");
-
- if(chk=="true") {
- var addRow = ds_main_list_goodreq_goodreqlist.addRow();
-
- var instcd = ds_main_list_reqset_reqsetlist.getColumn(i, "instcd");
- var goodcd = ds_main_list_reqset_reqsetlist.getColumn(i, "goodcd");
- var goodnm = ds_main_list_reqset_reqsetlist.getColumn(i, "goodnm");
- var goodspec = ds_main_list_reqset_reqsetlist.getColumn(i, "goodspec");
- var setunit = ds_main_list_reqset_reqsetlist.getColumn(i, "setunit");
- var goodflag = ds_main_list_reqset_reqsetlist.getColumn(i, "goodflag");
- var reqflag = ds_main_list_reqset_reqsetlist.getColumn(i, "reqflag");
- var reqmthd = ds_main_list_reqset_reqsetlist.getColumn(i, "reqmthd");
- var reqpackqty = ds_main_list_reqset_reqsetlist.getColumn(i, "goodqty");
- var delivedeptcd = ds_main_list_reqset_reqsetlist.getColumn(i, "reqfnldeptcd");
- var ddavguseqty = ds_main_list_reqset_reqsetlist.getColumn(i, "ddavguseqty");
- var basevol = ds_main_list_reqset_reqsetlist.getColumn(i, "basevol");
- var purcflag = ds_main_list_reqset_reqsetlist.getColumn(i, "purcflag");
- var requnit = ds_main_list_reqset_reqsetlist.getColumn(i, "requnit");
-
- var exchqty = ds_main_list_reqset_reqsetlist.getColumn(i, "exchqty");
- var purcunit = ds_main_list_reqset_reqsetlist.getColumn(i, "purcunit");
-
-
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "chk", "");
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "instcd", instcd);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "goodcd", goodcd);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "goodnm", goodnm);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "goodspec", goodspec);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "setunit", setunit);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "goodflag", goodflag);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqflag", reqflag);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqmthd", reqmthd);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqpackqty", reqpackqty);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "delivedeptcd", delivedeptcd);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "ddavguseqty", ddavguseqty);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "basevol", basevol);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "requnit", requnit);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqqty", reqpackqty * exchqty);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "safeqty", 0);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "prepargodqty", 0);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "purcflag", 0);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "exchqty", exchqty);
-
- //parseFloat(ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition,"exchqty"));
- //parseFloat(ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition,"reqpackqty"));
-
-
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqpackperunitqty", exchqty);
- ds_main_list_goodreq_goodreqlist.setColumn(addRow, "reqpackunit", purcunit);
- }
- }
-
-
-
-
- }
- function cf_TRRSD00210(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 선택물품을 적용
- ****************************************************************************************/
- function fSelectDataApply(pGridSource, pGridTarget, pGridNm, pQtyNm) {
- ds_copynode.clearData();
-
- var dsGridSource = eval(pGridSource.binddataset);
- var dsGridTarget = eval(pGridTarget.binddataset);
- var vSelect = 0;
- for ( var row = 0 ; row < dsGridSource.rowcount ; row++) {
- if(dsGridSource.getColumn(row, "select" ) == "true")
- {
- if (utlf_isNull(dsGridTarget.lookup("goodcd", dsGridSource.getColumn(row, "goodcd"), "goodcd")) )
- vSelect++;
- else if (!utlf_isNull(dsGridTarget.lookup("goodcd", dsGridSource.getColumn(row, "goodcd"), "goodcd")) &&
- utlf_isNull(dsGridTarget.lookup("allsizespecid", dsGridSource.getColumn(row, "allsizespecid"), "allsizespecid")))
- vSelect++;
- else
- dsGridSource.setColumn(row, "select" , "false");
- } else {
- dsGridSource.setColumn(row, "select" , "false");
- }
- }
- if (vSelect < 1) return;
-
- dsGridSource.filter("select=='true'");
- var rCVS = dsf_getDsCSV(dsGridSource);
- dsGridSource.filter("");
- var cur_row = pGridTarget.rowposition;
- //var status = dsTarget.getColumn(cur_row, "m");
-
- dsf_setCSVToDs("ds_copynode"+"_"+pGridNm, rCVS);
-
- fSettingGoodList("ds_copynode", pGridNm , pQtyNm);
- for (var row = 0 ; row < dsGridSource.rowcount ; row++) {
- dsGridSource.setColumn(row, "select" , "false");
- }
- }
-
- var vAllSizeCol = 0;
- var vAllSizeRow = 0;
- var vAllSizePath = "ds_main_codelist";
- var vGoodReqPath = "ds_main_list_goodreq_goodreqlist";
- /****************************************************************************************
- * Argument : N/A
- * Description : All Size 읽어오는 함수
- ****************************************************************************************/
- function fAllSizeRead(pRow, pCol, pPos) {
- var iClickY = pPos - 100;
- vAllSizeCol = pCol;
- vAllSizeRow = pRow;
- if (iClickY > 375) iClickY = iClickY - 319;
- grp_allsize.position.top = iClickY;
- grp_allsize.visible = true;
- ds_send_allsize.setColumn( 0, "instcd", grp_sea.opt_instcd.value);
- ds_send_allsize.setColumn( 0, "goodcd", eval(vGoodReqPath).getColumn(pRow, "goodcd"));
- var oParam = {};
- oParam.id = "TRRSD00281";
- oParam.service = "purccommonapp.PurcCommon";
- oParam.method = "reqGetGoodCode";
- oParam.inds = "req=ds_send_allsize";
- oParam.outds = "ds_main_codelist=codelist";
- oParam.async = false;
- //oParam.callback = "cf_TRRSD00281";
- tranf_submit(oParam);
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : All Size 선택
- ****************************************************************************************/
- function fAllSizeSelect() {
- grp_allsize.visible = false ;
- var vQty = "0";
- var vSize = "";
- var vSpec = "";
- var vModel = "";
- var vCheck = "";
- var vPath = "";
- var vTarget = "";
- var vSource = "";
- var nTarget = "";
- var nSource = "";
- var vGoodcd = eval(vGoodReqPath).getColumn(vAllSizeRow, "goodcd");
- for (var i = 0; i < ds_main_codelist.rowcount; i++) {
- if (eval(vAllSizePath).getColumn(i, "chk") == "true") {
- vSize = dsf_getColumnNullToEmpty(eval(vAllSizePath), i, "allsizespecid");
- vSpec = dsf_getColumnNullToEmpty(eval(vAllSizePath), i, "goodspec" );
- vModel = dsf_getColumnNullToEmpty(eval(vAllSizePath), i, "goodmodel" );
- vQty = dsf_getColumnNullToEmpty(eval(vAllSizePath), i, "qty" );
- if (utlf_isNull(eval(vGoodReqPath).lookupExpr("goodcd=='"+vGoodcd+"' && allsizespecid=='"+vSize+"'", "goodcd"))) {
- if (vCheck == "") {
- vCheck = "Y";
- vTarget = vGoodReqPath;
- nTarget = vAllSizeRow;
- if (eval(vGoodReqPath).getRowType(vAllSizeRow) == 1) grdf_setStatus(grp_main.grd_goodreq, "U", [vAllSizeRow]);
- } else {
- misfGridIUD(grp_main.grd_goodreq, "A");
- var addRow = eval(vGoodReqPath).rowcount - 1;
- fDefaultSetting(addRow);
- vTarget = vGoodReqPath;
- nTarget = addRow;
- vSource = vGoodReqPath;
- nSource = vAllSizeRow;
- fSettingGoodData(vTarget, vSource, "basevol", "requnit", "S", nTarget, nSource);
- dsf_makeValue(eval(vGoodReqPath), "backGroudColor", "string", "#FFFF00", addRow);
- }
- } else {
- // vPath = vGoodReqPath+"[goodcd='"+ vGoodcd+"' and allsizespecid='"+vSize+"']";
- }
- eval(vTarget).setColumn( nTarget, "allsizeyn", Y);
- eval(vTarget).setColumn( nTarget, "allsizespecid", vSize);
- eval(vTarget).setColumn( nTarget, "goodspec", vSpec);
- eval(vTarget).setColumn( nTarget, "goodmodel", vModel);
- if (vQty != "" && vQty != "0") {
- eval(vTarget).setColumn( nTarget, "stocqty", vQty);
- }
- }
- }
-
- grp_main.grd_goodreq.setCellProperty("body",9,"background","BIND(backGroudColor)");
- grp_main.grd_goodreq.setCellProperty("body",9,"background2","BIND(backGroudColor)");
- }
- /**
- * @ver : 2010-10-17
- * @desc : 신규 체크박스 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fNewReqNo() {
-
- if ( grp_sea.chk_reqnonew.value == "Y" ){
- //if (grp_biz.grp_main.grd_goodreq.rowcount < 1) return;
- var RetCls = sysf_messageBox("현재일자로 신규 생성합니다","Q003");
- if ( RetCls == 6 ){
- grp_sea.chk_reqnonew.value = "Y"; // reqnonew 인스턴스값이 <> N Y </> 으로 나와서 해당부분에서 처리함(문제발생시 if문 삭제)
- var ReqNo = ds_main_DeptReqnoLists_reqnolist.getColumn(0, "reqno");
- var reqnodelist = ds_main_DeptReqnoLists_reqnolist.rowcount - 1;
- var MaxReqno = "";
- // var comboItemNodeSet = "";
- dsf_createDs("ds_comboItemNodeSet");
-
- for(var k = reqnodelist; k >= 0; k--){
- if(k == reqnodelist){
- MaxReqno = ds_main_DeptReqnoLists_reqnolist.getColumn(k, "reqno");
- // comboItemNodeSet = "ds_main_DeptReqnoLists_reqnolist["+k+"]";
- dsf_copyColInfo(ds_comboItemNodeSet, ds_main_DeptReqnoLists_reqnolist);
- ds_comboItemNodeSet.copyRow(ds_comboItemNodeSet.addRow(), ds_main_DeptReqnoLists_reqnolist, k);
- }
- break;
- }
-
- // var comboValueRef = "reqno";
- // var itemNode = instance1.createNode("element", instance1.selectSingleNode(comboItemNodeSet).nodeName, "");
- // var valueNode = instance1.createNode("element", comboValueRef, "");
- //
- // valueNode.value = "000"+(parseInt(MaxReqno)+1);
- // itemNode.appendChild(valueNode);
-
- dsf_makeValue(ds_comboItemNodeSet, "reqno", "string", "000"+(parseInt(MaxReqno)+1));
-
- // var destNode = instance1.selectSingleNode(comboItemNodeSet);
- // var pDestNode = destNode.parentNode;
- //
- // pDestNode.insertAfter(itemNode, destNode);
- var nRow = ds_main_DeptReqnoLists_reqnolist.addRow();
- ds_main_DeptReqnoLists_reqnolist.copyRow(nRow, ds_comboItemNodeSet, 0);
-
- ds_send_goodreq.setColumn( 0, "reqno","000"+(parseInt(MaxReqno)+1));
-
- frmf_inputEnterKey("grp_sea.cmb_reqno", "onitemchanged", new ItemChangeEventInfo);
- }else if ( RetCls == 7 ){
- // grp_biz.grp_sea.chk_reqnonew.value = false;
- ds_send_save_autoaprv.setColumn(0, "reqnonew", "");
- return;
- }
- }else{
- fDeptReqNoQuery();
- }
- }
-
- // 신규 Check 시 작업구분
- function fNewReqNoVisibility() {
- if ( model.getValue(chk_reqnonew.attribute("ref")) == "Y") {
- // cmb_reqno.disabled = true;
- ipt_reqdd.attribute("visibility") = "hidden";
- ipt_reqddnew.attribute("visibility") = "visible" ;
- // cmb_reqno.attribute("visibility") = "hidden" ;
- // cmb_hidden.attribute("visibility") = "visible" ;
-
- model.setValue(ipt_reqddnew.attribute("ref"), getCurrentDate() ); //신규로 체크되면 무조건 오늘날짜로 셋팅된다
- } else {
- // cmb_reqno.disabled = false;
- ipt_reqddnew.attribute("visibility") = "hidden";
- ipt_reqdd.attribute("visibility") = "visible" ;
- // cmb_reqno.attribute("visibility") = "visible" ;
- // cmb_hidden.attribute("visibility") = "hidden" ;
- }
- model.refresh();
- }
-
- /****************************************************************************************
- * Argument : prow : 행번호
- * Description :
- ****************************************************************************************/
- function fSettingGoodData(pTarget, pSource, pUserqtynm, pRequnit, pCls, nTarget, nSource) {
- var vReqDept = grp_sea.cmb_reqdeptcd.value; // 청구부서
- var vReqprid = grp_sea.cmb_reqpridflag.value; // 청구주기
- vReqAuth = fPurcAuthInfoRow(vReqDept, vReqprid, pSource.getColumn(0,"reqflag")); // 권한 Check
- pTarget.setColumn(nTarget,"goodcd" , pSource.getColumn(nSource,"goodcd" ));
- pTarget.setColumn(nTarget,"goodnm" , pSource.getColumn(nSource,"goodnm" ));
- pTarget.setColumn(nTarget,"goodspec" , pSource.getColumn(nSource,"goodspec" ));
- pTarget.setColumn(nTarget,"reqflag" , pSource.getColumn(nSource,"reqflag" ));
- pTarget.setColumn(nTarget,"goodflag" , pSource.getColumn(nSource,"goodflag" ));
- pTarget.setColumn(nTarget,"goodmodel" , pSource.getColumn(nSource,"goodmodel" ));
- pTarget.setColumn(nTarget,"prodcmpynm" , pSource.getColumn(nSource,"prodcmpynm" ));
- pTarget.setColumn(nTarget,"purcunit" , pSource.getColumn(nSource,"purcunit" ));
- pTarget.setColumn(nTarget,"purcunit" , pSource.getColumn(nSource,"purcunit" ));
- pTarget.setColumn(nTarget,"basevol" , pSource.getColumn(nSource, pUserqtynm ));
- pTarget.setColumn(nTarget,"stocqty" , 0 );
- pTarget.setColumn(nTarget,"reqqty" , pSource.getColumn(nSource, pUserqtynm ));
- pTarget.setColumn(nTarget,"reqauth" , vReqAuth );
- pTarget.setColumn(nTarget,"requnit" , pSource.getColumn(nSource, pRequnit ));
- pTarget.setColumn(nTarget,"minexch" , pSource.getColumn(nSource,"minexch" ));
- pTarget.setColumn(nTarget,"ddavguseqty" , pSource.getColumn(nSource,"ddavguseqty" ));
- pTarget.setColumn(nTarget,"exchqty" , pSource.getColumn(nSource,"exchqty" ));
- pTarget.setColumn(nTarget,"reqmthdflag" , "3" );
- pTarget.setColumn(nTarget,"allsizeyn" , pSource.getColumn(nSource,"allsizeyn" ));
- pTarget.setColumn(nTarget,"reqcollcdeptcd", pSource.getColumn(nSource,"reqcollcdeptcd"));
- pTarget.setColumn(nTarget,"setunit" , pSource.getColumn(nSource,"setunit" ));
- pTarget.setColumn(nTarget,"reqpackqty" , 0 );
-
- if(pSource.getColumn(nSource,"goodflag")=="PH"){
- pTarget.setColumn(nTarget,"reqpackunit" , pSource.getColumn(nSource,"purcunit" ));
- pTarget.setColumn(nTarget,"reqpackperunitqty" , pSource.getColumn(nSource,"exchqty" ));
- }else{
- pTarget.setColumn(nTarget,"reqpackperunitqty" , 0);
- }
-
- if (pCls == "S") {
- pTarget.setColumn(nTarget,"delivedeptcd", pSource.getColumn(nSource,"delivedeptcd"));
- }
- else {
- pTarget.setColumn(nTarget,"delivedeptcd", pSource.getColumn(nSource,"reqfnldeptcd"));
- }
-
- if (utlf_isNull(pTarget.getColumn(nTarget,"delivedeptcd"))) {
- pTarget.setColumn(nTarget,"delivedeptcd", gPurcDeptcd);
- }
- pTarget.setColumn(nTarget,"rgstqty" , "0" );
- if (vReqAuth == "2") {
- misfSetReadOnlyCol(grp_main.grd_goodreq, "deptaprvyn", false);
- }else{
- misfSetReadOnlyCol(grp_main.grd_goodreq, "deptaprvyn", true);
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 물품검색 TAB 클릭시
- ****************************************************************************************/
- function fGoodListReady(pGoodCd, pGoodName) {
- misfGridInit(gd_find.grd_goodlist);
- fGoodListKeySet(); // 물품검색 기본 KEY SET
- // -------------------------------------------------------------------------------------------
- // sql문에 청구부서별 안전재고를 가져와야한다.
- // 프로그램 call시 변경해야한다. 인자값이 없을경우 해당 user값으로 setting한다.
- // -------------------------------------------------------------------------------------------
- if(utlf_isNull(eval(PURTARGET_NODE).getColumn(0,"reqdeptcd")))
- ds_send_goodlist.setColumn( 0, "reqdeptcd", sysf_getUserInfo("dutplcecd"));
- else ds_send_goodlist.setColumn( 0, "reqdeptcd", grp_sea.cmb_reqdeptcd.value);
- // --------------------------------------------------------------------------
- // 영양팀 명칭검색으로 이 window 가 open시 기본값 셋팅한다.
- // --------------------------------------------------------------------------
- if (!utlf_isNull(pGoodCd)) {
- ds_send_goodlist.setColumn( 0, "goodcd", pGoodCd);
- }
- else if (!utlf_isNull(pGoodName))
- {
- ds_send_goodlist.setColumn( 0, "goodnm", pGoodName);
- }
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 물품검색 기본 KEY SET
- ****************************************************************************************/
- function fGoodListKeySet() {
- ds_send_goodlist.setColumn( 0, "lrgcd" , "");
- ds_send_goodlist.setColumn( 0, "mdlcd" , "");
- ds_send_goodlist.setColumn( 0, "instcd" , grp_sea.opt_instcd.value);
- ds_send_goodlist.setColumn( 0, "reqprid" , grp_sea.cmb_reqpridflag.value);
- ds_send_goodlist.setColumn( 0, "goodflag", gd_find.group2.cmb_goodflag.value);
- ds_send_goodlist.setColumn( 0, "instcdnm" , grp_sea.opt_instcdnm.value);
- ds_send_goodlist.setColumn( 0, "reqpridnm" , grp_sea.cmb_reqpridflag.text);
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 물품검색 조회
- ****************************************************************************************/
- function fGoodListSearch() {
- misfGridInit(gd_find.grd_goodlist);
- grp_sea.tmpreqdeptcd.value = grp_sea.cmb_reqdeptcd.value; //청구부서 물품조회시 추가하는 부분
- if(utlf_isNull(grp_sea.opt_instcd.value)) return;
- if (ds_send.getColumn(0, "goodnm") != "") {
- ds_send.setColumn( 0, "indexnm","");
- }
- ds_send_goodlist.setColumn( 0, "reqprid" , "");
- ds_send_goodlist.setColumn( 0, "instcd" , ds_send_goodreq.getColumn(0, "instcd"));
- ds_send_goodlist.setColumn( 0, "goodflag", ds_send_goodreq.getColumn(0, "goodflag"));
- //작업구분에 따라서 일반청구인지 처방집계인지 구분
- //청구와 반납일경우는 일반청구 즉 reqcheck Y
- //상비품청구 와 상비품반납일 경우는 처방집계 즉 reqcheck null
- ds_send_goodlist.setColumn( 0, "workflag" , ds_send_goodreq.getColumn(0, "workflag"));
-
- //ds_send_goodlist.setColumn( 0, "reqmthd" , "3");
- var oParam = {};
- oParam.id = "TRRSD00406";
- oParam.service = "purccommonapp.PurcCommon";
- oParam.method = "reqGetGoodListByCond";
- oParam.inds = "req=ds_send_goodlist";
- oParam.outds = "ds_main_GoodLists_goodlist=goodlist";
- oParam.async = false;
- oParam.callback = "cf_TRRSD00406";
- tranf_submit(oParam);
- }
- function cf_TRRSD00406(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- ds_main_GoodLists_goodlist.updatecontrol = false;
- ds_main_GoodLists_goodlist.addColumn("prcpqty","string");
- ds_main_GoodLists_goodlist.addColumn("prcpunit","string");
- dsf_setFixVal(ds_main_GoodLists_goodlist,"select:false");
- ds_main_GoodLists_goodlist.updatecontrol = true;
- }
-
- // --------------------------------------------------
- // 물품찾기 처리하는 함수
- // --------------------------------------------------
- function fReqFlagCheck() {
- //청구권/승인권 부서 조회.
- rszfReqDeptGetComboList("cmb_reqdeptcd", model.getValue(opt_instcd.attribute("ref")), getUserInfo("userid"), cmb_reqflag.value);
-
- //rszfReqDeptGetComboList("cmb_reqdeptcd", model.getValue(opt_instcd.attribute("ref")), '80030647', 'S');
- //청구부서의 순서가 0번째인것을 선택하는데 여기서 부서와 비교해서 cmb_reqdeptcd.select()를
- //해당부서와 동일하게 해서 보여지도록 한다
-
- model.setValue(cmb_reqpridflag.attribute("ref"), "");
- rszfComboReqPridList(cmb_reqpridflag,model.getValue(opt_instcd.attribute("ref")),model.getValue(cmb_reqflag.attribute("ref")));
-
- cmb_reqpridflag.refresh();
- cmb_reqpridflag.select(0);
- // ----------------------------------------------------------------------------------------------------
- // 위의 select(0); 에서 cmb_reqpridflag value가 있으면 reqpridflag xforms-value_changed 가 발생한다.
- // ----------------------------------------------------------------------------------------------------
- model.setValue(opt_goodflag.attribute("ref"), rszfGetGoodFlagByReqFlag(model.getValue(opt_instcd.attribute("ref")),model.getValue(cmb_reqflag.attribute("ref"))));
- fGoodListKeySet(); // 물품검색 기본 KEY SET
-
- if (model.getValue(cmb_reqpridflag.attribute("ref")).length == 0 ) {
- fSetReqAuth();
- btn_search.dispatch("DOMActivate");
- }
-
- //청구 마지막 일자 조회.
- fLastDaySearch();
-
- //청구일자 기한체크.
- if (fLastDayCheck()) {
- messageBox("불출부서의 청구일자기한을 벗어났습니다. \n 다시 입력 하세요.", "");
- model.setValue(ipt_reqdd.attribute("ref"), model.getValue(ipt_todd.attribute("ref")) );
- return;
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 청구부서 Set
- ****************************************************************************************/
- function fReqdeptCopy(){
- var cPath = "ds_init_CopyData";
- var sPath = "ds_main_ReqpsnLists_reqpsnlist";
- var tPath = "ds_init_ReqDeptLists_reqdeptlist";
- var iDataCnt = eval(sPath).rowcount;
- if (iDataCnt < 1) {
- return;
- }
- eval(tPath).clear();
- dsf_copyColInfo(eval(tPath), eval(cPath));
-
- var iDataCnt = eval(sPath).rowcount;
- var Idx = 0;
-
- // -----------------------------------------------------------------------------------------------
- // 청구부서를 세션의 부서와 비교해서 cmb_reqdeptcd.select()를
- // 해당부서와 동일하게 해서 보여지도록 한다. 부서가 없을 경우 0번째 부서가 콤보에 보여짐
- // 사용자의 세션부서가 청구부서의 젤 상단에 위치하도록 노드셋 데이터 수정 하는 부분
- // -----------------------------------------------------------------------------------------------
- if(!utlf_isNull(eval(sPath).lookup("reqdeptcd",sysf_getUserInfo("dutplcecd"),"reqdeptnm"))) {
- eval(cPath).setColumn(0,"value", eval(sPath).lookup("reqdeptcd",sysf_getUserInfo("dutplcecd"),"reqdeptcd"));
- eval(cPath).setColumn(0,"label", eval(sPath).lookup("reqdeptcd",sysf_getUserInfo("dutplcecd"),"reqdeptnm"));
- eval(tPath).addRow();
- eval(tPath).copyRow(Idx, eval(cPath), 0);
- Idx++;
- }
- // 청구부서 Set
- for (var k = 0; k < iDataCnt; k++){
- vReqDept = eval(sPath).getColumn(k, "reqdeptcd");
- vReqDeptNm = eval(sPath).getColumn(k, "reqdeptnm");
- if (!utlf_isNull(vReqDeptNm) && utlf_isNull(eval(tPath).lookup("value",vReqDept,"value"))) {
- eval(cPath).setColumn( 0, "value", vReqDept);
- eval(cPath).setColumn( 0, "label", vReqDeptNm);
- eval(tPath).addRow();
- eval(tPath).copyRow(Idx, eval(cPath), 0);
- Idx++;
- } //end if
- } //end for
- grp_sea.cmb_reqdeptcd.index = 0;
-
- fReqpridCopy(); // 청구 주기Set
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 청구 주기Set
- ****************************************************************************************/
- function fReqpridCopy(){
- var cPath = "ds_init_CopyData"
- var sPath = "ds_main_ReqpsnLists_reqpsnlist";
- var tPath = "ds_init_ReqpridLists_reqpridlist";
- if(utlf_isNull(grp_sea.cmb_reqdeptcd.value)) {
- sysf_messageBox("청구부서를","C002");
- grp_sea.cmb_reqdeptcd.setFocus();
- return;
- }
- var iDataCnt = eval(sPath).rowcount;
- if(iDataCnt < 1){
- return;
- }
- eval(tPath).clear();
- dsf_copyColInfo(eval(tPath), eval(cPath));
- var Idx = 0;
- var iDataCnt = eval(sPath).rowcount;
- var tReqDept = grp_sea.cmb_reqdeptcd.value;
-
- for(var k = 0 ; k < iDataCnt ; k++){
- var vReqDept = eval(sPath).getColumn(k, "reqdeptcd");
- if(vReqDept == tReqDept){
- vReqPrid = eval(sPath).getColumn(k, "reqprid");
- vReqPridNm = eval(sPath).getColumn(k, "reqpridnm");
- if(!utlf_isNull(vReqPridNm) && utlf_isNull(eval(tPath).lookup("value", vReqPrid, "value"))) {
- eval(cPath).setColumn( 0, "value", vReqPrid);
- eval(cPath).setColumn( 0, "label", vReqPridNm);
- eval(tPath).addRow();
- eval(tPath).copyRow(Idx, eval(cPath), 0);
- Idx++;
- }
- }
- }
- if(ds_send_goodlist.getColumn(0, "purcdeptflag") == "P"){//구매부서구분:P
- var codynode = eval(tPath).rowcount;
- if(codynode < 1) {
- eval(cPath).setColumn( 0, "value", 1);
- eval(cPath).setColumn( 0, "label", 일);
- eval(tPath).addRow();
- eval(tPath).copyRow(0, eval(cPath), 0);
- eval(cPath).setColumn( 0, "value", 4);
- eval(cPath).setColumn( 0, "label", 월);
- eval(tPath).addRow();
- eval(tPath).copyRow(1, eval(cPath), 0);
- eval(cPath).setColumn( 0, "value", 2);
- eval(cPath).setColumn( 0, "label", 주);
- eval(tPath).addRow();
- eval(tPath).copyRow(2, eval(cPath), 0);
- }
- }
- grp_sea.cmb_reqpridflag.index = 0;
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 청구승인자 Check
- ****************************************************************************************/
- function fPurcAuthInfo() {
- vPurcAuth = "1";
- grp_main.grp_button.ckb_accept.value = "";
- var sPath = "ds_main_ReqpsnLists_reqpsnlist";
- var iDataCnt = eval(sPath).rowcount;
- if (iDataCnt < 1) {
- return;
- }
- eval(tPath).clearData();
- var tReqDept = grp_sea.cmb_reqdeptcd.value; // 청구부서
- var tReqprid = grp_sea.cmb_reqpridflag.value; // 청구주기
- for (var k = 0; k < iDataCnt; k++){
- vReqDept = eval(sPath).getColumn(k, "reqdeptcd"); // 청구부서
- vReqprid = eval(sPath).getColumn(k, "reqprid"); // 청구주기
- if ((vReqDept == tReqDept) &&
- (vReqprid == tReqprid) ) {
- if (eval(sPath).getColumn(k, "reqaprvflag") == "2") {
- vPurcAuth = "2";
- grp_main.grp_button.ckb_accept.value = "Y";
- break;
- }
- }
- }
- }
- /****************************************************************************************
- * Argument : pReqDept : 부서코드
- * : pReqprid : 청구번호
- * : pReqFlag : 청구구분
- * Description : 청구승인자 Check Row별 Check
- ****************************************************************************************/
- function fPurcAuthInfoRow(pReqDept,pReqprid,pReqFlag) {
- var sPath = "ds_main_ReqpsnLists_reqpsnlist";
- var vReqAuth = eval(sPath).lookupExpr("reqdeptcd=='"+pReqDept+"' && reqprid=='"+pReqprid+"' && reqflag=='"+pReqFlag+"'","reqaprvflag"); // 청구권한
- vReqAuth = (vReqAuth == "") ? "1" : vReqAuth;
- return vReqAuth;
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description :
- ****************************************************************************************/
- function fDeptReqNoQuery() {
- if (utlf_transNullToEmpty(grp_sea.cmb_reqdeptcd.value) != "" && // 청구부서
- utlf_transNullToEmpty(grp_sea.cmb_reqpridflag.value)!= "" && // 청구주기
- utlf_transNullToEmpty(grp_sea.ipt_reqdd.value) != "" && // 청구일자
- utlf_transNullToEmpty(grp_sea.cmb_workflag.value) != "" ) // 작업구분 의 값이 모두 있을 때 청구 번호를 가져온다. [20080129 YYJ]
- {
- var oParam = {};
- oParam.id = "TRRSD00408";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqGetDeptReqNo";
- oParam.inds = "req=ds_send_goodreq";
- oParam.outds = "ds_main_DeptReqnoLists_reqnolist=reqnolist";
- oParam.async = false;
- //oParam.callback = "cf_TRRSD00408";
- tranf_submit(oParam);
- var nodelist = ds_main_DeptReqnoLists_reqnolist.rowcount;
- if(nodelist < 1){
- dsf_makeValue( ds_main_DeptReqnoLists_reqnolist, "reqno", "string", "0001");
- }
- grp_sea.cmb_reqno.index = 0;
- }
- }
- // 청구 구분 Check
- function fReqFlagCheck(){
- if(model.getValue(cmb_reqflag.attribute("ref")) == 'H'){
- grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = false;
- }else{
- grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = true;
- }
-
- /* 위의 select(0); 에서 cmb_reqpridflag value가 있으면 reqpridflag xforms-value_changed 가 발생한다.
- */
-
- // opt_goodflag.value = rszfGetGoodFlagByReqFlag(opt_instcd.value,cmb_reqflag.value);
- fGoodListKeySet(); // 물품검색 기본 KEY SET
-
- if (model.getValue(cmb_reqpridflag.attribute("ref")).length == 0 ) {
- fSetReqAuth();
- btn_search.dispatch("DOMActivate");
- }
-
- //청구 마지막 일자 조회.
- fLastDaySearch();
- //청구일자 기한체크.
- if(fLastDayCheck())
- {
- messageBox("불출부서의 청구일자기한을 벗어났습니다. \n 다시 입력 하세요.", "");
- model.setValue(ipt_reqdd.attribute("ref"), model.getValue(ipt_todd.attribute("ref")) );
- return;
- }
- }
- // 청구 구분 Check
- function fReqFlagCheck_bak(){
- if(model.getValue(cmb_reqflag.attribute("ref")) == 'H'){
- grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = false;
- }else{
- grd_goodreq.colHidden(grd_goodreq.colRef("rgstqty")) = true;
- }
-
- //청구부서 청구권/승인권 부서 조회.
- rszfReqDeptGetComboList("cmb_reqdeptcd", model.getValue(opt_instcd.attribute("ref")), getUserInfo("userid"), model.getValue(cmb_reqflag.attribute("ref")));
-
- model.setValue(cmb_reqpridflag.attribute("ref"), "");
- rszfComboReqPridList(cmb_reqpridflag,model.getValue(opt_instcd.attribute("ref")),model.getValue(cmb_reqflag.attribute("ref")));
- cmb_reqpridflag.refresh();
- cmb_reqpridflag.select(0);
- /* 위의 select(0); 에서 cmb_reqpridflag value가 있으면 reqpridflag xforms-value_changed 가 발생한다.
- */
-
- model.setValue(opt_goodflag.attribute("ref") , rszfGetGoodFlagByReqFlag(model.getValue(opt_instcd.attribute("ref")),model.getValue(cmb_reqflag.attribute("ref"))) );
- fGoodListKeySet(); // 물품검색 기본 KEY SET
-
- if (model.getValue(cmb_reqpridflag.attribute("ref")).length == 0 )
- {
- fSetReqAuth();
- //btn_search.dispatch("DOMActivate");
- }
-
- //청구 마지막 일자 조회.
- fLastDaySearch();
- //청구일자 기한체크.
- if(fLastDayCheck())
- {
- messageBox("불출부서의 청구일자기한을 벗어났습니다. \n 다시 입력 하세요.", "");
- model.setValue(ipt_reqdd.attribute("ref"), model.getValue(ipt_todd.attribute("ref")) );
- return;
- }
- }
- // 청구구분
- var tReqFlagData = "A." // 01 Y 의료소모품
- + "B." // 02 Z 일반소모품
- + "C." // 03 K 의료비품
- + "D." // 04 G 일반비품
- + "E." // 05 P 약품및재료
- + "F." // 06 P 제제약품
- + "G." // 07 E 장비
- + "H." // 08 P 수액
- + "I." // 09 P 조영제
- + "S." // 10 B 수리관리
- + "X." // 11 T 교환물품
- + "Y." // 12 T 청구물품
- + "Z" ; // 13 T 멸균의뢰
-
- var tReqFlag = tReqFlagData.split(".");
-
- // 물품구분
- // [2010.08.26]AS-IS 코드 TO_BE 코드 전환을 위한 물품구분 변경 (goodflag= P) => (goodflag= PH)
- var tGoodFlagData = "Y." // 01 의료소모품
- + "Z." // 02 일반소모품
- + "U." // 03 의료비품
- + "GE." // 04 일반비품
- + "PH." // 05 약품
- + "PH." // 06 약품
- + "PH." // 07 약품및재료
- + "PH." // 08 약품
- + "PH." // 09 약품
- + "BC." // 10 수리부품
- + "TM." // 11 공급실물품
- + "TM." // 12 공급실물품
- + "TM" ; // 13 공급실물품
- var tGoodFlag = tGoodFlagData.split(".");
- var tPath = "/root/init/cmb_goodflag";
- var sPath = "/root/init/cmb_goodflagcopy";
-
- //
- function fReqFagChange(pReqFlag) {
-
- for (i = 0; i < tReqFlag.length; i++) {
- if (tReqFlag[i] == pReqFlag) {
- model.setValue(cmb_goodflag.attribute("ref"), tGoodFlag[i] );
- // alert(tGoodFlag[i]);
- cmb_goodflag.refresh();
- break;
- }
- }
-
- // cmb_goodflag.select(0); //청구구분
- }
-
- /****************************************************************************************
- * Argument : goodflag
- * Description : 부서찾기 기능 설정(구매팀일경우에만),2010-10-18 물품구분 약국담당자일 때 약품으로 셋팅
- ****************************************************************************************/
- function fSetTempDept(goodflag) {
- if((sysf_getUserInfo("dutplcecd")=="3242400000")||(sysf_getUserInfo("dutplcecd")=="3240300000")||(sysf_getUserInfo("dutplcecd")=="3240400000")
- ||(sysf_getUserInfo("dutplcecd")=="3240807000")||(goodflag=="PH")){
- //2011.03.22 비치약품청구 및 응급약물청구시 낱개단위로 청구 가능하게 약무팀 요청
- var sWorkFlag = ds_send_goodreq.getColumn(0, "workflag");
- if((sWorkFlag=="2")||(sWorkFlag=="3")||(sWorkFlag=="4")||(sWorkFlag=="5")){
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","exchqty"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackqty"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackunit"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqqty"),"size",58);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","requnit"),"size",43);
- }else{
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","exchqty"),"size",62);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackqty"),"size",58);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackunit"),"size",43);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqqty"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","requnit"),"size",0);
- }
- ds_send_goodreq.setColumn( 0, "goodflag","PH");
- ds_init.setColumn( 0, "goodflag" ,"PH");
- rszfLMSComboList(gd_find.group2.cmb_goodflag.value, "", "", "gd_find.group2.ipt_lrgcd", "", "L","Y");
-
- gd_find.group2.cap_edicd.visible = false;
- gd_find.group2.ipt_edicd.visible = false;
- gd_find.group2.cap_mngtcls.visible = true;
- gd_find.group2.cmb_mngtcls.visible = true;
- }else{
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","exchqty"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackqty"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqpackunit"),"size",0);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","reqqty"),"size",58);
- grp_main.grd_goodreq.setFormatColProperty(grp_main.grd_goodreq.getBindCellIndex("body","requnit"),"size",43);
- if (goodflag=="init"){ //이걸 타는 경우가 없을듯. 아래행 데이터셋 존재하지 않음
- //ds_init.setColumn( 0, "goodflag" ,ds_init_cmb_goodflag_comcodelist.getColumn(0,"cdid"));
- ds_send_goodreq.setColumn( 0, "goodflag" ,gd_find.group2.cmb_goodflag.value);
- rszfLMSComboList(gd_find.group2.cmb_goodflag.value, "", "", "gd_find.group2.ipt_lrgcd", "", "L","Y");
- }else{
- ds_send_goodreq.setColumn( 0, "goodflag" ,cmb_goodflag.value);
- ds_init.setColumn( 0, "goodflag" ,cmb_goodflag.value);
- }
- gd_find.group2.cap_edicd.visible = true;
- gd_find.group2.ipt_edicd.visible = true;
- gd_find.group2.cap_mngtcls.visible = false;
- gd_find.group2.cmb_mngtcls.visible = false;
- }
- ds_send_goodlist.setColumn( 0, "purcdeptflag" , "X"); //구매부서구분 : P
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 조회해온 부서를 청구부서 콤보에 붙이는 함수
- ****************************************************************************************/
- function fAddReqDeptcdCombo() {
- //tempdeptcd에 값을 reqdetpcd(청구부서) 콤보에 값을 부어준다 (makevaluie)
- var cPath = "ds_init_CopyData" //임시카피노드
- var sPath = "ds_tempdept"; //서버에서가져온부서정보노드
- var tPath = "ds_init_ReqDeptLists_reqdeptlist"; //청구부서 콤보노드
- var iDataCnt = eval(sPath).rowcount; //서버에서 가져온 부서정보노드(무조건 1 아님 0)
- if ( iDataCnt < 1)
- {
- return;
- }
- var ComboDataCnt = parseInt( eval(tPath).rowcount ); //콤보에 노드길이(숫자형으로형변환)
- var vTempDeptCd = eval(sPath).getColumn(0,"tempdeptcd");
- var vTempDeptNm = eval(sPath).getColumn(0,"tempdeptnm");
- if ( !utlf_isNull(vTempDeptCd) )
- {
- eval(cPath).setColumn( 0, "value", vTempDeptCd);
- eval(cPath).setColumn( 0, "label", vTempDeptNm);
- eval(tPath).addRow();
- eval(tPath).copyRow(ComboDataCnt, cPath, 0); //노드에 데이터 부어줌
- grp_sea.cmb_reqdeptcd.index = ComboDataCnt;
- }
- }
-
-
- function fSapReqSetting (fValue) {
- var vPath = "/root/init/workflag/workflaglist";
- var iDataCnt = parseInt( getNodesetCount(vPath) ); // 작업 구분 하위를 가져옴
- var updtdata = getGridUpdateData(grd_goodreq);
-
- if ( updtdata != "") {
- var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 수액청구를 변경","Q003");
- if (ret != 6) {
- if( fValue == "Y" )
- ckb_sapreq.value = "N";
- else
- ckb_sapreq.value = "Y";
- ckb_sapreq.refresh();
- return;
- } else {
- misfGridInit(grd_goodreq);
- fSapReqSetting (fValue);
- if (cmb_reqno.value != "")
- btn_search.dispatch("DOMActivate");
- } // if not OK
- }else{
- if( fValue == "Y" || model.getXPathValue(vPath+"[value='6']/value") =="" ) {
- cmb_workflag.disabled="true" ;
- model.makeValue(vPath+"[" +(iDataCnt+1)+ "]/value", "6" ); // 작업구분 처방 청구 추가
- model.makeValue(vPath+"[" +(iDataCnt+1)+ "]/label", "처방청구"); // 작업구분 처방 청구 추가
- model.setValue("/root/send/goodreq/reqflag" , "H" ); // 청구방법 수액
- cmb_workflag.refresh();
- cmb_workflag.select(iDataCnt);
- } else if (fValue != "Y" || model.getXPathValue(vPath+"[value='6']/value") !="") {
- cmb_workflag.disabled="false" ;
- model.removeNodeset(vPath+"["+ model.getXPathValue(vPath+"[value='6']/value") +"]");
- model.setValue("/root/send/goodreq/reqflag","");
- cmb_workflag.select(0);
- }
- } // if updtdata
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 조회버튼 Click 처리
- ****************************************************************************************/
- function fSearchButtonClick(fValue) {
- if(fCheckRetrieveData(false) == false) return;
- if(utlf_isNull(grp_sea.cmb_reqno.value)) grp_sea.ipt_reqdd.value = utlf_getCurrentDate();
- var oParam = {};
- oParam.id = "TRRSD10102";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqGetReqDrugGoodInfo";
- oParam.inds = "req=ds_send_goodreq";
- oParam.outds = "ds_main_list_goodreq_goodreqlist=goodreqlist";
- oParam.async = false;
- oParam.callback = "cf_TRRSD10102";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TRRSD10102") > -1) {
- misfSetGridColor(grp_main.grd_goodreq, "reqpackqty", "#ffff99", "B");
- misfSetGridColor(grp_main.grd_goodreq, "orgdeliveqty", "#ccff99", "B");
- misfSetGridColor(grp_main.grd_goodreq, "stocqty", "#ccff99", "B");
- }
- }
- function cf_TRRSD10102(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : Data 저장 하기 위한 Check
- ****************************************************************************************/
- function fSaveData() {
- fConfirmSaveData(); // Data를 저장한다. //// 저장하는 부분
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 청구 Data 저장
- ****************************************************************************************/
- function fConfirmSaveData() {
- // 저장전 Data를 Check한다.
- if (fCheckSaveData() == false) return;
- ds_send_save_autoaprv.setColumn( 0, "instcd" ,grp_sea.opt_instcd.value); // 기관코드
- ds_send_save_autoaprv.setColumn( 0, "reqdeptcd",grp_sea.cmb_reqdeptcd.value); // 청구부서
-
- var cnt = 0;
- var vReqdd = ""; // 청구일자
-
- vReqdd = grp_sea.ipt_reqdd.value;
- ds_send_save_autoaprv.setColumn( 0, "reqdd", vReqdd); // 청구일자
-
- ds_main_list_goodreq_goodreqlist.addColumn("reqpsnid", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("reqdeptcd","string");
- ds_main_list_goodreq_goodreqlist.addColumn("reqdd", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("reqno", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("workflag", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("reqpridflag", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("deliveflag", "string");
- ds_main_list_goodreq_goodreqlist.addColumn("reqmthdflag","string");
-
- var reqpackqty="";
-
- for (var fRow = 0; fRow < ds_main_list_goodreq_goodreqlist.rowcount; fRow++) {
- reqpackqty = ds_main_list_goodreq_goodreqlist.getColumn(fRow, "reqpackqty");
-
- if(reqpackqty == 0 || utlf_isNull(reqpackqty) ) {
- cnt++;
- }
-
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqpsnid", ds_init.getColumn(0, "requserno"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqdeptcd", ds_send_goodreq.getColumn(0, "reqdeptcd"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqdd", ds_send_goodreq.getColumn(0, "reqdd"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqno", ds_send_goodreq.getColumn(0, "reqno"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "workflag", ds_send_goodreq.getColumn(0, "workflag"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqpridflag", ds_send_goodreq.getColumn(0, "reqpridflag"));
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "deliveflag", "1");
- ds_main_list_goodreq_goodreqlist.setColumn(fRow, "reqmthdflag", "3");
- }
-
- if(cnt > 0) {
- sysf_messageBox("청구수량을 입력하세요.","E");
- return;
- }
-
- // 동시 승인여부
- var dsUpdate = grdf_getGridUpdateData(grp_main.grd_goodreq, "all");
- grdf_setStatusColumn(dsUpdate, "status");
- ds_send_save_goodreqlist.copyData(dsUpdate, true);
- // 일청구는 자동 승인한다.
- if (grp_sea.cmb_reqpridflag.value == "1") {
- ds_send_save_autoaprv.setColumn( 0, "autoaprvyn", "Y");
- } else {
- // ===============================================
- // 구매팀의 경우는 동시 승인 가능하게 처리합니다.
- // ===============================================
- if (gPurcDeptcd == sysf_getUserInfo("dutplcecd") ){
- if (grp_main.grp_button.ckb_accept.value == "Y") {
- var ret = sysf_messageBox("구매팀인 경우만 권한 상관없이 동시승인 가능합니다!! ","Q003");
- if (ret == 6) {
- ds_send_save_autoaprv.setColumn( 0, "autoaprvyn", "Y");
- } else {
- ds_send_save_autoaprv.setColumn( 0, "autoaprvyn", "N");
- } // end if
- } else {
- ds_send_save_autoaprv.setColumn( 0, "autoaprvyn", "N");
- } // end if
- } else {
- ds_send_save_autoaprv.setColumn( 0, "autoaprvyn","N");
- } // end if
- } // end if
- var oParam = {};
- oParam.id = "TXRSD00411";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqExeSaveGoodReqNew";
- oParam.inds = "req=ds_send_save_goodreqlist autoaprv=ds_send_save_autoaprv";
- oParam.outds = "ds_hidden_temp_goodmaxreqno=goodmaxreqno";
- oParam.async = false;
- oParam.callback = "cf_TXRSD00411";
- tranf_submit(oParam);
-
- if(arErrorCode.pop("TXRSD00411") > -1) {
- grp_sea.btn_search.click();
- }
- }
- function cf_TXRSD00411(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
-
- var ReqnoNew = ds_send_save_autoaprv.getColumn(0, "reqnonew");
- if(ReqnoNew == "Y"){
- ds_send_save_autoaprv.setColumn( 0, "reqnonew", "");
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 약품일만 포장수량 입력시 낱개수량 자동 계산
- ****************************************************************************************/
- function fCalcReqQty(){
- if(grp_main.grd_goodreq.currentcol == grp_main.grd_goodreq.getBindCellIndex("body","reqpackqty")) {
- var exchqty = parseFloat(ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition,"exchqty"));
- var reqpackqty = parseFloat(ds_main_list_goodreq_goodreqlist.getColumn(ds_main_list_goodreq_goodreqlist.rowposition,"reqpackqty"));
-
- ds_main_list_goodreq_goodreqlist.setColumn(ds_main_list_goodreq_goodreqlist.rowposition,"reqqty",reqpackqty*exchqty);
-
- if(ds_main_list_goodreq_goodreqlist.rowposition < ds_main_list_goodreq_goodreqlist.rowcount-1)
- {
- ds_main_list_goodreq_goodreqlist.rowposition = ds_main_list_goodreq_goodreqlist.rowposition + 1;
- grp_main.grd_goodreq.setFocus();
- grp_main.grd_goodreq.setCellPos(grp_main.grd_goodreq.getBindCellIndex("body","reqpackqty"));
- grp_main.grd_goodreq.showEditor(true);
- }
- }
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : repeatlist 조회
- ****************************************************************************************/
- function fRepeatReqSearch()
- {
- var spath = "ds_send_repeatreq";
- eval(spath).setColumn(0, "instcd" , grp_sea.opt_instcd.value);
- eval(spath).setColumn(0, "reqdeptcd" , grp_sea.cmb_reqdeptcd.value);
- eval(spath).setColumn(0, "goodflag" , grp_sea.sel_goodflag.value);
- var oParam = {};
- oParam.id = "TRRSD00500";
- oParam.service = "reqapp.ReqMngt";
- oParam.method = "reqGetIRepeatReq";
- oParam.inds = "req=ds_send_repeatreq";
- oParam.outds = "ds_main_list_repeatreq_repeatlist=repeatlist";
- oParam.async = false;
- //oParam.callback = "cf_TRRSD00500";
- tranf_submit(oParam);
- grp_repeat.visible = true;
- }
- /****************************************************************************************
- * Argument : N/A
- * Description : 필수값 체크
- ****************************************************************************************/
- function fValMain()
- {
- var smsg = "";
- if(utlf_isNull(grp_sea.ipt_reqdd.value)) smsg += "청구일자, ";
- if(utlf_isNull(grp_sea.cmb_reqdeptcd.value)) smsg += "청구부서, ";
- if(utlf_isNull(grp_sea.sel_goodflag.value)) smsg += "물품구분, ";
- if (utlf_isNull(smsg)){
- return true;
- }else{
- sysf_messageBox(smsg.substr(0, smsg.length-2) + "은(는)","I003");
- return false;
- }
- }
-
- /**
- * @ver : 2010-11-08
- * @desc : Repeat 청구로부터 추가
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fAddFromRepeatReq(prow) {
- var chkNode = instance1.selectNodes(grd_goodreq.nodeset + "[goodcd = '" + model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodcd") + "']");
- if(chkNode.length > 0){
- messageBox("물품코드 [" + model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodcd") + "]는","E006");
- return;
- }
-
- grd_goodreq.addrow(false);
- var row = grd_goodreq.rows-grd_goodreq.fixedrows;
- fDefaultSetting(row);
-
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/goodcd" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodcd"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/goodnm" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodnm"));
-
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/goodspec" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodspec"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/reqqty" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/reqqty"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/requnit" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/requnit"));
- //model.setValue(grd_goodreq.nodeset +"[" + row + "]/deptaprvyn" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/deptaprvyn"));
- //model.setValue(grd_goodreq.nodeset +"[" + row + "]/deptaprvnm" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/deptaprvnm"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/reqpsnid" , getUserInfo("userid"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/reqpsnnm" , getUserInfo("usernm"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/cmt" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/cmt"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/winacnt" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/winacnt"));
- model.setValue(grd_goodreq.nodeset +"[" + row + "]/goodflag" , model.getValue(grd_repeat.nodeset +"[" + prow + "]/goodflag"));
-
- cmb_wareflag.disabled = true;
- model.refresh();
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : Repeat 청구로부터 추가
- ****************************************************************************************/
- function fAddFromRepeatReq1(prow) {
- var chkNode = ds_main_list_goodreq_goodreqlist.getCaseCount("goodcd == '"+ds_main_list_repeatreq_repeatlist.getColumn(prow, "goodcd")+"'");
- if(chkNode > 0){
- sysf_sysf_messageBox("물품코드 [" + ds_main_list_repeatreq_repeatlist.getColumn(prow, "goodcd") + "]는","E006");
- return;
- }
- var row = ds_main_list_goodreq_goodreqlist.addRow();
- var repinstcd = grp_sea.opt_instcd.value;
- var repreqqty = ds_main_list_repeatreq_repeatlist.getColumn(prow, "reqqty");
- var repgoodcd = ds_main_list_repeatreq_repeatlist.getColumn(prow, "goodcd");
- var repreqpackqty = ds_main_list_repeatreq_repeatlist.getColumn(prow, "reqpackqty");
-
- ds_temp_repdata.setColumn( 0, "instcd" , repinstcd);
- ds_temp_repdata.setColumn( 0, "goodcd" , repgoodcd);
- ds_temp_repdata.setColumn( 0, "goodflag" , "PH");
- ds_temp_repdata.setColumn( 0, "reqqty" , repreqqty);
- ds_temp_goodlist.clearData();
- var oParam = {};
- oParam.id = "TRRSD00501";
- oParam.service = "purccommonapp.PurcCommon";
- oParam.method = "reqGetGoodListByCond";
- oParam.inds = "req=ds_temp_repdata";
- oParam.outds = "ds_temp_goodlist=goodlist";
- oParam.async = false;
- oParam.callback = "cf_TRRSD00501";
- tranf_submit(oParam);
- if(arErrorCode.pop("TRRSD00501") > -1) {
- fDefaultSetting(row);
-
- if(ds_temp_goodlist.rowcount < 1) return;
- ds_main_list_goodreq_goodreqlist.setColumn(row,"goodflag" , "PH");
- ds_main_list_goodreq_goodreqlist.setColumn(row,"goodcd" , ds_temp_goodlist.getColumn(0, "goodcd"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"goodnm" , ds_temp_goodlist.getColumn(0, "goodnm"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"goodspec" , ds_temp_goodlist.getColumn(0, "goodspec"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"goodmodel" , ds_temp_goodlist.getColumn(0, "goodmodel"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"prodcmpynm" , ds_temp_goodlist.getColumn(0, "prodcmpynm"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"setunit" , ds_temp_goodlist.getColumn(0, "setunit"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqpackunit" , ds_temp_goodlist.getColumn(0, "purcunit"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"winacnt" , ds_temp_goodlist.getColumn(0, "winacnt"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"exchqty" , ds_temp_goodlist.getColumn(0, "exchqty"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"deliveflag" , "1");
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqdd" , grp_sea.ipt_reqdd.value);
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqpridflag" , grp_sea.cmb_reqpridflag.value);
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqdeptcd" , grp_sea.cmb_reqdeptcd.value);
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqpsnid" , grp_sea.opt_requser.value);
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqseqno" , fGetMaxReqNo());
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqno" , grp_sea.cmb_reqno.value);
- ds_main_list_goodreq_goodreqlist.setColumn(row,"predeptaprvyn" , "N");
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqflag" , ds_temp_goodlist.getColumn(0, "reqflag"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"delivedeptcd" , ds_temp_goodlist.getColumn(0, "reqfnldeptcd"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"ddavguseqty" , ds_temp_goodlist.getColumn(0, "ddavguseqty"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"basevol" , ds_temp_goodlist.getColumn(0, "basevol"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqmthdflag" , "3");
- ds_main_list_goodreq_goodreqlist.setColumn(row,"allsizeyn" , ds_temp_goodlist.getColumn(0, "allsizeyn"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqcollcdeptcd" , ds_temp_goodlist.getColumn(0, "reqcollcdeptcd"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"minexch" , ds_temp_goodlist.getColumn(0, "minexch"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqpackqty" , 0 );
- ds_main_list_goodreq_goodreqlist.setColumn(row,"rgstqty" , 0 );
- ds_main_list_goodreq_goodreqlist.setColumn(row,"reqpackperunitqty" , ds_temp_goodlist.getColumn(0, "exchqty"));
- ds_main_list_goodreq_goodreqlist.setColumn(row,"requnit" , ds_temp_goodlist.getColumn(0, "deliveunit"));
- }
- }
- function cf_TRRSD00501(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
-
- /****************************************************************************************
- * Argument : N/A
- * Description : 0인 수량 삭제
- ****************************************************************************************/
- function fZeroReqQtyDel(){
- for(var fRow = 0; fRow < ds_main_list_goodreq_goodreqlist.rowcount; fRow++ ) {
- var reqpackqty = parseInt(ds_main_list_goodreq_goodreqlist.getColumn(fRow, "reqpackqty"));
- if(reqpackqty == 0){
- grdf_setStatus(grp_main.grd_goodreq, "D", [fRow]);
- }
- }
- }
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */ ]]></Script>
|