123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMMO90200" position="absolute 0 0 843 531" titletext="처방사유 입력" oninit="SPMMO90200_oninit" onload="SPMMO90200_onload">
- <Layouts>
- <Layout>
- <Static text="처방 사유 입력" position="absolute 0 0 126 20" id="caption1" class="tit_2"/>
- <Grid position="absolute 0 18 843 273" id="grd_prcpmsglist" binddataset="ds_result_prcpmsglist" autofittype="col" oncellclick="grd_prcpmsglist_oncellclick" autosizingtype="row" cellsizingtype="col" extendsizetype="row" scrollpixel="all" oncelldblclick="grd_prcpmsglist_oncelldblclick">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="114"/>
- <Column size="70"/>
- <Column size="140"/>
- <Column size="55"/>
- <Column size="335"/>
- <Column size="30"/>
- <Column size="82"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="사유구분"/>
- <Cell col="1" text="처방코드"/>
- <Cell col="2" text="처방명"/>
- <Cell col="3" text="사유코드"/>
- <Cell col="4" text="내용"/>
- <Cell col="5" text="코드"/>
- <Cell col="6" text="상세사유"/>
- </Band>
- <Band id="body">
- <Cell displaytype="normal" edittype="none" style="align:left;padding:3 3 3 3;" text="bind:errdisc" wordwrap="word" autosizerow="limitmin"/>
- <Cell col="1" style="align:left;padding:3 3 3 3;" text="bind:prcpcd" wordwrap="char"/>
- <Cell col="2" style="align:left;padding:3 3 3 3;" text="bind:prcpnm" wordwrap="word"/>
- <Cell col="3" style="align:left;padding:3 3 3 3;" text="bind:errcd"/>
- <Cell col="4" displaytype="text" style="align:left;padding:3 3 3 3;background:EXPR(getBackgroundColor(errmsg));background2:EXPR(getBackgroundColor(errmsg));" text="bind:errmsg" wordwrap="char" autosizerow="limitmin"/>
- <Cell col="5" style="align:left;padding:3 3 3 3;" text="bind:cnfcd" wordwrap="char"/>
- <Cell col="6" style="align:left top;padding:3 3 3 3;" text="bind:cnfmsg" wordwrap="word" autosizerow="limitmax"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Static text="사유선택" position="absolute 0 278 75 298" id="caption6" class="tit_2"/>
- <Grid position="absolute 0 296 843 501" id="grd_resnlist" binddataset="ds_hardcd" autofittype="col" oncellclick="grd_resnlist_oncellclick" oncelldblclick="grd_resnlist_oncelldblclick" autosizingtype="row" extendsizetype="row" scrollpixel="all" cellsizingtype="col">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="35"/>
- <Column size="35"/>
- <Column size="807"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell text="선택"/>
- <Cell col="1" text="코드"/>
- <Cell col="2" text="상세사유"/>
- </Band>
- <Band id="body">
- <Cell displaytype="checkbox" edittype="checkbox" text="bind:status" expr="expr:(status == "Y" || status == 1) ? 1 : 0"/>
- <Cell col="1" text="bind:hardcd"/>
- <Cell col="2" displaytype="text" edittype="expr:(hardcd != "T") ? "none" : "text"" text="bind:hardcdnm" wordwrap="word" editautoselect="true" autosizerow="limitmin"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button position="absolute 778 275 842 295" id="button1" class="btn2" text="사유적용" onclick="button1_onclick"/>
- <CheckBox position="absolute 705 275 775 295" id="bool_cond1" text="일괄적용" falsevalue="N" truevalue="Y"/>
- <Button position="absolute 634 511 714 531" id="button3" class="btn4" text="계속저장" onclick="button3_onclick"/>
- <Button position="absolute 727 511 843 531" id="btn_cncl" class="btn4" text="처방변경(닫기)" onclick="btn_cncl_onclick"/>
- <Static text="아래의 처방은 사유를 선택 또는 입력 하셔야 발행이 가능 합니다. 처방을 선택하면 사유구분에 맞는 사유 항목이 조회 됩니다." position="absolute 130 0 840 18" id="caption4"/>
- <Static text="아래의 항목에서 사유를 선택 하세요. 일괄적용 체크 되면 동일한 사유구분은한번에 적용 됩니다." position="absolute 77 276 700 296" id="caption7"/>
- <Div position="absolute -5 504 235 531" id="group2" scrollbars="autoboth">
- <Layouts>
- <Layout>
- <Shape position="absolute 5 0 235 27" id="roundrect4" type="roundrectangle"/>
- <Static text="범 례" position="absolute 18 4 68 24" id="caption20" class="cell_2"/>
- <Static position="absolute 71 6 86 21" align="align:center middle;" id="caption5" class="color_7"/>
- <Static text="마약 또는 향정신성 의약품" position="absolute 88 8 238 21" id="caption8"/>
- </Layout>
- </Layouts>
- </Div>
- <Static id="caption10" text="(멀티선택가능)" position="absolute 279 276 363 296" style="color:blue;" visible="false"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_result_saveflaginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_result_prcpmsglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="instcd" type="STRING" size="256" sumtext="기관기호"/>
- <Column id="msgdd" type="STRING" size="256" sumtext="메세지일자"/>
- <Column id="msgno" type="STRING" size="256" sumtext="메세지번호"/>
- <Column id="histno" type="STRING" size="256" sumtext="메세지이력번호"/>
- <Column id="msgseq" type="STRING" size="256" sumtext="메세지상세번호"/>
- <Column id="msgcls" type="STRING" size="256" sumtext="메세지종류"/>
- <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
- <Column id="prcpnm" type="STRING" size="256" sumtext="처방명"/>
- <Column id="errcd" type="STRING" size="256" sumtext="오류코드"/>
- <Column id="errmsg" type="STRING" size="256" sumtext="오류메세지"/>
- <Column id="errdisc" type="STRING" size="256" sumtext="오류설명"/>
- <Column id="cnfcd" type="STRING" size="256" sumtext="확인코드"/>
- <Column id="cnfmsg" type="STRING" size="256" sumtext="확인메세지"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="hardcd" type="STRING" size="256" sumtext="하드코드"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_hardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_hardcd_oncolumnchanged">
- <ColumnInfo>
- <Column id="status" type="STRING" size="256" sumtext="상태값"/>
- <Column id="hardcd" type="STRING" size="256" sumtext="하드코드"/>
- <Column id="hardcdnm" type="STRING" size="256" sumtext="하드코드명"/>
- <Column id="resncmt" type="STRING" size="256" sumtext="상세사유"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="cond1" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row>
- <Col id="cond1">Y</Col>
- </Row>
- </Rows>
- </Dataset>
- </Objects>
- <Bind>
- <BindItem id="item0" compid="bool_cond1" propid="value" datasetid="ds_init" columnid="cond1"/>
- </Bind>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2014-12-10
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2014-12-10 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- include "com_commonxp::comm_main.xjs";
- function SPMMO90200_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj);
-
- ds_result_saveflaginfo.copyData(arg_ds_result_saveflaginfo);
- }
- function SPMMO90200_onload(obj:Form, e:LoadEventInfo)
- {
- var msgno = ds_result_saveflaginfo.getColumn(0, "msgno");
- if(msgno == "0"){
- sysf_messageBox("메세지 정보가 정확하지 않습니다.", "E999");
- return;
- }
-
- dsf_makeValue(ds_result_saveflaginfo, "msgcls", "string", "R"); // 사유 조회(R) 로 설정
-
- dsf_setDefaultVal(ds_result_saveflaginfo,"cnfcd:-,cnfmsg:-,cnfrmk:-");
-
- var oParam = {};
- oParam.id = "TRMMO90101";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqGetPrcpMsgList";
- oParam.inds = "req=ds_result_saveflaginfo";
- oParam.outds = "ds_result_prcpmsglist=prcpmsglist";
- oParam.async = true;
- oParam.callback = "cf_TRMMO90101";
- tranf_submit(oParam);
-
- // ds_send.setColumn(0, "hardcd", "320");
- //
- // var oParam = {};
- // oParam.id = "TRMMB16401";
- // oParam.service = "prcpbaseapp.EnvInfoMngt";
- // oParam.method = "reqGetHardCodeCD";
- // oParam.inds = "req=ds_send";
- // oParam.outds = "ds_hardcd=hardcd";
- // oParam.async = true;
- // oParam.callback = "cf_TRMMB16401";
- //
- // tranf_submit(oParam);
- }
- function getBackgroundColor(errmsg) {
- var background_color = "default";
- if (utlf_isSearchString(errmsg, "주의! 마약") || utlf_isSearchString(errmsg, "향정신성의약품")){
- background_color = "#f3e1bf";
- }
- return background_color;
- }
- function grd_prcpmsglist_oncellclick(obj:Grid, e:GridClickEventInfo)
- {
- // 15.05.15 현행화 start
- if(e.row < 0 || e.col < 0) return;
-
- var sResnListCd = ds_result_prcpmsglist.getColumn(ds_result_prcpmsglist.rowposition, "resnlistcd"); //model.getValue("/root/result/prcpmsglist[" +grd_prcpmsglist.row+ "]/resnlistcd"); // 사유입력시 사유리스트 하드코드
- var sMultiYn = ds_result_prcpmsglist.getColumn(ds_result_prcpmsglist.rowposition, "multiyn"); //model.getValue("/root/result/prcpmsglist[" +grd_prcpmsglist.row+ "]/multiyn"); // 멀티선택 가능여부
-
- if(sResnListCd == "0") {
- alert("관련된 사유 정보가 존재 하지 않습니다.\n전산실(6598)로 문의 하세요.");
- return;
- }
-
- if(sMultiYn == "N") { // 단일선택이면
- caption10.visible = false;
- } else {
- caption10.visible = true;
- }
-
- ds_send.setColumn(0, "hardcd", sResnListCd); //model.setValue ( "/root/send/cond1", sResnListCd );
- // 15.05.15 현행화 end
-
- /*
- var sErrCd = ds_result_prcpmsglist.getColumn(e.row, "errcd");
- if ( sErrCd == "R10001") { ds_send.setColumn(0, "hardcd", "320"); } //12세 이상 시럽제 처방 사유
- else if ( sErrCd == "R10002") { ds_send.setColumn(0, "hardcd", "329"); } //ADR(약품유해반응) 처방 사유
- else if ( sErrCd == "R10003") { ds_send.setColumn(0, "hardcd", "330"); } //수술예방적 항생제 처방사유(재원)
- else if ( sErrCd == "R10004") { ds_send.setColumn(0, "hardcd", "331"); } //수술예방적 항생제 처방사유(퇴원)
- else if ( sErrCd == "R10005") { ds_send.setColumn(0, "hardcd", "5609"); } //약제 및 진료재료 적정성 심의(칠곡)
- else if ( sErrCd == "R10006") { ds_send.setColumn(0, "hardcd", "303"); } //향정신성 의약품 30일 이상 처방 사유
- else if ( sErrCd == "R10007") { ds_send.setColumn(0, "hardcd", "311"); } // 급성심근경색 퇴원약 아스피린 미처방 사유
- else if ( sErrCd == "R10008") { ds_send.setColumn(0, "hardcd", "312"); } // 급성심근경색 퇴원약 베타차단체 미처방 사유
- else if ( sErrCd == "R10009") { ds_send.setColumn(0, "hardcd", "455"); } // PET/CT 처방 사유(칠곡)
-
- else if ( sErrCd == "R70000") { ds_send.setColumn(0, "hardcd", "411"); } // DUR 처방전내 병용금기 체크 사유
- else if ( sErrCd == "R70001") { ds_send.setColumn(0, "hardcd", "412"); } // DUR 처방전내 연령금기 체크 사유
- else if ( sErrCd == "R70002") { ds_send.setColumn(0, "hardcd", "405"); } // DUR 처방전내 급여중지 체크 사유
- else if ( sErrCd == "R70003") { ds_send.setColumn(0, "hardcd", "405"); } // DUR 처방전내 최대용량 체크 사유
- else if ( sErrCd == "R70004") { ds_send.setColumn(0, "hardcd", "405"); } // DUR 처방전내 최대기간 체크 사유
- else if ( sErrCd == "R70005") { ds_send.setColumn(0, "hardcd", "413"); } // DUR 처방전내 저함량 체크 사유
- else if ( sErrCd == "R70006") { ds_send.setColumn(0, "hardcd", "414"); } // DUR 처방전내 임부금기 체크 사유
-
- else if ( sErrCd == "R70007") { ds_send.setColumn(0, "hardcd", "406"); } // DUR 처방전간 병용금기 체크 사유
- else if ( sErrCd == "R70008") { ds_send.setColumn(0, "hardcd", "407"); } // DUR 처방전간 성분별 중복 체크 사유
- else if ( sErrCd == "R70040") { ds_send.setColumn(0, "hardcd", "406"); } // DUR 처방전간 치료중복 체크 사유
- else if ( sErrCd == "R70041") { ds_send.setColumn(0, "hardcd", "406"); } // DUR 처방전간 2주 병용금기 체크 사유
- else if ( sErrCd == "R70042") { ds_send.setColumn(0, "hardcd", "406"); } // DUR 처방전간 1성분 병용기간금기 체크 사유
- else if ( sErrCd == "R70043") { ds_send.setColumn(0, "hardcd", "406"); } // DUR 처방전간 병용연령성별제한 체크 사유
-
- else { alert("관련된 사유 정보가 존재 하지 않습니다.\n전산실(6598)로 문의 하세요."); return; }
- */
-
- var oParam = {};
- oParam.id = "TRMMB16401";
- oParam.service = "prcpbaseapp.EnvInfoMngt";
- oParam.method = "reqGetHardCodeCD";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_hardcd=hardcd";
- oParam.async = true;
- oParam.callback = "cf_TRMMB16401";
- tranf_submit(oParam);
- }
- function grd_resnlist_oncellclick(obj:Grid, e:GridClickEventInfo)
- {
- if(e.row < 0 || e.col < 0) return;
-
- var currow = ds_hardcd.rowposition;
-
- if ( obj.getCellPos() == obj.getBindCellIndex("body", "hardcdnm") ) {
- if ( ds_hardcd.getColumn(e.row, "hardcdnm") == "(이곳에 사유입력을 하세요)"
- || ds_hardcd.getColumn(e.row, "hardcdnm") == "기타사유 (직접입력)" ) {
- obj.setCellPos(e.col);
- obj.setCellProperty("body", e.col, "edittype", "text");
- obj.showEditor(true);
- } else {
- obj.setCellProperty("body", e.col, "edittype", "none");
- }
- } else if( obj.getCellPos() == obj.getBindCellIndex("body", "status") ) {
- if( ds_hardcd.getColumn(e.row, "status") == "Y" ) { // model.getValue ( "/root/hardcd/hardcd[" + currow + "]/status") == "Y"
- ds_hardcd.setColumn(e.row, "status", "N"); //model.setValue ( "/root/hardcd/hardcd[" + currow + "]/status" , "N");
- } else {
- ds_hardcd.setColumn(e.row, "status", "Y"); //model.setValue ( "/root/hardcd/hardcd[" + currow + "]/status" , "Y");
- }
- fSelectResn();
- }
- }
- function grd_resnlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- if(e.row < 0 || e.col < 0) return;
-
- fSelectResn();
-
- //
- // sysf_trace("dbclick");
- // if ( obj.getCellPos() == obj.getBindCellIndex("body", "hardcdnm") ) {
- // sysf_trace("db");
- // fSelectResn();
- // }
- //
- }
- function ds_hardcd_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
- {
- if(e.columnid == "status")
- obj.setColumn(e.row, e.columnid, (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
-
- if(grd_resnlist.getEditText() != undefined && e.eventid == "hardcdnm") {
- var currow = e.row;
- if ( obj.getColumn(currow, "hardcdnm") != "(이곳에 사유입력을 하세요)"
- && obj.getColumn(currow, "hardcdnm") != "기타사유 (직접입력)" ) {
- fSelectResn();
- }
- }
- }
- function fSelectResn() {
- var resnRow = ds_hardcd.rowposition;
- var prcpRow = ds_result_prcpmsglist.rowposition;
- var sAllApply = ds_init.getColumn(0, "cond1");
-
- if (resnRow != -1 && prcpRow != -1) {
- var sStatus = ds_hardcd.getColumn(resnRow, "status");
- var sCnfCd = ds_hardcd.getColumn(resnRow, "hardcd");
- var sCnfMsg = ds_hardcd.getColumn(resnRow, "hardcdnm");
-
- if(sCnfMsg == "(이곳에 사유입력을 하세요)" || sCnfMsg == "기타사유 (직접입력)") {
- var col = grd_resnlist.getBindCellIndex("body", "hardcdnm");
- grd_resnlist.setCellPos(col);
- grd_resnlist.setCellProperty("body", col, "edittype", "text");
- grd_resnlist.showEditor(true);
- } else {
-
- var sMultiYn = ds_result_prcpmsglist.getColumn(prcpRow, "multiyn"); //model.getValue("/root/result/prcpmsglist[" +prcpRow+ "]/multiyn"); // 멀티선택 가능여부
- if(sMultiYn == "N") { // 단일 선택이면
- if(sStatus == "N") { // 현재 선택되지 않은 값이면 신규 선택
- var resnLength = ds_hardcd.rowcount; //model.instances(0).selectNodes( "/root/hardcd/hardcd" ).length;
- for ( var i = 0; i < resnLength; i++ ) { // 사유항목별 for // var i = 1; i<=resnLength; i++
- if( resnRow == i) {
- ds_hardcd.setColumn(i, "status", "Y"); //model.setValue("/root/hardcd/hardcd[" + i + "]/status", "Y"); // 선택 체크
- } else {
- ds_hardcd.setColumn(i, "status", "N"); //model.setValue("/root/hardcd/hardcd[" + i + "]/status", "N"); // 선택 해제
- }
- } // end of 사유항목별 for
- } else { // 현재 선택된 값이면 선택취소
- ds_hardcd.setColumn(resnRow, "status", "N"); //model.setValue("/root/hardcd/hardcd[" + resnRow + "]/status", "N"); // 선택 해제
-
- sCnfCd = "-"; // 선택코드 초기화
- sCnfMsg = "-"; // 선택사유 초기화
- }
- } else { // 멀티 선택이면
- if(sStatus == "N") { // 현재 선택되지 않은 값이면 신규 선택
- ds_hardcd.setColumn(resnRow, "status", "Y"); //model.setValue("/root/hardcd/hardcd[" + resnRow + "]/status", "Y"); // 선택 해제
- } else { // 현재 선택된 값이면 선택취소
- ds_hardcd.setColumn(resnRow, "status", "N"); //model.setValue("/root/hardcd/hardcd[" + resnRow + "]/status", "N"); // 선택 해제
- }
-
- sCnfCd = "-"; // 선택코드 초기화
- sCnfMsg = "-"; // 선택사유 초기화
- var resnLength = ds_hardcd.rowcount; //model.instances(0).selectNodes( "/root/hardcd/hardcd" ).length;
- for ( var i = 0; i < resnLength; i++ ) { // 사유항목별 for
- if( ds_hardcd.getColumn(i, "status") == "Y" ) { // 선택되었으면 model.getValue("/root/hardcd/hardcd[" + i + "]/status") == "Y"
- if(sCnfCd == "-") { // 첫번째 선택의 경우
- sCnfCd = ds_hardcd.getColumn(i, "hardcd"); //model.getValue("/root/hardcd/hardcd[" + i + "]/hardcd"); // 선택된 사유 코드
- sCnfMsg = ds_hardcd.getColumn(i, "hardcdnm"); //model.getValue("/root/hardcd/hardcd[" + i + "]/hardcdnm"); // 선택된 사유 상세
- } else { // 첫번째 선택이 아닌경우
- sCnfCd = sCnfCd + "|" + ds_hardcd.getColumn(i, "hardcd"); //model.getValue("/root/hardcd/hardcd[" + i + "]/hardcd"); // 선택된 사유 코드
- sCnfMsg = sCnfMsg + "|" + ds_hardcd.getColumn(i, "hardcdnm"); //model.getValue("/root/hardcd/hardcd[" + i + "]/hardcdnm"); // 선택된 사유 상세
- }
- }
- } // end of 사유항목별 for
- }
-
- if(sAllApply == "Y") { // 일괄 적용이면
- var checkLength = ds_result_prcpmsglist.rowcount; //model.instances(0).selectNodes( "/root/result/prcpmsglist" ).length;
- var sSelErrCd = ds_result_prcpmsglist.getColumn(prcpRow, "errcd"); //model.getValue("/root/result/prcpmsglist[" +prcpRow+ "]/errcd"); // 오류 코드
- var sChkErrCd = "";
-
- for ( var i = 0; i < checkLength; i++ ) { // var i= 1; i<=checkLength; i++
- sChkErrCd = ds_result_prcpmsglist.getColumn(i, "errcd"); //model.getValue ( "/root/result/prcpmsglist[" + i + "]/errcd" );
- if(sSelErrCd == sChkErrCd) {
- ds_result_prcpmsglist.setColumn(i, "cnfcd", sCnfCd); //model.setValue("/root/result/prcpmsglist[" + i + "]/cnfcd", sCnfCd);
- ds_result_prcpmsglist.setColumn(i, "cnfmsg", sCnfMsg); //model.setValue("/root/result/prcpmsglist[" + i + "]/cnfmsg", sCnfMsg);
- }
- }
- } else {
- ds_result_prcpmsglist.setColumn(prcpRow, "cnfcd", sCnfCd); //model.setValue("/root/result/prcpmsglist[" + prcpRow + "]/cnfcd", sCnfCd);
- ds_result_prcpmsglist.setColumn(prcpRow, "cnfmsg", sCnfMsg); //model.setValue("/root/result/prcpmsglist[" + prcpRow + "]/cnfmsg", sCnfMsg);
- }
-
- //model.refresh();
- }
- }
-
- /* 15.05.15 동기화 이전 소스
- var resnRow = ds_hardcd.rowposition;
- var prcpRow = ds_result_prcpmsglist.rowposition;
-
- if (resnRow != -1 && prcpRow != -1) {
- var sCnfCd = ds_hardcd.getColumn(resnRow, "hardcd") // 선택된 사유 코드
- var sCnfMsg = ds_hardcd.getColumn(resnRow, "hardcdnm") // 선택된 사유 상세
- if(sCnfMsg == "(이곳에 사유입력을 하세요)" || sCnfMsg == "기타사유 (직접입력)") {
- var col = grd_resnlist.getBindCellIndex("body", "hardcdnm");
- grd_resnlist.setCellPos(col);
- grd_resnlist.setCellProperty("body", col, "edittype", "text");
- grd_resnlist.showEditor(true);
- } else {
- if(ds_init.getColumn(0, "cond1") == "Y") { // 일괄 적용이면
- var checkLength = ds_result_prcpmsglist.rowcount;
- var sSelErrCd = ds_result_prcpmsglist.getColumn(prcpRow, "errcd"); // 오류 코드
- var sChkErrCd = "";
-
- for ( var i = 0; i < checkLength; i++ ) {
- sChkErrCd = ds_result_prcpmsglist.getColumn(i, "errcd");
- if(sSelErrCd == sChkErrCd) {
- ds_result_prcpmsglist.setColumn(i, "cnfcd", sCnfCd);
- ds_result_prcpmsglist.setColumn(i, "cnfmsg", sCnfMsg);
- }
- }
- } else {
- ds_result_prcpmsglist.setColumn(prcpRow, "cnfcd", sCnfCd);
- ds_result_prcpmsglist.setColumn(prcpRow, "cnfmsg", sCnfMsg);
- }
- }
- }
- */
-
- }
- function button1_onclick(obj:Button, e:ClickEventInfo)
- {
- if(ds_hardcd.rowposition > -1) {
- fSelectResn();
- }else{
- sysf_messageBox ( "선택된 사유가 없습니다." , "I" );
- }
- }
- function button3_onclick(obj:Button, e:ClickEventInfo)
- {
- var checkLength = ds_result_prcpmsglist.rowcount;
- var resnCnt = 0;
- var sUserId = "";
-
- if ( checkLength > 0 ) {
- sUserId = sysf_getUserInfo("userid");
-
- ds_result_prcpmsglist.addColumn("userid", "string");
-
- for ( var i = 0; i < checkLength; i++ ) {
- ds_result_prcpmsglist.setColumn(i, "userid", sUserId);
-
- if ( utlf_isNull(ds_result_prcpmsglist.getColumn(i, "cnfcd"))
- || utlf_isNull(ds_result_prcpmsglist.getColumn(i, "cnfmsg"))
- || "-" == ds_result_prcpmsglist.getColumn(i, "cnfcd")
- || "-" == ds_result_prcpmsglist.getColumn(i, "cnfmsg") ) {
- resnCnt++;
- }
- }
- if (resnCnt > 0) {
- sysf_messageBox ( "처방사유 선택되지 않은 처방이", "I010" );
- return;
- }
-
- dsf_makeValue(ds_result_saveflaginfo, "cnfcd", "string", "Y"); // 확인 코드를 'Y' 로 설정
-
- var oParam = {};
- oParam.id = "TXMMO90101";
- oParam.service = "prcpmngtapp.PrcpMngt";
- oParam.method = "reqExePrcpMsgList";
- oParam.inds = "req=ds_result_prcpmsglist";
- oParam.async = false;
- if(tranf_submit(oParam)) {
- opener.frmf_setParameter ( "SPMMO90200_rtn", "Y" );
- close();
- }
- }
- }
- function cf_TRMMO90101(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
-
-
-
- ds_result_prcpmsglist.enableevent = false;
- for(var i=0; i< ds_result_prcpmsglist.rowcount; i++){
- var errmsg = ds_result_prcpmsglist.getColumn(i, "errmsg");
- if(!utlf_isNull(errmsg)){
- errmsg = errmsg.replace(/\r\n/g, "\n");
- errmsg = errmsg.replace(/\r/g, "\n");
- errmsg = errmsg.replace(/\n/g, "\r\n");
- ds_result_prcpmsglist.setColumn(i, "errmsg", errmsg);
- }
- }
- ds_result_prcpmsglist.enableevent = true;
-
- var sResnListCd = ds_result_prcpmsglist.getColumn(ds_result_prcpmsglist.rowposition, "resnlistcd"); //ds_send.setColumn(0, "hardcd", "320");
-
- ds_send.setColumn(0, "hardcd", sResnListCd);
-
- var oParam = {};
- oParam.id = "TRMMB16401";
- oParam.service = "prcpbaseapp.EnvInfoMngt";
- oParam.method = "reqGetHardCodeCD";
- oParam.inds = "req=ds_send";
- oParam.outds = "ds_hardcd=hardcd";
- oParam.async = true;
- oParam.callback = "cf_TRMMB16401";
- tranf_submit(oParam);
-
-
- }
- function cf_TRMMB16401(sSvcId, nErrorCode, sErrorMsg) {
- if(nErrorCode < 0) return;
-
- ds_hardcd.addColumn("status","string");
- dsf_setDefaultVal(ds_hardcd, "status:N");
- }
- function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
- {
- opener.frmf_setParameter ( "SPMMO90200_rtn", "N" );
- close();
- }
- function grd_prcpmsglist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- if(e.row < 0 || e.col < 0) return;
-
- if(obj.getCellPos() == obj.getBindCellIndex("body", "errmsg")) {
- var sPrscGrantNo = ds_result_saveflaginfo.getColumn(0, "prsc_grant_no");
- var sErrCd = ds_result_prcpmsglist.getColumn(e.row, "errcd");
- var sPrcpDd = ds_result_prcpmsglist.getColumn(e.row, "prcpdd");
- var sPrcpNo = ds_result_prcpmsglist.getColumn(e.row, "prcpno");
-
- if(sErrCd.length > 2) {
- sErrCd = sErrCd.substring(0, 2);
- }
-
- if(!utlf_isNull(sPrscGrantNo) && sErrCd == "R7") { // DUR관련 사유 이면
- var mon = sysf_getCurrentMonitorNumber();
- var xpt = this.getOwnerFrame().position.x + 50;
- var ypt = this.getOwnerFrame().position.y + 50;
-
- frmf_setParameter("SPMMO90700_prsc_grant_no", sPrscGrantNo);
- frmf_setParameter("SPMMO90700_prcpdd", sPrcpDd);
- frmf_setParameter("SPMMO90700_prcpno", sPrcpNo);
-
- frmf_modal("SPMMO90700", "SPMMO90700", null, false, mon, xpt, ypt, null, null, null, null, null, "M");
- }
- }
-
- }
- ]]></Script>
- </Form>
- </FDL>
|