1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443 |
- <?xml version="1.0" encoding="utf-8"?>
- <Script type="xscript4.0"><![CDATA[
- /*
-
- 투약시간 기준관리(SMMNW075.xfm - JScript )
- - Version :
- 1) : Ver.1.00.01
- */
- var dept_tims = "";
- var dept_prcpcd = "";
- var dept_direccd = "";
- var xDtimList = ds_main_mnrmdtim_mnrmdtimList;
- var xMechList = ds_main_picmmech_picmmechList;
- var xDeptList = ds_main_deptdtim_deptdtimList;
- var xSapList = ds_main_sapinfo_saplist_saplist;
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 병동코드 조회
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fInitialize(){
-
- //수액기준자료관리 정리
- ds_main_sapinfo_saplist_saplist.clearData();
-
- //공통코드
- var arrParam = [{dsNm: "ds_init_A0017list_A0017", cdGrpId: "A0017"}]
- appf_getCodeList(arrParam);
-
- ds_init_init_ward.clearData();
- ds_init_init_ward1.clearData();
-
- //병동(부서) 리스트 조회
- var oParam = {};
- oParam.id = "TRMNR00601";
- oParam.service = "caremedirecapp.CareMediRec";
- oParam.method = "reqGetWMInitData";
- oParam.inds = "reqcond=ds_send_reqdata";
- oParam.outds = "ds_init_init_ward=ward ds_init_init_settingrn=settingrn ds_init_init_orddd=orddd";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR00601";
- tranf_submit(oParam);
-
- //화면 초기화
- var cnt = ds_init_init_ward.rowcount;
- dsf_makeValue(ds_init_init_ward1, "wardcd", "string", "ALL", 0);
- dsf_makeValue(ds_init_init_ward1, "wardnm", "string", "공통", 0);
-
- for(var i = 1; i <= cnt; i++){
- ds_init_init_ward1.addRow();
- ds_init_init_ward1.copyRow(i, ds_init_init_ward, i-1);
- }
- ds_init.setColumn(0, "A0017list", "N");
- ds_init.setColumn(0, "baseflaglist", "N");
- ds_init.setColumn(0, "deptcdList", sysf_getUserInfo("dutplcecd"));
-
- fmthdChange("mthdcd"); //용법코드 조회 후 콤보박스에 저장
- fDeptSerch(); //투약시간기준관리(부서별)
-
- //------------------------------------
- // superuser id인 경우
- // 추후 superuser ID로 변경될 예정
- //------------------------------------
-
- //1. 투약기준시간관리
- var userid = sysf_getUserId();
- var btnActiveFlag = true;
-
- //------------------------------------(20080811)
- //권한 정해지면 다시 작업함 일단 전체 품
- //-------(20080912) 소경화 선생님 ID
- //db화 해야 할것 같음(간호공통에 등록해야할것 같음)
- //alert(userid);
-
- //-------------------------------------------------(20081208)
- //프로그램사용권한으로 막는다고 정의함(20081208) 따라서 사용자로는 막지 않음
- //즉, 모든 사용자가 슈퍼유저임
- //if(userid == "96030294" || userid == "DEV503") {
- //
-
- if(frmf_getMenuParam() == "SU") {
- btnActiveFlag = false; //superuser 만 버튼 사용가능
- } else {
- btnActiveFlag = true;
- }
- //} else {
- // //투약기준시간관리
- // cmb_dept.disabled = true // super user id 가 아니면 부서콤보를 고정시킴
- // cmb_dept.value = getUserInfo("dutplcecd"); // super user id 가 아니면 부서정보를 로그인자 정보로 설정한다.
- //
- // //수액기준시간관리
- // cmb_sapdept.disabled= true // super user id 가 아니면 부서콤보를 고정시킴
- // cmb_sapdept.value = getUserInfo("dutplcecd"); // super user id 가 아니면 부서정보를 로그인자 정보로 설정한다.
- //
- // messageBox("슈퍼 유저가 아니므로 부서정보를 변경할수 없습니다. " +
- // getUserInfo("dutplcenm") + "(" + getUserInfo("dutplcecd") + ")" ,"E999");
- //}
- //-------------------------------------------------(20081208)
-
- //------------------------------------
- //test용으로 일단 전부 활성화시킴
- //btnActiveFlag = false
-
- switch1.case1.btn_init.enable = !btnActiveFlag; //공통&용법 초기화버튼
- switch1.case1.btn_dtimcon.enable = !btnActiveFlag; //공통&용법 적용버튼
- switch1.case1.btn_mthdadd.enable = !btnActiveFlag; //공통&용법 추가버튼
- switch1.case1.btn_mthddel.enable = !btnActiveFlag; //공통&용법 삭제버튼
- switch1.case1.btn_mthdsave.enable = !btnActiveFlag; //공통&용법 저장버튼
- switch1.case1.btn_mechcon.enable = !btnActiveFlag; //공통&약품 적용버튼
- switch1.case1.btn_mechadd.enable = !btnActiveFlag; //공통&약품 추가버튼
- switch1.case1.btn_mechdel.enable = !btnActiveFlag; //공통&약품 삭제버튼
- switch1.case1.btn_mechsave.enable = !btnActiveFlag; //공통&약품 저장버튼
-
- // btn_deptcon.disabled = false; //부서 적용버튼
- // btn_deptdel.disabled = false; //부서 삭제버튼
- // btn_deptsave.disabled = false; //부서 저장버튼
- // btn_apply.disabled = false; //적용 버튼
- //------------------------------------
- //--------(20080514)
- //fMechSerch("grdclick"); //화면 open 시 공통&약품도 조회함(막음(20080520)
-
- //--------(20080519)
- // grd_dtimList.frozenCols = grd_dtimList.colRef("direccd")+1;
- // grd_mechList.frozenCols = grd_mechList.colRef("prcpcd")+1;
- // grd_deptList.frozenCols = grd_deptList.colRef("direccd")+1;
-
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 용법코드 조회 후 콤보박스에 저장
- * @param : direccd
- * @return : mthdcd
- * @---------------------------------------------------
- */
- function fmthdChange(flg){
-
- switch1.case1.cmb_deptBaseflg.value = switch1.case1.cmb_baseflg.value;
- var direccd = ds_init.getColumn(0, "A0017list");
- var mthdcd = ds_init.getColumn(0, "mthdcdlist");
-
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "direccd", direccd);
- ds_send.setColumn(0, "mthdcd", mthdcd);
-
- if(flg=="mthdcd") {
- ds_init_mthdcdlist.clearData();
-
- ds_init_mthdcdlist_1.setColumn(0, "basecnt","");
- ds_send.setColumn(0, "flg", "mthdcd");
-
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqAstMthd";
- oParam.inds = "reqAstMthd=ds_send";
- oParam.outds = "ds_init_mthdcdlist=mthdcdlist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam); //용법구분에 따른 용법코드추출
-
- //용법구분과 공통&약품과는 관계가 없다.(20080520이전) ==> 관계있음(20080520)
- ds_main_picmmech_picmmechList.clearData();
- ds_init.setColumn(0, "mthdcdlist",""); //
- fSearch();// 용법별 조회
-
- }else if(flg=="basecnt"){
- fSearch();// 용법별 조회
- //용법과 약품코드는 관계가 없으므로 조회기능을 막는다.(20080519)
- fMechSerch("direccd");// 약품코드별 조회
- }
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간관리 저장(공통/용법)
- * 단일 저장
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimSave() {
-
- var cnt = ds_main_mnrmdtim_mnrmdtimList.rowcount - 1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
-
- var prcpcd = "";
- var deptcd = "";
-
- //공통&용법 그리드 check row 체크
- for(var i = 0 ;i <= cnt ; i++){
- if(ds_main_mnrmdtim_mnrmdtimList.getColumn(i, "status")=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
-
- var sData = fSaveHeader();
-
- for(var i = 0; i <= cnt; i++){
- rowstatus = ds_main_mnrmdtim_mnrmdtimList.getRowType(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == 2 || rowstatus == 4 ){
- direccd = utlf_transNullToEmpty(xDtimList.getColumn(i, "direccd"));
- baseflag = utlf_transNullToEmpty(xDtimList.getColumn(i, "baseflag"));
- exectims = utlf_transNullToEmpty(xDtimList.getColumn(i, "exectims"));
- drugtmspec = utlf_transNullToEmpty(xDtimList.getColumn(i, "drugtmspec"));
- drugtmspecspl = utlf_transNullToEmpty(drugtmspec.split(" "));
- drugtmspeccal = utlf_transNullToEmpty(xDtimList.getColumn(i, "drugtmspeccal"));
- drugtmspeccalspl = utlf_transNullToEmpty(drugtmspeccal.split(" "));
- comnyn = utlf_transNullToEmpty(xDtimList.getColumn(i, "comnyn"));
- grpno = utlf_transNullToEmpty(xDtimList.getColumn(i, "grpno"));
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
- sData += direccd + "▦"; // 용법코드
- sData += "ALL" + "▦"; // 처방코드
- sData += "ALL" + "▦"; // 부서코드
- sData += (j+1) + "▦"; // 일련번호
- sData += baseflag + "▦"; // 기준구분
- sData += drugtmspecspl[j] + "▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦"; // 기준일수
- sData += drugtmspeccalspl[j] + "▦"; // 실제시간
- sData += exectims + "▦"; // 수행횟수
- sData += comnyn + "▦"; // 기본값여부
- sData += drugtmspec + "▦"; // 투여시간text표시
- sData += drugtmspeccal + "▦"; // 투여시간text표시(24시간 기준)
- sData += grpno + "▦"; // 그룹번호(20080515)
- sData += "fDtimSave" + "▩"; // 코드구분자
- }
- chkcnt++
- }
- }
-
- if(chkcnt == 0){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
- ds_send.clearData();
- ds_send.addRow();
- ds_send_sData.clearData();
- dsf_setCSVToDs("ds_send_sData", sData);
-
- //------------------test
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqsetAstMthd";
- oParam.inds = "reqsetAstMthd=ds_send_sData";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam);
- //model.setValue("/root/init/mthdcdlist", "");
- fSearch(); //공통&용법 조회
- }
- function fDtimSave_OLD(){
- var apnttm;
- var basedayno;
- var orgtm;
- var baseflag = ds_init.getColumn(0, "A0017list");
- var direccd = ds_init.getColumn(0, "mthdcdlist");
- var exectims = ds_init_mthdcdlist_1.getColumn(0, "basecnt");
- var comnyn = ds_hidden.getColumn(0, "comnyn");
- var drugtmspec = "";//투여시간 text 형시으로 표시
- var drugtmspeccal = "";//투여시간 text 형시으로 표시(익일시간 추가)
- if(utlf_isNull(baseflag)){
- sysf_messageBox("기준구분을 ","C002");
- return;
- }
- if(utlf_isNull(direccd)){
- sysf_messageBox("용법종류를 ","C002");
- return;
- }
- if(utlf_isNull(exectims)){
- sysf_messageBox("투약회수를 ","C002");
- return;
- }
- var time = "";
- var day = "";
- drugtmspec = "";
- for (var i=1 ; i<=exectims ; i++){
- time = switch1.case1.grd_mnrmdtim.getCellValue(0, i);
- day = switch1.case1.grd_mnrmdtim.getCellValue(1,i);
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- if(day == "0" || utlf_isNull(day)){
- drugtmspec += time;
- drugtmspeccal += time;
- }else{
- drugtmspec += time;
-
- time = (Number(time) + Number(day) * 2400);
- drugtmspeccal += Number(time);
- }
- }
- var sData = "";
- //헤드
- sData = "direccd"; // 용법코드
- sData += "▦prcpcd"; // 처방코드
- sData += "▦deptcd"; // 부서코드
- sData += "▦seqno"; // 일련번호
- sData += "▦baseflag"; // 기준구분
- sData += "▦apnttm"; // 지정시간
- sData += "▦basedayno"; // 기준일수
- sData += "▦orgtm"; // 실제시간
- sData += "▦exectims"; // 수행횟수
- sData += "▦comnyn"; // 공통여부
- sData += "▦drugtmspec"; // 투여시간text표시
- sData += "▦drugtmspeccal"; // 코드구분자
- sData += "▦flg"; // 투여시간text표시(24시간 기준)
- sData += "▩"; // Record(Row) 분리기호
-
-
- for(var i=1 ; i<=exectims ; i++){
- apnttm = switch1.case1.grd_mnrmdtim.getCellValue(0, i);
- basedayno = switch1.case1.grd_mnrmdtim.getCellValue(1, i);
-
- if(utlf_isNull(basedayno)) {
- basedayno = "0";
- orgtm = apnttm;
- }else if(basedayno == "0"){
- orgtm = apnttm;
- }else if(basedayno == "1"){
- orgtm = Number(apnttm) + 2400;
- }else{}
- orgtm = fCarec_GetFillZeno(orgtm,4,0);
- if(!(utlf_isNull(switch1.case1.grd_mnrmdtim.getCellValue(1, i)) || switch1.case1.grd_mnrmdtim.getCellValue(1, i) == "0" || switch1.case1.grd_mnrmdtim.getCellValue(1, i) == "1") ){
- sysf_messageBox("Day 항목은 0 또는 1 만 ","C001");
- return;
- }
- //data
- sData += direccd +"▦";
- sData += "ALL" +"▦";
- sData += "ALL" +"▦";
- sData += i +"▦";
- sData += baseflag +"▦";
- sData += apnttm +"▦";
- sData += basedayno +"▦";
- sData += orgtm +"▦";
- sData += exectims +"▦";
- sData += comnyn +"▦";
- sData += drugtmspec +"▦";
- sData += drugtmspeccal+"▦";
- sData += "fDtimSave" +"▩";
- }
- ds_send.clearData();
- ds_send.addRow();
- ds_send_sData.clearData();
- dsf_setCSVToDs("ds_send_sData", sData);
-
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqsetAstMthd";
- oParam.inds = "reqsetAstMthd=ds_send_sData";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam);
-
- ds_init.setColumn(0, "mthdcdlist", "");
- fSearch();
- }
- /**
- * @group :
- * @ver : 2007.04.19
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 저장을 위한 header
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveHeader() {
- var sData = "";
-
- sData = ""
- sData += "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦seqno" ;// 일련번호
- sData += "▦baseflag" ;// 기준구분
- sData += "▦apnttm" ;// 지정시간
- sData += "▦basedayno" ;// 기준일수
- sData += "▦orgtm" ;// 실제시간
- sData += "▦exectims" ;// 수행횟수
- sData += "▦comnyn" ;// 공통여부
- sData += "▦drugtmspec" ;// 투여시간text표시
- sData += "▦drugtmspeccal" ;// 투여시간text표시(24시간 기준)
- sData += "▦grpno" ;// 그룹번호(20080515)
- sData += "▦flg" ;// 코드구분자
- sData += "▩" ;// Record(Row) 분리기호
-
- return sData;
- }
- /**
- * @group :
- * @ver : 2007.04.27
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(용법별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fSearch(){
-
- var direccd = ds_init.getColumn(0, "mthdcdlist");
- if(utlf_isNull(direccd)) direccd = "%";
- for (var i=1 ; i<=12 ; i++){
- ds_main_dtiminfo_dtim.setColumn(0, utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellProperty("Body", i, "text")).replace("bind:", ""), "");
- ds_main_dtiminfo_dtim.setColumn(1, utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellProperty("Body", i, "text")).replace("bind:", ""), "");
- }
- ds_main_mnrmdtim_mnrmdtimList.clearData();
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "baseflag", ds_init.getColumn(0, "A0017list"));
- ds_send.setColumn(0, "direccd",direccd);
-
- var oParam = {};
- oParam.id = "TRMNR07504";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqMnrmdtim";
- oParam.inds = "reqAstDtim=ds_send";
- oParam.outds = "ds_main_mnrmdtim_mnrmdtimList=mnrmdtimList";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07504";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_mnrmdtim_mnrmdtimList.getColumnInfo("status")) ){
- ds_main_mnrmdtim_mnrmdtimList.addColumn("status", "string");
- }
-
- ds_main_mnrmdtim_mnrmdtimList.rowposition = -1;
- }
- /**
- * @group :
- * @ver : 2007.04.27
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(약품코드별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fMechSerch(gubun){
- ds_main_picmmech_picmmechList.clearData(); //A11CP
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "baseflag", ds_init.getColumn(0, "A0017list"));
- if (gubun=="direccd"){
- var direccd = ds_init.getColumn(0, "mthdcdlist");
- ds_send.setColumn(0, "direccd",direccd);
- }else if(gubun=="grdclick"){
-
- //공통 용법이 변경되면 공통 약품이 변경된어야 한다.
- var direccd = ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "status");
- var direccd = ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "direccd");
- ds_send.setColumn(0, "direccd",direccd);
- }
-
- var oParam = {};
- oParam.id = "TRMNR07505";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqPamMech";
- oParam.inds = "reqPamMech=ds_send";
- oParam.outds = "ds_main_picmmech_picmmechList=picmmechList";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07505";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_picmmech_picmmechList.getColumnInfo("status")) ){
- ds_main_picmmech_picmmechList.addColumn("status", "string");
- }
-
- ds_main_picmmech_picmmechList.rowposition = -1;
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(약품코드별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fMechApply(){
-
- var pGrdmnrmdtim = switch1.case1.grd_mnrmdtim; //설정입력그리드
- //var pPathmnrmdtim = "/root/main/dtiminfo/dtim"; //설정입력그리드 path
-
- var pGrdmechList = ds_main_picmmech_picmmechList; //설정반영그리드
- var pPathmechList = ds_main_picmmech_picmmechList; //설정반영그리드 path
- //체크
- // if(pGrdmnrmdtim.rows < 3){
- // messageBox("공통투약시간에 설정되지않았습니다.","E999");
- // return;
- // }
- if(utlf_isNull(ds_init_mthdcdlist_1.getColumn(0, "basecnt"))){
- sysf_messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(ds_main_picmmech_picmmechList.rowposition < 0){
- return;
- }
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- var drugtmspec = "";; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = "";
- //var dtim_tims = model.getValue(pPathdtimList + "[" + pGrdtimList.row + "]/exectims"); //투약회수
- var dtim_tims = ds_init_mthdcdlist_1.getColumn(0, "basecnt"); //투약회수
-
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellValue(0, i));
- day = switch1.case1.grd_mnrmdtim.getCellValue(1, i);
- if(time.length != 4){
- sysf_messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
-
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- var rowstatus = ds_main_picmmech_picmmechList.getRowType(ds_main_picmmech_picmmechList.rowposition);
- if (rowstatus == 2) {
- } else {
- ds_main_picmmech_picmmechList.enableevent = false;
- ds_main_picmmech_picmmechList.updatecontrol = false;
-
- ds_main_picmmech_picmmechList.setRowType(ds_main_picmmech_picmmechList.rowposition, 4); //수정으로상태변경
-
- ds_main_picmmech_picmmechList.updatecontrol = true;
- ds_main_picmmech_picmmechList.enableevent = true;
- }
-
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "status", "true"); //check
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "exectims", dtim_tims); //투여회수
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "drugtmspec", drugtmspec); //투약시간
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "drugtmspeccal", drugtmspeccal); //투약시간
-
- switch1.case1.rdo_comnyn.enable = false; //공통&약품인 경우는 무조건 'Y'이므로 수정할수 없다.
- }
-
- function fMechApply_OLD(){
- if(grd_mechList.row<1){
- return;
- }
-
- var cnt = grd_mechList.rows-1;
- var chkcnt =0;
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt<1){
- messageBox("적용할 항목을 ","C002");
- return;
- }
-
- var direccd = ds_init.getColumn(0, "mthdcdlist");
- var exectims = ds_init_mthdcdlist_1.getColumn(0, "basecnt");
- var drugtmspec = ""; //투여시간 text 형시으로 표시
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(24시간기준)
- var time = "";
- var day = "";
-
- for (var i=1 ; i<=exectims ; i++){
- if(i==1){
- drugtmspec = grd_mnrmdtim.valueMatrix(1,i);
- }else{
- drugtmspec = drugtmspec + " " + grd_mnrmdtim.valueMatrix(1,i);
- }
- }
- for (var i=1 ; i <= exectims ; i++){
- time = grd_mnrmdtim.valueMatrix(1,i);
- day = grd_mnrmdtim.valueMatrix(2,i);
- if(i != 1) {
- drugtmspeccal += " ";
- }
- if(day == "0" || day == ""){
- drugtmspeccal += time;
- }else{
- time = (Number(time) + Number(day) * 2400);
- drugtmspeccal += Number(time);
- }
- }
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList["+i+"]/status")) == "true"){
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/direccd", direccd );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/exectims", exectims );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/drugtmspec", drugtmspec );
- model.setValue("/root/main/picmmech/picmmechList["+i+"]/drugtmspeccal", drugtmspeccal );
- }
- }
-
- for(var j=1 ;j < grd_dtimList.rows ; j++){
- model.setValue("/root/main/mnrmdtim/mnrmdtimList["+j+"]/status", "");
- }
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 삭제
- * @param : dtim : 용법별 , mech : 약품코드별 , dept : 부서별
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimDelete(gubun) {
- var cntrows ;
- var chkcnt = 0;
- var xpathDtim;
-
- //삭제 버튼 구분
- if(gubun=="dtim"){// 용법별
- cntrows = ds_main_mnrmdtim_mnrmdtimList.rowcount-1;
- xpathGubun = ds_main_mnrmdtim_mnrmdtimList;
- }else if(gubun=="mech"){// 약품코드별
- cntrows = ds_main_picmmech_picmmechList.rowcount-1;
- xpathGubun = ds_main_picmmech_picmmechList;
- }else if(gubun=="dept"){// 부서별
- cntrows = ds_main_deptdtim_deptdtimList.rowcount-1;
- xpathGubun = ds_main_deptdtim_deptdtimList;
- }
- var chkstatus ;
- for(var i=0 ;i <= cntrows ; i++){
- chkstatus = xpathGubun.getColumn(i, "status");
-
- if(chkstatus =="true"){
- chkcnt = chkcnt+1;
- }
- }
- if(chkcnt < 1){
- sysf_messageBox("삭제할 항목을 ","C002");
- return;
- }
- var sData = "";
-
- sData = "";
- sData += "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦baseflag" ;// 기준구분
- sData += "▦exectims" ;// 수행횟수
- sData += "▦flg" ;// 코드구분자
- sData += "▦grpno" ;// 그룹번호
- sData += "▩" ;// Record(Row) 분리기호
-
- var direccd = "";
- var prcpcd = "";
- var deptcd = "";
- var baseflag = "";
- var exectims = "";
- var grpno = "";
- var delcnt = 0; //삭제건수 여부
- var pGrd;
-
- for(var i=0 ;i <= cntrows ; i++){
-
- chkstatus = xpathGubun.getColumn(i, "status");
-
- if (chkstatus =="true"){
-
- if(gubun == "dtim"){
- pGrd = switch1.case1.grd_dtimList; //공통&용법별조회
- }else if(gubun == "mech"){
- pGrd = switch1.case1.grd_mechList; //공통&약품코드별조회
- }else if(gubun == "dept"){
- pGrd = switch1.case1.grd_deptList; //부서&(용법||약품)별조회
- }else{}
- //상태체크
- // var rowstatus = pGrd.rowstatus(i);
- // if(rowstatus == "1" || rowstatus == "3") {
- //// pGrd.deleteRow(i); //신규row는 그냥 삭제함 , 넘어가고 재조회시 없어짐
- // } else {
-
- direccd = utlf_transNullToEmpty(xpathGubun.getColumn(i, "direccd"));
- prcpcd = utlf_transNullToEmpty(xpathGubun.getColumn(i, "prcpcd"));
- deptcd = utlf_transNullToEmpty(xpathGubun.getColumn(i, "deptcd"));
- baseflag = utlf_transNullToEmpty(xpathGubun.getColumn(i, "baseflag"));
- exectims = utlf_transNullToEmpty(xpathGubun.getColumn(i, "exectims"));
- grpno = utlf_transNullToEmpty(xpathGubun.getColumn(i, "grpno"));
-
- //if (direccd == "" || direccd == "ALL") {
- // sData += "ALL" + "▦";
- //} else {
- sData += direccd + "▦";
- //}
- if (utlf_isNull(prcpcd) || prcpcd == "ALL") {
- sData += "ALL" + "▦";
- } else {
- sData += prcpcd + "▦";
- }
- if (utlf_isNull(deptcd) || deptcd == "ALL") {
- sData += "ALL" + "▦";
- } else {
- sData += deptcd + "▦";
- }
- sData += baseflag + "▦";
- sData += exectims + "▦";
- sData += "fDtimDelete" + "▦";
- sData += grpno + "▩";
-
- /*
- sData += model.getValue(xpathGubun+"["+i+"]/direccd") + "▦";
- if(gubun=="dept"){
- if((model.getValue(xpathGubun+"["+i+"]/prcpcd"))=="" ) {
- sData += "ALL" + "▦";
- }else
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }else{
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }
- sData += model.getValue(xpathGubun+"["+i+"]/deptcd") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/baseflag") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/exectims") + "▦";
- sData += "fDtimDelete" + "▦";
- sData += "" + "▩";
- */
- delcnt += 1; //삭제건수 증가
- // }
- }
- }
- // //삭제건수 체크
- // if (delcnt <= 0) return;
- ds_send.clearData();
- ds_send.addRow();
- ds_send_sData.clearData();
- dsf_setCSVToDs("ds_send_sData", sData);
-
- //-------------(test)
- //return;
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqsetAstMthd";
- oParam.inds = "reqsetAstMthd=ds_send_sData";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam);
-
- if(gubun == "dtim"){
- fSearch(); //공통&용법별조회
- }else if(gubun == "mech"){
- fMechSerch("direccd"); //공통&약품코드별조회
- }else if(gubun == "dept"){
- fDeptSerch(); //부서&(용법||약품)별조회
- }else{}
- }
- function fDtimDelete_OLD(gubun) {
- var cnt ;
- var chkcnt = 0;
- var xpathDtim;
-
- //삭제 버튼 구분
- if(gubun=="dtim"){// 용법별
- cnt = grd_dtimList.rows-1;
- xpathGubun = "/root/main/mnrmdtim/mnrmdtimList";
- }else if(gubun=="mech"){// 약품코드별
- cnt = grd_mechList.rows-1;
- xpathGubun = "/root/main/picmmech/picmmechList";
- }else if(gubun=="dept"){// 부서별
- cnt = grd_deptList.rows-1;
- xpathGubun = "/root/main/deptdtim/deptdtimList";
- }
- for(var i=1 ;i <= cnt ; i++){
- if((model.getValue(xpathGubun+"["+i+"]/status"))=="true"){
- chkcnt = chkcnt+1;
- }
- }
- if(chkcnt < 1){
- messageBox("삭제할 항목을 ","C002");
- return;
- }
- var sData = "direccd" ;// 용법코드
- sData += "▦prcpcd" ;// 처방코드
- sData += "▦deptcd" ;// 부서코드
- sData += "▦baseflag" ;// 기준구분
- sData += "▦exectims" ;// 수행횟수
- sData += "▦flg" ;// 코드구분자
- sData += "▩" ;// Record(Row) 분리기호
-
- for(var i=1 ;i <= cnt ; i++){
- if ((model.getValue(xpathGubun+"["+i+"]/status"))=="true"){
- sData += model.getValue(xpathGubun+"["+i+"]/direccd") + "▦";
- if(gubun=="dept"){
- if((model.getValue(xpathGubun+"["+i+"]/prcpcd"))=="" ) {
- sData += "ALL" +"▦";
- }else
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }else{
- sData += model.getValue(xpathGubun+"["+i+"]/prcpcd") + "▦";
- }
- sData += model.getValue(xpathGubun+"["+i+"]/deptcd") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/baseflag") + "▦";
- sData += model.getValue(xpathGubun+"["+i+"]/exectims") + "▦";
- sData += "fDtimDelete" + "▩";
- }
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
-
- if(gubun == "dtim"){
- fSearch();//용법별 조회
- }else if(gubun == "mech"){
- fMechSerch("direccd");//약품코드별 조회
- }else if(gubun == "dept"){
- fDeptSerch();//부서별 조회
- }else{}
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통 & 약품코드별 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fMechSave() {
-
- var cnt = ds_main_picmmech_picmmechList.rowcount-1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
-
- var prcpcd = "";
- var deptcd = "";
-
- for(var i = 0 ;i <= cnt ; i++){
- if(ds_main_picmmech_picmmechList.getColumn(i, "status")=="true"){
- if(utlf_isNull(ds_main_picmmech_picmmechList.getColumn(i, "hngnm"))){
- sysf_messageBox("잘못된 약품코드입니다 다시 ","C001");
- return;
- }
- if(utlf_isNull(ds_main_picmmech_picmmechList.getColumn(i, "drugtmspec"))){
- sysf_messageBox("투약시간이 적용되지 않았습니다. 다시 ","C001");
- return;
- }
-
- // if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/direccd")) == ""){
- // messageBox("적용버튼을 누른후 ","C001");
- // return;
- // }
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = fSaveHeader();
- for(var i = 0; i <= cnt; i++){
- rowstatus = ds_main_picmmech_picmmechList.getRowType(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == 2 || rowstatus == 4 ){
-
- direccd = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "direccd"));
- prcpcd = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "prcpcd"));
-
- baseflag = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "baseflag"));
- //baseflag = "-";
-
- exectims = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "exectims"));
- drugtmspec = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "drugtmspec"));
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "drugtmspeccal"));
- drugtmspeccalspl = drugtmspeccal.split(" ");
- comnyn = "Y";
- grpno = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(i, "grpno"));
-
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
-
- //sData += "ALL" +"▦"; // 용법코드
- sData += direccd +"▦"; // 용법코드
- sData += prcpcd +"▦"; // 처방코드
- sData += "ALL" +"▦"; // 부서코드
- sData += (j+1) +"▦"; // 일련번호
- sData += baseflag +"▦"; // 기준구분
- sData += drugtmspecspl[j] +"▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) +"▦"; // 기준일수
- sData += drugtmspeccalspl[j] +"▦"; // 실제시간
- sData += exectims +"▦"; // 수행횟수
- sData += comnyn +"▦"; // 기본값여부
- sData += drugtmspec +"▦"; // 투여시간text표시
- sData += drugtmspeccal +"▦"; // 투여시간text표시(24시간 기준)
- sData += grpno +"▦"; // 그룹번호(20080515)
- sData += "fDtimSave" +"▩"; // 코드구분자
- /*
- sData += grd_mechList.valueMatrix(i,3) +"▦"; // 용법코드
- sData += grd_mechList.valueMatrix(i,1) +"▦"; // 처방코드
- sData += "ALL" +"▦"; // 부서코드
- sData += '1' +"▦"; // 일련번호
- sData += model.getValue("/root/init/A0017list") +"▦"; // 기준구분
- sData += "" +"▦"; // 지정시간
- sData += "" +"▦"; // 기준일수
- sData += "" +"▦"; // 실제시간
- sData += grd_mechList.valueMatrix(i,4) +"▦"; // 수행횟수
- sData += model.getValue("/root/hidden/comnyn") +"▦"; // 기본값여부
- sData += grd_mechList.valueMatrix(i,5) +"▦"; // 투여시간text표시
- sData += grd_mechList.valueMatrix(i,6) +"▦"; // 투여시간text표시(24시간 기준)
- sData += grd_mechList.valueMatrix(i,colgrpno) +"▦"; // 그룹번호(20080515)
- sData += "fDtimSave" +"▩"; // 코드구분자
- */
- }
- chkcnt++
- }
- }
-
- if(chkcnt == 0){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
-
- ds_send.clearData();
- ds_send.addRow();
- ds_send_sData.clearData();
- dsf_setCSVToDs("ds_send_sData", sData);
-
- //-----------(test)
- //return;
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqsetAstMthd";
- oParam.inds = "reqsetAstMthd=ds_send_sData";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam);
-
- fMechSerch("grdclick"); // 공통&약품코드별 조회
- }
- function fMechSave_OLD() {
- var cnt = grd_mechList.rows-1;
- var chkcnt =0;
- for(var i = 1 ;i <= cnt ; i++){
- if((model.getValue("/root/main/picmmech/picmmechList["+i+"]/status"))=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = "direccd" ;//용법코드
- sData += "▦prcpcd" ;//처방코드
- sData += "▦deptcd" ;//부서코드
- sData += "▦seqno" ;//일련번호
- sData += "▦baseflag" ;//기준구분
- sData += "▦apnttm" ;//지정시간
- sData += "▦basedayno" ;//기준일수
- sData += "▦orgtm" ;//실제시간
- sData += "▦exectims" ;//수행횟수
- sData += "▦comnyn" ;//공통여부
- sData += "▦drugtmspec" ;//투여시간text표시
- sData += "▦drugtmspeccal";//투여시간text표시
- sData += "▦flg" ;//코드구분자
- sData += "▩" ;//Record(Row) 분리기호
- for(var i = 1; i <= cnt; i++){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/status")) == "true"){
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/prcpcd")) == ""){
- messageBox("약품코드를 ","C001");
- return;
- }
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/hngnm")) == ""){
- messageBox("잘못된 약품코드입니다 다시 ","C001");
- return;
- }
- if((model.getValue("/root/main/picmmech/picmmechList[" + i + "]/direccd")) == ""){
- messageBox("적용버튼을 누른후 ","C001");
- return;
- }
-
- sData += grd_mechList.valueMatrix(i,3) +"▦";
- sData += grd_mechList.valueMatrix(i,1) +"▦";
- sData += "ALL" +"▦";
- sData += '1' +"▦";
- sData += ds_init.getColumn(0, "A0017list") +"▦";
- sData += "" +"▦";
- sData += "" +"▦";
- sData += "" +"▦";
- sData += grd_mechList.valueMatrix(i,4) +"▦";
- sData += ds_hidden.getColumn(0, "comnyn") +"▦";
- sData += grd_mechList.valueMatrix(i,5) +"▦";
- sData += grd_mechList.valueMatrix(i,6) +"▦";
- sData += "fDtimSave" +"▩";
- }
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
- fMechSerch("direccd"); // 약품코드별 조회
- }
- /**
- * @group :
- * @ver : 2007.04.17
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별(용법 또는 약품) 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptSave() {
-
- var cnt = ds_main_deptdtim_deptdtimList.rowcount - 1;
- var chkcnt = 0;
- var rowstatus = "";
-
- var direccd = "";
- var baseflag = "";
- var exectims = "";
-
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var comyn = "";
- var grpno = "";
- var prcpcd = "";
- var deptcd = "";
-
- //부서&(용법 || 약품) 그리드 check row 체크
- for(var i = 0 ;i <= cnt ; i++){
- if(ds_main_deptdtim_deptdtimList.getColumn(i, "status")=="true"){
- chkcnt++;
- }
- }
- if(chkcnt < 1){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
- var sData = fSaveHeader();
- for(var i = 0; i <= cnt; i++){
-
- rowstatus = ds_main_deptdtim_deptdtimList.getRowType(i);
-
- //1:insert 2:update 3:insert&new : (20080517)
- if(rowstatus == 2 || rowstatus == 4 ){
-
- direccd = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "direccd"));
- prcpcd = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "prcpcd"));
- baseflag = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "baseflag"));
- deptcd = utlf_transNullToEmpty(ds_init.getColumn(0, "deptcdList"));
- exectims = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "exectims"));
- drugtmspec = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "drugtmspec"));
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(i, "drugtmspeccal"));
- drugtmspeccalspl = drugtmspeccal.split(" ");
- comnyn = "Y"; //기본값여부 ('N'->'Y'(20080517)
- grpno = utlf_transNullToEmpty(ds_main_mnrmdtim_mnrmdtimList.getColumn(i, "grpno"));
-
- //----------------------------------------------------------------------------------
- //등록또는 수정시 서버로직에서 삭제후 신규등록으로 처리(기준시간(pk)이 변경될수가 있으므로)
- //row가 다르면 일련번호가 1부터 시작
- //----------------------------------------------------------------------------------
- for(var j = 0; j < exectims; j++){
- //if (direccd == "") {
- // sData += "ALL" + "▦"; // 용법코드
- //} else {
- sData += direccd + "▦"; // 용법코드
- //}
- if (prcpcd == "") {
- sData += "ALL" + "▦"; // 처방코드
- } else {
- sData += prcpcd + "▦"; // 처방코드
- }
- sData += deptcd + "▦"; // 부서코드
- sData += (j+1) + "▦"; // 일련번호
- sData += baseflag + "▦"; // 기준구분
- sData += drugtmspecspl[j] + "▦"; // 지정시간
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦"; // 기준일수
- sData += drugtmspeccalspl[j] + "▦"; // 실제시간
- sData += exectims + "▦"; // 수행횟수
- sData += comnyn + "▦"; // 기본값여부 ('N'->'Y'(20080517)
- sData += drugtmspec + "▦"; // 투여시간text표시
- sData += drugtmspeccal + "▦"; // 투여시간text표시(24시간 기준)
- sData += grpno + "▦"; // 그룹번호(20080515)
- sData += "fDtimSave" + "▩"; // 코드구분자
- }
- chkcnt++
- }
- }
- if(chkcnt == 0){
- sysf_messageBox("저장할 항목을 ","C002");
- return;
- }
-
- ds_send.clearData();
- ds_send.addRow();
- ds_send_sData.clearData();
- dsf_setCSVToDs("ds_send_sData", sData);
-
- //-------------(test)
- //return;
- var oParam = {};
- oParam.id = "TRMNR07501";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqsetAstMthd";
- oParam.inds = "reqsetAstMthd=ds_send_sData";
- oParam.outds = "";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07501";
- tranf_submit(oParam);
-
- fDeptSerch(); // 부서(용법 || 약품코드) 조회
- }
- function fDeptSave_OLD() {
- var cnt = grd_deptList.rows - 1;
- var chkcnt = 0;
- var rowstatus = "";
- var drugtmspec = "";
- var drugtmspecspl = "";
- var drugtmspeccal = "";
- var drugtmspeccalspl = "";
- var exectims = "";
- var sData = "direccd▦" ; // 용법코드
- sData += "prcpcd▦" ; // 처방코드
- sData += "deptcd▦" ; // 부서코드
- sData += "seqno▦" ; // 일련번호
- sData += "baseflag▦" ; // 기준구분
- sData += "apnttm▦" ; // 지정시간
- sData += "basedayno▦" ; // 기준일수
- sData += "orgtm▦" ; // 실제시간
- sData += "exectims▦" ; // 수행횟수
- sData += "comnyn▦" ; // 공통여부
- sData += "drugtmspec▦" ; // 투여시간text표시
- sData += "drugtmspeccal▦"; // 투여시간text표시(24시간 기준)
- sData += "flg▩" ; // 코드구분자
- for(var i = 1; i <= cnt; i++){
- rowstatus = grd_deptList.rowstatus(i);
- if(rowstatus == "1" || rowstatus == "3"){
- exectims = model.getValue(xDeptList + "[" + i + "]/exectims");
- drugtmspec = model.getValue(xDeptList + "[" + i + "]/drugtmspec");
- drugtmspecspl = drugtmspec.split(" ");
- drugtmspeccal = model.getValue(xDeptList + "[" + i + "]/drugtmspeccal");
- drugtmspeccalspl = drugtmspeccal.split(" ");
- for(var j = 0; j < exectims; j++){
- sData += model.getValue(xDeptList + "[" + i + "]/direccd") + "▦";
- sData += "ALL" + "▦";
- sData += ds_init.getColumn(0, "deptcdList") + "▦";
- sData += (j+1) + "▦";
- sData += model.getValue(xDeptList + "[" + i + "]/baseflag") + "▦";
- sData += drugtmspecspl[j] + "▦";
- sData += parseInt(drugtmspeccalspl[j] / 2400) + "▦";
- sData += drugtmspeccalspl[j] + "▦";
- sData += exectims + "▦";
- sData += "N" + "▦";
- sData += drugtmspec + "▦";
- sData += drugtmspeccal + "▦";
- sData += "fDtimSave" + "▩";
- }
- chkcnt++
- }
- }
- if(chkcnt == 0){
- messageBox("저장할 항목을 ","C002");
- return;
- }
- model.removenode("/root/send");
- model.makeValue("/root/send/sData", sData );
- submit("TXMNR07501");
- fDeptSerch(); // 약품코드별 조회
- }
-
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 약품코드명 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fPrcpSerch(){
- var calcscorcd;
- var colidx1 = switch1.case1.grd_mechList.getBindCellIndex("body", "prcpcd");
- var colidx2 = switch1.case1.grd_mechList.getBindCellIndex("body", "hngnm");
-
- //if(grd_mechList.col==1){ (20080519)
- if (switch1.case1.grd_mechList.currentcol == colidx1) {
- //calcscorcd = grd_mechList.valueMatrix(grd_mechList.row,1);
- calcscorcd = ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "prcpcd");
-
- //for(var i=0 ;grd_mechList.rows-1;i++ ){
- for(var i=0 ;i<ds_main_picmmech_picmmechList.rowcount;i++ ){
-
- //if(calcscorcd == (grd_mechList.valueMatrix(i,1))){
- if(calcscorcd == ds_main_picmmech_picmmechList.getColumn(i, "prcpcd")){
- if(i == ds_main_picmmech_picmmechList.rowposition){
- break;
- }
- sysf_messageBox("약품이 ","E006");
- return;
- }
- }
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "calcscorcd", calcscorcd);
-
- var oParam = {};
- oParam.id = "TRMNR07506";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqHngnm";
- oParam.inds = "reqHngnm=ds_send";
- oParam.outds = "ds_hidden_mech=mech";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07506";
- tranf_submit(oParam);
-
- if(utlf_isNull(ds_hidden_mech.getColumn(0, "hngnm"))){
- //grd_mechList.valueMatrix(grd_mechList.row,2) = "";
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "hngnm", "");
- sysf_messageBox("조회된 약품코드가 ","I004");
- }else {
- //grd_mechList.valueMatrix(grd_mechList.row,2) = model.getValue("/root/hidden/mech/hngnm");
- ds_main_picmmech_picmmechList.setColumn(ds_main_picmmech_picmmechList.rowposition, "hngnm", ds_hidden_mech.getColumn(0, "hngnm"));
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별 설정에 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptApply(){
-
- var dtimrows = ds_main_mnrmdtim_mnrmdtimList.rowcount;
- var mechrows = ds_main_picmmech_picmmechList.rowcount;
- var deptrows = ds_main_deptdtim_deptdtimList.rowcount;
-
- var direcd_Array = new Array;
- var prcpcd_Array = new Array;
- var k = 1, l = 0;
- var prcpcd = "";
- var direccd = "";
- var exectims = "";
- var dept_prcpcd = "";
- var dept_direccd = "";
- var dept_exectims = "";
- var chk_direcd = "false";
- var chk_prcpcd = "false";
- var direcdcnt = 0;
- var prcpcdcnt = 0;
- var row = 0;
-
- for(var i = 0; i < dtimrows; i++){
- if(ds_main_mnrmdtim_mnrmdtimList.getColumn(i, "status") == "true"){
- direcd_Array[direcd_Array.length] = i;
- ds_main_mnrmdtim_mnrmdtimList.setColumn(i, "status", "false");
- }
- }
- for(var j = 0; j < mechrows; j++){
- if(ds_main_picmmech_picmmechList.getColumn(j, "status") == "true"){
- prcpcd_Array[prcpcd_Array.length] = j;
- ds_main_picmmech_picmmechList.setColumn(j, "status", "false");
- }
- }
- if(direcd_Array.length + prcpcd_Array.length == 0){
- sysf_messageBox("적용할 항목을 ","C002");
- return;
- }
- //용법코드별 적용
- for(k = 0; k < direcd_Array.length; k++){
- direccd = ds_main_mnrmdtim_mnrmdtimList.getColumn(direcd_Array[k], "direccd");
- exectims = ds_main_mnrmdtim_mnrmdtimList.getColumn(direcd_Array[k], "exectims");
- //부서별 초기값설정 그리드 약품코드 중복체크
- for(l = 0; l < deptrows; l++){
-
- dept_prcpcd = ds_main_deptdtim_deptdtimList.getColumn(l, "prcpcd");
- dept_direccd = ds_main_deptdtim_deptdtimList.getColumn(l, "direccd");
- dept_exectims = ds_main_deptdtim_deptdtimList.getColumn(l, "exectims");
-
- if(utlf_isNull(dept_prcpcd) && direccd == dept_direccd && exectims == dept_exectims){
- sysf_messageBox(direccd + "용법이 ","E006");
- chk_direcd = "true";
- }
- }
- if(chk_direcd == "false"){
- direcdcnt++;
- ds_main_deptdtim_deptdtimList.addRow();
- row = ds_main_deptdtim_deptdtimList.rowcount-1;
-
- ds_main_deptdtim_deptdtimList.copyRow(row, ds_main_mnrmdtim_mnrmdtimList, direcd_Array[k]);
- ds_main_deptdtim_deptdtimList.setColumn(row, "prcpcd", "");
- ds_main_deptdtim_deptdtimList.setColumn(row, "hngnm", ""); //--(20081117)
- ds_main_deptdtim_deptdtimList.setColumn(row, "status", "");
- ds_main_deptdtim_deptdtimList.setColumn(row, "comnyn", "Y");
- }
- chk_direcd = "false";
- }
-
- //약품코드별 적용
- //alert ( prcpcd_Array.length ) ;
-
- for(k = 0; k < prcpcd_Array.length; k++){
- prcpcd = ds_main_picmmech_picmmechList.getColumn(prcpcd_Array[k], "prcpcd");
- exectims = ds_main_picmmech_picmmechList.getColumn(prcpcd_Array[k], "exectims");
-
- //부서별 초기값설정 그리드 약품코드 중복체크
- for(l = 0; l < deptrows; l++){
-
- dept_prcpcd = ds_main_deptdtim_deptdtimList.getColumn(l, "prcpcd");
- dept_direccd = ds_main_deptdtim_deptdtimList.getColumn(l, "direccd");
- dept_exectims = ds_main_deptdtim_deptdtimList.getColumn(l, "exectims");
-
- if(utlf_isNull(dept_direccd) && prcpcd == dept_prcpcd && exectims == dept_exectims){
- sysf_messageBox(prcpcd + "약품이 ","E006");
- chk_prcpcd = "true";
- }
- }
-
- if(chk_prcpcd == "false"){
- prcpcdcnt++;
- ds_main_deptdtim_deptdtimList.addRow();
- row = ds_main_deptdtim_deptdtimList.rowcount-1;
-
- ds_main_deptdtim_deptdtimList.copyRow(row, ds_main_picmmech_picmmechList, prcpcd_Array[k]);
-
- //model.makeValue(xDeptList + "[" + row + "]/direccd", "");
- ds_main_deptdtim_deptdtimList.setColumn(row, "status", "");
- ds_main_deptdtim_deptdtimList.setColumn(row, "comnyn", "Y");
- }
- chk_prcpcd = "false";
- }
- }
- /**
- * @group :
- * @ver : 2007.05.09
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 부서별 리스트 클릭시
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDeptListClick(){
- var row = ds_main_deptdtim_deptdtimList.rowposition;
-
- if(switch1.case1.grd_deptList.currentcol != 0){
- //그리드 초기화
- ds_main_dtiminfo_dtim.clearData();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.setColumn(0, "title", "시간");
- ds_main_dtiminfo_dtim.setColumn(1, "title", "Day");
-
- var exectims = ds_main_deptdtim_deptdtimList.getColumn(row, "exectims");
- var timscount = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(row, "drugtmspec"));
- var timscountextt = utlf_transNullToEmpty(ds_main_deptdtim_deptdtimList.getColumn(row, "drugtmspeccal"));
- var prcpcd = ds_main_deptdtim_deptdtimList.getColumn(row, "prcpcd");
- var direccd = ds_main_deptdtim_deptdtimList.getColumn(row, "direccd");
-
- for(var i= 1 ; i< 13 ;i++){
- switch1.case1.grd_deptdtim.setFormatColProperty(i, "size", 0);
- }
- for(var i= 1 ; i<= exectims ;i++){
- switch1.case1.grd_deptdtim.setFormatColProperty(i, "size", 40); //그리드 활성화
- }
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- dept_tims = exectims;
- dept_prcpcd = prcpcd;
- dept_direccd = direccd;
-
- for(var i = 0; i < cnt; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
- var sColNm = utlf_transNullToEmpty(switch1.case1.grd_deptdtim.getCellProperty("body", i+1, "text")).replace("bind:", "");
- ds_main_dtiminfo_dtim.setColumn(0, sColNm, a);
- ds_main_dtiminfo_dtim.setColumn(1, sColNm, parseInt(b/2400));
- }
- }
- }
- /**
- * @group :
- * @ver : 2007.05.09
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(부서별)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptSerch(){
-
-
- switch1.case1.cmb_baseflg.value = switch1.case1.cmb_deptBaseflg.value;
- var deptcd = ds_init.getColumn(0, "deptcdList");
- var baseflaglist = ds_init.getColumn(0, "baseflaglist");
-
- if(utlf_isNull(baseflaglist)){
- baseflaglist = "%";
- }
-
- ds_main_deptdtim_deptdtimList.clearData();
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "baseflag", baseflaglist);
- ds_send.setColumn(0, "deptcd", deptcd);
-
- var oParam = {};
- oParam.id = "TRMNR07507";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqPamDept";
- oParam.inds = "reqPamDept=ds_send";
- oParam.outds = "ds_main_deptdtim_deptdtimList=deptdtimList";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07507";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_deptdtim_deptdtimList.getColumnInfo("status")) ){
- ds_main_deptdtim_deptdtimList.addColumn("status", "string");
- }
-
- ds_main_deptdtim_deptdtimList.rowposition = -1;
- }
- /**
- * @group :
- * @ver : 2007.05.08
- * @by : 하재륜
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(부서별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
-
- function fDeptlistApply(){
- var pGrddeptdtim = switch1.case1.grd_deptdtim; //설정입력그리드
- var pPathdeptdtim = ds_main_dtiminfo_dtim; //설정입력그리드 path
-
- var pGrddeptList = switch1.case1.grd_deptList; //설정반영그리드
- var pPathdeptList = ds_main_deptdtim_deptdtimList; //설정반영그리드 path
- //체크
- if(ds_main_dtiminfo_dtim.rowcount < 2){
- sysf_messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(ds_main_deptdtim_deptdtimList.rowposition < 0){
- return;
- }
-
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- var cntrows = ds_main_deptdtim_deptdtimList.rowcount;
-
- var drugtmspec = ""; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = ""; //일수
- var time = ""; //시간
- //var dtim_tims = model.getValue(pPathdeptList + "[" + grd_deptList.row + "]/exectims"); //투약회수
- var dtim_tims = dept_tims;
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = utlf_transNullToEmpty(switch1.case1.grd_deptdtim.getCellValue(0,i));
- day = switch1.case1.grd_deptdtim.getCellValue(1,i);
- if(time.length != 4){
- sysf_messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
-
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- //pGrddeptList 클릭시 dept_tims , dept_prcpcd , dept_direccd 에 값이 반영됨
-
- ds_main_deptdtim_deptdtimList.enableevent = false;
- ds_main_deptdtim_deptdtimList.updatecontrol = false;
-
- for(var j = 0 ; j < cntrows ; j++){
- if( dept_tims == ds_main_deptdtim_deptdtimList.getColumn(j, "exectims") &&
- dept_prcpcd == ds_main_deptdtim_deptdtimList.getColumn(j, "prcpcd") &&
- dept_direccd == ds_main_deptdtim_deptdtimList.getColumn(j, "direccd") ) {
-
- var rowstatus = ds_main_deptdtim_deptdtimList.getRowType(ds_main_deptdtim_deptdtimList.rowposition);
- if (rowstatus == 2) {
- } else {
- ds_main_deptdtim_deptdtimList.setRowType(ds_main_deptdtim_deptdtimList.rowposition, 4); //수정으로상태변경
- }
- ds_main_deptdtim_deptdtimList.setColumn(j, "status", "true" ); //check
- ds_main_deptdtim_deptdtimList.setColumn(j, "drugtmspec", drugtmspec );
- ds_main_deptdtim_deptdtimList.setColumn(j, "drugtmspeccal", drugtmspeccal );
- }
- }
-
- ds_main_deptdtim_deptdtimList.updatecontrol = true;
- ds_main_deptdtim_deptdtimList.enableevent = true;
- }
-
- function fDeptlistApply_OLD(){
- if(grd_deptList.row < 1){
- return;
- }
-
- var cnt = grd_deptList.rows;
- var drugtmspec = "";; //투여시간 text 형시으로 표시
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시
- var day = "";
- for (var i = 1 ; i <= dept_tims ; i++){
- time = grd_deptdtim.valueMatrix(1,i);
- day = grd_deptdtim.valueMatrix(2,i);
- if(time.length != 4){
- messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
- for(var j = 1 ; j < cnt ; j++){
- if(dept_tims == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/exectims") &&
- dept_prcpcd == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/prcpcd") &&
- dept_direccd == model.getValue("/root/main/deptdtim/deptdtimList[" + j + "]/direccd")){
- model.setValue("/root/main/deptdtim/deptdtimList[" + j + "]/drugtmspec", drugtmspec);
- model.setValue("/root/main/deptdtim/deptdtimList[" + j + "]/drugtmspeccal", drugtmspeccal);
- }
- }
- model.refresh();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 조회
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fGetSapList(){
-
- ds_main_sapinfo_saplist_saplist.clearData();
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "deptcd",ds_main_cond.getColumn(0, "deptcd"));
- ds_send.setColumn(0, "drugcd",ds_main_cond.getColumn(0, "drugcd"));
- ds_send.setColumn(0, "drugnm",ds_main_cond.getColumn(0, "drugnm"));
-
- var oParam = {};
- oParam.id = "TRMNR07508";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqGetSapList";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_main_sapinfo_saplist_saplist=saplist";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07508";
- tranf_submit(oParam);
-
- ds_main_sapinfo_saplist_saplist.addColumn("colBack", "string");
-
- if( utlf_isNull(ds_main_sapinfo_saplist_saplist.getColumnInfo("delcheck")) ){
- ds_main_sapinfo_saplist_saplist.addColumn("delcheck", "string");
- }
-
- ds_main_sapinfo_saplist_saplist.enableevent = false;
- ds_main_sapinfo_saplist_saplist.updatecontrol = false;
-
- dsf_setDefaultVal(ds_main_sapinfo_saplist_saplist, "chk:false");
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = true;
- ds_main_sapinfo_saplist_saplist.enableevent = true;
-
- // var rows = grd_saplist.rows;
- // for(var i = 2; i <= rows; i++){
- // grd_saplist.isReadOnly(i, 2) = true;
- // }
- //-------------------(20080910)
- var yellow = "#ffff00";
- var white = "#ffffff";
- var sPathSapInfo = ds_main_sapinfo_saplist_saplist;
- var rows = ds_main_sapinfo_saplist_saplist.rowcount-1;
-
- //부서가 공통이 아닌경우
- //해당부서에 수액정보가 등록되지 않은 경우는 공통부서정보를 표시하여 저장한다.
- ds_main_sapinfo_saplist_saplist.enableevent = false;
- ds_main_sapinfo_saplist_saplist.updatecontrol = false;
-
- if (ds_main_cond.getColumn(0, "deptcd") != "ALL") {
- for(var row = 0; row <= rows; row++){
- //자료선택여부
- if (ds_main_sapinfo_saplist_saplist.getColumn(row, "ordflag") == "2") {
- ds_main_sapinfo_saplist_saplist.setColumn(row, "colBack", yellow);
- //grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1 ) = yellow;
- } else {
- ds_main_sapinfo_saplist_saplist.setColumn(row, "colBack", white);
- //grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1) = white;
- }
- }
- switch1.case2.grp_sea.out_sapmsg.value = "노란색은 공통부서자료입니다.";
- switch1.case2.grp_sea.out_sapmsg.visible = true;
- } else {
- for(var row = 0; row <= rows; row++){
- ds_main_sapinfo_saplist_saplist.setColumn(row, "colBack", white);
- //grd_saplist.cellstyle("background-color",row,1,row,grd_saplist.cols-1) = white;
- }
- switch1.case2.grp_sea.out_sapmsg.value = "";
- switch1.case2.grp_sea.out_sapmsg.visible = false;
- }
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = true;
- ds_main_sapinfo_saplist_saplist.enableevent = true;
- //-------------------(20080910)
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 저장
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fSaveSapInfo(flag){
-
- var sPathSapInfo = ds_main_sapinfo_saplist_saplist;
- var rows = ds_main_sapinfo_saplist_saplist.rowcount-1;
-
- // //약품코드 확인
- // for(var i = 1; i < rows; i++){
- // if((grd_saplist.rowStatus(i+1) == 1 || grd_saplist.rowStatus(i+1) == 3) &&
- // model.getValue("/root/main/sapinfo/saplist/saplist[" + i + "]/drugnm") == ""){
- // grd_saplist.deleteRow(i+1);
- // }
- // }
- // grd_saplist.rebuildStyle();
- var sSateData = "";
-
- //저장 자료 생성
- var savecnt = 0;
- var savestatus = "";
- var sHeader = "m▦rownum▦drugcd▦deptcd▦commyn▦sapyn▦ioyn▦sapnoyn▦status▩"
- var sData = "";
-
- rows = ds_main_sapinfo_saplist_saplist.rowcount-1;
- for(var i = 0; i <= rows; i++){
- //자료선택여부
- if (ds_main_sapinfo_saplist_saplist.getColumn(i, "chk") == "true") {
- savestatus = "";
- if ( flag == "del") {
- //부서조회인데, 공통자료를 가져온것이므로 삭제대상이 아니다.
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "status") == "I" ) {
- } else {
- savestatus = "d";
- }
- } else {
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "status") == "I" ) {
- savestatus = "i";
- } else {
- savestatus = "u";
- }
- }
- if (!utlf_isNull(savestatus)) {
- sData += savestatus + "▦";
- sData += i + "▦";
- sData += utlf_transNullToEmpty(ds_main_sapinfo_saplist_saplist.getColumn(i, "drugcd")) + "▦";
- sData += switch1.case2.grp_sea.cmb_sapdept.value + "▦";
-
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "commyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "sapyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "ioyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- if ( ds_main_sapinfo_saplist_saplist.getColumn(i, "sapnoyn") == "true" ) {
- sData += "Y" + "▦";
- } else {
- sData += "N" + "▦";
- }
- sData += "" + "▩";
-
- savecnt ++;
- }
- }
- }
- if (savecnt <= 0 ) {
- sysf_messageBox("저장할 자료가 존재하지 않습니다.","E999");
- return;
- }
- ds_send.clearData();
- ds_send.addRow();
- dsf_setCSVToDs("ds_send_saplist", sHeader + sData);
- ds_send.setColumn(0, "deptcd",ds_main_cond.getColumn(0, "deptcd"));
- ds_send.setColumn(0, "drugcd",ds_main_cond.getColumn(0, "drugcd"));
- ds_send.setColumn(0, "drugnm",ds_main_cond.getColumn(0, "drugnm"));
-
- //test
- //return;
- var oParam = {};
- oParam.id = "TRMNR07502";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqExeSapInfo";
- oParam.inds = "reqCond=ds_send saplist=ds_send_saplist";
- oParam.outds = "ds_main_sapinfo_saplist_saplist=saplist";
- oParam.async = false;
- oParam.callback = "cf_TRMNR07502";
- tranf_submit(oParam);
-
- if( utlf_isNull(ds_main_sapinfo_saplist_saplist.getColumnInfo("delcheck")) ){
- ds_main_sapinfo_saplist_saplist.addColumn("delcheck", "string");
- }
-
- if(arErrorCode.pop("TRMNR07502") > -1){
- sysf_messageBox("성공적으로","I001");
-
- //---------------(20080910)
- fGetSapList(); //저장후 재조회
- //---------------(20080910)
- }
- }
- function cf_TRMNR07502(sSvcId, nErrorCode, sErrorMsg) {
- arErrorCode.push(sSvcId, nErrorCode);
- }
- function fSaveSapInfo_OLD(){
- var rows = grd_saplist.rows-1;
- for(var i = 1; i < rows; i++){
- if((grd_saplist.rowStatus(i+1) == 1 || grd_saplist.rowStatus(i+1) == 3) &&
- model.getValue("/root/main/sapinfo/saplist/saplist[" + i + "]/drugnm") == ""){
- grd_saplist.deleteRow(i+1);
- }
- }
- grd_saplist.rebuildStyle();
- var sSateData = "";
-
- model.removenode("/root/send");
- model.makeValue("/root/send/saplist", grd_saplist.getUpdateData());
- ds_send.setColumn(0, "deptcd",ds_main_cond.getColumn(0, "deptcd"));
- ds_send.setColumn(0, "drugcd",ds_main_cond.getColumn(0, "drugcd"));
-
- //test
- return;
- if(submit("TXMNR07502")){
- messageBox("성공적으로","I001");
- }
- grd_saplist.rebuild();
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 약품정보 조회(수액기준관리)
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDrugDbClick(flag){
-
- ds_temp_receivedata.setColumn(0, "receiveref", "ds_temp");
- ds_temp_receivedata.setColumn(0, "receivedrugcd", "druginfo");
-
- var objArg = new Object();
- objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
- frmf_modal("SPADB60100","SPADB60100",objArg,"",1,100,150,"","","","","","M");
-
- var drugcd = ds_temp.getColumn(0, "druginfo");
- var drugnm = "";
- var row = 0;
-
- if(!utlf_isNull(drugcd)){
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "calcscorcd", drugcd);
-
- var oParam = {};
- oParam.id = "TRMNR07506";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqHngnm";
- oParam.inds = "reqHngnm=ds_send";
- oParam.outds = "ds_hidden_mech=mech";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07506";
- tranf_submit(oParam);
-
- drugnm = ds_hidden_mech.getColumn(0, "hngnm");
- if(utlf_isNull(drugnm)){
- sysf_messageBox("약품 유효기간이 지났습니다.","E999");
- return;
- }
-
- if(flag == "sap"){
- //row = grd_saplist.row-1;
- row = ds_main_sapinfo_saplist_saplist.rowposition;
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = false;
-
- ds_main_sapinfo_saplist_saplist.setColumn(row, "drugcd", drugcd);
- ds_main_sapinfo_saplist_saplist.setColumn(row, "drugnm", drugnm);
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = true;
- }else if(flag == "mthd"){
- row = ds_main_picmmech_picmmechList.rowposition;
-
- ds_main_picmmech_picmmechList.updatecontrol = false;
-
- ds_main_picmmech_picmmechList.setColumn(row, "prcpcd", drugcd);
- ds_main_picmmech_picmmechList.setColumn(row, "hngnm", drugnm);
-
- ds_main_picmmech_picmmechList.updatecontrol = true;
- }else if(flag == "dept"){
- row = ds_main_deptdtim_deptdtimList.rowposition;
-
- ds_main_deptdtim_deptdtimList.updatecontrol = false;
-
- ds_main_deptdtim_deptdtimList.setColumn(row, "prcpcd", drugcd);
- ds_main_deptdtim_deptdtimList.setColumn(row, "hngnm", drugnm);
-
- ds_main_deptdtim_deptdtimList.updatecontrol = true;
- }
- ds_temp.setColumn(0, "druginfo", "");
- }
-
- //용법구분이 주사제인 경우는 '투약횟수'를 입력할수 있음.
- // if(cmb_baseflg.value == 'I'){
- // var rowstatus = grd_mechList.rowstatus(grd_mechList.row);
- // if (rowstatus == "1" || rowstatus == "3") {
- // cmb_exectims.disabled = false;
- // }
- // }else{
- // cmb_exectims.disabled = true;
- // }
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준자료관리-조회조건 항목 중 약품정보
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDrugDbClick1(){
-
- ds_temp_receivedata.setColumn(0, "receiveref", "ds_temp");
- ds_temp_receivedata.setColumn(0, "receivedrugcd", "druginfo");
- ds_temp_receivedata.setColumn(0, "srchflag", "1");
- ds_temp_receivedata.setColumn(0, "srchcnts", ds_main_cond.getColumn(0, "drugnm"));
- ds_temp_receivedata.setColumn(0, "drugkind","");
-
- var objArg = new Object();
- objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
- frmf_modal("SPADB60100","SPADB60100",objArg,"",1,100,150,"","","","","","M");
-
- var drugcd = ds_temp.getColumn(0, "druginfo");
- var drugnm = "";
- var row = 0;
-
- if(!utlf_isNull(drugcd)){
- ds_send.clearData();
- ds_send.addRow();
- ds_send.setColumn(0, "calcscorcd", drugcd);
-
- var oParam = {};
- oParam.id = "TRMNR07506";
- oParam.service = "caremedirecapp.CareMediDataRec";
- oParam.method = "reqHngnm";
- oParam.inds = "reqHngnm=ds_send";
- oParam.outds = "ds_hidden_mech=mech";
- oParam.async = false;
- //oParam.callback = "cf_TRMNR07506";
- tranf_submit(oParam);
-
- drugnm = ds_hidden_mech.getColumn(0, "hngnm");
- if(utlf_isNull(drugnm)){
- sysf_messageBox("약품 유효기간이 지났습니다.","E999");
- return;
- }
- ds_main_cond.setColumn(0, "drugcd", drugcd);
- ds_main_cond.setColumn(0, "drugnm", drugnm);
- ds_temp.setColumn(0, "druginfo", "");
- }
- }
- /**
- * @group :
- * @ver : 2007.12.07
- * @by : 최경용
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 수액기준관리 삭제
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fClickSapDelete(){
- var row = ds_main_sapinfo_saplist_saplist.rowposition;
- if(ds_main_sapinfo_saplist_saplist.getColumn(row, "delcheck") == "true"){
- if(ds_main_sapinfo_saplist_saplist.getRowType(row) == 4){
- ds_main_sapinfo_saplist_saplist.enableevent = false;
- ds_main_sapinfo_saplist_saplist.updatecontrol = false;
-
- ds_main_sapinfo_saplist_saplist.setRowType(row, 8);
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = true;
- ds_main_sapinfo_saplist_saplist.enableevent = true;
- }else if(ds_main_sapinfo_saplist_saplist.getRowType(row) == 2){
- ds_main_sapinfo_saplist_saplist.deleteRow(row);
- }else{}
- }else if(ds_main_sapinfo_saplist_saplist.getColumn(row, "delcheck") == "false"){
- ds_main_sapinfo_saplist_saplist.enableevent = false;
- ds_main_sapinfo_saplist_saplist.updatecontrol = false;
-
- ds_main_sapinfo_saplist_saplist.setRowType(row, 4);
-
- ds_main_sapinfo_saplist_saplist.updatecontrol = true;
- ds_main_sapinfo_saplist_saplist.enableevent = true;
- }else{}
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 기준시간 추가
- * @param : dtim : 용법별만 있음(mech : 약품코드별 , dept : 부서별)
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimAdd() {
-
- var pGrd = ds_main_mnrmdtim_mnrmdtimList;
- var xpathDtim;
- var oldrow = ds_main_mnrmdtim_mnrmdtimList.rowposition;
- var newrow;
-
- //ROW 추가
- if (oldrow < 0 ) return false;
-
- //insertrow후 반드시 refresh할것
- ds_main_mnrmdtim_mnrmdtimList.insertRow(oldrow+1);
-
- newrow = ds_main_mnrmdtim_mnrmdtimList.rowposition;
- //alert( oldrow + "/" + newrow );
-
- ds_main_mnrmdtim_mnrmdtimList.copyRow(newrow, ds_main_mnrmdtim_mnrmdtimList, oldrow);
- ds_main_mnrmdtim_mnrmdtimList.setColumn(newrow, "status", "true");
- ds_main_mnrmdtim_mnrmdtimList.setColumn(newrow, "comnyn", "N");
- ds_main_mnrmdtim_mnrmdtimList.setColumn(newrow, "grpno", "");
- ds_main_mnrmdtim_mnrmdtimList.setColumn(newrow, "saveflag", "I");
- return true;
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통/용법 그리드 클릭시 상세정보 display
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fgrddtimlist_ondelayclick() {
- if(switch1.case1.grd_dtimList.currentcol != 0){
- ds_main_dtiminfo_dtim.clearData();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.setColumn(0, "title", "시간");
- ds_main_dtiminfo_dtim.setColumn(1, "title", "Day");
-
- //var dtims = grd_dtimList.valueMatrix(grd_dtimList.row,2);
- //var timscount = grd_dtimList.valueMatrix(grd_dtimList.row,3);
-
- var dtims = ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "exectims");
- var timscount = utlf_transNullToEmpty(ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "drugtmspec"));
- var timscountextt = utlf_transNullToEmpty(ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "drugtmspeccal"));
-
- for (var i= 1 ; i< 13 ;i++) switch1.case1.grd_mnrmdtim.setFormatColProperty(i, "size", 0);
- for (var i= 1 ; i<= dtims ;i++) switch1.case1.grd_mnrmdtim.setFormatColProperty(i, "size", 40); //그리드 활성화
-
- //cmb_exectims.value = dtims;
-
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- for(var i = 0 ; i < cnt ; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
- var sColNm = utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellProperty("Body", i+1, "text")).replace("bind:", "");
-
- ds_main_dtiminfo_dtim.setColumn(0, sColNm, a); //시간
- ds_main_dtiminfo_dtim.setColumn(1, sColNm, parseInt(b/2400)); //일수
- }
- switch1.case1.cmb_exectims.value = dtims; //투약회수
- switch1.case1.rdo_comnyn.value = ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "comnyn"); //default
- switch1.case1.cmb_direccd.value = ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "direccd"); //용법코드
-
- //용법구분이 주사제인 경우는 '투약횟수'를 입력할수 있음.
- switch1.case1.cmb_exectims.enable = false;
- if(switch1.case1.cmb_baseflg.value == 'I'){
- var rowstatus = ds_main_mnrmdtim_mnrmdtimList.getRowType(ds_main_mnrmdtim_mnrmdtimList.rowposition);
- if (rowstatus == 2) {
- switch1.case1.cmb_exectims.enable = true;
- }
- }
- //공통&용법인 경우는 수정가능하다.
- switch1.case1.rdo_comnyn.enable = true;
-
- //---------------(20080813)
- if ( ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "saveflag") == "I") {
- switch1.case1.cmb_exectims.enable = true;
- } else {
- switch1.case1.cmb_exectims.enable = false;
- }
- //---------------
- }
- }
- /**
- * @group :
- * @ver : 2008.05.14
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 공통/약품 그리드 클릭시 상세정보 display
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fgrdmechList_ondelayclick() {
- if(switch1.case1.grd_dtimList.currentcol != 0){
- ds_main_dtiminfo_dtim.clearData();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.addRow();
- ds_main_dtiminfo_dtim.setColumn(0, "title", "시간");
- ds_main_dtiminfo_dtim.setColumn(1, "title", "Day");
-
- //var dtims = grd_dtimList.valueMatrix(grd_dtimList.row,2);
- //var timscount = grd_dtimList.valueMatrix(grd_dtimList.row,3);
-
- var dtims = ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "exectims");
- var timscount = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "drugtmspec"));
- var timscountextt = utlf_transNullToEmpty(ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "drugtmspeccal"));
-
- for (var i= 1 ; i< 13 ;i++) switch1.case1.grd_mnrmdtim.setFormatColProperty(i, "size", 0);
- for (var i= 1 ; i<= dtims ;i++) switch1.case1.grd_mnrmdtim.setFormatColProperty(i, "size", 40); //그리드 활성화
-
- //cmb_exectims.value = dtims;
-
- var array_timscount = timscount.split(" ");
- var array_timscounpartextt = timscountextt.split(" ");
- var cnt = array_timscount.length;
-
- for(var i = 0 ; i < cnt ; i++){
- var a = array_timscount[i];
- var b = array_timscounpartextt[i];
- var sColNm = utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellProperty("body", i+1, "text")).replace("bind:", "");
-
- ds_main_dtiminfo_dtim.setColumn(0, sColNm, a); //시간
- ds_main_dtiminfo_dtim.setColumn(1, sColNm, parseInt(b/2400)); //일수
- }
- switch1.case1.cmb_exectims.value = dtims; //투약회수
- switch1.case1.rdo_comnyn.value = ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "comnyn"); //default
- switch1.case1.cmb_direccd.value = ds_main_picmmech_picmmechList.getColumn(ds_main_picmmech_picmmechList.rowposition, "direccd"); //용법코드
-
- switch1.case1.cmb_exectims.enable = false; //투약횟수 수정불가
- switch1.case1.rdo_comnyn.enable = false; //default 수정불가
- }
- }
- /**
- * @group :
- * @ver : 2008.05.15
- * @by : 김보성
- * @---------------------------------------------------
- * @type : function
- * @access : public
- * @desc : 투약시간기준관리(공통/용법별) 적용
- * @param :
- * @param :
- * @return :
- * @---------------------------------------------------
- */
- function fDtimApply(){
-
- var pGrdmnrmdtim = switch1.case1.grd_mnrmdtim; //설정입력그리드
- var pPathmnrmdtim = ds_main_dtiminfo_dtim; //설정입력그리드 path
-
- var pGrddtimList = ds_main_mnrmdtim_mnrmdtimList; //설정반영그리드
- var pPathdtimList = ds_main_mnrmdtim_mnrmdtimList; //설정반영그리드 path
- //체크
- // if(pGrdmnrmdtim.rows < 3){
- // messageBox("공통투약시간에 설정되지않았습니다.","E999");
- // return;
- // }
- if(utlf_isNull(ds_init_mthdcdlist_1.getColumn(0, "basecnt"))){
- sysf_messageBox("공통투약시간에 설정되지않았습니다.","E999");
- return;
- }
- if(ds_main_mnrmdtim_mnrmdtimList.rowposition < 0){
- return;
- }
- //---------------------------------
- // 투약시간 설정값 추출
- //---------------------------------
- //var cnt = pGrd.rows;
- var drugtmspec = ""; //투여시간 text 형시으로 표시(화면용)
- var drugtmspeccal = ""; //투여시간 text 형시으로 표시(자료용)(24시간기준)
- var day = ""; //일수
- var time = ""; //시간
- //var dtim_tims = model.getValue(pPathdtimList + "[" + pGrdtimList.row + "]/exectims"); //투약회수
- var dtim_tims = ds_init_mthdcdlist_1.getColumn(0, "basecnt"); //투약회수
-
- //설정입력그리드를 돌면서 시간(n row)을 한줄의 텍스트로 만듬
- for (var i = 1 ; i <= dtim_tims ; i++){
- time = utlf_transNullToEmpty(switch1.case1.grd_mnrmdtim.getCellValue(0, i));
- day = switch1.case1.grd_mnrmdtim.getCellValue(1, i);
- if(time.length != 4){
- sysf_messageBox("시간은 4자리를","C001");
- return;
- }
- if(i != 1) {
- drugtmspec += " ";
- drugtmspeccal += " ";
- }
- drugtmspec += fCarec_GetFillZeno(time,4,0);
- drugtmspeccal += fCarec_GetFillZeno((Number(time) + Number(day) * 2400),4,0);
- }
- //-----------------------------------------------
- //설정반영그리드에 반영
- //신규가 아니면 수정으로 처리한다.(20080519)
- //-----------------------------------------------
- var rowstatus = ds_main_mnrmdtim_mnrmdtimList.getRowType(ds_main_mnrmdtim_mnrmdtimList.rowposition);
- if (rowstatus == 2) {
- } else {
- ds_main_mnrmdtim_mnrmdtimList.enableevent = false;
- ds_main_mnrmdtim_mnrmdtimList.updatecontrol = false;
-
- ds_main_mnrmdtim_mnrmdtimList.setRowType(ds_main_mnrmdtim_mnrmdtimList.rowposition, 4);
-
- ds_main_mnrmdtim_mnrmdtimList.updatecontrol = true;
- ds_main_mnrmdtim_mnrmdtimList.enableevent = true;
- }
-
- //--------(20080812)
- if (ds_main_mnrmdtim_mnrmdtimList.getColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "saveflag") == "I") {
- var baseflag = switch1.case1.cmb_baseflg.value; //용법(20080812)
-
- ds_main_mnrmdtim_mnrmdtimList.enableevent = false;
- ds_main_mnrmdtim_mnrmdtimList.updatecontrol = false;
-
- ds_main_mnrmdtim_mnrmdtimList.setRowType(ds_main_mnrmdtim_mnrmdtimList.rowposition, 2);
-
- ds_main_mnrmdtim_mnrmdtimList.updatecontrol = true;
- ds_main_mnrmdtim_mnrmdtimList.enableevent = true;
-
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "baseflag", baseflag);
- //alert(baseflag);
- }
- //---------
- var comnyn = ds_hidden.getColumn(0, "comnyn");
-
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "comnyn", comnyn); //default
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "status", "true"); //check
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "exectims", dtim_tims); //투여회수
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "drugtmspec", drugtmspec); //투약시간
- ds_main_mnrmdtim_mnrmdtimList.setColumn(ds_main_mnrmdtim_mnrmdtimList.rowposition, "drugtmspeccal", drugtmspeccal);
- }
- ]]></Script>
|