123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMMO00500" position="absolute 0 0 810 351" titletext="Untitle" oninit="SPMMO00500_oninit" onload="SPMMO00500_onload" style="background:white;" onkeydown="SPMMO00500_onkeydown" ontimer="SPMMO00500_ontimer">
- <Layouts>
- <Layout>
- <Button position="absolute 696 331 752 351" id="btn_copy" class="btn4" text="선택" anchor="right bottom" onclick="btn_copy_onclick"/>
- <Grid position="absolute 0 0 810 325" id="grd_prcpsrchlist" binddataset="ds_prcpsrch_prcplist" anchor="all" oncellclick="grd_prcpsrchlist_oncellclick" oncelldblclick="grd_prcpsrchlist_oncelldblclick" onkeydown="grd_prcpsrchlist_onkeydown" cellclickbound="cell">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="37"/>
- <Column size="65"/>
- <Column size="80"/>
- <Column size="100"/>
- <Column size="290"/>
- <Column size="0"/>
- <Column size="227"/>
- <Column size="0"/>
- </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="OCS처방분류"/>
- <Cell col="4" text="영문명"/>
- <Cell col="5" text="혼동주의"/>
- <Cell col="6" text="한글명"/>
- <Cell col="7" text="시행부서"/>
- </Band>
- <Band id="body">
- <Cell displaytype="checkbox" edittype="checkbox" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:status" expr="expr:(status == "I" || status == 1) ? 1 : 0"/>
- <Cell col="1" displaytype="combo" edittype="none" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:prcpclscd" combodataset="oOpener.ds_M0005" combocodecol="cdid" combodatacol="cdnm"/>
- <Cell col="2" displaytype="text" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:prcpcd"/>
- <Cell col="3" displaytype="text" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:prcpclassnm"/>
- <Cell col="4" displaytype="text" style="background:white;background2:white;color:#ff0000ff;color2:#ff0000ff;" text="bind:prcpnm2"/>
- <Cell col="5" displaytype="text" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:tempcol10"/>
- <Cell col="6" displaytype="text" style="background:white;background2:white;color:EXPR((prcpclscd != "-") ? "" : "#ff0000");color2:EXPR((prcpclscd != "-") ? "" : "#ff0000");" text="bind:tempcol3"/>
- <Cell col="7" displaytype="combo" edittype="none" style="background:white;background2:white;" text="bind:prcpexecdeptcd" combodataset="ds_orddept" combocodecol="deptcd" combodatacol="depthngnm"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button position="absolute 754 331 810 351" id="btn_cancel" class="btn3" text="취소" anchor="right bottom" onclick="btn_cancel_onclick"/>
- <Grid id="grd_temp_prcpsrchlist" taborder="1" useinputpanel="false" position="absolute 600 230 800 312" binddataset="ds_temp_prcpsrch_prcplist" visible="false">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="40"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="24"/>
- </Rows>
- <Band id="head">
- <Cell displaytype="normal" edittype="normal"/>
- </Band>
- <Band id="body">
- <Cell displaytype="checkbox" edittype="checkbox" text="bind:status" expr="expr:(status == "I" || status == 1) ? 1 : 0"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_temp_prcpsrch_prcplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- </Objects>
- <Script type="xscript4.0"><![CDATA[/***************************************************************************************
- * System Name :
- * Job Name :
- * Creator :
- * Make Date : 2014-08-29
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2014-08-29 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- include "com_commonxp::comm_main.xjs";
- include "emr_prcpmngtxp::MMO001.xjs";
- var oOpener;
- var curPrcpSrchRow = -1;
- var strSrchopt = "";
- function SPMMO00500_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj);
- }
- function SPMMO00500_onload(obj:Form, e:LoadEventInfo)
- {
- oOpener = this.getOwnerFrame().form;
-
- try{
- var tmp_oOpener = frmf_getoOpener();
- if( tmp_oOpener.name == "SMMQP00600" || tmp_oOpener.frmf_getScreenID() == "SMMQP00600" ){
- oOpener = parent.parent;
- }
- }catch(e){
- sysf_catchTrace(e);
- }
-
- // 임상시험프로토콜에서 쓸 때는 이렇게 하도록 함
- if(!utlf_isNull(oOpener) && (oOpener.name == "SMMMB08300" ))
- {
- oOpener = parent.parent;
- }
- else if(!utlf_isNull(oOpener) && (oOpener.name == "SMMMB00600" ))
- {
- oOpener = parent.parent;
-
- }
-
- // 툴팁
- grdf_setToolTipBind(grd_prcpsrchlist);
- }
- function grd_prcpsrchlist_oncellclick(obj:Grid, e:GridClickEventInfo)
- {
- if(e.col < 1) return;
-
- // CP에서 OCS 탭에서 진행할 경우
- if( oOpener.name == "SMMMP00800") {
- oOpener = grp_biz.grp_prcp.imp_prcp;
- }
-
- var status = oOpener.ds_prcpsrch_prcplist.getColumn(e.row, "status");
- oOpener.ds_prcpsrch_prcplist.setColumn(e.row, "status", (status == "I" || status == 1) ? "N" : "I");
- }
- function grd_prcpsrchlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
- {
- //kimsj 100125 JCI_혼동주의 값 삭제
- if(!utlf_isNull(oOpener.ds_prcpsrch_prcplist.getColumnInfo("tempcol10"))) {
- oOpener.ds_prcpsrch_prcplist.enableevent = false;
- for( var i = 0; i < ds_prcpsrch_prcplist.rowcount; i++ )
- oOpener.ds_prcpsrch_prcplist.setColumn(i, "tempcol10", "");
- oOpener.ds_prcpsrch_prcplist.enableevent = true;
- }
-
- //20191223 이돈희 문제 : 약품정보관리에서 기존에 존재하는 약품에 대하여 변경하는 경우 ROWKEY가 존재하지 않아 오류 발생
- // 원인 : 약품정보관리에서 변경하는 경우 ROWKEY가 모두 바뀌므로 화면이 가지고 있는 ROWKEY랑 달라짐
- // 해결 : DB에서 재조회하여 ROWKEY 값 변경함
- if((strSrchopt == "innersrch") && (oOpener.div_all.CheckBox_prcpsrch_quicksrch.value == "001")){
- fInnerSearch();
- } else {
- oOpener.lf_addPrcp ( "import", "ds_prcpsrch_prcplist", "ds_main_prcplist", "N", "status", "I", grd_prcpsrchlist, "Y", "00");
- }
-
- // 신규처방코드 수정 모드에서 처방 추가 후 복사 - 20090630 by MoonSH
- var modiflag = utlf_isNull(oOpener.objects["ds_init_rowmodify"]) ? "" : oOpener.ds_init_rowmodify.getColumn(0, "modiflag");
- if ( modiflag == "Y" ) {
- // 추후 동작 확인필요
- oOpener.fCodeModifyAdd() ;
- }
- }
- function grd_prcpsrchlist_onkeydown(obj:Grid, e:KeyEventInfo)
- {
- if ( e.keycode == 13 ) {
- if ( oOpener.ds_prcpsrch_prcplist.rowposition < 0 ) {
- return;
- } else {
- oOpener.gridprcpsrchflag = "Y";
-
- //kimsj 100125 JCI_혼동주의 값 삭제
- if(!utlf_isNull(oOpener.ds_prcpsrch_prcplist.getColumnInfo("tempcol10"))) {
- oOpener.ds_prcpsrch_prcplist.enableevent = false;
- for( var i = 0; i < ds_prcpsrch_prcplist.rowcount; i++ )
- oOpener.ds_prcpsrch_prcplist.setColumn(i, "tempcol10", "");
- oOpener.ds_prcpsrch_prcplist.enableevent = true;
- }
-
- oOpener.lf_addPrcp ( "import", "ds_prcpsrch_prcplist", "ds_main_prcplist", "N", "status", "I", grd_prcpsrchlist, "Y", "00");
-
- oOpener.gridprcpsrchflag = "N";
- }
- }
- }
- function btn_copy_onclick(obj:Button, e:ClickEventInfo)
- {
- //kimsj 100125 JCI_혼동주의 값 삭제
- if(!utlf_isNull(oOpener.ds_prcpsrch_prcplist.getColumnInfo("tempcol10"))) {
- oOpener.ds_prcpsrch_prcplist.enableevent = false;
- for( var i = 0; i < ds_prcpsrch_prcplist.rowcount; i++ )
- oOpener.ds_prcpsrch_prcplist.setColumn(i, "tempcol10", "");
- oOpener.ds_prcpsrch_prcplist.enableevent = true;
- }
- //20191223 이돈희 문제 : 약품정보관리에서 기존에 존재하는 약품에 대하여 변경하는 경우 ROWKEY가 존재하지 않아 오류 발생
- // 원인 : 약품정보관리에서 변경하는 경우 ROWKEY가 모두 바뀌므로 화면이 가지고 있는 ROWKEY랑 달라짐
- // 해결 : DB에서 재조회하여 ROWKEY 값 변경함
- if((strSrchopt == "innersrch") && (oOpener.div_all.CheckBox_prcpsrch_quicksrch.value == "001")){
- fInnerSearch();
- } else {
- oOpener.lf_addPrcp ( "import", "ds_prcpsrch_prcplist", "ds_main_prcplist", "Y", "status", "I", grd_prcpsrchlist, "Y", "00");
- }
-
-
- // 신규처방코드 수정 모드에서 처방 추가 후 복사 - 20090630 by MoonSH
- var modiflag = utlf_isNull(oOpener.objects["ds_init_rowmodify"]) ? "" : oOpener.ds_init_rowmodify.getColumn(0, "modiflag");
- if ( modiflag == "Y" ) {
- // 추후 동작 확인필요
- oOpener.fCodeModifyAdd() ;
- }
- }
- function btn_cancel_onclick(obj:Button, e:ClickEventInfo)
- {
- // 허만호, 15.09.09, 처방검색 -> 처방복사 -> 취소 시 그리드 밀림현상 제거 S
- for(var i = 0; i < ds_main_prcplist.rowcount; i++ ) {
- //sysf_trace("i : " + i + "\n status : " + ds_main_prcplist.getColumn(i, "status"));
- if( ds_main_prcplist.getColumn(i, "status") == "S" ) {
- curPrcpSrchRow = i;
- }
- }
- // 허만호, 15.09.09, 처방검색 -> 처방복사 -> 취소 시 그리드 밀림현상 제거 E
-
- this.visible = false;
- lf_focusMain ( curPrcpSrchRow );
- }
- function SPMMO00500_onkeydown(obj:Form, e:KeyEventInfo)
- {
- if(e.keycode == "27")
- btn_cancel.onclick.fireEvent(btn_cancel, new ClickEventInfo());
- }
- function SPMMO00500_ontimer(obj:Form, e:TimerEventInfo)
- {
- if(e.timerid == 0) {
- killTimer(0);
- grd_prcpsrchlist.setFocus();
- curPrcpSrchRow = oOpener.ds_main_prcplist.rowposition;
- }
- }
- function setPrcpSrchListFocus(srchopt) {
- if(utlf_isNull(srchopt)){
- strSrchopt = "";
- } else {
- strSrchopt = srchopt;
- }
-
- setTimer(0, 700);
- }
- //20191223 이돈희 문제 : 약품정보관리에서 기존에 존재하는 약품에 대하여 변경하는 경우 ROWKEY가 존재하지 않아 오류 발생
- // 원인 : 약품정보관리에서 변경하는 경우 ROWKEY가 모두 바뀌므로 화면이 가지고 있는 ROWKEY랑 달라짐
- // 해결 : DB에서 재조회하여 ROWKEY 값 변경함
- function fInnerSearch(){
- var strNotExistPrcpcd = "";
- oOpener.ds_prcpsrch_prcplist.filter("status == 'I'");
- ds_temp_prcpsrch_prcplist.clear();
- for(var iIndex = 0 ; iIndex < oOpener.ds_prcpsrch_prcplist.rowcount ; iIndex++){
- if(iIndex == 0){
- lf_prcpSrchCom (oOpener.ds_prcpsrch_prcplist.getColumn(iIndex, "prcpcd"), oOpener.ds_init.getColumn(0, "prcpdd"), oOpener.ds_paminfo.getColumn(0, "insukind"), "TRMMO00100", "", "getPrcpCdSrchInfo", "E" , false, "N");
- ds_temp_prcpsrch_prcplist.copyData(ds_prcpsrch_prcplist);
- } else {
- lf_prcpSrchCom (oOpener.ds_prcpsrch_prcplist.getColumn(iIndex, "prcpcd"), oOpener.ds_init.getColumn(0, "prcpdd"), oOpener.ds_paminfo.getColumn(0, "insukind"), "TRMMO00100", "", "getPrcpCdSrchInfo", "E" , false, "N");
- ds_temp_prcpsrch_prcplist.appendData(ds_prcpsrch_prcplist);
- }
-
- if(ds_prcpsrch_prcplist.rowcount == 0){
- if(utlf_isNull(strNotExistPrcpcd)){
- strNotExistPrcpcd = oOpener.ds_prcpsrch_prcplist.getColumn(iIndex, "prcpcd");
- } else {
- strNotExistPrcpcd += ", " + oOpener.ds_prcpsrch_prcplist.getColumn(iIndex, "prcpcd");
- }
- }
-
- ds_temp_prcpsrch_prcplist.setColumn(iIndex, "status", "I");
- }
- if(oOpener.ds_prcpsrch_prcplist.rowcount != ds_temp_prcpsrch_prcplist.rowcount) {
- oOpener.div_all.div_srch.visible = false;
- sysf_messageBox("[" + strNotExistPrcpcd + "] 수가코드가 실시간 수가코드에 존재하지 않습니다. ");
- }
-
-
- if(ds_temp_prcpsrch_prcplist.rowcount > 0) {
- oOpener.ds_prcpsrch_prcplist.copyData(ds_temp_prcpsrch_prcplist);
- oOpener.lf_addPrcp ( "import", "ds_prcpsrch_prcplist", "ds_main_prcplist", "Y", "status", "I", grd_temp_prcpsrchlist, "Y", "00");
- }
-
- oOpener.ds_prcpsrch_prcplist.filter("");
- }]]></Script>
- </Form>
- </FDL>
|