123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[/**
- * 파 일 명 : SMADT30100.js
- * 설 명 : 마약향정처방관리 Javascriot
- * 설 계 자 : 공두경
- * 작 성 자 : 공두경
- * 수정이력 : 2007.08.10 / 최초작성 / 공두경
- */
- var nextFlag ="GO";
- var gTimer = null;
- var sleepTime= 1000;
- var rtnprntflag = 'N'; // 20110422_laboru_경북대병원_반환처방전 반환확인 시 자동출력 될때 메시지 창 안뜨게 하기
- var totqtyflag = 'Y'; // 201120712 경북대병원_반환처방전 반환수량 (-) 뜨게하기 김치국
- var arErrorCode = new HashArray();
- var colHidnValue;
- /******************************************************************
- * Argument : fInit()
- * Description : onload
- ******************************************************************/
- function fInit()
- {
- //구분 초기화(전체)
- //model.setValue("/root/temp/srchinfo/narcflag", "M");
- ds_temp_srchinfo.setColumn(0, "narcflag", "T");
- ds_temp_srchinfo.setColumn(0, "srchdrugkind", "T");
- ds_temp_srchinfo.setColumn(0, "drugflag", "I");
- // fChkIOTotal();
- ds_temp_srchinfo.setColumn(0, "narcstat", "T");
- group3.group2.div_kind.rdo_cncl.enable = false;
- ds_temp_srchinfo.setColumn(0, "cnclstat", "");
- group3.group2.div_kind.rdo_rtn.enable = false;
- ds_temp_srchinfo.setColumn(0, "rtnstat", "");
- ds_temp_srchinfo.setColumn(0, "narctypeflag", "T");
- ds_temp_srchinfo.setColumn(0, "srchioflag", "I");
- ////자동시 표기 김치국 20170329
- cap_automess.visible = false;
- fChgIOFlag();
- //토글초기화
- ds_temp_srchinfo.setColumn(0, "srchroot", "M");
- grd_narclist.visible = true;
-
- //조회날짜 초기화
- ds_temp_srchinfo.setColumn(0, "fst_dd", utlf_getCurrentDate());
- ds_temp_srchinfo.setColumn(0, "last_dd", utlf_getCurrentDate());
- //병동 Combo 조회
- ds_send_srchcond.setColumn(0, "deptflag", "W");
- var oParam = {};
- oParam.id = "TRADT30101";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetSrchList";
- oParam.inds = "req=ds_send_srchcond";
- oParam.outds = "ds_temp_srchcond_ward=ward ds_temp_srchcond_narclist=narclist";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30101";
- tranf_submit(oParam);
-
- //astfAddCombo("/root/temp/srchcond", "ward", "wardcd,wardnm", ",");
- dsf_addDsItem(ds_temp_srchcond_ward, "deptcd", "deptnm", "전체", "", "above"); //병동 셋팅
- //로그인 사용자 셋팅
- var userid = sysf_getUserId();
- ds_temp_srchinfo.setColumn(0, "srchid", userid);
-
- fChgUserID();
- //바코드프린터설정 초기화
- ds_send.setColumn(0, "scrnid", frmf_getScreenID());
- var oParam = {};
- oParam.id = "TRLLC90101";
- oParam.service = "diagtestapplib.LisCommon";
- oParam.method = "reqGetSetUpInfo";
- oParam.inds = "scrnid=ds_send";
- oParam.outds = "ds_main_barcdprntsetup=getSetUpInfo";
- oParam.async = false;
- //oParam.callback = "cf_TRLLC90101";
- tranf_submit(oParam);
- var sParamObj = new Object();
- sParamObj.pathYN = 'N'; //dsvaluepath 컬럼 사용여부
-
- var pXmlStr = ds_main_barcdprntsetup.getColumn(0, "prntsetupinfo");
-
- var succYn = lf_convertXmlToDs(pXmlStr, sParamObj);
-
- sysf_trace(succYn);
-
- var comm = ds_data_comm02.getColumn(0, "comm");
- var prntkind = ds_data_setupinfo.getColumn(0, "prntkind");
- if( comm == "2" ) {
- ds_data_comm02.setColumn(0, "comm", "1");
- }
- if( prntkind == "1" ) {
- ds_data_setupinfo.setColumn(0, "prntkind", "5");
- }
- //라벨 출력 형식 옵션
- var oParam = {};
- oParam.id = "TRADT30106";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetLblType3";
- oParam.inds = "req=ds_send_userinfo";
- oParam.outds = "ds_init_lbltype=item";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30106";
- tranf_submit(oParam);
- //잔량옵션
- var oParam = {};
- oParam.id = "TRADT30107";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarType";
- oParam.inds = "req=ds_send_userinfo";
- oParam.outds = "ds_init_nartype=item";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30107";
- tranf_submit(oParam);
- // 출고부서 조회, 설정
- var oParam = {};
- oParam.id = "TRADT01106";
- oParam.service = "pharmacyprescriptionapp.DrugPrint";
- oParam.method = "reqGetMisDeptlist";
- oParam.inds = "";
- oParam.outds = "ds_init_misdeptlist=deptlist";
- oParam.async = false;
- //oParam.callback = "cf_TRADT01106";
- tranf_submit(oParam);
-
- if( ds_init_misdeptlist.rowcount == 1 ) {
- group3.group2.combo1.setFocus();
- group3.group2.combo1.index = 0;
- } else {
- // 2010.01.25 pymi 입원주사조제실 제거
- if( ds_init_misdeptlist.getColumn(0, "deptcd") == "3242104000" ) {
- ds_init_misdeptlist.deleteRow(0);
- } else {
- group3.group2.combo1.setFocus();
- group3.group2.combo1.index = 0; // 20101019_laboru_경북대병원_cmc 셋팅을 경북대병원용으로 변경
- }
- // (e)
- }
- //1일기준인지 1회기준인지 체크하여 컬럼을 hidden
- colHidnValue = lf_grdBaseColHidn("D");
- //var colHidnValue = "C";
- //1회 기준
- if( colHidnValue == "C" ) {
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpvol"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpvolunit"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","dayprcpqty"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","dayprcpqtyunit"),"size",0);
-
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpvol"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpvolunit"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","dayprcpqty"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","dayprcpqtyunit"),"size",0);
- } else {
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpvol2"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpvolunit2"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpqty2"),"size",0);
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpqtyunit2"),"size",0);
-
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpvol2"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpvolunit2"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpqty2"),"size",0);
- grd_narclist.setFormatColProperty(grd_narclist.getBindCellIndex("body","prcpqtyunit2"),"size",0);
- }
- }
- /******************************************************************
- * Argument :
- * Description : 입원외래구분 클릭시
- ******************************************************************/
- function fChgIOFlag() {
- var ioflag = ds_temp_srchinfo.getColumn(0, "srchioflag");
- // ========================== 병동, 퇴원/외박/외출 radio 컨트롤 visible ==========================
- if( ioflag == "O" ){
- ds_temp_srchinfo.setColumn(0, "drugflag", "");
- group3.group2.rdo_drugflag.visible = false;
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpkindnm"),"size",0);//20090811 처방구분숨기기
-
- if( ds_temp_srchinfo.getColumn(0, "narcflag") == "H" ) {
- group3.group2.combo2.setFocus();//외래향정일때 실시일자
- group3.group2.combo2.index = 3;
- } else {
- group3.group2.combo2.setFocus();//그외 적용일자
- group3.group2.combo2.index = 1;
- }
- } else if( ioflag == "I" ){
- ds_temp_srchinfo.setColumn(0, "drugflag", "I");
- group3.group2.rdo_drugflag.visible = true;
- grd_outnarc.setFormatColProperty(grd_outnarc.getBindCellIndex("body","prcpkindnm"),"size",52); //20090811 처방구분보이기
- group3.group2.combo2.setFocus();//그외 적용일자
- group3.group2.combo2.index = 1;
- } else {
- group3.group2.rdo_drugflag.visible = false;
- }
- // =========================================================================================
- // ========================== 병동 Combo 조회===========================
- ds_send_srchcond.setColumn(0, "deptflag", "W");
-
- var oParam = {};
- oParam.id = "TRADT30401";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNursSrchList";
- oParam.inds = "req=ds_send_srchcond";
- oParam.outds = "ds_temp_srchcond_dept=dept";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30401";
- tranf_submit(oParam);
- ds_temp_drugdeptinfo.copyData(ds_temp_srchcond_dept); //수행부서 셋팅
-
-
- dsf_addDsItem(ds_temp_drugdeptinfo, "deptcd", "deptnm", "수술실 마취", "3073100000", "above"); //수행부서 셋팅
- dsf_addDsItem(ds_temp_drugdeptinfo, "deptcd", "deptnm", "수술실 회복실", "3073300000", "above"); //수행부서 셋팅
- dsf_addDsItem(ds_temp_drugdeptinfo, "deptcd", "deptnm", "전체", "", "above");
-
- //Multi Combo
- group3.group2.combo3.setDataSet(ds_temp_drugdeptinfo,"deptcd","deptnm");
- group3.group2.combo3.setCallEvent("fn_combo3");
-
- dsf_addDsItem(ds_temp_srchcond, "deptcd", "deptnm", "수술실 마취", "3073100000", "above"); //불출신청부서 셋팅
- dsf_addDsItem(ds_temp_srchcond, "deptcd", "deptnm", "수술실 회복실", "3073300000", "above"); //불출신청부서 셋팅
-
- var oParam = {};
- oParam.id = "TRADT30405";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetOutDeptInfo";
- oParam.inds = "";
- oParam.outds = "ds_temp_dutdeptinfo=dept";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30405";
- tranf_submit(oParam);
-
- dsf_copyDs(ds_temp_drugdeptinfo, ds_temp_dutdeptinfo, "after");
- ds_temp_srchcond.copyData(ds_temp_drugdeptinfo);
- dsf_addDsItem(ds_temp_srchcond, "deptcd", "deptnm", "", "", "above");
-
- fChgSwitch();
- fGetNarcData();
-
- var oParam = {};
- oParam.id = "TRADT30101";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetSrchList";
- oParam.inds = "req=ds_send_srchcond";
- oParam.outds = "ds_temp_srchcond_ward=ward ds_temp_srchcond_narclist=narclist";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30101";
- tranf_submit(oParam);
-
- if( ioflag == "O" ) group3.group2.cmb_ward.value = "";
- }
- /******************************************************************
- * Argument :
- * Description : Multi Combo set
- ******************************************************************/
- function fn_combo3(e){
- var getCombo3 = e.postvalue;
- ds_temp_srchinfo.setColumn(0, "srchdeptcd", getCombo3);
- }
- /******************************************************************
- * Argument :
- * Description : userid 변경시
- ******************************************************************/
- function fChgUserID() {
- var sUserid = ds_temp_srchinfo.getColumn(0, "srchid");
- // 20100728_경북대_laboru_userid 길이체크 삭제
- //if(sUserid.length == 8 || sUserid.length == 9 || sUserid.length == 10){
- ds_send_userinfo.setColumn(0, "userid", sUserid);
- var oParam = {};
- oParam.id = "TRADT30104";
- oParam.service = "pharmacyprescriptionapp.DrugReturn";
- oParam.method = "reqGetUserInfo";
- oParam.inds = "req=ds_send_userinfo";
- oParam.outds = "ds_temp_userinfo=userinfo";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30104";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_temp_userinfo.getColumn(0, "userid")) ){
- sysf_messageBox("사용자ID 정보가 없습니다.\n다시","C001");
- ds_temp_srchinfo.setColumn(0, "srchid", "");
- group3.group2.ipt_srchid.setFocus();
- } else {
- ds_temp_srchinfo.setColumn(0, "srchid", "");
- group3.group2.ipt_srchid.setFocus();
- group3.group2.input9.setFocus();
- }
- /*} else {
- messageBox("사용자ID 정보가 다릅니다.\n다시","C001");
- model.setValue("/root/temp/srchinfo/srchid","");
- model.setFocus("ipt_srchid");
- }*/
- }
- /******************************************************************
- * Argument :
- * Description : switch case변경
- ******************************************************************/
- function fChgSwitch() {
- var srchroot = ds_temp_srchinfo.getColumn(0, "srchroot");
- var ioflag = ds_temp_srchinfo.getColumn(0, "srchioflag");
- var drugflag = ds_temp_srchinfo.getColumn(0, "drugflag");
-
- if( srchroot == "M" ){
- if(ioflag == "O"){
- grd_outnarc.visible = true;
- grd_narclist.visible = false;
- grd_sprelist.visible = false;
- } else {
- if(drugflag == "L"){
- grd_outnarc.visible = true;
- grd_narclist.visible = false;
- grd_sprelist.visible = false;
- } else {
- grd_narclist.visible = true;
- grd_outnarc.visible = false;
- grd_sprelist.visible = false;
- }
- }
- } else if(srchroot == "R"){
- grd_sprelist.visible = true;
- grd_narclist.visible = false;
- grd_outnarc.visible = false;
- }
- }
- /******************************************************************
- * Argument :
- * Description : 마약리스트 조회
- ******************************************************************/
- function fGetNarcData() {
- //이선경 2008-07-22 start (조회시 마약종류를 조회조건에 추가)
- var narccdlist = "";
- for( var i = 0; i < ds_temp_srchcond_narclist.rowcount; i++ ) {
- if( ds_temp_srchcond_narclist.getColumn(i, "sel") == "1" ) {
- if( utlf_isNull(narccdlist) ) {
- narccdlist = "'" + ds_temp_srchcond_narclist.getColumn(i, "narccd") + "'";
- } else {
- narccdlist += ",'" + ds_temp_srchcond_narclist.getColumn(i, "narccd") + "'";
- }
- }
- }
-
- ds_temp_srchinfo.setColumn(0, "narccd", narccdlist);
-
- //이선경 2008-07-22 start (조회시 마약종류를 조회조건에 추가)
- // grd_narclist.fixedcellischeck(0, 1) = false;
- // grd_outnarc.fixedcellischeck(0, 1) = false;
- grd_narclist.setCellProperty("Head",0,"text",0);
- grd_outnarc.setCellProperty("Head",0,"text",0);
- ds_send_srchinfo.copyData(ds_temp_srchinfo);
-
- if( ds_temp_srchinfo.getColumn(0, "prtab") == "Y" ) { // 향정반환반납장부 출력조건 2009.05.18 pymi
- ds_send_srchinfo.setColumn(0, "cnclflag", "Y");
- ds_send_srchinfo.setColumn(0, "rtnflag", "Y");
- ds_send_srchinfo.setColumn(0, "rtnstat", "T");
- ds_send_srchinfo.setColumn(0, "cnclstat", "T");
- ds_send_srchinfo.setColumn(0, "narcstat", "");
- }
- // (e)
-
- /*if(model.getValue("/root/send/srchinfo/narcflag") == "H" ) {
- submit("TRADT30105");
- }*///주석처리 20090901 이선경 조회하는 로직안으로 옮김(향정이 반환대상이면 반환신청으로 잔량대상이면 잔량신청으로 업데이트 후 조회)
-
- if( ds_temp_srchinfo.getColumn(0, "autoprnt") != "Y" ) {
- dsf_createDsRow("ds_req", [
- {col:"narcflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narcflag")}
- , {col:"timeflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"timeflag")}
- , {col:"fst_dd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"fst_dd")}
- , {col:"last_dd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"last_dd")}
- , {col:"srchdrugkind" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdrugkind")}
- , {col:"srchioflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchioflag")}
- , {col:"drugflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"drugflag")}
- , {col:"srchroot" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchroot")}
- , {col:"narcstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narcstat")}
- , {col:"cnclstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"cnclstat")}
- , {col:"rtnstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"rtnstat")}
- , {col:"nodeliveflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"nodeliveflag")}
- , {col:"narctype" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narctype")}
- , {col:"pid" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"pid")}
- , {col:"ward" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"ward")}
- , {col:"srchdrugno" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdrugno")}
- , {col:"barcode" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"barcode")}
- , {col:"narccd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narccd")}
- , {col:"barcode_2" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"barcode_2")}
- , {col:"srchdeptcd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdeptcd")}
- , {col:"srchprcpkind" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchprcpkind")}
- , {col:"srchprcpkindall", type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchprcpkindall")}
- , {col:"prntdt" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"prntdt")}
- , {col:"issdeptcd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"issdeptcd")}
- , {col:"selkey" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"selkey")}
- ]);
- var oParam = {};
- oParam.id = "TRADT30102";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarcData";
- oParam.inds = "req=ds_req";
- oParam.outds = "ds_main_narclist=narclist";
- oParam.async = false;
- oParam.callback = "cf_TRADT30102";
- tranf_submit(oParam);
- } else if( ds_temp_srchinfo.getColumn(0, "autoprnt") == "Y" ) {
- dsf_createDsRow("ds_req", [
- {col:"narcflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narcflag")}
- , {col:"timeflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"timeflag")}
- , {col:"fst_dd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"fst_dd")}
- , {col:"last_dd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"last_dd")}
- , {col:"srchdrugkind" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdrugkind")}
- , {col:"srchioflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchioflag")}
- , {col:"drugflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"drugflag")}
- , {col:"srchroot" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchroot")}
- , {col:"narcstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narcstat")}
- , {col:"cnclstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"cnclstat")}
- , {col:"rtnstat" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"rtnstat")}
- , {col:"nodeliveflag" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"nodeliveflag")}
- , {col:"narctype" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narctype")}
- , {col:"pid" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"pid")}
- , {col:"ward" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"ward")}
- , {col:"srchdrugno" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdrugno")}
- , {col:"barcode" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"barcode")}
- , {col:"narccd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"narccd")}
- , {col:"barcode_2" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"barcode_2")}
- , {col:"srchdeptcd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"srchdeptcd")}
- , {col:"prntdt" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"prntdt")}
- , {col:"issdeptcd" , type:"STRING", size:256, val:ds_send_srchinfo.getColumn(0,"issdeptcd")}
- ]);
- var oParam = {};
- oParam.id = "TRADT30110";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarcData";
- oParam.inds = "req=ds_req";
- oParam.outds = "ds_temp_narclist=narclist";
- oParam.async = false;
- oParam.callback = "cf_TRADT30110";
- tranf_submit(oParam);
- }
- }
- function cf_TRADT30102(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- dsf_setDefaultVal(ds_temp_narclist, "sel:");
- // dsf_setTypeFormat(ds_main_narclist, "prcptims:INT^prcpdayno:INT^rtnqty:INT^prcpno:INT^prcphistno:INT^drugno:INT");
- ds_main_narclist.addColumn("prcpqtyunit2", "string", 256);
- ds_main_narclist.addColumn("dayprcpqtyunit", "string", 256);
- ds_main_narclist.addColumn("prcpvolunit2", "string", 256);
- for( var i = 0; i < ds_main_narclist.rowcount; i++ ){
- var unit = ds_main_narclist.getColumn(i, "prcpqtyunit");
- var volunit = ds_main_narclist.getColumn(i, "prcpvolunit");
- ds_main_narclist.setColumn(i, "prcpqtyunit2", unit);
- ds_main_narclist.setColumn(i, "dayprcpqtyunit", unit);
- ds_main_narclist.setColumn(i, "prcpvolunit2", volunit);
- }
- }
- function cf_TRADT30110(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
- dsf_setDefaultVal(ds_temp_narclist, "sel:1");
- // dsf_setTypeFormat(ds_temp_narclist, "prcptims:INT^prcpdayno:INT^rtnqty:INT^prcpno:INT^prcphistno:INT^drugno:INT^drugseqno:INT");
- ds_temp_narclist.addColumn("prcpqtyunit2", "string", 256);
- ds_temp_narclist.addColumn("dayprcpqtyunit", "string", 256);
- ds_temp_narclist.addColumn("prcpvolunit2", "string", 256);
- for( var i = 0; i < ds_temp_narclist.rowcount; i++ ){
- var unit = ds_temp_narclist.getColumn(i, "prcpqtyunit");
- var volunit = ds_temp_narclist.getColumn(i, "prcpvolunit");
- ds_temp_narclist.setColumn(i, "prcpqtyunit2", unit);
- ds_temp_narclist.setColumn(i, "dayprcpqtyunit", unit);
- ds_temp_narclist.setColumn(i, "prcpvolunit2", volunit);
- }
- }
- /******************************************************************
- * Argument :
- * Description : 재출력 선택시 출력일자(콤보박스) 조회
- ******************************************************************/
- function fGetNarcPrintDt() {
- var narccdlist = "";
- for( var i = 0; i < ds_temp_srchcond_narclist.rowcount; i++ ) {
- if( ds_temp_srchcond_narclist.getColumn(i, "sel" ) == "1" ) {
- if( utlf_isNull(narccdlist) ) {
- narccdlist = "'" + ds_temp_srchcond_narclist.getColumn(i, "narccd") + "'";
- } else {
- narccdlist += ",'" + ds_temp_srchcond_narclist.getColumn(i, "narccd") + "'";
- }
- }
- }
- ds_temp_srchinfo.setColumn(0, "narccd", narccdlist);
- //이선경 2008-07-22 start (조회시 마약종류를 조회조건에 추가)
- // grd_narclist.fixedcellischeck(0, 1) = false;
- // grd_outnarc.fixedcellischeck(0, 1) = false;
- ds_send_srchinfo.copyData(ds_temp_srchinfo);
-
- if( ds_temp_srchinfo.getColumn(0, "prtab") == "Y" ) { // 향정반환반납장부 출력조건 2009.05.18 pymi
- ds_send_srchinfo.setColumn(0, "cnclflag", "Y");
- ds_send_srchinfo.setColumn(0, "rtnflag", "Y");
- ds_send_srchinfo.setColumn(0, "rtnstat", "T");
- ds_send_srchinfo.setColumn(0, "cnclstat", "T");
- ds_send_srchinfo.setColumn(0, "narcstat", "");
- }
- // (e)
- var oParam = {};
- oParam.id = "TRADT30111";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarcPrintDt";
- oParam.inds = "req=ds_send_srchinfo";
- oParam.outds = "ds_temp_prntdt=item";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30111";
- tranf_submit(oParam);
- }
- /******************************************************************
- * Argument :
- * Description : 바코드 변경시
- ******************************************************************/
- function fChgBarcodeSpre() {
- var sBar = ds_temp_srchinfo.getColumn(0, "barcodespre").toUpperCase();
- ds_temp_srchinfo.setColumn(0, "barcodespre", sBar);
- if(sBar.length >= 21){
- if( utlf_isNull(ds_temp_userinfo.getColumn(0, "userid")) ){
- sysf_messageBox("사용자ID가 없습니다. 사용자ID부터","C001");
- ds_temp_srchinfo.setColumn(0, "srchid", "");
- group3.group2.ipt_srchid.setFocus();
- } else if(sBar.substr(0,1) != "M" && sBar.substr(0,1) != "H"){
- sysf_messageBox("바코드 정보가 다릅니다. 바코드를 다시","C001");
- ds_temp_srchinfo.setColumn(0, "barcode", "");
- ds_temp_srchinfo.setColumn(0, "barcodespre", "");
- group3.group2.input1.setFocus();
- } else {
- //바코드로 먼저 해당처방을 조회함
- ds_temp_srchinfo.setColumn(0, "barcode", ds_temp_srchinfo.getColumn(0, "barcodespre"));
- fGetNarcData();
- //바코드로 Acting처리가 가능한 처방인지 체크함
- //바코드로 처리가능한 Acting : 조제완료, 불출, 잔량반납확인, 반환확인
- //바코드로 조회시 데이터는 한건만 조회됨.
-
- ds_main_narclist.setColumn(0, "sel", "1");
- fNarcActing("Spre");
-
- ds_temp_srchinfo.setColumn(0, "barcode", "");
- ds_temp_srchinfo.setColumn(0, "barcodespre", "");
- }
- } else {
- sysf_messageBox("바코드 정보가 다릅니다.\n다시","C001");
- ds_temp_srchinfo.setColumn(0, "barcodespre", "");
- group3.group2.input1.setFocus();
- }
- }
- /******************************************************************
- * Argument :
- * Description : 마약처방전 출력
- ******************************************************************/
- function fNarcPrint() {
- if( utlf_isNull(ds_temp_userinfo.getColumn(0, "userid")) ){
- sysf_messageBox("사용자ID가 없습니다. 사용자ID를 먼저","C001");
- ds_temp_srchinfo.setColumn(0, "barcode", "");
- group3.group2.input9.setFocus();
- return;
- }
-
- var chkAll = ds_send.getColumn(0, "chkall"); // 20101206 wify 경북대병원 일괄처리 추가
-
- //액팅전 체크표시 cash
- fChkCash("before");
- for( var i = 0; i < ds_main_narclist.rowcount; i++ ){
- var sel = ds_main_narclist.getColumn(i, "sel");
- var narcstat = ds_main_narclist.getColumn(i, "narcstat"); // 불출상태
- var cnclstat = ds_main_narclist.getColumn(i, "cnclstat"); // 반환상태
- var ioflag = ds_main_narclist.getColumn(i, "ioflag"); // 입원외래구분
- var prntdt = ds_main_narclist.getColumn(i, "prntdt"); // 처방전출력일시
- var sPid = ds_main_narclist.getColumn(i, "pid"); // 환자번호
- var sPrcpcd = ds_main_narclist.getColumn(i, "prcpcd"); // 처방명
- var sDrugno = ds_main_narclist.getColumn(i, "drugno"); // 투약번호
- var rpt = ds_temp.getColumn(0, "reprnt"); //재출력구분 20101221 wify 경북대병원 처방전 재출력 추가
-
- var msg = "*투약번호 : "+sDrugno+" *환자번호 : "+ sPid+ " *약품코드 : "+ sPrcpcd + "\n";
- var result = "";
- var prntyn = ""; // 출력가능 여부
-
- /*이선경 2008-07-23 start
- if(sel == 'Y' && narcstat != "1")
- *///이선경 2008-07-23 end
- if(sel == "1"){
-
- // 20101221 wify 경북대병원 처방전 재출력시 재출력 체크 하지 않게 함.
- if( rpt=="Y" && narcstat == "1" || rpt == "Y" && narcstat == "2") {
- alert("일괄처리후 재출력할수 있습니다.");
- return;
- }
-
- if( !utlf_isNull(prntdt) && narcstat > 2 && rpt != "Y" && rtnprntflag != "Y") {
- var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
- prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
- result = sysf_messageBox(prntdata + "에 출력한 처방입니다. 재출력을","Q003");
- } else {
- result = "6";
- }
- if(result == "6") {
- ds_send_prntinfo.clear();
- dsf_copyColInfo(ds_send_prntinfo, ds_main_narclist);
- var iRow = ds_send_prntinfo.addRow();
- ds_send_prntinfo.copyRow(iRow, ds_main_narclist, i);
- ds_send_prntinfo.addColumn("prntid", "string", 256);
- ds_send_prntinfo.setColumn(iRow, "prntid", ds_temp_userinfo.getColumn(0, "userid"));
- // ************************ [반환처방전] 출력 ************************
- if( !utlf_isNull(cnclstat) ){
- if(ioflag == "I"){
- // 반환신청, 반환확인, 반환종료시(출력완료, 조제완료 일 때만) 반환처방전 출력 가능
- // 20091201 이선경 수정 : 반환신청일때는 제외, 반환확인, 반환종료상태만 가능
- // 2013년 3월 26일 김치국 반환신청(cnclstat == "1")일때도 처방전 출력으로 원복
- if(cnclstat == "1" || cnclstat == "2" || (parseInt(narcstat) >= 3 && parseInt(narcstat) <= 4 && cnclstat == "7")){
- // if(cnclstat == "2" || (parseInt(narcstat) >= 3 && parseInt(narcstat) <= 4 && cnclstat == "7")){
- ds_send_prntinfo.addColumn("prntflag", "string", 256);
- ds_send_prntinfo.setColumn(iRow, "prntflag", "D");
- prntyn = "Y";
- } else {
- if(cnclstat == "7" ){
- //메세지처리 반환종료 된 처방입니다.
- sysf_messageBox(msg+"반환","I002");
- continue;
- } else {
- //메세지처리 반환확인해야 합니다.
- sysf_messageBox(msg+"반환확인시 반환처방전 출력","I006");
- continue;
- }
- continue;
- }
- } else {
- if(cnclstat == "0"){
- //반환확인후 출력가능합니다.
- sysf_messageBox(msg+"반환확인후 출력","I006");
- continue;
- } else {
- ds_send_prntinfo.addColumn("prntflag", "string", 256);
- ds_send_prntinfo.setColumn(iRow, "prntflag", "D");
- prntyn = "Y";
- }
- }
- // ************************ [마약처방전] 출력 ************************
- } else {
- if(narcstat == "1"){
- //불출신청이 되어야 출력가능합니다.
- sysf_messageBox(msg+"불출신청 이후 출력","I006");
- continue;
- } else {
- ds_send_prntinfo.addColumn("prntflag", "string", 256);
- ds_send_prntinfo.setColumn(iRow, "prntflag", "O");
- prntyn = "Y";
- }
- }
-
- if(prntyn == "Y"){
-
- //dsf_setTypeFormat(ds_send_prntinfo, "prcpno:INT^prcphistno:INT^drugno:INT^drugseqno:INT");
- dsf_createDsRow("ds_req", [
- {col:"pid" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"pid")}
- , {col:"orddd" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"orddd")}
- , {col:"orddeptcd" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"orddeptcd")}
- , {col:"prcpgenrflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"prcpgenrflag")}
- , {col:"prcpdd" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"prcpdd")}
- , {col:"prcpno" , type:"INT" , size:256, val:ds_send_prntinfo.getColumn(0,"prcpno")}
- , {col:"prcphistno" , type:"INT" , size:256, val:ds_send_prntinfo.getColumn(0,"prcphistno")}
- , {col:"drugdd" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"drugdd")}
- , {col:"drugno" , type:"INT" , size:256, val:ds_send_prntinfo.getColumn(0,"drugno")}
- , {col:"drugseqno" , type:"INT" , size:256, val:ds_send_prntinfo.getColumn(0,"drugseqno")}
- , {col:"ioflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"ioflag")}
- , {col:"narcflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"narcflag")}
- , {col:"narcstat" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"narcstat")}
- , {col:"returnflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"returnflag")}
- , {col:"prntid" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"prntid")}
- , {col:"prntflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"prntflag")}
- , {col:"drugflag" , type:"STRING" , size:256, val:ds_send_prntinfo.getColumn(0,"drugflag")}
- ]);
- var oParam = {};
- oParam.id = "TRADT30103";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarcPrntData";
- oParam.inds = "req=ds_req";
- oParam.outds = "ds_main_patinfo=patinfo ds_main_diaginfo=diaginfo ds_main_prntlist=prntlist ds_main_resn=resn";
- oParam.async = false;
- //oParam.callback = "cf_TRADT30103";
- tranf_submit(oParam);
-
- if( !utlf_isNull(ds_main_patinfo.getColumn(0, "drugno")) ){
- //처방전에 DUR이 존재하면 RFADT30105 존재하지 않으면 RFADT30100 출력
- var resn = ds_main_resn.getColumn(0, "resnnm");
- // 반환일경우 수량에 (-) 표시
- if (cnclstat == "0" || cnclstat == "1" || cnclstat == "2" || cnclstat == "7" ) {
- var totdrugqty = ds_main_prntlist.getColumn(0, "totdrugqty") ;
- totdrugqty = totdrugqty * -1 ;
- ds_main_prntlist.setColumn(0, "totdrugqty", totdrugqty );
- }
-
- if( utlf_isNull(resn) ){
- //1일기준인지 1회기준인지 체크하여 컬럼을 hidden
- var colHidnValue = lf_grdBaseColHidn("D");
- if( colHidnValue == "C") {//1회 기준
- ds_main_patinfo.addColumn("prcpvolchk", "string", 256);
- ds_main_patinfo.setColumn(0, "prcpvolchk", "Y");
- }
- //20101119_wify_경북대병원_마약처방전 폼 변경
- // RFADT30100 ==> RFADT30106
- // RFADT30105 ==> RFADT30107
-
- var objCxtCommon = new ExtCommon();
-
- ds_main_patinfo.addColumn("sign", "string");
- for( var j = 0; j < ds_main_patinfo.rowcount; j++ ){
- var objImgeData = objCxtCommon.encodeBase64(ds_main_patinfo.getColumn(j, "signdata"));
- ds_main_patinfo.setColumn(j, "sign", objImgeData);
- }
-
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/prntlist", ds_main_prntlist); // 데이터셋 1
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/patinfo", ds_main_patinfo); // 데이터셋 2
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/diaginfo", ds_main_diaginfo); // 데이터셋 3
- rptf_setNodeListToDOM(objDOM, "/root/temp/userinfo/userinfo", ds_temp_userinfo); // 데이터셋 4
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;";
-
- var prntOtion = "";
- if(!utlf_isNull(this.objects["ds_data_comm01"])) {
- prntOtion = prntOtion+"printername="+ds_data_comm01.getColumn(0,"setupval")+";";
- }
-
- if(!utlf_isNull(this.objects["ds_data_blank"])) {
- prntOtion = prntOtion+"offsetx=" + ds_data_blank.getColumn(0,"left") + ";" + "offsety=" + ds_data_blank.getColumn(0,"top") + ";printername=;";
- }
-
- rptf_exeReportPreview30(["RFADT30106"],[objParam], option, prntOtion);
-
- }else{
- var objCxtCommon = new ExtCommon();
-
- ds_main_patinfo.addColumn("sign", "string");
- for( var j=0; j < ds_main_patinfo.rowcount; j++ ){
- var objImgeData = objCxtCommon.encodeBase64(ds_main_patinfo.getColumn(j, "signdata"));
- ds_main_patinfo.setColumn(j, "sign", objImgeData);
- }
-
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/prntlist", ds_main_prntlist); // 데이터셋 1
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/patinfo", ds_main_patinfo); // 데이터셋 2
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/diaginfo", ds_main_diaginfo); // 데이터셋 3
- rptf_setNodeListToDOM(objDOM, "/root/main/prntlist/resn", ds_main_resn); // 데이터셋 4
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
- objParam.xml_data_XML2 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;";
-
- var prntOtion = "";
- if(!utlf_isNull(this.objects["ds_data_comm01"])) {
- prntOtion = prntOtion+"printername="+ds_data_comm01.getColumn(0,"setupval")+";";
- }
-
- if(!utlf_isNull(this.objects["ds_data_blank"])) {
- prntOtion = prntOtion+"offsetx=" + ds_data_blank.getColumn(0,"left") + ";" + "offsety=" + ds_data_blank.getColumn(0,"top") + ";printername=;";
- }
-
- rptf_exeReportPreview30(["RFADT30107"],[objParam], option, prntOtion);
-
- }
- }
- }
- }
- }
- }
- // 20101206 wify 경북대병원 처방전 출력후 체크표시 및 출력완료 표시
- if ( utlf_isNull(chkAll) ) {
- fGetNarcData();
- //액팅전 체크표시 다시 표시
- // grd_narclist.fixedcellischeck(0, 1) = false;
- // grd_outnarc.fixedcellischeck(0, 1) = false;
-
- fChkCash("after");
- }
- }
- /******************************************************************
- * Argument :
- * Description : 마약처방전 출력
- ******************************************************************/
- function fChkCash(chk) {
- var pid = ds_temp_srchinfo.getColumn(0, "pid");
- var param_grid = "";
- if( ds_main_narclist.rowcount != 0){ // 2009.07.30 pymi
- if(chk == "before"){
- ds_temp_chkcashinfo_narclist.clear();
- dsf_copyColInfo(ds_temp_chkcashinfo_narclist, ds_main_narclist);
- for( var i = 0; i < ds_main_narclist.rowcount; i++ ){
- if( ds_main_narclist.getColumn(i, "sel") == "1"){
- var iRow = ds_temp_chkcashinfo_narclist.addRow();
- ds_temp_chkcashinfo_narclist.copyRow(iRow, ds_main_narclist, i);
- }
- }
- } else if(chk == "after"){
- for( var a = 0; a < ds_temp_chkcashinfo_narclist.rowcount; a++ ){
- var cash_prcpdd = ds_temp_chkcashinfo_narclist.getColumn(a, "prcpdd");
- var cash_prcpno = ds_temp_chkcashinfo_narclist.getColumn(a, "prcpno");
- for( var b = 0; b < ds_main_narclist.rowcount; b++){
- var search_prcpdd = ds_main_narclist.getColumn(b, "prcpdd");
- var search_prcpno = ds_main_narclist.getColumn(b, "prcpno");
- if(cash_prcpdd == search_prcpdd && cash_prcpno == search_prcpno){
- ds_main_narclist.setColumn(b, "sel", "1");
- }
- }
- }
- }
- }
- }
- /******************************************************************
- * Argument :
- * Description : 불출확인서 출력시 출력일자 설정
- ******************************************************************/
- function fSetNarcPrintDt() {
- if( ds_main_narclist.rowcount == 0)
- return;
-
- ds_send_prntdt.copyData(ds_main_narclist);
- ds_send_prntdt.addColumn("m", "string", 256);
- for( var i = 0; i < ds_send_prntdt.rowcount; i++ ){
- ds_send_prntdt.setColumn(i, "m", "u");
- }
-
- dsf_setTypeFormat(ds_send_prntdt, "drugno:INT^prcpno:INT");
- var oParam = {};
- oParam.id = "TXADT30104";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqSetNarcPrintDt";
- oParam.inds = "narcdata=ds_send_prntdt";
- oParam.outds = "ds_temp_ret=item";
- oParam.async = false;
- //oParam.callback = "cf_TXADT30104";
- tranf_submit(oParam);
- }
- /******************************************************************
- * Argument : fNarcLBLPrintR(chk)
- * Description : 마약라벨 출력
- ******************************************************************/
- function fNarcLBLPrintR(chk) {
- var reprint="";
- //20091015 이선경 수정 : 자동출력 기본이 병동(퇴원제외)만이나 lbltype3이 "Y"이면 외래, 퇴원도 모두 출력됨
- var lbltype3 = ds_init_lbltype.getColumn(0, "lbltype3");
- var prcpclscdflag = "N";
-
- for( var i = 0; i < ds_main_narclist.rowcount; i++ ){
- var sel = ds_main_narclist.getColumn(i, "sel");
- var sNarcStat = ds_main_narclist.getColumn(i, "narcstat");
- var ioflag = ds_main_narclist.getColumn(i, "ioflag");
- var drugflag = ds_main_narclist.getColumn(i, "drugflag");
- var sPrcphistcd = ds_main_narclist.getColumn(i, "prcphistcd"); // 2010.03.15 pymi
-
- //20091015 이선경 수정 : 조제확인시 라벨자동출력은 fNarcLBLPrint 함수에서 처방조회시 가져온 ioflag로 체크해서 출력 여부 결정
- //(수정원인 : 외래,병동 전체 조회 후 조제확인시 라벨자동출력이 안되는 현상이 있음)
- //if(sel == 'Y' && ((chk == "Prnt" && sNarcStat == "3" && sPrcphistcd != "D" && (lbltype3 == "Y" || (ioflag == "I" && drugflag != "L" && drugflag != "G"))) || (chk == "Reprnt" && parseInt(sNarcStat,10) > 3))){ // 2010.03.15 pymi 반환완료된 처방 제외
- if(sel == "1" && ((chk == "Prnt" && sNarcStat == "2" && sPrcphistcd != "D" && (lbltype3 == "Y" || (ioflag == "I" && drugflag != "L" && drugflag != "G"))) || (chk == "Reprnt" && parseInt(sNarcStat,10) > 3))){ // 2010.03.15 pymi 반환완료된 처방 제외
- PrnKind = ds_data_setupinfo.getColumn(0, "prntkind");
- PrnMarginLeft = ds_data_blank.getColumn(0, "left");
- PrnMarginTop = ds_data_blank.getColumn(0, "top");
- var commkind = ds_data_setupinfo.getColumn(0, "commkind")
-
- if(ds_main_narclist.getColumn(i, "prcpclscd") == "A6") {
- prcpclscdflag = "Y"; // 20120724_주사라벨이 아닐때만
- }
- if ( ds_main_narclist.getColumn(i, "lblprnttims")>0 ){
- reprint ="(재)";
- }
- // 바코드(21자리) : 마약구분(1)+입원/외래구분(1)+반납구분(1)+처방일자(8)+처방번호(10)
- var narcflag = ds_main_narclist.getColumn(i, "narcflag");
- var ioflag = ds_main_narclist.getColumn(i, "ioflag")
- var returnflag = ds_main_narclist.getColumn(i, "returnflag");
- if( utlf_isNull(returnflag) ){
- returnflag = "O";
- } else {
- returnflag = "D";
- }
- var prcpdd = ds_main_narclist.getColumn(i, "prcpdd");
- var prcpno = ds_main_narclist.getColumn(i, "prcpno");
- var drugseqno ="";
- if ( ioflag =="O" ){
- drugseqno = ds_main_narclist.getColumn(i, "drugseqno");
- }
- var iLen = prcpno.length;
- for(var j=iLen; j<10; j++) {
- prcpno = "0" + prcpno;
- }
- var sResult = narcflag+ioflag+returnflag+prcpdd+prcpno+drugseqno;
- ds_main_narclist.addColumn("barcode", "string", 256);
- ds_main_narclist.setColumn(i, "barcode", sResult);
-
- //라벨이름
- var nm = "";
- if(ds_main_narclist.getColumn(i, "narcflag") == "M") {
- nm = "마 약";
- }else {
- nm = "향 정";
- }
- ds_main_narclist.setColumn(i, "drugkindnm", nm);
- ds_main_narclist.setColumn(i, "prcpdd", fGetDateString(ds_main_narclist.getColumn(i, "prcpdd")) );
- // issdeptcdnm 글자 수 5자이상 자르기 안되게 수정 2011.9.23. jmkim
- var issdept = ds_main_narclist.getColumn(i, "issdeptcdnm");
- // var issdept = model.getValue("/root/main/narclist/narclist["+i+"]/issdeptcdnm").substring(0, 5); - original ver. 2011.9.23 jmkim
-
- ds_main_narclist.setColumn(i, "issdeptcdnm", issdept + "("+ds_main_narclist.getColumn(i, "roomcd") + ")" );
-
- // issdeptcdnm(발행부서) 문자열 길이가 15자 이상일 때 체크 2011.9.23 jmkim ex. 508병동(무균)(1111)
- var issdeptcdnmvalue = ds_main_narclist.getColumn(i, "issdeptcdnm");
- if(issdeptcdnmvalue.length >= 15)
- ds_main_narclist.addColumn("issdeptcdnmlengthflag", "string", 256);
- ds_main_narclist.setColumn(i, "issdeptcdnmlengthflag", "Y");
- var sPid_Drugno = ds_main_narclist.getColumn(i, "patnm")
- + " (" + ds_main_narclist.getColumn(i, "drugno")+reprint + ")";
- ds_main_narclist.setColumn(i, "patnm", sPid_Drugno);
- // 2015년 1월 15일 김치국
- var unit = ds_main_narclist.getColumn(i, "totdrugqty") + ds_main_narclist.getColumn(i, "prcpqtyunit");
- ds_main_narclist.addColumn("unit", "string", 256);
- ds_main_narclist.setColumn(i, "unit", unit);
- ds_main_narclist.setColumn(i, "drugnm", "(" + ds_main_narclist.getColumn(i, "drugnm")+")" );
-
- // 20120719_일일수량과 영문상품명 추가
- ds_main_narclist.addColumn("qtyname", "string", 256);
- ds_main_narclist.setColumn(i, "qtyname", ds_main_narclist.getColumn(i, "totdrugqty") + " " + ds_main_narclist.getColumn(i, "lblnm"));
- var day = ds_main_narclist.getColumn(i, "prcpdayno");
- var prcptims = ds_main_narclist.getColumn(i, "prcptims");
- var prcpqty2 = ds_main_narclist.getColumn(i, "prcpqty2");
- var prcpqtyunit = ds_main_narclist.getColumn(i, "prcpqtyunit");
-
- ds_main_narclist.addColumn("narcunit", "string", 256);
- ds_main_narclist.setColumn(i, "narcunit", "1일 " + prcptims + "회 " + prcpqty2 + prcpqtyunit + "씩 " + day + "일분");
-
- var rgstdt = "처방입력일시 : "+ fGetDateString(ds_main_narclist.getColumn(i, "rgstdt")) ;
- ds_main_narclist.setColumn(i, "rgstdt" , rgstdt);
- } else {
- ds_main_narclist.deleteRow(i);
- i--;
- }
- }
- var instcd = sysf_getUserInfo("dutplceinstcd");
-
- if( ds_temp_srchinfo.getColumn(0, "autoprnt") != "Y") {
- var posx = '';
- var posy = '';
- var nRow = ds_data_pcllist.findRowExpr("barnm=='"+"RFADT30111"+"'");
- posx = ds_data_pcllist.getColumn(nRow, "xpos");
- posy = ds_data_pcllist.getColumn(nRow, "ypos");
-
- if( utlf_isNull(posx) ) posx = "0";
- if( utlf_isNull(posy) ) posy = "0";
-
- var printnm = ds_data_pcllist.getColumn(nRow, "prtnm");
-
- if(instcd == "031") { // 20120724_임시로 본원, 칠곡 구분
- // 2015년 4월9일 김치국 마약처방을 ATC출력물로 통일
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
- sysf_trace(ds_main_narclist.saveXML());
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30113"],[objParam], option, prntOtion);
-
- } else {
- if(prcpclscdflag == "Y" ) {
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30111"],[objParam], option, prntOtion);
- } else {
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30112"],[objParam], option, prntOtion);
- }
- }
-
- } else if( ds_temp_srchinfo.getColumn(0, "autoprnt") == "Y") {
-
- if(instcd == "031") { // 20120724_임시로 본원, 칠곡 구분
- // 2015년 4월9일 김치국 마약처방을 ATC출력물로 통일
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30113"],[objParam], option, prntOtion);
- } else {
- if(prcpclscdflag == "Y" ) {
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30111"],[objParam], option, prntOtion);
- } else {
- var objDOM = rptf_createDOM(); // DOM 객체 설정
- rptf_setNodeListToDOM(objDOM, "/root/main/narclist/narclist", ds_main_narclist); // 데이터셋 1
-
- var objParam = new Object();
- objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
-
- var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0";
- var prntOtion = "offsetx=" + posx + ";" + "offsety=" + posy + ";" + "printername="+printnm+"";
- rptf_exeReportPreview30(["RFADT30112"],[objParam], option, prntOtion);
- }
- }
- }
-
- var oParam = {};
- oParam.id = "TRADT30102";
- oParam.service = "pharmacyprescriptionapp.Narcotics";
- oParam.method = "reqGetNarcData";
- oParam.inds = "req=ds_send_srchinfo";
- oParam.outds = "ds_main_narclist=narclist";
- oParam.async = false;
- oParam.callback = "cf_TRADT30102";
- tranf_submit(oParam);
-
- // ds_main_narclist.addColumn("prcpqtyunit2", "string", 256);
- // ds_main_narclist.addColumn("dayprcpqtyunit", "string", 256);
- // ds_main_narclist.addColumn("prcpvolunit2", "string", 256);
- // for( var i = 0; i < ds_main_narclist.rowcount; i++ ){
- // var unit = ds_main_narclist.getColumn(i, "prcpqtyunit");
- // var volunit = ds_main_narclist.getColumn(i, "prcpvolunit");
- // ds_main_narclist.setColumn(i, "prcpqtyunit2", unit);
- // ds_main_narclist.setColumn(i, "dayprcpqtyunit", unit);
- // ds_main_narclist.setColumn(i, "prcpvolunit2", volunit);
- // }
- }
- // function cf_TRADT30102(sSvcId, nErrorCode, sErrorMsg) {
- // if(nErrorCode < 0) return;
- // fMakeCopyColumn(ds_main_narclist,"prcpqtyunit","prcpqtyunit2");
- // fMakeCopyColumn(ds_main_narclist,"prcpvolunit","prcpvolunit2");
- // //dsf_setTypeFormat(ds_main_narclist, "prcptims:INT^prcpdayno:INT^rtnqty:INT^prcpno:INT^prcphistno:INT^drugno:INT");
- // }
- /******************************************************************
- * Argument : fGetDateString(s)
- * Description : 바코드불출 Button event
- ******************************************************************/
- function fGetDateString(s){
- var dates = "";
- if(s.length >8){
- dates = s.substring(0,4) +"/" +s.substring(4,6)+"/" +s.substring(6,8)+" "+s.substring(8,10)+":"+s.substring(10,12)+":"+s.substring(12,14);
- } else {
- dates = s.substring(0,4) +"/" +s.substring(4,6)+"/" +s.substring(6,8);
- }
- return dates;
- }
- /****************************************************************************************
- * Argument : objDs - Dataset ID
- * : sColSrc - 원본 컬럼
- * : sColTgt - 생성할 컬럼
- * Description : 데이터셋 특정컬럼 카피하여 새컬럼 생성
- ****************************************************************************************/
- function fMakeCopyColumn(objDs,sColSrc,sColTgt) {
- if(utlf_isNull(objDs.getColumnInfo(sColTgt))) objDs.addColumn(sColTgt,"string");
- for(var i = 0 ; i < objDs.rowcount ; i++) {
- objDs.setColumn(i,sColTgt,objDs.getColumn(i,sColSrc));
- }
- }]]></Script>
|