123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337 |
- <?xml version="1.0" encoding="utf-8"?>
- <FDL version="1.5">
- <TypeDefinition url="..\..\..\default_typedef.xml"/>
- <Form id="SPMNP04600" position="absolute 0 0 1054 150" titletext="수술방 재고조회" oninit="SPMNP04600_oninit" onload="SPMNP04600_onload">
- <Layouts>
- <Layout>
- <Static text="수술방 재고조회" position="absolute 1 4 123 21" id="caption1" class="tit_2"/>
- <Shape position="absolute 0 20 1050 26" linetype="horizontal" id="line1" class="line_10"/>
- <Grid position="absolute 0 25 1050 97" align="align:right middle;" id="grd_oproomstoclist" binddataset="ds_temp_oproomstoclist" autoenter="select">
- <Formats>
- <Format id="default">
- <Columns>
- <Column size="40"/>
- </Columns>
- <Rows>
- <Row size="24" band="head"/>
- <Row size="22"/>
- </Rows>
- <Band id="head">
- <Cell/>
- </Band>
- <Band id="body">
- <Cell style="align:right middle;"/>
- </Band>
- </Format>
- </Formats>
- </Grid>
- <Button position="absolute 933 100 989 122" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
- <Button position="absolute 992 100 1048 122" id="btn_cncl" class="btn4" text="닫기" onclick="btn_cncl_onclick"/>
- </Layout>
- </Layouts>
- <Objects>
- <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="goodcd" type="STRING" size="256"/>
- <Column id="allsizespecid" type="STRING" size="256"/>
- <Column id="refdeptflag" type="STRING" size="256"/>
- <Column id="refdept" type="STRING" size="256"/>
- </ColumnInfo>
- <Rows>
- <Row/>
- </Rows>
- </Dataset>
- <Dataset id="ds_init_goodflaglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="goodflagcd" type="STRING" size="256"/>
- <Column id="goodflagnm" type="STRING" size="256"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="Dataset00" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_init_oproomlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
- <ColumnInfo>
- <Column id="oproomcd" type="STRING" size="256"/>
- <Column id="oproomnm" type="STRING" size="256"/>
- </ColumnInfo>
- </Dataset>
- <Dataset id="ds_temp_oproomstoclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_main_roomstoclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
- <Dataset id="ds_send_savedata" 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 : 2016-10-12
- * Description :
- *---------------------------------------------------------------------------------------
- * Modify Date Modifier Modify Description
- *---------------------------------------------------------------------------------------
- * 2016-10-12 Live Converter TF->XP
- *
- *---------------------------------------------------------------------------------------
- ****************************************************************************************/
- include "com_commonxp::comm_main.xjs";
- function SPMNP04600_oninit(obj:Form, e:InitEventInfo)
- {
- frmf_initForm(obj);
- }
- function SPMNP04600_onload(obj:Form, e:LoadEventInfo)
- {
- if( frmf_checkOpener() ) {
- ds_main_cond.setColumn(0, "goodcd", opener.frmf_getParameter("goodcd"));
- ds_main_cond.setColumn(0, "allsizespecid", opener.frmf_getParameter("allsizespecid"));
- ds_main_cond.setColumn(0, "refdeptflag", opener.frmf_getParameter("refdeptflag"));
- ds_main_cond.setColumn(0, "refdept", opener.frmf_getParameter("refdept"));
-
- //대분류 조회
- var oParam = {};
- oParam.id = "TRMNP04403";
- oParam.service = "opanstapp.OpAnstStocMngt";
- oParam.method = "reqGetGoodFlagList";
- oParam.inds = "";
- oParam.outds = "ds_init_goodflaglist=goodflaglist ds_init_oproomlist=oproomlist";
- oParam.async = false;
- tranf_submit(oParam);
- fChangeDept();//수술방 그리드 생성
- fSearch();
- }
- }
- //수술실 물품 부서별 부서 재고 화면 변경
- function fChangeDept() {
- var deptflag = ds_main_cond.getColumn(0, "refdept"); //부서구분
- //var nodeCnt = parseInt(getNodesetCount("/root/init/oproomlist")) + 1;
- var nodeCnt = ds_init_oproomlist.rowcount + 1;
- if (deptflag != "R") { //수술, 마취
- var scrwidth = (nodeCnt * 49) + 14;
-
- if (nodeCnt > 25) { //수술방이 25개 이상이면 스크롤 바로 인해 크기 조절
- btn_save.position.left = 933;
- btn_save.position.top = 117;
- btn_save.position.width = 56;
- btn_save.position.height = 22;
-
- btn_cncl.position.left = 992;
- btn_cncl.position.top = 117;
- btn_cncl.position.width = 56;
- btn_cncl.position.height = 22;
- //line1.attribute("style") = "x1:0px; y1:20px; x2:1050px; y2:20px; ";
-
- grd_oproomstoclist.position.left = 0;
- grd_oproomstoclist.position.top = 25;
- grd_oproomstoclist.position.width = 1050;
- grd_oproomstoclist.position.height = 89;
- } else {
- //btn_save.attribute("style") = "left:" + (scrwidth - 117) + "px; top:100px; width:56px; height:22px";
- btn_save.position.left = eval(scrwidth) - 117;
- btn_save.position.top = 100;
- btn_save.position.width = 56;
- btn_save.position.height = 22;
-
- //btn_cncl.attribute("style") = "left:" + (scrwidth - 56) + "px; top:100px; width:56px; height:22px; ";
- btn_cncl.position.left = eval(scrwidth) - 56;
- btn_cncl.position.top = 100;
- btn_cncl.position.width = 56;
- btn_cncl.position.height = 22;
-
- //line1.attribute("style") = "x1:0px; y1:20px; x2:" + scrwidth + "px; y2:20px; ";
- //grd_oproomstoclist.attribute("style") = "left:0px; top:25px; width:" + scrwidth + "px; height:72px; text-align:right;";
- grd_oproomstoclist.position.left = 0;
- grd_oproomstoclist.position.top = 25;
- grd_oproomstoclist.position.width = eval(scrwidth);
- grd_oproomstoclist.position.height = 72;
- }
- var captionlist = "";
- if (nodeCnt != 0) {
- for (var i = 0; i < nodeCnt; i++) { //수술방 갯수 만큼 컴럼을 만들고 cation을 만들어 준다.(CCR제외)
- //grd_oproomstoclist.addColumn("ref:oproomnostoc" + i + "; type:input;", false);
- grd_oproomstoclist.appendContentsCol();
- ds_temp_oproomstoclist.addColumn("oproomnostoc" + i, "string");
- grd_oproomstoclist.setCellProperty("body",i,"text","bind:"+ ("oproomnostoc" + i));
- grd_oproomstoclist.setCellProperty("body",i,"edittype","text");
- grd_oproomstoclist.setCellProperty("body",i,"editautoselect","true");
- grd_oproomstoclist.setCellProperty("body",i,"align","right middle");
-
- grd_oproomstoclist.setCellProperty("head",i,"wordwrap", "char");
- grd_oproomstoclist.setCellProperty("head",i,"align","top middle");
- grd_oproomstoclist.setCellProperty("head",i,"padding","4 2 2 2");
-
-
- if (i == 3) {
- grd_oproomstoclist.setFormatColProperty(i,"size","60");
- } else {
- grd_oproomstoclist.setFormatColProperty(i,"size","49");
- }
- //grd_oproomstoclist.colAttribute(i, "format") = "#.###";
-
- if (i == 0) {
- captionlist = utlf_transNullToEmpty(ds_init_oproomlist.getColumn(i, "oproomnm"));
- } else if (i == 3) {
- captionlist = captionlist + "^OR총재고";
- } else if (i < 3) {
- captionlist = captionlist + "^" + utlf_transNullToEmpty(ds_init_oproomlist.getColumn(i, "oproomnm"));
- } else if (i > 3) {
- j = i - 1;
- captionlist = captionlist + "^" + utlf_transNullToEmpty(ds_init_oproomlist.getColumn(j, "oproomnm"));
- }
- }
-
- var arrcaptionlist = captionlist.split("^");
- for(k = 0; k < arrcaptionlist.length ;k++){
- grd_oproomstoclist.setCellProperty("Head", k, "text", arrcaptionlist[k]);
- }
- ds_temp_oproomstoclist.addRow();
- }
- ds_temp_oproomstoclist.addRow();
-
- grd_oproomstoclist.deleteContentsCol("body", grd_oproomstoclist.getCellCount("body") - 1);
- if (deptflag == "O") { //수술
- //grd_oproomstoclist.colDisabled(3) = "ture";
- grd_oproomstoclist.setCellProperty("body",3,"edittype","none");
- } else {
- for (var j = 0; j < 3; j++) {
- //grd_oproomstoclist.colDisabled(j) = "ture";
- grd_oproomstoclist.setCellProperty("body",j,"edittype","none");
- }
- }
- } else {
- //grd_oproomstoclist.attribute("style") = "left:144px; top:65px; width:242px; height:72px; text-align:right;";
- grd_oproomstoclist.position.left = 144;
- grd_oproomstoclist.position.top = 65;
- grd_oproomstoclist.position.width = 242;
- grd_oproomstoclist.position.height = 72;
-
- if (nodeCnt != 0) {
- for (var i = 0; i < nodeCnt; i++) {
- grd_oproomstoclist.deleteContentsCol("body", grd_oproomstoclist.getCellCount - 1);
- }
- for (var i = 0; i < 4; i++) {
- //grd_oproomstoclist.addColumn("ref:oproomnostoc" + i + "; type:input;", false);
- grd_oproomstoclist.appendContentsCol();
- ds_temp_oproomstoclist.addColumn("oproomnostoc" + i, "string");
- grd_oproomstoclist.setCellProperty("body",i,"text","bind:"+ ("oproomnostoc" + i));
- grd_oproomstoclist.setCellProperty("body",i,"edittype","text");
- grd_oproomstoclist.setCellProperty("body",i,"editautoselect","true");
- grd_oproomstoclist.setCellProperty("body",i,"align","right middle");
-
- grd_oproomstoclist.setCellProperty("head",i,"wordwrap", "char");
- grd_oproomstoclist.setCellProperty("head",i,"align","top middle");
- grd_oproomstoclist.setCellProperty("head",i,"padding","4 2 2 2");
-
- //grd_oproomstoclist.colWidth(i - 1) = 60;
- grd_oproomstoclist.setFormatColProperty(i - 1,"size","60");
-
- //grd_oproomstoclist.colAttribute(i - 1, "format") = "#.###";
- }
- //grd_oproomstoclist.caption = "CCR^C-C^C-O^회복실";
- captionlist = "CCR^C-C^C-O^회복실";
- var arrcaptionlist = captionlist.split("^");
- for(k = 0; k < arrcaptionlist.length ;k++){
- grd_oproomstoclist.setCellProperty("Head", k, "text", arrcaptionlist[k]);
- }
- ds_temp_oproomstoclist.addRow();
- for (var j = 0; j < 3; j++) {
- //grd_oproomstoclist.colDisabled(j) = "ture";
- grd_oproomstoclist.setCellProperty("body",j,"edittype","none");
- }
- }
- }
- }
- //조회
- function fSearch() {
- var totalSafeCnt = 0;
- var totaStocCnt = 0;
-
- ds_send_reqdata.clearData();
- ds_send_reqdata.copyData(ds_main_cond);
- //submit("TRMNP04416", false);
- var oParam = {};
- oParam.id = "TRMNP04415";
- oParam.service = "opanstapp.OpAnstStocMngt";
- oParam.method = "reqGetStocInfo";
- oParam.inds = "reqdata=ds_send_reqdata";
- oParam.outds = "ds_main_roomstoclist=roomstoclist";
- oParam.async = false;
- tranf_submit(oParam);
- //재고 그리드 값 맵핑
- var nodeCnt = ds_init_oproomlist.rowcount + 1;
- for( var j = 0; j < nodeCnt; j++) {
- var safestocqty = ds_main_roomstoclist.getColumn(j, "safestocqty");
- var stocqty = ds_main_roomstoclist.getColumn(j, "stocqty");
-
- if( ( utlf_isNull(safestocqty) )||( utlf_isNull(stocqty) ) ) {
- ds_temp_oproomstoclist.setColumn(0, "oproomnostoc"+j, 0);
- ds_temp_oproomstoclist.setColumn(1, "oproomnostoc"+j, 0);
- }else {
- //model.setValue("/root/temp/oproomstoclist/oproomnostoc"+j, model.getValue("/root/main/roomstoclist["+j+"]/safestocqty"));
- //model.setValue("/root/temp/oproomstoclist[2]/oproomnostoc"+j, model.getValue("/root/main/roomstoclist["+j+"]/stocqty"));
-
- ds_temp_oproomstoclist.setColumn(0, "oproomnostoc"+j, ds_main_roomstoclist.getColumn(j, "safestocqty"));
- ds_temp_oproomstoclist.setColumn(1, "oproomnostoc"+j, ds_main_roomstoclist.getColumn(j, "stocqty"));
- }
- }
- }
- function fSave() {
- var stocqty, safestocqty, safestocqty, stocqty, oproomcd;
- var cnt = 0;
- var stoclist = "oproomcd▦safestocqty▦stocqty▦goodcd▦allsizespecid▦refdept";
- var nodeCnt = ds_main_roomstoclist.rowcount + 1;
- var goodcd = ds_main_cond.getColumn(0, "goodcd");
- var allsizespecid = ds_main_cond.getColumn(0, "allsizespecid");
- var refdept = ds_main_cond.getColumn(0, "refdept");
- for( var i = 0; i < nodeCnt; i++ ) {
- if( i == 3 ) {//or총재고는 제외
- continue;
- }else {
- oproomcd = ds_main_roomstoclist.getColumn(i, "oproomcd");
- safestocqty = ds_temp_oproomstoclist.getColumn(0, "oproomnostoc"+i);
- stocqty = ds_temp_oproomstoclist.getColumn(1, "oproomnostoc"+i);
-
- stoclist = stoclist + "▩" + oproomcd + "▦" + safestocqty + "▦" + stocqty + "▦" + goodcd + "▦" + allsizespecid + "▦" + refdept;
- cnt++;
- }
- }
- if( cnt > 0 ) {
- ds_send_savedata.clearData();
- ds_send_reqdata.clearData();
- ds_send_reqdata.copyData(ds_main_cond);
-
- dsf_setCSVToDs("ds_send_savedata", stoclist);
-
- var oParam = {};
- oParam.id = "TXMNP04403";
- oParam.service = "opanstapp.OpAnstStocMngt";
- oParam.method = "reqSetStocList";
- oParam.inds = "reqdata=ds_send_reqdata savedata=ds_send_savedata";
- oParam.outds = "";
- oParam.async = false;
- tranf_submit(oParam);
- fSearch();
- }
- }
- function btn_save_onclick(obj:Button, e:ClickEventInfo)
- {
- fSave();
- }
- function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
- {
- this.close();
- }
- ]]></Script>
- </Form>
- </FDL>
|