123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703 |
- /* ---------------------------------------------------------------------
-
- SMRSD10000_물품청구관리(경북대).xrw (SMRSD10000.xrw - JScript )
- - Version :
- 1) : Ver.1.00.01
- ---------------------------------------------------------------------- */
-
- var xAuth = !(checkAuth("X"));
- var pAuth = !(checkAuth("P"));
- var vPurcAuth = "1";
-
- var gExeptionFlag = true;
- var gPurcDeptcd = "" ;
- var gcount = 0 ; //청구번호 읽기
- var gReqNoReadFlag = true; //청구번호 읽기
- var cmbworkflagold = "X" ; //작업구분콤보의 예전값을 가지고 있는 변수
-
- /**
- * @ver : 2010-10-17
- * @desc : 폼 초기화
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize() {
-
- model.resetInstanceNode("/root/send");
-
- btn_save.disabled = true;
- btn_accept.disabled = true;
- ckb_accept.attribute("visibility") ="hidden";
- misfGridInit(grd_goodreq);
- //misfMsterDetailSet(grd_goodreq,null, "TRRSD00411" ,"Y");
-
-
- model.setValue(opt_instcd.attribute("ref"), getUserInfo("dutplceinstcd"));
- model.setValue(opt_instcdnm.attribute("ref"), getUserInfo("dutplceinstnm"));
-
- model.setValue(opt_requser.attribute("ref" ) , getUserInfo("userid"));
- model.setValue(opt_requsernm.attribute("ref") , getUserInfo("usernm"));
-
- model.setValue(ipt_reqdd.attribute("ref") , getCurrentDate());
-
- if (cmb_workflag.length> 0) cmb_workflag.select(0); // 작업구분
-
- grd_goodlist.fixedcellcheckbox(0,grd_goodlist.colRef("chk"),false) = true;
-
- model.setValue("/root/send/reqpsn/instcd", model.getValue(opt_instcd.attribute("ref")) );
- model.setValue("/root/send/reqpsn/emplno", model.getValue(opt_requser.attribute("ref")));
- submit("TRRSD00407"); //청구권한 주기 조회
-
- misfComboComCdList("R0025" ,cmb_goodflag, "N"); //물품구분
- misfComboComCdList("030M0003" ,cmb_mngtcls,"Y"); //관리분류(약품만)
- copyNodesetType("/root/tmp/common/goodflaglist","/root/init/cmb_goodflag/comcodelist","replace");
- addComboItem( "sel_goodflag", "전체", "", "above" );
- model.setValue("/root/send/goodreq/goodflag",model.getValue("/root/tmp/common/goodflaglist/cdid[1]"));
-
- model.setValue("/root/send/goodreq/goodflag","PH");
- model.setValue("/root/init/goodflag" ,"PH");
- rszfLMSComboList(model.getValue(cmb_goodflag.attribute("ref")), "", "", "ipt_lrgcd", "", "L","Y");
- model.setValue("/root/send/goodlist/purcdeptflag" , "X"); //구매부서구분 : P
-
- fReqdeptCopy();
-
- gReqNoReadFlag = false; //청구번호 읽기
-
- fDeptReqNoQuery();
-
- model.refresh();
- }
-
-
- /**
- * @ver : 2010-10-17
- * @desc : 권한체크(청구주기가 일청구이면 권한체크하지 않는다. )
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetReqAuth() {
- // btn 기본처리
- btn_excel.disabled = true;
-
- // btn_reqset.disabled = true;
-
- btn_insert.disabled = true;
- btn_delete.disabled = true;
- btn_choice.disabled = true;
-
- btn_accept.disabled = true;
- btn_save.disabled = true;
-
- model.setValue(ckb_accept.attribute("ref"), "N");
- ckb_accept.attribute("visibility") ="hidden" ;
-
- if(model.getValue(opt_instcd.attribute("ref") ).length==0) return;
- //if(model.getValue(cmb_reqflag.attribute("ref") ).length==0) return;
- if(model.getValue(cmb_reqdeptcd.attribute("ref") ).length==0) return;
- if(model.getValue(cmb_reqpridflag.attribute("ref")).length==0) return;
- // -----------------------------------------------
- // 청구주기가 일청구이면 권한체크하지 않는다.
- // -----------------------------------------------
- // if ((model.getValue(cmb_reqpridflag.attribute("ref")) == "1" ) &&
- // (model.getValue(opt_instcd.attribute("ref") ) == "012") ) {
- // -----------------------------------------------
-
- if ((model.getValue(cmb_reqpridflag.attribute("ref")) == "1") && gExeptionFlag ) {
-
- // -----------------------------------------------
- // rszfGetPurcReqFnlDeptcd(model.getValue(opt_instcd.attribute("ref")), model.getValue(cmb_reqflag.attribute("ref")) , model.getValue(cmb_reqdeptcd.attribute("ref")));
- // -----------------------------------------------
-
- btn_save.disabled = false;
- btn_accept.disabled = false;
- model.setValue(ckb_accept.attribute("ref"), "Y");
- ckb_accept.attribute("visibility") = "visible" ;
-
- btn_excel.disabled = false;
- // btn_reqset.disabled = false;
- btn_insert.disabled = false;
- btn_delete.disabled = false;
- btn_choice.disabled = false;
-
- } else {
- fPurcAuthInfo(); // 청구승인자 Check
-
- if (cmb_reqpridflag.value == "4") { // 월청구
- if (fLastDayCheck_2() ) {
- btn_save.disabled = true;
- } else {
- btn_save.disabled = false;
- }
- } else {
- btn_save.disabled = false;
- }
-
- btn_excel.disabled = false;
- // btn_reqset.disabled = false;
- btn_insert.disabled = false;
- btn_delete.disabled = false;
- btn_choice.disabled = false;
-
- // if (vPurcAuth == "2") { //1:청구자, 2:승인자
- // btn_accept.disabled = false;
- // model.setValue(ckb_accept.attribute("ref"), "Y");
- // ckb_accept.attribute("visibility") = "visible" ;
- // }
- }
-
- if (model.getValue("/root/send/goodlist/purcdeptflag") == "P") { //구매부서구분 : P
- btn_accept.disabled = false;
- model.setValue(ckb_accept.attribute("ref"), "Y");
- ckb_accept.attribute("visibility") = "visible" ;
- }
-
- // 로그인자의 부서와 취합부서정보가 같으면 청구부서를 open한다.
- // if (model.getValue(cmb_reqdeptcd.attribute("ref")) == model.getValue(opt_reqfinaldept.attribute("ref"))) {
- // cmb_reqdeptcd.disabled=false;
- // }
- // fDeptReqNoQuery(); // 청구부서별 청구번호를 조회한다
-
- model.refresh();
- }
-
- /**
- * @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", model.getValue(cmb_reqdeptcd.attribute("ref")) );
- // 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"); // 청구마감일자 조회 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"); // 청구마감일자 조회 purcbaseweb
-
- ipt_todd.refresh();
-
- }
- // --------------------------------------------------------------
- // 청구일자가 불출부서의 청구마지막 일자안에 있는지 확인,
- // --------------------------------------------------------------
- function fLastDayCheck_2() {
-
- var fbool = false;
-
-
- if (model.getValue(ipt_todd.attribute("ref")) == '') {
- return false;
- }
-
- //
- if (sel_goodflag.value == "PH") { // 약품
- return false;
- }
-
- //
- // alert(model.getValue(ipt_todd.attribute("ref")) +"=="+ getCurrentDate());
- //
- if (cmb_reqpridflag.value == "4") { // 월청구
- if (model.getValue(ipt_todd.attribute("ref")) < getCurrentDate()) {
- alert("청구 마감일이 지났습니다. 구매팀에 문의 하십시요!!");
- // messageBox("청구 마감일이 지났습니다. \n 구매팀에 문의 하십시요!!", "");
-
- return true;
- }
- }
-
- //
- // if (cmb_reqpridflag.value == "4") { // 월청구
- // if (model.getValue(ipt_todd.attribute("ref")) != '') {
- // if (chk_reqnonew.value == "Y" ) {
- // if (model.getValue(ipt_reqddnew.attribute("ref")) > model.getValue(ipt_todd.attribute("ref")) ) {
- // return true;
- //
- // }
- // } else if (model.getValue(ipt_reqdd.attribute("ref")) > model.getValue(ipt_todd.attribute("ref")) ) {
- // fbool = true;
- //
- // }
- // }
- // }
- //
- return fbool;
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 적용버튼 클릭시 Data DefaultSetting
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDefaultSetting(prow) {
-
- // --------------------------------------------------------
- // 일반청구 와 정량보충에 따라서 col을 control한다.
- // --------------------------------------------------------
- grd_goodreq.colDisabled(grd_goodreq.colRef("stocqty")) = false;
- grd_goodreq.colDisabled(grd_goodreq.colRef("reqqty")) = false;
-
- var workflag = model.getValue(cmb_workflag.attribute("ref")) ;
- // --------------------------------------------------------
- //작업구분이 [수액청구] == [처방청구]일때 행 추가시 작업 구분은 [일반청구]로 지정
- // --------------------------------------------------------
- /* if (model.getValue(ckb_sapreq.attribute("ref" )) == "Y" ||
- model.getValue(cmb_workflag.attribute("ref")) == "6" ) workflag = "1"; */
- if (model.getValue(cmb_workflag.attribute("ref")) == "6" ) workflag = "1";
- //
- // model.setValue(grd_goodreq.nodeset +"[" + prow+ "]/workflag" , workflag );
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/instcd" , model.getValue(opt_instcd.attribute("ref" )));
- // --------------------------------------------------------
- // 불출구분 없앰... 기본값('1') settting한다
- // --------------------------------------------------------
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/deliveflag" , '1' );
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdd" , model.getValue(ipt_reqdd.attribute("ref" )));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqpridflag" , model.getValue(cmb_reqpridflag.attribute("ref" )));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqdeptcd" , model.getValue(cmb_reqdeptcd.attribute("ref" )));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqpsnid" , model.getValue(opt_requser.attribute("ref" )));
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqseqno" , fGetMaxReqNo() );
- model.setValue(grd_goodreq.nodeset +"[" + prow + "]/reqno" , model.getValue(cmb_reqno.attribute("ref" )));
-
- //-----------------------------------------------------------------------------------------------------------
- // 비승인자가 승인처리시 에러와 함꼐 OLD값을 넣어준다.
- // 행추가시 OLD값을 'N'으로 셋팅함으로 에러처리시 제대로 된다. HBH
- //-----------------------------------------------------------------------------------------------------------
- //model.setValue(grd_goodreq.nodeset +"[" + prow + "]/predeptaprvyn","N");
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 최종 청구번호 가져오기
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetMaxReqNo() {
- var vMax = 0;
- var maxreqseqno = "0";
-
- for (var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows; currow++) {
- if (maxreqseqno < grd_goodreq.valueMatrix(currow, grd_goodreq.colRef("reqseqno"))) {
- maxreqseqno = grd_goodreq.valueMatrix(currow, grd_goodreq.colRef("reqseqno"));
- }
- }
-
- vMax = parseInt(maxreqseqno, 10);
- // alert(vMax+"::"+maxreqseqno);
-
- vMax += 1;
-
- maxreqseqno = "" + vMax;
- return maxreqseqno.getLeftPad(3,"0");
- }
-
- // --------------------------------------------------------------
- //
- // --------------------------------------------------------------
- function fSettingGoodList(pnode, nodename, userqtynm) {
-
- var vTarget = "";
- var vSource = "";
-
- var codynode = instance1.selectNodes(pnode + "/*");
- var addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
-
- if(model.getValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd").length > 0) addRow = addRow + 1;
-
- //
- for (var j = 1; j <= codynode.length ; j++) {
- if((grd_goodreq.rows - grd_goodreq.fixedRows == 0) || (addRow > grd_goodreq.rows - grd_goodreq.fixedRows)) {
- misfGridIUD(grd_goodreq,"A" );
- addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
- fDefaultSetting(addRow);
- }
-
- vTarget = grd_goodreq.nodeset + "[" + addRow + "]/";
- vSource = pnode +"/" + nodename + "[" + j + "]/";
-
- fSettingGoodData(vTarget, vSource, userqtynm, "deliveunit");
-
- if (model.getValue(vSource + "allsizeyn") == "Y") {
-
- grd_goodreq.cellstyle("background-color" , addRow, 9) = "#FFFF00";
- model.setValue(vTarget + "allsizespecid" , model.getValue(vSource + "allsizespecid" ));
- model.setValue(vTarget + "allsizespecidnm" , model.getValue(vSource + "allsizespecidnm"));
-
- if (model.getValue(vSource + "allsizespecid").length > 0 ) {
- model.setValue(vTarget + "goodspec" , model.getValue(vSource + "allsizespecidnm"));
- } else {
- model.setValue(vTarget + "allsizespecid" , "-");
- }
- }
- addRow = addRow + 1;
- }
-
-
- //model.removenode(pnode);
- model.refresh();
- }
-
-
- /**
- * @ver : 2010-10-17
- * @desc : 조회시 체크로직
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fCheckRetrieveData(pmsg)
- {
- if(model.getValue(cmb_workflag.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("작업구분을 " ,"C002");
- model.setFocus("cmb_workflag");
- }
- return false;
- }
- if(model.getValue(opt_instcd.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("기관코드를 " ,"C002");
- model.setFocus("opt_instcd");
- }
- return false;
- }
- // if(model.getValue(cmb_reqflag.attribute("ref")).length== 0 )
- // {
- // if(pmsg == true)
- // {
- // messageBox("청구구분을 " ,"C002");
- // model.setFocus("cmb_reqflag");
- // }
- // return false;
- // }
-
- if(model.getValue(ipt_reqdd.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("청구일자를 " ,"C001");
- model.setFocus("ipt_reqdd");
- }
- return false;
- }
- if(model.getValue(cmb_reqpridflag.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("청구주기를 " ,"C002");
- model.setFocus("cmb_reqpridflag");
- }
- return false;
- }
- if(model.getValue(cmb_reqdeptcd.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("청구부서를 " ,"C002");
- model.setFocus("cmb_reqdeptcd");
- }
- return false;
- }
- if(model.getValue(opt_requser.attribute("ref")).length== 0 )
- {
- if(pmsg == true)
- {
- messageBox("청구자를 " ,"C002");
- model.setFocus("opt_requser");
- }
- return false;
- }
- return true;
- }
-
- //
- function fCheckLimitTime(pDate)
- {
- return true;
- }
-
- // 저장전 Data를 Check한다.
- function fCheckSaveData()
- {
- if (model.getValue(cmb_workflag.attribute("ref")).length== 0 ) {
- messageBox("작업구분을 " ,"C002");
- model.setFocus("cmb_workflag");
- return false;
- }
-
- //
- if (model.getValue(opt_instcd.attribute("ref")).length== 0 ) {
- messageBox("기관코드를 " ,"C002");
- model.setFocus("opt_instcd");
- return false;
- }
-
- // if(model.getValue(cmb_reqflag.attribute("ref")).length== 0 )
- // {
- // messageBox("청구구분을 " ,"C002");
- // model.setFocus("cmb_reqflag");
- // return false;
- // }
-
- if (model.getValue(ipt_reqdd.attribute("ref")).length== 0 ) {
- messageBox("청구일자를 " ,"C001");
- model.setFocus("ipt_reqdd");
- return false;
- }
-
- //
- if (model.getValue(cmb_reqpridflag.attribute("ref")).length== 0 ) {
- messageBox("청구주기를 " ,"C002");
- model.setFocus("cmb_reqpridflag");
- return false;
- }
-
- //
- var basevol = 0;
- var stocqty = 0;
- var reqqty = 0;
- var minexch = 0;
- grd_goodreq.rebuildStyle();
- for(var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows ; currow++)
- {
- if (grd_goodreq.rowStatus( currow ) != "4" ) { // 저장 후 삭제일 경우 ( 4 ) check 하지 말자.
- for(srcrow = currow + 1 ; srcrow < grd_goodreq.rows ; srcrow++) {
-
- if (grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")) == grd_goodreq.valueMatrix(srcrow , grd_goodreq.colRef("goodcd")) &&
- grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("allsizeyn")) == "N" &&
- grd_goodreq.rowStatus( srcrow ) != "4" )
- {
- messageBox("동일 물품코드가1 [" + currow + "," +srcrow + "->" + grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")) + "] 존재하여 저장 " ,"E001");
- grd_goodreq.rowStyle(currow, "data", "background-color") = "#ffff99";
- grd_goodreq.rowStyle(srcrow, "data", "background-color") = "#ffff99";
- grd_goodreq.row = currow ;
- btn_scroll.dispatch("DOMActivate");
- return false;
- }
- else if(grd_goodreq.valueMatrix(currow ,grd_goodreq.colRef("goodcd" )) == grd_goodreq.valueMatrix(srcrow , grd_goodreq.colRef("goodcd" )) &&
- grd_goodreq.valueMatrix(currow ,grd_goodreq.colRef("allsizespecid")) == grd_goodreq.valueMatrix(srcrow , grd_goodreq.colRef("allsizespecid")) &&
- grd_goodreq.rowStatus( srcrow ) != "4" )
- {
- messageBox("동일 물품코드가 (ALL SIZE) [" + currow + "," +srcrow + "->" + grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd")) + "] 존재하여 저장 " ,"E001");
- grd_goodreq.rowStyle(currow, "data", "background-color") = "#ffff99";
- grd_goodreq.rowStyle(srcrow, "data", "background-color") = "#ffff99";
- grd_goodreq.row = currow ;
- btn_scroll.dispatch("DOMActivate");
- return false;
- }
- }
-
- grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("allsizespecid")) = "-";
- model.makeValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvyn" ,"N");
- model.makeValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvdd","" );
- /*if (model.getValue(grd_goodreq.nodeset + "[" + currow + "]/aprvyn") != "Y") {
- if (model.getValue(ckb_accept.attribute("ref")) == "Y") {
- if (model.getValue(grd_goodreq.nodeset + "[" + currow + "deptaprvyn") != "Y") {
- if (gPurcDeptcd == getUserInfo("dutplcecd") ){
- model.setValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvyn" ,"Y");
- model.setValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvdd" ,getCurrentDate());
- } else {
- if (model.getValue(grd_goodreq.nodeset + "[" + currow + "]/reqauth") == "2") {
- model.setValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvyn" ,"Y");
- model.setValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvdd" ,getCurrentDate());
- } else {
- model.makeValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvyn" ,"N");
- model.makeValue(grd_goodreq.nodeset + "[" + currow + "]/deptaprvdd","" );
- }
- }
- }
- }
- }*/
- }
- } // end for
-
- /* 청구 번호가 없는 경우 즉 신규인 상황에서 신규체크를 하지 않았을 경우
- * 임의로 신규 체크 여부를 지정한다. [20081126] YYJ
- */
-
- if (model.getValue(cmb_reqno.attribute("ref")).length== 0 )
- {
- model.setValue(chk_reqnonew.attribute("ref"),'Y');
- chk_reqnonew.refresh();
- }
-
- return true;
- }
-
- //
- function fSetControlDisabled(pDisabled) {
- cmb_reqno.disabled = pDisabled;
- }
-
- //
- function fAfterRetr() {
-
- if (model.getValue("/root/main/list/goodreq/goodmaxreqno/reqfix") == "Y") {
- fSetControlDisabled("true");
- }
- else {
- fSetControlDisabled("false");
- }
-
- // model.setValue(cmb_reqno.attribute("ref"),model.getValue("/root/main/list/goodreq/goodmaxreqno/reqno"));
- model.refresh();
- }
-
- // --------------------------------------------------
- //
- // --------------------------------------------------
- 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();
- }
-
- // --------------------------------------------------
- // 승인전체/접수전체취소
- // --------------------------------------------------
- function fSettingReqAprv() {
-
- for (var liRow = grd_goodreq.fixedRows ; liRow < grd_goodreq.rows ; liRow++)
- {
- //----------------------------------------------------------------------------
- // 발주승인건 제외
- //----------------------------------------------------------------------------
- if (model.getValue(grd_goodreq.nodeset + "[" + liRow + "]/aprvyn") != "Y") {
-
- if ((gPurcDeptcd == getUserInfo("dutplcecd") ) ||
- (model.getValue(grd_goodreq.nodeset + "[" + liRow + "]/reqauth") == "2")) {
- if (model.getValue(grd_goodreq.nodeset + "[" + liRow + "]/deptaprvyn") == "Y") {
- model.setValue(grd_goodreq.nodeset + "[" + liRow + "]/deptaprvyn","N");
- model.setValue(grd_goodreq.nodeset + "[" + liRow + "]/deptaprvdd","" );
-
- if (grd_goodreq.rowStatus(liRow) == "0") grd_goodreq.rowStatus(liRow) = "2";
-
- } else {
- model.setValue(grd_goodreq.nodeset + "[" + liRow + "]/deptaprvyn" ,"Y");
- model.setValue(grd_goodreq.nodeset + "[" + liRow + "]/deptaprvdd" ,getCurrentDate());
- if (grd_goodreq.rowStatus(liRow) == "0") grd_goodreq.rowStatus(liRow) = "2";
- }
- }
- }
- }
-
- //
- model.refresh();
- }
-
-
- // --------------------------------------------------
- // 승인/미승인 처리
- // --------------------------------------------------
- function fSaveReqAprv()
- {
- model.removenode("/root/send/reqaprvlist");
- model.makeNode("/root/send/reqaprvlist" );
- model.setValue("/root/send/reqaprvlist" ,grd_goodreq.getUpdateData());
-
- submit("TXRSD07002");
-
- if (model.getValue(gvErrorMsgPath + "/type") != "error") misfMsterDetailRetrieve();
- }
-
- // --------------------------------------------------
- // 권한여부에 따른 승인체크 설정.
- // --------------------------------------------------
- function fGrantsCheck()
- {
- if (vPurcAuth == "2" || model.getValue(cmb_reqpridflag.attribute("ref")) =="1") {
- misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false);
- }else{
- misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", true);
- }
- }
-
- // --------------------------------------------------
- // 물품청구 버튼 Click 처리하는 함수
- // --------------------------------------------------
- function fGoodreqButtonClick() {
- // grp_allsize.attribute("visibility") ="hidden" ;
-
- if (grd_goodreq.col == grd_goodreq.colRef("goodcd") &&
- grd_goodreq.rowStatus(grd_goodreq.row) == "1" ) { //구성물품코드를 눌렀을 경우
-
- fViewToggle(2); // 1 :늘리기, 2 : 줄이기
-
- //cmb_reqflag.select(0);
-
- bbt_good.selected = "true";
-
- //model.toggle("gd_find");
-
- // fReqFagChange(model.getValue(cmb_reqflag.attribute("ref")));
-
- fGoodListReady(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.col),""); // 물품찾기 처리하는 함수
- }else if (grd_goodreq.col == grd_goodreq.colRef("goodspec") && grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("allsizeyn")) == "Y" ){
- fAllSizeRead(grd_goodreq.row ,grd_goodreq.col, event.clientY);
- }
- }
-
- // --------------------------------------------------
- // 물품청구 내용이 바뀌었을때 처리하는 함수
- // --------------------------------------------------
- function fGoodreqOnChange() {
-
- // -------------------------------------------------------------------------------------
- // basevol = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("basevol"));
- // stocqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("stocqty"));
- //
- // reqqty = basevol - stocqty;
-
- // grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty")) = reqqty;
-
- // vMax = parseInt(maxreqseqno, 10);
- // reqqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty"));
- // -------------------------------------------------------------------------------------
-
- 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;
- }
- }
- /* // 2010.08.23 청구량만 넣고 안전재고,현재고 hidden
- basevol = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("basevol"));
- stocqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("stocqty"));
-
- reqqty = basevol - stocqty;
-
- grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty")) =reqqty;
- */
- // -------------------------------------------------------------------------------------
- // vMax = parseInt(maxreqseqno, 10);
- // reqqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty"));
- // -------------------------------------------------------------------------------------
-
- minexch = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("minexch"));
- // -------------------------------------------------------------------------------------
- // [20090409 YYJ] 최소 청구량 => 최소 처방량으로 변경 20090409 16:50 이혜숙 차장님 요청사항
- // 기존 청구시점에서 청구시 수량에 대한 규제를 위해 설정 되었던 항목을
- // 구매팀에서 물품에 대한 참고 치로 사용을 한다 함. ( EDI와의 환산 수량의 의미 ).. 최소 처방량에 대한 단위는 관리 하지 않는다 함
- // -------------------------------------------------------------------------------------
- // if(minexch > 0 && (reqqty%minexch != 0))
- // {
- // messageBox((grd_goodreq.row )+ "번째 물품은 최소청구량["+ minexch + "] 에 맞춰서" , "C001");
- // grd_goodreq.row = grd_goodreq.row;
- // grd_goodreq.col= grd_goodreq.colRef("reqqty");
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty","");
- // grd_goodreq.editCell();
- // return;
- // }
- // -------------------------------------------------------------------------------------
- }
-
- // -----------------------------------------------------------------------------------
- // 청구수량을 정량보충으로 변경함. ( 재고/ 기준량을 입력한다) .2007.08.
- // -----------------------------------------------------------------------------------
- else if (grd_goodreq.col == grd_goodreq.colRef("stocqty") || grd_goodreq.col == grd_goodreq.colRef("basevol") )
- {//재고량조절할경우
- 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;
- }
- }
- basevol = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("basevol"));
- stocqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("stocqty"));
- reqqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty" ));
- minexch = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("minexch"));
-
- calc_reqqty = basevol - stocqty;
-
- // -----------------------------------------------------------------------------------
- // if ( calc_reqqty < minexch ) calc_reqqty = minexch;
- // if ( calc_reqqty < minexch ) calc_reqqty = 0;
- // -----------------------------------------------------------------------------------
-
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqqty",calc_reqqty);
- }
- /*
- else if(grd_goodreq.col == grd_goodreq.colRef("goodcd") && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length> 0)
- {
- model.removenode("/root/copynode");
- model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
- model.makeNode("/root/copynode");
-
-
- // -----------------------------------------------------------------------------------
- // rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd,reqprid","goodcd," + model.getValue(opt_instcd.attribute("ref")) + "," +model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodflag") + "," + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodcd") + ",,,," + model.getValue(cmb_reqflag.attribute("ref")) + "," + model.getValue(cmb_reqdeptcd.attribute("ref")) + "," + model.getValue(cmb_reqpridflag.attribute("ref")) ,"","goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag,allsizeyn",grd_goodreq,"SPRSD00190","instcd,goodflag,reqflag,reqdeptcd,reqprid","opt_instcd,opt_goodflag,cmb_reqflag,cmb_reqdeptcd,cmb_reqpridflag","Y");
- // model.refresh();
- // -----------------------------------------------------------------------------------
-
- // 2010.02.18 CHR
- rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd,reqprid"
- ,"goodcd," + model.getValue(opt_instcd.attribute("ref")) + ","
- + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodflag") + ","
- + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" ) + ",,,,"
- + model.getValue(cmb_reqflag.attribute("ref" )) + ","
- + model.getValue(cmb_reqdeptcd.attribute("ref" )) + ","
- + model.getValue(cmb_reqpridflag.attribute("ref")) ,""
- , "goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag,allsizeyn,delivedeptcd,setunit,constunit"
- , grd_goodreq,"SPRSD00190"
- , "instcd,goodflag,reqflag,reqdeptcd,reqprid","opt_instcd,opt_goodflag,cmb_reqflag,cmb_reqdeptcd,cmb_reqpridflag","Y");
- model.refresh();
-
- if (grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length > 0)
- {
- // -----------------------------------------------------------------------------------
- // [20090409 YYJ] 최소 청구량 => 최소 처방량으로 변경 20090409 16:50 이혜숙 차장님 요청사항
- // 기존 청구시점에서 청구시 수량에 대한 규제를 위해 설정 되었던 항목을
- // 구매팀에서 물품에 대한 참고 치로 사용을 한다 함. ( EDI와의 환산 수량의 의미 ).. 최소 처방량에 대한 단위는 관리 하지 않는다 함
- // -----------------------------------------------------------------------------------
- // if(model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/minexch") > 0)
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty",model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/minexch") );
- // else model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty","1");
- // -----------------------------------------------------------------------------------
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/basevol",model.getValue("/root/init/main/goodlist/minexch"));
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqmthdflag",model.getValue("/root/init/main/goodlist/reqmthd"));
- // -----------------------------------------------------------------------------------
-
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqqty","1");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/basevol","1");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/requnit",model.getValue("/root/init/main/goodlist/deliveunit"));
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/exchqty",model.getValue("/root/init/main/goodlist/exchqty"));
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqmthdflag","3");
- }
-
- model.refresh();
-
- var cur_row = grd_goodreq.row;
- var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
-
- var CSV = model.getValue(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
-
- if(CSV.length == 0 && grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length == 0)
- {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodnm" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodspec" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodflag" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodmodel" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/prodcmpynm" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/purcunit" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/basevol" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/stocqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/requnit" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/minexch" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/ddavguseqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/allsizeyn" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/allsizespecid" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/exchqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/rgstqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth" , "1");
-
- grd_goodreq.col = grd_goodreq.colRef("goodcd");
- grd_goodreq.editCell();
- }
- else if (CSV.length > 0)
- {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodcd","");
- setCSVToNode("/root/copynode", CSV, "goodreqlist");
-
- fSettingGoodList("/root/copynode", "goodreqlist" , "userqty");
- }
- }*/
-
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // 영양팀은 품목명칭에서 값을 입력할수 있다..
- // 입력값과 일치건이 1일경우 코드 REPLACE
- // 없을경우 FIND
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- /*
- else if (grd_goodreq.col == grd_goodreq.colRef("goodnm")
- && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodnm")).length > 0
- && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length == 0 )
- {
- //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- // validation을 하기 위해 임시 column 을 둔다. HBH
- //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- model.setValue(tmp_goodcd.attribute("ref") ,"%" );
- model.setValue(tmp_goodnm.attribute("ref") ,grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodnm")) );
-
- model.removenode("/root/copynode");
- model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
- model.makeNode("/root/copynode");
-
- // 2010.02.18 CHR
- rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd,reqprid"
- ,"goodcd," + model.getValue(opt_instcd.attribute("ref")) + ","
- + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodflag") + ","
- + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" ) + ",,,,"
- + model.getValue(cmb_reqflag.attribute("ref" )) + ","
- + model.getValue(cmb_reqdeptcd.attribute("ref" )) + ","
- + model.getValue(cmb_reqpridflag.attribute("ref")) ,""
- , "goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag,allsizeyn,delivedeptcd,setunit,constunit"
- , grd_goodreq,"SPRSD00190"
- , "instcd,goodflag,reqflag,reqdeptcd,reqprid","opt_instcd,opt_goodflag,cmb_reqflag,cmb_reqdeptcd,cmb_reqpridflag","Y");
- model.refresh();
-
- if(grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.colRef("goodcd")).length > 0)
- {
- model.removenode("/root/copynode");
- model.removenode(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
- model.makeNode("/root/copynode");
-
- // rszfValidationCheck("TRRSD00191", "goodlist" , "refcond,instcd,goodflag,goodcd,goodnm,indexgb,indexnm,reqflag,reqdeptcd,reqprid","goodcd," + model.getValue(opt_instcd.attribute("ref")) + "," +model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodflag") + "," + model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodcd") + ",,,," + model.getValue(cmb_reqflag.attribute("ref")) + "," + model.getValue(cmb_reqdeptcd.attribute("ref")) + "," + model.getValue(cmb_reqpridflag.attribute("ref")) ,"","goodcd,goodnm,goodspec,goodmodel,prodcmpynm,purcunit,stocqty,minexch,goodflag,ddavguseqty,reqflag,allsizeyn",grd_goodreq,"SPRSD00190","instcd,goodflag,reqflag,reqdeptcd,reqprid","opt_instcd,opt_goodflag,cmb_reqflag,cmb_reqdeptcd,cmb_reqpridflag","Y");
- model.refresh();
-
- if (grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length> 0)
- {
- // -----------------------------------------------------------------------------------
- //
- // [20090409 YYJ] 최소 청구량 => 최소 처방량으로 변경 20090409 16:50 이혜숙 차장님 요청사항
- // 기존 청구시점에서 청구시 수량에 대한 규제를 위해 설정 되었던 항목을
- // 구매팀에서 물품에 대한 참고 치로 사용을 한다 함. ( EDI와의 환산 수량의 의미 ).. 최소 처방량에 대한 단위는 관리 하지 않는다 함
- // -----------------------------------------------------------------------------------
- // if(model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/minexch") > 0) model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty",model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/minexch") );
- // else model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty","1");
- // -----------------------------------------------------------------------------------
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/basevol",model.getValue("/root/init/main/goodlist/minexch"));
- // model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqmthdflag",model.getValue("/root/init/main/goodlist/reqmthd"));
- // -----------------------------------------------------------------------------------
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqqty" ,"1")
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/basevol","1");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/requnit",model.getValue("/root/init/main/goodlist/deliveunit"));
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/reqmthdflag","3");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/allsizespecid","YYY");
- }
-
- model.refresh();
-
- var cur_row = grd_goodreq.row;
- var status = grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("m"));
-
- var CSV = model.getValue(gvParamPath +"/SMRSD00400_/SMRSD00400_value");
-
- if(CSV.length == 0 && grd_goodreq.valueMatrix(cur_row, grd_goodreq.colRef("goodnm")).length == 0)
- {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodcd" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodnm" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodspec" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodflag" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/goodmodel" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/prodcmpynm" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/purcunit" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/basevol" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/stocqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/requnit" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/minexch" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/ddavguseqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/allsizeyn" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/allsizespecid" , "");
-
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/rgstqty" , "");
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth" , "1");
-
- grd_goodreq.col = grd_goodreq.colRef("goodcd");
- grd_goodreq.editCell();
- }
- else if (CSV.length > 0)
- {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/goodcd","");
- setCSVToNode("/root/copynode", CSV, "goodreqlist");
-
- fSettingGoodList("/root/copynode", "goodreqlist" , "userqty");
- }
- }
- }*/
- else if ((grd_goodreq.col == grd_goodreq.colRef("deptaprvyn"))) {
- if ((model.getValue(cmb_reqpridflag.attribute("ref")) != "1") &&
- (model.getValue(grd_goodreq.nodeset + "[" + grd_goodreq.row + "]/reqauth")!="2" ) ) {
- 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 {
- model.setValue(grd_goodreq.nodeset + "[" + grd_goodreq.row+ "]/deptaprvdd" ,getCurrentDate());
- }
- }
- }
- // --------------------------------------------------
- // 물품청구 내용이 바뀌었을때 처리하는 함수
- // --------------------------------------------------
- // 2010.12.06 청구포장수량 추가
- function fGoodreqOnKeyDown() {
-
- if(event.keyCode == 13)
- {
- if(grd_goodreq.col == grd_goodreq.colRef("reqqty"))
- {
- if(grd_goodreq.row < grd_goodreq.rows - grd_goodreq.fixedRows)
- {
- grd_goodreq.row = grd_goodreq.row + 1;
- grd_goodreq.select(grd_goodreq.row, grd_goodreq.colRef("reqqty")) = true;
- }
- }
- /* if(grd_goodreq.col == grd_goodreq.colRef("reqpackqty")) //청구포장수량 추가
- {
-
- if(grd_goodreq.row < grd_goodreq.rows - grd_goodreq.fixedRows)
- {
- grd_goodreq.row = grd_goodreq.row + 1;
- grd_goodreq.select(grd_goodreq.row, grd_goodreq.colRef("reqpackqty")) = true;
- }
-
- }*/
-
- }
-
- if(event.keyCode == 9)
- {
- if(event.shiftKey)
- {
- if(grd_goodreq.colAttribute(grd_goodreq.col + 1, "type").indexOf ("input") > -1)
- {
- for(curcol = grd_goodreq.col -1 ; curcol > -1 ; curcol--)
- {
- if(grd_goodreq.colAttribute(curcol, "type").indexOf ("input") > -1)
- {
- grd_goodreq.col = curcol;
- grd_goodreq.editCell();
- return;
- }
- }
- }
- }
- else
- {
- if(grd_goodreq.colAttribute(grd_goodreq.col, "type").indexOf ("input") == -1)
- {
- if(grd_goodreq.col - 1 == grd_goodreq.colRef("goodcd") && grd_goodreq.valueMatrix(grd_goodreq.row, grd_goodreq.col - 1).length == 0)
- {
- grd_goodreq.col = grd_goodreq.colRef("goodcd");
- grd_goodreq.editCell();
- return;
- }
- for(curcol = grd_goodreq.col ; curcol <grd_goodreq.cols ; curcol++)
- {
- if(grd_goodreq.colAttribute(curcol, "type").indexOf ("input") > -1)
- {
- grd_goodreq.col = curcol;
- grd_goodreq.editCell();
- 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;
- }
- }
- }
-
- }
-
- // --------------------------------------------------
- // Switch 속성변경 처리하는 함수
- // --------------------------------------------------
- function fViewToggle(pCls) {
- if (pCls == 1) { // 늘리기
- // 메인 Grup
- grp_main.attribute("left" ) = "1" ;
- grp_main.attribute("width" ) = "1188";
- // grp_main.attribute("top" ) = "90" ;
- // grp_main.attribute("height" ) = "663" ;
-
- // Data Grid
- // grd_goodreq.attribute("left" ) = "1" ;
- grd_goodreq.attribute("width" ) = "1183";
-
- // grd_goodreq.attribute("top" ) = "29" ;
- // grd_goodreq.attribute("height") = "628" ;
- lin_main.attribute("x2" ) = "1182" ;
- bbt_large.attribute("visibility") = "hidden" ;
- bbt_right.attribute("visibility") = "hidden" ;
- grp_button.attribute("left" ) = "589" ;
- grp_allsize.attribute("left" ) = "544" ;
-
- } else { // 줄이기
- // 메인 Grup
- grp_main.attribute("left" ) = "593" ;
- grp_main.attribute("width" ) = "602" ;
- // grp_main.attribute("top" ) = "90" ;
- // grp_main.attribute("height" ) = "663" ;
-
- // Data Grid
- // grd_goodreq.attribute("left" ) = "3" ;
- grd_goodreq.attribute("width" ) = "597" ;
- // grd_goodreq.attribute("top" ) = "29" ;
- // grd_goodreq.attribute("height") = "628" ;
- // lin_main.attribute("x1" ) = "2";
- lin_main.attribute("x2" ) = "595";
-
- bbt_large.attribute("visibility") = "visible" ;
- bbt_right.attribute("visibility") = "visible" ;
-
- grp_button.attribute("left" ) = "3" ;
- grp_allsize.attribute("left" ) = "174" ;
- }
-
- // swt_search.refresh();
- grp_main.refresh();
- }
-
- // --------------------------------------------------
- // 물품 찾기 속성변경 처리하는 함수
- // --------------------------------------------------
- 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() {
- var vReqSetFlag = "N";
- if (model.getValue(opt_instcd.attribute("ref")) == "") {
- messageBox("기관을 " ,"C002");
- return;
- }
-
- //
- if (model.getValue(cmb_reqdeptcd.attribute("ref" )) == ""){
- messageBox("청구 부서를 " ,"C002");
- return;
- }
-
- //
- if (vInstcd != model.getValue(opt_instcd.attribute("ref" ))) vReqSetFlag = "Y";
- if (vReqdeptcd != model.getValue(cmb_reqdeptcd.attribute("ref" ))) vReqSetFlag = "Y";
-
- if (vReqSetFlag == "N") return;
-
- vInstcd = model.getValue(opt_instcd.attribute("ref" ));
- vReqdeptcd = model.getValue(cmb_reqdeptcd.attribute("ref" ));
- model.setValue("/root/send/reqmst/instcd" , model.getValue(opt_instcd.attribute("ref" )));
- model.setValue("/root/send/reqmst/reqdeptcd" , model.getValue(cmb_reqdeptcd.attribute("ref" )));
- grd_reqset.fixedcellcheckbox(0, grd_reqset.colRef("select"),false) = true;
-
- misfGridInit(grd_reqset);
- misfGridInit(grd_setlist);
-
- submit("TRRSD00211");
-
- if (grd_setlist.rows < 2) return;
-
- if (model.getValue(grd_setlist.nodeset + "["+ 1 + "]/reqdeptcd" ) =="") return;
-
- grd_setlist.row = 1;
- fReqSetRead(grd_setlist.row);
- misfMsterDetailRetrieve();
- }
-
- // 부서 청구SET 물품
- function fReqSetRead(pRow) {
- model.setValue("/root/send/reqset/instcd" , model.getValue(grd_setlist.nodeset + "["+ pRow + "]/instcd" ));
- model.setValue("/root/send/reqset/reqdeptcd" , model.getValue(grd_setlist.nodeset + "["+ pRow + "]/reqdeptcd" ));
- model.setValue("/root/send/reqset/reqprid" , model.getValue(grd_setlist.nodeset + "["+ pRow + "]/reqprid" ));
- model.setValue("/root/send/reqset/goodsetcd" , model.getValue(grd_setlist.nodeset + "["+ pRow + "]/goodsetcd" ));
- model.setValue("/root/send/reqset/goodsetnm" , model.getValue(grd_setlist.nodeset + "["+ pRow + "]/goodsetnm" ));
-
- misfGridInit(grd_reqset);
- submit("TRRSD00210"); // 청구마감일자 조회 purcbaseweb
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 선택물품을 적용
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSelectDataApply() {
-
- var node = instance1.selectNodes("/root/main/list/goodreq/goodreqlist");
- if(node.length == 0){
- model.removeNodeset("/root/main/list/goodreq/goodreqlist");
- model.makeNode("/root/main/list/goodreq/goodreqlist")
- copyNodesetType(grd_goodreq.nodeset,grd_goodlist.nodeset+ "[chk ='true']","replace");
- grd_goodreq.refresh();
- var nodelist = instance1.selectNodes("/root/main/list/goodreq/goodreqlist");
- for (var row = 1 ; row <= nodelist.length; row++) {
- grd_goodreq.rowStatus(row)="1";
- grd_goodreq.cellstyle("background-color",row,grd_goodreq.colRef("reqpackqty"),row,grd_goodreq.colRef("reqpackqty")) = "#ffff99";
- //grd_goodreq.valueMatrix(row,grd_goodreq.colRef("reqseqno")) = fGetMaxReqNo();
- }
- }else{
- var addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
- if(model.getValue(grd_goodreq.nodeset + "[" + addRow + "]/goodcd").length > 0){
- copyNodesetType(grd_goodreq.nodeset,grd_goodlist.nodeset+ "[chk ='true']","after");
- }else{
- copyNodesetType(grd_goodreq.nodeset,grd_goodlist.nodeset+ "[chk ='true']","replace");
- }
- grd_goodreq.refresh();
- var nodelist = instance1.selectNodes("/root/main/list/goodreq/goodreqlist");
- for (var row = 1; row <=nodelist.length; row++) {
- var chk = grd_goodreq.valueMatrix(row,grd_goodreq.colRef("chk"));
- if(chk=="true"){
- grd_goodreq.rowStatus(row)="1";
- //grd_goodreq.valueMatrix(row,grd_goodreq.colRef("reqseqno")) = fGetMaxReqNo();
- grd_goodreq.cellstyle("background-color",row,grd_goodreq.colRef("reqpackqty"),row,grd_goodreq.colRef("reqpackqty")) = "#ffff99";
- }
- }
- }
- var goodnode = instance1.selectNodes("/root/main/GoodLists/goodlist");
- for (var gRow = 1; gRow <= goodnode.length; gRow++) {
- grd_goodlist.valueMatrix(gRow,grd_goodlist.colRef("chk"))="false";
- }
-
- ///////////2016년 12월29일 김치국
- var Sacnt = instance1.selectNodes("/root/main/list/goodreq/goodreqlist");
- for (var row = 1; row <= Sacnt.length; row++) {
- var Sreqseqno = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/reqseqno");
- var Sreokqty = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/reokqty");
- if ((Sreqseqno == null || Sreqseqno == "" || Sreqseqno == 0 ) && ( Sreokqty == 0 )) {
- model.removeNodeset("/root/send/safedata");
- var Sgoodcd = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/goodcd");
- var Slrgcd = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/lrgcd");
- var Sreqdeptcd = model.getValue("/root/send/goodlist/reqdeptcd");
- //////////////////////
- // 각 탭별 약국 재고 조회
- model.makeValue("/root/send/reqdata/flag" ,"1");
- model.makeValue("/root/send/reqdata/instcd" ,getUserInfo("dutplceinstcd"));
- model.makeValue("/root/send/reqdata/stkdeptcd",model.getValue("/root/send/goodlist/reqdeptcd"));
- model.makeValue("/root/send/reqdata/stofrdd" , getCurrentDate());
- model.makeValue("/root/send/reqdata/lrgcd" ,Slrgcd);
- model.makeValue("/root/send/reqdata/goodcd" ,Sgoodcd);
- model.makeValue("/root/send/reqdata/mngtcls" ,"");
- //submit("TRRSD10111");
- submit("TRRST07001", false);
- var Sreqdeptcd = model.getValue("/root/send/goodlist/reqdeptcd");
- var Sdept1 = model.getValue("/root/main/drugstatsinfo/init/benode_clsstocinfo/clsstoclist/depthngnm1");
- var Sdept2 = model.getValue("/root/main/drugstatsinfo/init/benode_clsstocinfo/clsstoclist/depthngnm2");
- var Sdept3 = model.getValue("/root/main/drugstatsinfo/init/benode_clsstocinfo/clsstoclist/depthngnm3");
- var Sdept4 = model.getValue("/root/main/drugstatsinfo/init/benode_clsstocinfo/clsstoclist/depthngnm4");
- if (Sreqdeptcd == "3242400000") {
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/stocqty",Sdept1);
- } else if (Sreqdeptcd == "3240300000") {
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/stocqty",Sdept2);
- } else if (Sreqdeptcd == "3240400000") {
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/stocqty",Sdept3);
- } else if (Sreqdeptcd == "3240807000") {
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/stocqty",Sdept4);
- }
- //////////////각항목별 계산루틴
- var Csafeqty = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/safeqty");
- if (Csafeqty == "" || isNull(Csafeqty) == true ) {
- Csafeqty = 0;
- }
- var Cstocqty = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/stocqty");
- if (Cstocqty == "" || isNull(Cstocqty) == true ) {
- Cstocqty = 0;
- }
- var Cpackperunitqty = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/reqpackperunitqty");
- if (Cpackperunitqty == "" || isNull(Cpackperunitqty) == true ) {
- Cpackperunitqty = 0;
- }
- var Corderunit = model.getValue("/root/main/list/goodreq/goodreqlist["+row+"]/orderunit");
- if (Corderunit == "" || isNull(Corderunit) == true ) {
- Corderunit = 0;
- }
- var Cneedqty = Csafeqty - Cstocqty ;
- if (Cneedqty < 0 ) {
- Cneedqty = 0;
- }
- //alert("Cneedqty " + Cneedqty);
- //alert("Corderunit " + Corderunit);
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/needqty",Cneedqty);
- //alert("Cpackperunitqty " + Cpackperunitqty);
- var Ctemp1 = Math.ceil( Cneedqty / Cpackperunitqty);
- var Ctemp2 = 0 ;
- if (Corderunit == 0 ) {
- Ctemp2 = 0;
- }else{
- Ctemp2 = Math.ceil( Ctemp1 / Corderunit);
- }
- var Ctemp3 = Math.ceil( Ctemp2 * Corderunit);
- //alert("Cneedqty " + Cneedqty);
- //alert("Ctemp1: Cneedqty / Cpackperunitqty " + Ctemp1);
- //alert("Ctemp2: Ctemp1 / Corderunit " + Ctemp2);
- //alert("Ctemp3: Ctemp2 * Corderunit " + Ctemp3);
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/cmppackqty",Ctemp3);
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/reqpackqty",Ctemp3);
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/reqqty",Ctemp3 * Cpackperunitqty);
- model.setValue("/root/main/list/goodreq/goodreqlist["+row+"]/reokqty",row);
- model.refresh();
- ///////
-
- }
- }
-
- model.refresh();
- //////////////////////// 2016년 12월 30일 김치국
-
- }
- /**
- * @ver : 2010-10-17
- * @desc : 선택물품을 적용시 같은물품 체크
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSelectDataAppchk(){
- var compNodeList = instance1.selectNodes(grd_goodlist.nodeset+ "[chk ='true']");
- for(var currow = grd_goodreq.fixedRows ; currow < grd_goodreq.rows ; currow++){
- var CompGoodcd = grd_goodreq.valueMatrix(currow , grd_goodreq.colRef("goodcd"));
- var compNodeSet = instance1.selectNodes(grd_goodlist.nodeset+ "[chk ='true']");
- var subNode = "";
- for(var j =0; j < compNodeSet.length;j++){
- subNode = compNodeSet.item(j);
- if(subNode.selectSingleNode("goodcd").text == CompGoodcd){
- messageBox(CompGoodcd+" 이 약품은 이미 적용하신 약품","I009");
- return;
- }
- }
- }
-
- }
-
- // --------------------------------------------------
- // All Size 읽어오는 함수
- // --------------------------------------------------
- var vAllSizeCol = 0;
- var vAllSizeRow = 0;
- var vAllSizePath = "/root/main/codelist";
- var vGoodReqPath = "/root/main/list/goodreq/goodreqlist";
-
- function fAllSizeRead(pRow, pCol, pPos) {
- var iClickY = pPos - 100;
-
- vAllSizeCol = pCol;
- vAllSizeRow = pRow;
-
- if (iClickY > 375) iClickY = iClickY - 319;
-
- grp_allsize.attribute("top") = iClickY+ "px";
- grp_allsize.attribute("visibility") = "visible" ;
- model.setValue("/root/send/allsize/instcd", model.getValue(opt_instcd.attribute("ref" )));
- model.setValue("/root/send/allsize/goodcd", model.getValue(grd_goodreq.nodeset + "[" + pRow + "]/goodcd"));
-
- submit("TRRSD00281");
-
- grp_allsize.refresh();
- }
-
- // All Size 선택
- function fAllSizeSelect() {
- grp_allsize.attribute("visibility") = "hidden" ;
-
- var vQty = "0";
- var vSize = "";
- var vSpec = "";
- var vModel = "";
- var vCheck = "";
- var vPath = "";
- var vTarget = "";
- var vSource = "";
-
- var vGoodcd = model.getValue(vGoodReqPath+"["+(vAllSizeRow)+"]/goodcd");
-
-
- for (var i = 1; i < grd_codelist.rows; i++) {
-
- if (model.getValue(vAllSizePath+"["+i+"]/chk") == "true") {
- vSize = model.getValue(vAllSizePath+"["+ i +"]/allsizespecid");
- vSpec = model.getValue(vAllSizePath+"["+ i +"]/goodspec" );
- vModel = model.getValue(vAllSizePath+"["+ i +"]/goodmodel" );
- vQty = model.getValue(vAllSizePath+"["+ i +"]/qty" );
-
- if (model.getValue(vGoodReqPath +"[goodcd='"+ vGoodcd+"' and allsizespecid='"+vSize+"']" +"/goodcd") == "") {
- if (vCheck == "") {
- vCheck = "Y";
- vTarget = vGoodReqPath+"["+(vAllSizeRow)+"]" ;
- if (grd_goodreq.rowStatus(vAllSizeRow) == 0)
- grd_goodreq.rowStatus(vAllSizeRow) = 2 ;
-
- } else {
-
- misfGridIUD(grd_goodreq,"A");
-
- addRow = grd_goodreq.rows - grd_goodreq.fixedRows;
- fDefaultSetting(addRow);
- vTarget = grd_goodreq.nodeset + "[" + addRow + "]/";
- vSource = vGoodReqPath + "[" + vAllSizeRow + "]/";
-
- fSettingGoodData(vTarget, vSource, "basevol", "requnit", "S");
-
- grd_goodreq.cellstyle("background-color" , addRow, 9) = "#FFFF00";
- }
- } else {
- vPath = vGoodReqPath+"[goodcd='"+ vGoodcd+"' and allsizespecid='"+vSize+"']";
- }
- //
- model.setValue(vTarget + "/allsizeyn" , "Y" );
- model.setValue(vTarget + "/allsizespecid" , vSize );
- model.setValue(vTarget + "/goodspec" , vSpec );
- model.setValue(vTarget + "/goodmodel" , vModel);
-
- if (vQty != "" && vQty != "0") {
- model.setValue(vTarget + "/stocqty" , vQty );
- }
- }
- }
-
- grd_goodreq.refresh();
- }
- /**
- * @ver : 2010-10-17
- * @desc : 신규 체크박스 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fNewReqNo() {
-
- if ( model.getValue(chk_reqnonew.attribute("ref")) == "Y" ){
- if (grd_goodreq.rows < 2) return;
- RetCls = messageBox("현재일자로 신규 생성합니다","Q003");
- if ( RetCls == 6){
- model.setValue(chk_reqnonew.attribute("ref"), "Y"); // reqnonew 인스턴스값이 <> N Y </> 으로 나와서 해당부분에서 처리함(문제발생시 if문 삭제)
- var ReqNo = model.getValue("/root/main/DeptReqnoLists/reqnolist/reqno");
- var reqnodelist = instance1.selectNodes("/root/main/DeptReqnoLists/reqnolist").length;
- var MaxReqno="";
- var comboItemNodeSet ="";
- for(var k =reqnodelist;k > 0;k-- ){
- if(k == reqnodelist){
- MaxReqno = model.getValue("/root/main/DeptReqnoLists/reqnolist["+k+"]/reqno");
- comboItemNodeSet = "/root/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);
- var destNode = instance1.selectSingleNode(comboItemNodeSet);
- var pDestNode = destNode.parentNode;
- pDestNode.insertAfter(itemNode, destNode);
- model.setValue("/root/send/goodreq/reqno","000"+(parseInt(MaxReqno)+1));
- cmb_reqno.dispatch("xforms-value-changed");
- }else if ( RetCls == 7){
- model.setValue(chk_reqnonew.attribute("ref"), "");
- chk_reqnonew.refresh();
- 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();
- }
-
- //
- function fSettingGoodData(pTarget, pSource, pUserqtynm, pRequnit, pCls) {
-
- var vReqDept = model.getValue(cmb_reqdeptcd.attribute("ref" )); // 청구부서
- var vReqprid = model.getValue(cmb_reqpridflag.attribute("ref")); // 청구주기
- vReqAuth = fPurcAuthInfoRow(vReqDept,vReqprid, model.getValue(pSource + "reqflag")); // 권한 Check
- model.setValue(pTarget + "goodcd" , model.getValue(pSource + "goodcd" ));
- model.setValue(pTarget + "goodnm" , model.getValue(pSource + "goodnm" ));
- model.setValue(pTarget + "goodspec" , model.getValue(pSource + "goodspec" ));
- model.setValue(pTarget + "reqflag" , model.getValue(pSource + "reqflag" ));
- model.setValue(pTarget + "goodflag" , model.getValue(pSource + "goodflag" ));
- model.setValue(pTarget + "goodmodel" , model.getValue(pSource + "goodmodel" ));
- model.setValue(pTarget + "prodcmpynm" , model.getValue(pSource + "prodcmpynm" ));
- model.setValue(pTarget + "purcunit" , model.getValue(pSource + "purcunit" ));
- model.setValue(pTarget + "purcunit" , model.getValue(pSource + "purcunit" ));
- model.setValue(pTarget + "basevol" , model.getValue(pSource + pUserqtynm ));
- model.setValue(pTarget + "stocqty" , 0 );
- model.setValue(pTarget + "reqqty" , model.getValue(pSource + pUserqtynm ));
- model.setValue(pTarget + "reqauth" , vReqAuth );
- // ---------------------------------------------------------------------------------
- // 청구량 계산
- // ---------------------------------------------------------------------------------
- // model.setValue(pTarget + "basevol" , model.getValue(pSource + "minexch" ));
- // basevol = model.getValue(pTarget + "basevol");
- // stocqty = grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("stocqty"));
- // reqqty = basevol - stocqty;
- // grd_goodreq.valueMatrix(grd_goodreq.row , grd_goodreq.colRef("reqqty")) =reqqty;
- // ---------------------------------------------------------------------------------
-
- model.setValue(pTarget + "requnit" , model.getValue(pSource + pRequnit ));
- model.setValue(pTarget + "minexch" , model.getValue(pSource + "minexch" ));
- model.setValue(pTarget + "ddavguseqty" , model.getValue(pSource + "ddavguseqty" ));
- model.setValue(pTarget + "exchqty" , model.getValue(pSource + "exchqty" ));
- //model.setValue(pTarget + "reqmthdflag" , model.getValue(pSource + "reqmthd" ));
- model.setValue(pTarget + "reqmthdflag" , "3" );
- model.setValue(pTarget + "allsizeyn" , model.getValue(pSource + "allsizeyn" ));
- model.setValue(pTarget + "reqcollcdeptcd", model.getValue(pSource + "reqcollcdeptcd"));
-
- model.setValue(pTarget + "setunit" , model.getValue(pSource + "setunit" ));
- model.setValue(pTarget + "reqpackqty" , 0 );
- if(model.getValue(pSource + "goodflag")=="PH"){
- model.setValue(pTarget + "reqpackunit" , model.getValue(pSource + "purcunit" ));
- model.setValue(pTarget + "reqpackperunitqty" , model.getValue(pSource + "exchqty" ));
- }else{
- model.setValue(pTarget + "reqpackperunitqty" , 0);
- }
- if (pCls == "S") {
- model.setValue(pTarget + "delivedeptcd", model.getValue(pSource + "delivedeptcd"));
- }
- else {
- model.setValue(pTarget + "delivedeptcd", model.getValue(pSource + "reqfnldeptcd"));
- }
- //
- if (model.getValue(pTarget + "delivedeptcd") =="") {
- model.setValue(pTarget + "delivedeptcd", gPurcDeptcd);
- }
- //
- model.setValue(pTarget + "rgstqty" , "0" );
-
- if (vReqAuth == "2") {
- misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", false);
- }else{
- misfSetReadOnlyCol(grd_goodreq, "deptaprvyn", true);
- }
-
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 물품검색 TAB 클릭시
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGoodListReady(pGoodCd, pGoodName) {
- misfGridInit(grd_goodlist);
- //misfComboComCdList('R0025', cmb_goodflag,"Y"); //물품구분
-
- fGoodListKeySet(); // 물품검색 기본 KEY SET
-
- // -------------------------------------------------------------------------------------------
- // sql문에 청구부서별 안전재고를 가져와야한다.
- // 프로그램 call시 변경해야한다. 인자값이 없을경우 해당 user값으로 setting한다.
- // -------------------------------------------------------------------------------------------
- if (model.getValue(PURTARGET_NODE + "/reqdeptcd").length == 0 )
- model.setValue("/root/send/goodlist/reqdeptcd", getUserInfo("dutplcecd"));
- else model.setValue("/root/send/goodlist/reqdeptcd", model.getValue(cmb_reqdeptcd.attribute("ref")));
- // --------------------------------------------------------------------------
- // 영양팀 명칭검색으로 이 window 가 open시 기본값 셋팅한다.
- // --------------------------------------------------------------------------
-
- if (pGoodCd.length > 0) {
- model.setValue("/root/send/goodlist/goodcd", pGoodCd);
- model.refresh();
- }
- else if (pGoodName.length > 0)
- {
- model.setValue("/root/send/goodlist/goodnm", pGoodName);
- model.refresh();
- }
- }
- /**
- * @ver : 2010-10-17
- * @desc : 물품검색 기본 KEY SET
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGoodListKeySet() {
- model.setValue("/root/send/goodlist/lrgcd" , "");
- model.setValue("/root/send/goodlist/mdlcd" , "");
- model.setValue("/root/send/goodlist/instcd" , model.getValue(opt_instcd.attribute("ref" )));
- model.setValue("/root/send/goodlist/reqprid" , model.getValue(cmb_reqpridflag.attribute("ref")));
- model.setValue("/root/send/goodlist/goodflag", model.getValue(cmb_goodflag.attribute("ref" )));
-
- model.setValue("/root/send/goodlist/instcdnm" , model.getValue(opt_instcdnm.attribute("ref")) );
- model.setValue("/root/send/goodlist/reqpridnm" , cmb_reqpridflag.label);
-
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 물품검색 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGoodListSearch() {
- misfGridInit(grd_goodlist);
-
- model.setValue( tmpreqdeptcd.attribute("ref") , model.getValue(cmb_reqdeptcd.attribute("ref")) ); //청구부서 물품조회시 추가하는 부분
-
- if(model.getValue(opt_instcd.attribute("ref")).length == 0 )return;
-
- if (model.getValue("/root/send/goodnm") != "") {
- model.setValue("/root/send/indexnm","");
- }
- model.setValue("/root/send/goodlist/reqprid" , "");
- model.setValue("/root/send/goodlist/instcd" , model.getValue(opt_instcd.attribute("ref")));
- model.setValue("/root/send/goodlist/goodflag", model.getValue(cmb_goodflag.attribute("ref")));
- //작업구분에 따라서 일반청구인지 처방집계인지 구분
- //청구와 반납일경우는 일반청구 즉 reqcheck Y
- //상비품청구 와 상비품반납일 경우는 처방집계 즉 reqcheck null
-
- model.setValue("/root/send/goodlist/workflag" , "N");
-
- if (model.getValue(cmb_workflag.attribute("ref")) ==1 || model.getValue(cmb_workflag.attribute("ref")) ==2 || model.getValue(cmb_workflag.attribute("ref")) ==6 ) {
- model.setValue("/root/send/goodlist/reqcheck" , "Y"); //청구화면임을 서버에 알리는 Key 값 ( -- 1:일반청구 / 2:일반청구반납 / 6:처방청구(작업구분이 처방 청구라도 행 추가 시 작업 구분을 "1" 일반청구로 지정 )
- } else if (model.getValue(cmb_workflag.attribute("ref")) ==3 || model.getValue(cmb_workflag.attribute("ref")) ==4 || model.getValue(cmb_workflag.attribute("ref")) ==5) {
- model.setValue("/root/send/goodlist/reqcheck" , ""); //청구화면임을 서버에 알리는 Key 값
- model.setValue("/root/send/goodlist/workflag" , "A");
- } else {
- model.setValue("/root/send/goodlist/reqcheck" , "Y"); //청구화면임을 서버에 알리는 Key 값
- }
-
- if(submit("TRRSD10121")){
- }
-
-
- }
-
- // --------------------------------------------------
- // 물품찾기 처리하는 함수
- // --------------------------------------------------
- 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;
- }
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 청구부서 Set
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReqdeptCopy(){
- var cPath = "/root/init/CopyData"
- var sPath = "/root/main/ReqpsnLists/reqpsnlist";
- var tPath = "/root/init/ReqDeptLists/reqdeptlist";
-
- var iDataCnt = getNodesetCount(sPath);
- if (iDataCnt < 1) {
- return;
- }
-
- model.removeNodeset(tPath);
- var iDataCnt = getNodesetCount(sPath);
- var Idx = 1;
-
- // -----------------------------------------------------------------------------------------------
- // 청구부서를 세션의 부서와 비교해서 cmb_reqdeptcd.select()를
- // 해당부서와 동일하게 해서 보여지도록 한다. 부서가 없을 경우 0번째 부서가 콤보에 보여짐
- // 사용자의 세션부서가 청구부서의 젤 상단에 위치하도록 노드셋 데이터 수정 하는 부분
- // -----------------------------------------------------------------------------------------------
- if (model.getValue(sPath+"[reqdeptcd='"+ getUserInfo("dutplcecd") + "']" +"/reqdeptnm") !="") {
- model.setValue(cPath+"/value",model.getValue(sPath+"[reqdeptcd='"+ getUserInfo("dutplcecd") + "']" +"/reqdeptcd"));
- model.setValue(cPath+"/label",model.getValue(sPath+"[reqdeptcd='"+ getUserInfo("dutplcecd") + "']" +"/reqdeptnm"));
-
- model.makeNode(tPath+"["+ Idx +"]" );
- model.copyNode(tPath+"["+ Idx +"]", cPath);
- Idx++;
- }
-
- // 청구부서 Set
- for (var k = 1; k <= iDataCnt; k++){
-
- vReqDept = model.getValue(sPath+"["+k+"]/reqdeptcd");
- vReqDeptNm = model.getValue(sPath+"["+k+"]/reqdeptnm");
-
- if ((vReqDeptNm != "" ) &&
- (model.getValue(tPath+"[value='"+ vReqDept + "']" +"/value") == "") ) {
-
- model.setValue(cPath+"/value",vReqDept );
- model.setValue(cPath+"/label",vReqDeptNm);
-
- model.makeNode(tPath+"["+ Idx +"]" );
- model.copyNode(tPath+"["+ Idx +"]", cPath);
-
- Idx++;
-
- } //end if
- } //end for
- cmb_reqdeptcd.refresh();
- cmb_reqdeptcd.select(0);
-
- fReqpridCopy(); // 청구 주기Set
-
- // fDeptReqNoQuery(); // 청구부서별 청구번호를 조회한다 fReqpridCopy 안에서 실행 제외 시킴 [20090129 YYJ]
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 청구 주기Set
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fReqpridCopy(){
- var cPath = "/root/init/CopyData"
- var sPath = "/root/main/ReqpsnLists/reqpsnlist";
- var tPath = "/root/init/ReqpridLists/reqpridlist";
- if (model.getValue(cmb_reqdeptcd.attribute("ref")).length== 0 ) {
- messageBox("청구부서를 " ,"C002");
- model.setFocus("cmb_reqdeptcd");
- return;
- }
-
- var iDataCnt = getNodesetCount(sPath);
- if (iDataCnt < 1) {
- return;
- }
-
- model.removeNodeset(tPath);
-
- var Idx = 1;
- var iDataCnt = getNodesetCount(sPath);
- var tReqDept = model.getValue(cmb_reqdeptcd.attribute("ref"));
- for (var k = 1; k <= iDataCnt; k++){
- vReqDept = model.getValue(sPath+"["+k+"]/reqdeptcd");
-
-
- if (vReqDept == tReqDept) {
-
- vReqPrid = model.getValue(sPath+"["+k+"]/reqprid");
- vReqPridNm = model.getValue(sPath+"["+k+"]/reqpridnm");
- if ((vReqPridNm != "" ) &&
- (model.getValue(tPath+"[value='"+ vReqPrid + "']" +"/value") == "") ) {
- model.setValue(cPath+"/value",vReqPrid );
- model.setValue(cPath+"/label",vReqPridNm);
-
- model.makeNode(tPath+"["+ Idx +"]" );
- model.copyNode(tPath+"["+ Idx +"]", cPath);
-
- Idx++;
- }
- }
- }
-
- //
- if (model.getValue("/root/send/goodlist/purcdeptflag") == "P") { //구매부서구분 : P
- var codynode = instance1.selectNodes(tPath + "/*");
-
- if (codynode.length < 1) {
- model.setValue(cPath+"/value","1" );
- model.setValue(cPath+"/label","일");
- model.makeNode(tPath+"[1]" );
- model.copyNode(tPath+"[1]" , cPath);
-
- model.setValue(cPath+"/value","4" );
- model.setValue(cPath+"/label","월");
- model.makeNode(tPath+"[2]" );
- model.copyNode(tPath+"[2]" , cPath);
-
- model.setValue(cPath+"/value","2" );
- model.setValue(cPath+"/label","주");
- model.makeNode(tPath+"[3]" );
- model.copyNode(tPath+"[3]" , cPath);
- }
- }
-
- //
- cmb_reqpridflag.select(0);
- cmb_reqpridflag.refresh();
-
- }
- // 청구승인자 Check
- function fPurcAuthInfo() {
-
- vPurcAuth = "1";
- model.setValue(ckb_accept.attribute("ref"), "");
-
- var sPath = "/root/main/ReqpsnLists/reqpsnlist";
-
- var iDataCnt = getNodesetCount(sPath);
-
- if (iDataCnt < 1) {
- return;
- }
- model.removeNodeset(tPath);
-
- var iDataCnt = getNodesetCount(sPath);
- var tReqDept = model.getValue(cmb_reqdeptcd.attribute("ref" )); // 청구부서
- var tReqprid = model.getValue(cmb_reqpridflag.attribute("ref")); // 청구주기
-
- for (var k = 1; k <= iDataCnt; k++){
- vReqDept = model.getValue(sPath+"["+k+"]/reqdeptcd"); // 청구부서
- vReqprid = model.getValue(sPath+"["+k+"]/reqprid" ); // 청구주기
- if ((vReqDept == tReqDept) &&
- (vReqprid == tReqprid) ) {
-
- if (model.getValue(sPath+"["+k+"]/reqaprvflag") == "2") {
- vPurcAuth = "2";
- model.setValue(ckb_accept.attribute("ref"), "Y");
- break;
- }
- }
- }
- }
-
- // 청구승인자 Check Row별 Check
- function fPurcAuthInfoRow(pReqDept,pReqprid,pReqFlag) {
-
- var sPath = "/root/main/ReqpsnLists/reqpsnlist";
-
- var vReqAuth = model.getValue(sPath+ "[reqdeptcd='"+ pReqDept
- + "' and reqprid='" + pReqprid
- + "' and reqflag='" + pReqFlag + "']/reqaprvflag"); // 청구권한
-
- vReqAuth = (vReqAuth == "") ? "1" : vReqAuth;
-
- return vReqAuth;
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 청구부서별 청구번호를 조회한다
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDeptReqNoQuery() {
-
-
- //if (gReqNoReadFlag) return; //청구번호 읽기
-
- // alert(++gcount);
- if (model.getValue(cmb_reqdeptcd.attribute("ref")) != "" && // 청구부서
- model.getValue(cmb_reqpridflag.attribute("ref")) != "" && // 청구주기
- model.getValue(ipt_reqdd.attribute("ref")) != "" && // 청구일자
- model.getValue(cmb_workflag.attribute("ref")) != "" ) // 작업구분 의 값이 모두 있을 때 청구 번호를 가져온다. [20080129 YYJ]
- {
- submit("TRRSD00408");
- /*
- if (getNodesetCount("/root/main/DeptReqnoLists/reqnolist") < 1 ){
- model.setValue(chk_reqnonew.attribute("ref"), "Y");
- fNewReqNoVisibility();
- } else {
- model.setValue(chk_reqnonew.attribute("ref"), "");
- fNewReqNoVisibility();
-
- cmb_reqno.refresh();
- cmb_reqno.select(0);
- }*/
- var nodelist = instance1.selectNodes("/root/main/DeptReqnoLists/reqnolist").length;
-
- if(nodelist < 1){
- model.makeValue("/root/main/DeptReqnoLists/reqnolist/reqno","0001");
- }
- cmb_reqno.refresh();
- cmb_reqno.select(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); //청구구분
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 부서찾기 기능 설정(구매팀일경우에만),2010-10-18 물품구분 약국담당자일 때 약품으로 셋팅
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSetTempDept(goodflag) {
- /*
- if ( gPurcDeptcd == getUserInfo("dutplcecd") ){
- if (cmb_goodflag.length> 0) cmb_goodflag.select(0);
- cpt_dept.attribute("visibility") = "visible";
- ipt_tempdeptcd.attribute("visibility") = "visible";
- ipt_tempdeptnm.attribute("visibility") = "visible";
- btn_tempdeptcd.attribute("visibility") = "visible";
-
- model.setValue("/root/send/goodlist/purcdeptflag" , "P"); //구매부서구분 : P
- }else {
- if((getUserInfo("dutplcecd")=="3242400000")||(getUserInfo("dutplcecd")=="3240300000")||(getUserInfo("dutplcecd")=="3240400000")
- ||(getUserInfo("dutplcecd")=="3240807000")){
-
- grd_goodreq.colHidden(grd_goodreq.colRef("exchqty")) = false;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackqty")) = false;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackunit")) = false;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqqty")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("requnit")) = true;
-
-
- model.setValue("/root/send/goodreq/goodflag","PH");
- model.setValue("/root/init/goodflag" ,"PH");
- cmb_goodflag.dispatch("xforms-value-changed");
- cap_edicd.attribute("visibility") = "hidden";
- ipt_edicd.attribute("visibility") = "hidden";
- cap_mngtcls.attribute("visibility") = "visible";
- cmb_mngtcls.attribute("visibility") = "visible";
- }else{
- if (cmb_goodflag.length> 0) cmb_goodflag.select(0);
- grd_goodreq.colHidden(grd_goodreq.colRef("exchqty")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackqty")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackunit")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqqty")) = false;
- grd_goodreq.colHidden(grd_goodreq.colRef("requnit")) = false;
-
- }
-
- cpt_dept.attribute("visibility") = "hidden";
- ipt_tempdeptcd.attribute("visibility") = "hidden";
- ipt_tempdeptnm.attribute("visibility") = "hidden";
- btn_tempdeptcd.attribute("visibility") = "hidden";
- model.setValue("/root/send/goodlist/purcdeptflag" , "X"); //구매부서구분 : P
- }*/
- if((getUserInfo("dutplcecd")=="3242400000")||(getUserInfo("dutplcecd")=="3240300000")||(getUserInfo("dutplcecd")=="3240400000")
- ||(getUserInfo("dutplcecd")=="3240807000")||(goodflag=="PH")){
- model.setValue("/root/send/goodreq/goodflag","PH");
- model.setValue("/root/init/goodflag" ,"PH");
-
- rszfLMSComboList(model.getValue(cmb_goodflag.attribute("ref")), "", "", "ipt_lrgcd", "", "L","Y");
- model.setValue("/root/send/goodlist/purcdeptflag" , "X"); //구매부서구분 : P
-
- }else{
- //if (cmb_goodflag.length> 0) cmb_goodflag.select(0);
- grd_goodreq.colHidden(grd_goodreq.colRef("exchqty")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackqty")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqpackunit")) = true;
- grd_goodreq.colHidden(grd_goodreq.colRef("reqqty")) = false;
- grd_goodreq.colHidden(grd_goodreq.colRef("requnit")) = false;
- if (goodflag=="init"){
-
- model.setValue("/root/init/goodflag" ,model.getValue("/root/init/cmb_goodflag/comcodelist/cdid[1]"));
- cmb_goodflag.refresh();
- model.setValue("/root/send/goodreq/goodflag" ,cmb_goodflag.value);
- rszfLMSComboList(model.getValue(cmb_goodflag.attribute("ref")), "", "", "ipt_lrgcd", "", "L","Y");
- }else{
- model.setValue("/root/send/goodreq/goodflag" ,cmb_goodflag.value);
- model.setValue("/root/init/goodflag" ,cmb_goodflag.value);
- }
-
- cap_edicd.attribute("visibility") = "visible";
- ipt_edicd.attribute("visibility") = "visible";
- cap_mngtcls.attribute("visibility") = "hidden";
- cmb_mngtcls.attribute("visibility") = "hidden";
-
-
- }
-
- // cpt_dept.attribute("visibility") = "hidden";
- //ipt_tempdeptcd.attribute("visibility") = "hidden";
- // ipt_tempdeptnm.attribute("visibility") = "hidden";
- // btn_tempdeptcd.attribute("visibility") = "hidden";
- model.setValue("/root/send/goodlist/purcdeptflag" , "X"); //구매부서구분 : P
- }
- //조회해온 부서를 청구부서 콤보에 붙이는 함수
- function fAddReqDeptcdCombo() {
-
- //tempdeptcd에 값을 reqdetpcd(청구부서) 콤보에 값을 부어준다 (makevaluie)
- var cPath = "/root/init/CopyData" //임시카피노드
- var sPath = "/root/tempdept"; //서버에서가져온부서정보노드
- var tPath = "/root/init/ReqDeptLists/reqdeptlist"; //청구부서 콤보노드
- var iDataCnt = getNodesetCount(sPath); //서버에서 가져온 부서정보노드(무조건 1 아님 0)
- if ( iDataCnt < 1)
- {
- return;
- }
- //model.removeNodeset(tPath);
- var ComboDataCnt = parseInt( getNodesetCount(tPath) ) +1 ; //콤보에 노드길이(숫자형으로형변환)
-
- var vTempDeptCd = model.getValue(sPath+"[1]/tempdeptcd");
- var vTempDeptNm = model.getValue(sPath+"[1]/tempdeptnm");
-
- if ( vTempDeptCd != "" )
- {
- model.setValue(cPath+"/value" , vTempDeptCd );
- model.setValue(cPath+"/label" , vTempDeptNm );
- model.makeNode(tPath+"["+ComboDataCnt +"]" );
- model.copyNode(tPath + "[" +ComboDataCnt +"]", cPath); //노드에 데이터 부어줌
- cmb_reqdeptcd.refresh();
- cmb_reqdeptcd.select(ComboDataCnt-1);
- }
- cmb_reqdeptcd.refresh();
- }
-
-
- 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
- }
-
-
- /**
- * @ver : 2010-10-17
- * @desc : 조회버튼 Click 처리
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSearchButtonClick(fValue) {
-
- if(fCheckRetrieveData(false) == false)return;
-
- //misfGridInit(grd_goodreq);
-
- if(model.getValue(cmb_reqno.attribute("ref")).length == 0)
- model.setValue(ipt_reqdd.attribute("ref") , getCurrentDate());
- // model.setValue("/root/send/goodreq/retrmaxreqnoyn","Y");
- //if (model.getValue(cmb_reqno.attribute("ref")) == "") return;
-
- // misfMsterDetailRetrieve();
- if(submit("TRRSD10122")){
- for (var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows ; fRow++ ) {
- grd_goodreq.cellstyle("background-color",fRow,grd_goodreq.colRef("reqpackqty"),fRow,grd_goodreq.colRef("reqpackqty")) = "#ffff99";
- grd_goodreq.cellstyle("background-color",fRow,grd_goodreq.colRef("orgdeliveqty"),fRow,grd_goodreq.colRef("orgdeliveqty")) = "#ccff99"; // 20120918_컬럼추가
- grd_goodreq.cellstyle("background-color",fRow,grd_goodreq.colRef("stocqty"),fRow,grd_goodreq.colRef("stocqty")) = "#ccff99"; // 20120918_컬럼추가
- }
- }
-
- // 권한여부에 따른 승인체크 설정.
- ///fGrantsCheck();
- /*
- fAfterRetr();
- var vAcctCnt = 0;
- var vReqAuth = "";
- var vReqDept = model.getValue(cmb_reqdeptcd.attribute("ref" )); // 청구부서
- var vReqprid = model.getValue(cmb_reqpridflag.attribute("ref")); // 청구주기
-
-
- for (var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows ; fRow++ ) {
- vReqFlag = model.getValue(grd_goodreq.nodeset + "[" + fRow + "]/reqflag") ;
-
- vReqAuth = fPurcAuthInfoRow(vReqDept,vReqprid,vReqFlag); // 권한 Check
-
- model.setValue(grd_goodreq.nodeset + "[" + fRow + "]/reqauth", vReqAuth) ;
-
- if (model.getValue(grd_goodreq.nodeset + "[" + fRow + "]/allsizeyn") =="Y") {
- grd_goodreq.cellstyle("background-color" , fRow, 9) = "#FFFF00";
- }
-
-
-
- if (grd_goodreq.valueMatrix(fRow, grd_goodreq.colRef("acptflag")) == "Y" ||
- grd_goodreq.valueMatrix(fRow, grd_goodreq.colRef("acptflag")) == "R" ) {
- grd_goodreq.isReadOnly(fRow, grd_goodreq.fixedCols-1, fRow, grd_goodreq.cols-1) = true;
- } else {
- if (vReqAuth =="2") {
- grd_goodreq.isReadOnly( fRow , grd_goodreq.colRef("deptaprvyn"), fRow , grd_goodreq.colRef("deptaprvyn")) = false; // ReadOnly false
- } else {
- vAcctCnt++;
- if (gPurcDeptcd != getUserInfo("dutplcecd") ){
- grd_goodreq.isReadOnly( fRow , grd_goodreq.colRef("deptaprvyn"), fRow , grd_goodreq.colRef("deptaprvyn")) = true; // ReadOnly
- }
- }
- }
- }
-
-
- if (vAcctCnt > 0) {
- if (gPurcDeptcd != getUserInfo("dutplcecd") ){
- ckb_accept.attribute("visibility") = "hidden";
- }
- model.setValue(ckb_accept.attribute("ref"), "N");
- } else {
- ckb_accept.attribute("visibility") = "visible";
- }
-
- model.refresh();*/
- }
-
-
- /**
- * @ver : 2010-10-17
- * @desc : Data 저장 하기 위한 Check
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveData() {
-
- //if (model.getValue(sel_goodflag.attribute("ref")) != "PH") {
- // fConfirmSaveData(); // Data를 저장한다. //// 저장하는 부분
- // return;
- //}
-
- //
- /// 마감 시간과 마감때 뿌려줄 Data를 가져다 놓음
- /*
- model.resetInstanceNode("/root/main/messagelists/messagelist");
-
- model.setValue("/root/send/message/instcd" , model.getValue(opt_instcd.attribute("ref")));
- model.setValue("/root/send/message/goodflag", "PH");
- submit("TRRSD00433");
-
- var hDesc = "";
- var HMagamTime = "";
-
- /// 수액시간을 가져다 놓음
- for (var fRow = grd_message.fixedRows; fRow < grd_message.rows; fRow++){
- if (model.getValue(grd_message.nodeset +"["+ fRow +"]/reqflag") == "H" ) { //수액이 존재하면 수액마감시간을 가져다 놓는다
- hDesc = model.getValue(grd_message.nodeset +"["+ fRow +"]/closdesc") +"\n" ;
- HMagamTime = model.getValue(grd_message.nodeset +"["+ fRow +"]/clostm" );
- break;
- }
- }
-
- var vReqFlag = "";
- var ReqflagE = 0 ; // 05 P 약품및재료
- var ReqflagF = 0 ; // 06 P 제제약품
- var ReqflagI = 0 ; // 09 P 조영제
- var ReqflagH = 0 ; // 10 P 수액
-
- if (model.getValue(chk_reqnonew.attribute("ref")) == "Y") { //
- vReqdd = model.getValue(ipt_reqddnew.attribute("ref"));
- } else {
- vReqdd = model.getValue(ipt_reqdd.attribute("ref"));
- }
-
- //
- for (var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows; fRow++){
- vReqFlag = model.getValue(grd_goodreq.nodeset + "[" + fRow + "]/reqflag");
-
- if (vReqFlag == "H"){ //수액인경우
- // 만약에 수액 같은 경우에 blocking을 원하면
- // 1) 현재시간을 체크 2) DB의 마감시간 체크 3) 1과2번을 비교하여 시간을 넘어가면 무조건 저장안되게 막음
- if (getCurrentTime() > HMagamTime && vReqdd == getCurrentDate() && grd_goodreq.rowStatus(fRow) != "0" ){ //현재시간이 마감시간보다 크다면 무조건 Blocking
- messageBox(hDesc, "I");
- return;
- }
-
- ReqflagH = 1 ; // 09 P 수액
-
- } else {
- ReqflagE = (vReqFlag == "E") ? 1 : ReqflagE; // 05 P 약품및재료
- ReqflagF = (vReqFlag == "F") ? 2 : ReqflagF; // 06 P 제제약품
- ReqflagI = (vReqFlag == "I") ? 4 : ReqflagI; // 09 P 조영제
-
- //if ((ReqflagE+ReqflagF+ReqflagI) == 7) break;
- }
- }
-
- lastDesc = (ReqflagH == 1) ? model.getValue(grd_message.nodeset +"[reqflag='H']/closdesc") : "";
- lastDesc += (ReqflagE == 1) ? model.getValue(grd_message.nodeset +"[reqflag='E']/closdesc") : "";
- lastDesc += (ReqflagF == 2) ? model.getValue(grd_message.nodeset +"[reqflag='F']/closdesc") : "";
- lastDesc += (ReqflagI == 4) ? model.getValue(grd_message.nodeset +"[reqflag='I']/closdesc") : "";
-
- if (lastDesc!=""){
- messageBox(lastDesc,"I");
- }*/
-
- //
- fConfirmSaveData(); // Data를 저장한다. //// 저장하는 부분
- }
-
- /**
- * @ver : 2010-10-17
- * @desc : 청구 Data 저장
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fConfirmSaveData() {
- // 저장전 Data를 Check한다.
- if (fCheckSaveData() == false) return;
-
- model.setValue("/root/send/save/autoaprv/instcd" ,model.getValue(opt_instcd.attribute("ref") )); // 기관코드
- model.setValue("/root/send/save/autoaprv/reqdeptcd",model.getValue(cmb_reqdeptcd.attribute("ref"))); // 청구부서
-
- var vReqdd = ""; // 청구일자
- /*
- if (model.getValue(chk_reqnonew.attribute("ref")) == "Y") { //
- vReqdd = model.getValue(ipt_reqddnew.attribute("ref"));
- } else {
- vReqdd = model.getValue(ipt_reqdd.attribute("ref"));
- }
- */
- vReqdd = model.getValue(ipt_reqdd.attribute("ref"));
- model.setValue("/root/send/save/autoaprv/reqdd", vReqdd); // 청구일자
- // 청구 가능 시간을 CHECK한다.
- // if (fCheckLimitTime(vReqdd) == false) return;
-
- // 동시 승인여부
-
-
- // 일청구는 자동 승인한다.
- if (model.getValue(cmb_reqpridflag.attribute("ref"))=="1") {
- model.setValue("/root/send/save/autoaprv/autoaprvyn","Y");
- }
-
- for (var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows; fRow++){
-
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqpsnid")) = model.getValue("/root/init/requserno");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqdeptcd")) = model.getValue("/root/send/goodreq/reqdeptcd");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqdd")) = model.getValue("/root/send/goodreq/reqdd");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqno")) = model.getValue("/root/send/goodreq/reqno");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("workflag")) = model.getValue("/root/send/goodreq/workflag");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqpridflag")) = model.getValue("/root/send/goodreq/reqpridflag");
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("deliveflag")) = "1";
- grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqmthdflag")) = "3";
-
- }
-
- model.setValue("/root/send/save/goodreqlist", grd_goodreq.getUpdateData());
- /*if(submit("TXRSD00411")){
- var ReqnoNew =model.getValue("/root/send/save/autoaprv/reqnonew");
- if(ReqnoNew=="Y"){
- model.setValue("/root/send/save/autoaprv/reqnonew","");
- }
- if (model.getValue(gvErrorMsgPath + "/type") == "error") return;
- btn_search.dispatch("DOMActivate");
- }*/
- if(submit("TXRSD10101")){
- var ReqnoNew =model.getValue("/root/send/save/autoaprv/reqnonew");
- if(ReqnoNew=="Y"){
- model.setValue("/root/send/save/autoaprv/reqnonew","");
- }
- if (model.getValue(gvErrorMsgPath + "/type") == "error") return;
- fSearchButtonClick();
- }
- }
-
- /**
- * @ver : 2010-12-06
- * @desc : 약품일떄만 포장수량 입력시 낱개수량 자동 계산
- * @param :
- * @return :
- * @----------------------------------------
- */
- function fCalcReqQty(){
-
- if(grd_goodreq.col == grd_goodreq.colRef("reqpackqty")){
- var exchqty = parseFloat(grd_goodreq.valueMatrix(grd_goodreq.row,grd_goodreq.colRef("reqpackperunitqty")));
- var reqpackqty = parseFloat(grd_goodreq.valueMatrix(grd_goodreq.row,grd_goodreq.colRef("reqpackqty")));
- var compReqpackqty = grd_goodreq.valueMatrix(grd_goodreq.row,grd_goodreq.colRef("reqpackqty"));
- grd_goodreq.valueMatrix(grd_goodreq.row,grd_goodreq.colRef("reqqty")) = reqpackqty*exchqty;
-
- if(isSearchString(grd_goodreq.valueMatrix(grd_goodreq.row,grd_goodreq.colRef("reqqty")), "#QNAN")){
- messageBox("청구수량에 잘못된 값이 들어갔습니다.","I007");
- grd_goodreq.col = grd_goodreq.colRef("reqpackqty");
- grd_goodreq.editCell();
- return;
- }else{
- if(grd_goodreq.row < grd_goodreq.rows - grd_goodreq.fixedRows)
- {
- grd_goodreq.row = grd_goodreq.row + 1;
- grd_goodreq.select(grd_goodreq.row, grd_goodreq.colRef("reqpackqty")) = true;
- }
- }
- }
- grd_goodreq.refresh();
- }
-
- /**
- * @ver : 2010-12-06
- * @desc : 0인 수량 삭제
- * @param :
- * @return :
- * @----------------------------------------
- */
- function fZeroReqQtyDel(){
-
- for(var fRow = grd_goodreq.fixedRows; fRow < grd_goodreq.rows ; fRow++ ) {
- var reqpackqty = grd_goodreq.valueMatrix(fRow,grd_goodreq.colRef("reqpackqty"));
- if(reqpackqty == 0){
- grd_goodreq.rowStatus(fRow)="4";
- }
- }
- }
- /* ------------------------------------------------- */
- /* ------End Of List ------------------------------- */
- /* -------------------------------------------------- */
|