SPPMI06030_전실가능환자조회.xfdl 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPMI06030" position="absolute 0 0 946 598" titletext="전실가능환자조회" oninit="SPPMI06030_oninit" onload="SPPMI06030_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="전실가능환자조회" position="absolute 0 0 152 25" align="align:center middle;" id="caption9" class="tit_1"/>
  8. <Grid position="absolute 0 91 940 592" id="grd_tranpatlist" binddataset="ds_main_tranpatlist" anchor="all" treeusecheckbox="false" oncelldblclick="grd_tranpatlist_oncelldblclick" autofittype="col">
  9. <Formats>
  10. <Format id="default">
  11. <Columns>
  12. <Column size="120"/>
  13. <Column size="50"/>
  14. <Column size="70"/>
  15. <Column size="90"/>
  16. <Column size="0"/>
  17. <Column size="0"/>
  18. <Column size="0"/>
  19. <Column size="0"/>
  20. <Column size="0"/>
  21. <Column size="0"/>
  22. <Column size="60"/>
  23. <Column size="80"/>
  24. <Column size="40"/>
  25. <Column size="150"/>
  26. <Column size="0"/>
  27. <Column size="60"/>
  28. <Column size="60"/>
  29. <Column size="60"/>
  30. <Column size="50"/>
  31. </Columns>
  32. <Rows>
  33. <Row size="24" band="head"/>
  34. <Row size="24"/>
  35. </Rows>
  36. <Band id="head">
  37. <Cell text="병동"/>
  38. <Cell col="1" text="병실"/>
  39. <Cell col="2" text="환자번호"/>
  40. <Cell col="3" text="환자명"/>
  41. <Cell col="4" text="처방번호"/>
  42. <Cell col="5" text="액팅처방번호"/>
  43. <Cell col="6" text="액팅처방레벨"/>
  44. <Cell col="7" text="믹스번호"/>
  45. <Cell col="8" text="히스토리번호"/>
  46. <Cell col="9" text="진료과코드"/>
  47. <Cell col="10" text="SA"/>
  48. <Cell col="11" text="입원일"/>
  49. <Cell col="12" text="HD"/>
  50. <Cell col="13" text="진료과"/>
  51. <Cell col="14" text="진료의아이디"/>
  52. <Cell col="15" text="진료교수"/>
  53. <Cell col="16" text="담당의"/>
  54. <Cell col="17" text="병동재원"/>
  55. <Cell col="18" text="빈병상"/>
  56. </Band>
  57. <Band id="body">
  58. <Cell text="bind:wardnm"/>
  59. <Cell col="1" text="bind:roomcd"/>
  60. <Cell col="2" style="align:center middle;" text="bind:pid"/>
  61. <Cell col="3" style="align:center middle;" text="bind:hngnm"/>
  62. <Cell col="4" text="bind:prcpno"/>
  63. <Cell col="5" text="bind:execprcpno"/>
  64. <Cell col="6" text="bind:execprcplevel"/>
  65. <Cell col="7" text="bind:prcpmixno"/>
  66. <Cell col="8" text="bind:prcphistno"/>
  67. <Cell col="9" text="bind:orddeptcd"/>
  68. <Cell col="10" text="bind:sa"/>
  69. <Cell col="11" text="bind:indd" mask="####-##-##"/>
  70. <Cell col="12" text="bind:hd"/>
  71. <Cell col="13" displaytype="text" text="bind:orddeptnm"/>
  72. <Cell col="14" text="bind:orddrid"/>
  73. <Cell col="15" text="bind:orddrnm"/>
  74. <Cell col="16" text="bind:atdoctnm"/>
  75. <Cell col="17" text="bind:wardday"/>
  76. <Cell col="18" text="bind:emptybedyn"/>
  77. </Band>
  78. </Format>
  79. </Formats>
  80. </Grid>
  81. <Div id="Div00" taborder="1" position="absolute 0 23 940 83" class="div_SA" anchor="left top right" scrollbars="none">
  82. <Layouts>
  83. <Layout>
  84. <Static id="caption10" text="등록번호:" class="search_name" position="absolute 574 8 643 28" anchor="default"/>
  85. <Edit id="input1" taborder="4" position="absolute 647 8 702 28" anchor="default" onkeydown="Div00_input1_onkeydown" autoselect="true"/>
  86. <Button id="btn_patsrch" taborder="5" class="icon_search" position="absolute 766 8 786 28" anchor="default" onclick="Div00_btn_patsrch_onclick"/>
  87. <Edit id="input2" taborder="6" enable="false" position="absolute 704 8 765 28" anchor="default"/>
  88. <Static id="caption1" text="진 료 과 :" class="search_name" position="absolute 253 8 332 28" anchor="default"/>
  89. <Combo id="cmb_orddept" taborder="7" innerdataset="ds_orddept" codecolumn="deptcd" datacolumn="depthngnm" position="absolute 326 8 511 28" anchor="default"/>
  90. <Shape id="line3" linetype="vertical" position="absolute 846 10 851 50" anchor="top right"/>
  91. <Button id="btn_req" taborder="8" text="조회" class="btn1" position="absolute 866 18 922 38" anchor="top right" onclick="Div00_btn_req_onclick"/>
  92. <Static id="caption00" text="병동:" class="search_name" position="absolute 10 9 81 29" anchor="default"/>
  93. <Combo id="cmb_wardcd" taborder="17" innerdataset="@ds_wardcd" codecolumn="deptcd" datacolumn="depthngnm" position="absolute 55 8 185 28" onitemchanged="Div00_cmb_wardcd_onitemchanged" anchor="default"/>
  94. <Button id="btn_eraser01" taborder="26" class="icon_eraser" position="absolute 787 6 813 32" tooltiptext="등록번호 초기화" onclick="Div00_btn_eraser01_onclick" anchor="default"/>
  95. <Static id="caption02" text="병동재원일수 :" class="search_name" position="absolute 10 33 116 53" anchor="default"/>
  96. <Combo id="cmb_wardday" taborder="27" position="absolute 115 33 184 53" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  97. <Dataset id="innerdataset">
  98. <ColumnInfo>
  99. <Column id="codecolumn" size="256"/>
  100. <Column id="datacolumn" size="256"/>
  101. </ColumnInfo>
  102. <Rows>
  103. <Row>
  104. <Col id="codecolumn">0</Col>
  105. <Col id="datacolumn">전체</Col>
  106. </Row>
  107. <Row>
  108. <Col id="codecolumn">1</Col>
  109. <Col id="datacolumn">1일</Col>
  110. </Row>
  111. <Row>
  112. <Col id="codecolumn">2</Col>
  113. <Col id="datacolumn">2일</Col>
  114. </Row>
  115. <Row>
  116. <Col id="codecolumn">3</Col>
  117. <Col id="datacolumn">3일</Col>
  118. </Row>
  119. <Row>
  120. <Col id="codecolumn">4</Col>
  121. <Col id="datacolumn">4일</Col>
  122. </Row>
  123. <Row>
  124. <Col id="codecolumn">5</Col>
  125. <Col id="datacolumn">5일</Col>
  126. </Row>
  127. <Row>
  128. <Col id="codecolumn">6</Col>
  129. <Col id="datacolumn">6일</Col>
  130. </Row>
  131. <Row>
  132. <Col id="codecolumn">7</Col>
  133. <Col id="datacolumn">7일</Col>
  134. </Row>
  135. </Rows>
  136. </Dataset>
  137. </Combo>
  138. <Static id="caption03" text="빈병상여부 :" class="search_name" position="absolute 253 33 359 53" anchor="default"/>
  139. <Combo id="cmb_emptybedyn" taborder="28" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 347 33 432 53" anchor="default">
  140. <Dataset id="innerdataset">
  141. <ColumnInfo>
  142. <Column id="codecolumn" size="256"/>
  143. <Column id="datacolumn" size="256"/>
  144. </ColumnInfo>
  145. <Rows>
  146. <Row>
  147. <Col id="codecolumn">-</Col>
  148. <Col id="datacolumn">전체</Col>
  149. </Row>
  150. <Row>
  151. <Col id="codecolumn">Y</Col>
  152. <Col id="datacolumn">Y : 있음</Col>
  153. </Row>
  154. <Row>
  155. <Col id="codecolumn">N</Col>
  156. <Col id="datacolumn">N : 없음</Col>
  157. </Row>
  158. </Rows>
  159. </Dataset>
  160. </Combo>
  161. <CheckBox id="checkbox00" taborder="29" text="홀드포함" value="N" truevalue="Y" falsevalue="N" position="absolute 441 34 517 49" anchor="default"/>
  162. </Layout>
  163. </Layouts>
  164. </Div>
  165. </Layout>
  166. </Layouts>
  167. <Objects>
  168. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  169. <ColumnInfo>
  170. <Column id="pid" type="STRING" size="256"/>
  171. <Column id="hngnm" type="STRING" size="256"/>
  172. <Column id="wardcd" type="STRING" size="256"/>
  173. <Column id="orddeptcd" type="STRING" size="256"/>
  174. <Column id="orddrid" type="STRING" size="256"/>
  175. <Column id="wardday" type="STRING" size="256"/>
  176. <Column id="emptybedyn" type="STRING" size="256"/>
  177. <Column id="holdyn" type="STRING" size="256"/>
  178. </ColumnInfo>
  179. <Rows>
  180. <Row/>
  181. </Rows>
  182. </Dataset>
  183. <Dataset id="ds_main_tranpatlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="instcd" type="STRING" size="256" sumtext="기관기호"/>
  186. <Column id="indd" type="STRING" size="256" sumtext="입원일"/>
  187. <Column id="cretno" type="STRING" size="256" sumtext="접수번호"/>
  188. <Column id="ordtype" type="STRING" size="256" sumtext="접수번호"/>
  189. <Column id="pid" type="STRING" size="256" sumtext="환자번호"/>
  190. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  191. <Column id="sa" type="STRING" size="256" sumtext="성별/연령"/>
  192. <Column id="mpphontel" type="STRING" size="256" sumtext="핸드폰번"/>
  193. <Column id="wardcd" type="STRING" size="256" sumtext="병동"/>
  194. <Column id="wardnm" type="STRING" size="256" sumtext="병동"/>
  195. <Column id="roomcd" type="STRING" size="256" sumtext="병실"/>
  196. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과"/>
  197. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과명"/>
  198. <Column id="orddrid" type="STRING" size="256" sumtext="진료의"/>
  199. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의명"/>
  200. <Column id="atdoctnm" type="STRING" size="256" sumtext="담당의명"/>
  201. <Column id="hd" type="STRING" size="256" sumtext="병원재원일"/>
  202. <Column id="wardday" type="STRING" size="256" sumtext="병동재원일"/>
  203. <Column id="emptybedyn" type="STRING" size="256" sumtext="빈병상여부"/>
  204. </ColumnInfo>
  205. </Dataset>
  206. <Dataset id="ds_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  207. <ColumnInfo>
  208. <Column id="depthngnm" type="STRING"/>
  209. <Column id="deptcd" type="STRING"/>
  210. </ColumnInfo>
  211. </Dataset>
  212. <Dataset id="ds_userlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  213. <ColumnInfo>
  214. <Column id="usernm" type="STRING"/>
  215. <Column id="userid" type="STRING"/>
  216. </ColumnInfo>
  217. </Dataset>
  218. <Dataset id="ds_patnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  219. <Dataset id="ds_wardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  220. <ColumnInfo>
  221. <Column id="depthngnm" type="STRING" size="256"/>
  222. <Column id="deptcd" type="STRING" size="256"/>
  223. </ColumnInfo>
  224. </Dataset>
  225. <Dataset id="ds_init_prcpcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  226. <ColumnInfo>
  227. <Column id="codecd" type="STRING" size="256"/>
  228. <Column id="codenm" type="STRING" size="256"/>
  229. </ColumnInfo>
  230. </Dataset>
  231. </Objects>
  232. <Bind>
  233. <BindItem id="item1" compid="Div00.cmb_orddept" propid="value" datasetid="ds_cond" columnid="orddeptcd"/>
  234. <BindItem id="item10" compid="Div00.input1" propid="value" datasetid="ds_cond" columnid="pid"/>
  235. <BindItem id="item11" compid="Div00.input2" propid="value" datasetid="ds_cond" columnid="hngnm"/>
  236. <BindItem id="item5" compid="Div00.cmb_wardcd" propid="value" datasetid="ds_cond" columnid="wardcd"/>
  237. <BindItem id="item0" compid="Div00.cmb_wardday" propid="value" datasetid="ds_cond" columnid="wardday"/>
  238. <BindItem id="item2" compid="Div00.cmb_emptybedyn" propid="value" datasetid="ds_cond" columnid="emptybedyn"/>
  239. <BindItem id="item6" compid="Div00.checkbox00" propid="value" datasetid="ds_cond" columnid="holdyn"/>
  240. </Bind>
  241. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  242. * System Name :
  243. * Job Name :
  244. * Creator :
  245. * Make Date : 2014-12-10
  246. * Description :
  247. *---------------------------------------------------------------------------------------
  248. * Modify Date Modifier Modify Description
  249. *---------------------------------------------------------------------------------------
  250. * 2014-12-10 Live Converter TF->XP
  251. *
  252. *---------------------------------------------------------------------------------------
  253. ****************************************************************************************/
  254. include "com_commonxp::comm_main.xjs";
  255. include "emr_prcpmngtxp::MMO001.xjs";
  256. function SPPMI06030_oninit(obj:Form, e:InitEventInfo)
  257. {
  258. frmf_initForm(obj);
  259. }
  260. function SPPMI06030_onload(obj:Form, e:LoadEventInfo)
  261. {
  262. grdf_setToolTipBind(grd_tranpatlist);
  263. lf_mmbfGetDeptCodeComboList(ds_orddept, "A"); //부서코드 콤보
  264. lf_mmbfGetDeptCodeComboList(ds_wardcd, "W"); //병동코드 콤보
  265. frmf_addComboItem("Div00.cmb_orddept"); //진료과 전체항목 추가
  266. Div00.cmb_orddept.index = 0;
  267. frmf_addComboItem("Div00.cmb_wardcd"); //병동전체항목 추가
  268. Div00.cmb_wardcd.index = 0;
  269. ds_cond.setColumn(0, "wardday", "5");
  270. ds_cond.setColumn(0, "emptybedyn", "Y");
  271. ds_cond.setColumn(0, "holdyn", "N");
  272. var sDeptCd = sysf_getUserInfo("dutplcecd");
  273. var nFindRow = ds_wardcd.findRow("deptcd", sDeptCd);
  274. if(nFindRow > 0) {
  275. ds_cond.setColumn(0, "wardcd", sDeptCd);
  276. } else {
  277. ds_cond.setColumn(0, "wardcd", "3050170000"); // 기본 508응급병동 설정
  278. }
  279. }
  280. function Div00_input1_onkeydown(obj:Edit, e:KeyEventInfo)
  281. {
  282. if(e.keycode == 13) {
  283. obj.updateToDataset();
  284. Div00.btn_req.onclick.fireEvent(Div00.btn_req, new ClickEventInfo());
  285. }
  286. }
  287. function Div00_btn_patsrch_onclick(obj:Button, e:ClickEventInfo)
  288. {
  289. frmf_modal("SPPMC02500", "SPPMC02500", null, null, null, null, null, null, null, null, null, null, "M");
  290. if(!utlf_isNull(this.objects["ds_patinfolist"])) {
  291. var sPid = ds_patinfolist.getColumn(0, "pid");
  292. var sHngnm = ds_patinfolist.getColumn(0, "hngnm");
  293. ds_cond.setColumn(0, "pid", sPid);
  294. ds_cond.setColumn(0, "hngnm", sHngnm);
  295. }
  296. }
  297. function Div00_btn_req_onclick(obj:Button, e:ClickEventInfo)
  298. {
  299. fGetTranPatList();
  300. }
  301. function fGetTranPatList() {
  302. var sPid = utlf_trim(ds_cond.getColumn(0, "pid"));
  303. var sWardcd = utlf_trim(ds_cond.getColumn(0, "wardcd"));
  304. var sOrddeptcd = utlf_trim(ds_cond.getColumn(0, "orddeptcd"));
  305. if(!utlf_isNull(sPid)) {
  306. if(lf_reqPatInfo(ds_patnm, "pid", "ptbs", sPid)) {
  307. ds_cond.setColumn(0, "hngnm", ds_patnm.getColumn(0, "hngnm"));
  308. } else {
  309. return;
  310. }
  311. }
  312. if(utlf_isNull(sPid) && sWardcd == "-" && sOrddeptcd == "-"){
  313. sysf_messageBox("조회 하실 병동, 진료과, 등록번호 중 하나이상을 입력 하셔야 합니다.", "E999");
  314. return;
  315. }
  316. ds_main_tranpatlist.clearData(); // 트리가 접힌 상태에서 재조회 하면 그리드에 접힌 수만큼 조회 되지 않는 오류 수정.
  317. var oParam = {};
  318. oParam.id = "TRPMI06031";
  319. oParam.service = "ipatmngtapp.InhospUpdt";
  320. oParam.method = "reqGetTranPatList";
  321. oParam.inds = "req=ds_cond";
  322. oParam.outds = "ds_main_tranpatlist=patlist";
  323. oParam.async = true;
  324. oParam.callback = "cf_TRPMI06031";
  325. tranf_submit(oParam);
  326. }
  327. function cf_TRPMI06031(sSvcId, nErrorCode, sErrorMsg) {
  328. if(nErrorCode < 0) return;
  329. }
  330. function Div00_btn_eraser01_onclick(obj:Button, e:ClickEventInfo)
  331. {
  332. ds_cond.setColumn(0, "pid", "");
  333. ds_cond.setColumn(0, "hngnm", "");
  334. }
  335. function grd_tranpatlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  336. {
  337. fSetPatInfo();
  338. frmf_setParameter("SMPMI01700_openurl", "SPPMI06030");
  339. frmf_modal("SMPMI01700","SMPMI01700","","",1,20,128,"","","","","","M"); // 전실 신청 화면 팝업
  340. }
  341. function fSetPatInfo()
  342. {
  343. var nRow = ds_main_tranpatlist.rowposition;
  344. if(nRow < 0) return;
  345. var sInstCd = ds_main_tranpatlist.getColumn(nRow, "instcd");
  346. var sPid = ds_main_tranpatlist.getColumn(nRow, "pid");
  347. var sInDd = ds_main_tranpatlist.getColumn(nRow, "indd");
  348. var sCretNo = ds_main_tranpatlist.getColumn(nRow, "cretno");
  349. var sOrdType = ds_main_tranpatlist.getColumn(nRow, "ordtype");
  350. // 상단 세팅을 위한 파라미터
  351. var param = "";
  352. if (sOrdType == "E") {
  353. param = "E▦" + sPid + "▦" + sInDd + "▦" + sCretNo + "▦" + sInstCd + "▦" ;
  354. } else if (sOrdType == "D") {
  355. param = "I▦" + sPid + "▦" + sInDd + "▦" + sCretNo + "▦" + sInstCd + "▦" + sInDd;
  356. } else {
  357. param = "I▦" + sPid + "▦" + sInDd + "▦" + sCretNo + "▦" + sInstCd + "▦";
  358. }
  359. appf_initPatientInfo(param);
  360. }
  361. ]]></Script>
  362. </Form>
  363. </FDL>