SMMMO16900_PCA리스트.xfdl 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMMO16900" position="absolute 0 0 1175 730" titletext="PCA 환자리스트" onload="SMMMO16900_onload">
  5. <Layouts>
  6. <Layout>
  7. <Button position="absolute 840 45 885 65" id="btn_patsrch" enable="false" text="" onclick="btn_patsrch_onclick"/>
  8. <Button position="absolute 550 47 595 67" id="btn_reqpatnm" enable="false" text="" onclick="btn_reqpatnm_onclick"/>
  9. <Div position="absolute 0 16 1175 76" id="roundrect1" class="div_SA" anchor="left top right"/>
  10. <Calendar position="absolute 232 24 330 43" id="input11" class="input_s_essential" taborder="1" autoselect="true"/>
  11. <Static text="수 술 일 :" position="absolute 147 25 223 42" id="caption11" class="search_name"/>
  12. <Static text="집 도 과 :" position="absolute 366 24 442 41" id="caption12" class="search_name"/>
  13. <Shape position="absolute 0 97 1175 103" linetype="horizontal" id="line6" class="line_10"/>
  14. <Static text="PCA 환자 리스트" position="absolute 0 81 126 97" align="align:center middle;" id="caption2" class="tit_2"/>
  15. <Static text="명" position="absolute 97 23 127 43" align="align:center middle;" id="caption1"/>
  16. <Static text="총" position="absolute 5 23 55 40" id="caption7" class="search_name"/>
  17. <Static position="absolute 56 23 92 43" align="align:center middle;" id="caption3"/>
  18. <Shape position="absolute 1097 23 1103 67" linetype="vertical" id="line3" anchor="top right"/>
  19. <Static text="병 동" position="absolute 147 49 227 66" id="caption10" class="search_name"/>
  20. <Static text="집 도 의 :" position="absolute 651 25 727 42" id="caption4" class="search_name"/>
  21. <Edit position="absolute 451 48 549 67" id="ipt_pid" class="input_search" taborder="6" autoselect="true" onkeydown="ipt_pid_onkeydown"/>
  22. <Static text="환 자 명" position="absolute 651 50 727 67" id="caption5" class="search_name"/>
  23. <Static text="등록번호 :" position="absolute 366 49 442 66" id="caption6" class="search_name"/>
  24. <Edit position="absolute 737 48 835 67" id="input1" class="input_search" taborder="7" autoselect="true" onkeydown="input1_onkeydown"/>
  25. <Button position="absolute 1111 35 1167 57" id="btn_req" class="btn1" taborder="8" text="조회" anchor="top right" onclick="btn_req_onclick"/>
  26. <Button position="absolute 555 50 571 66" id="btn_prcpclsnm" class="icon_search" text="" onclick="btn_prcpclsnm_onclick"/>
  27. <Combo position="absolute 451 24 620 43" id="cmb_orddept" class="combo" taborder="2" innerdataset="@ds_init_orddept" datacolumn="depthngnm" codecolumn="deptcd"/>
  28. <Grid position="absolute 0 102 1175 730" id="grd_pcapatlist" taborder="9" binddataset="ds_main_pcapatinfo_pcapatlist" anchor="all">
  29. <Formats>
  30. <Format id="default">
  31. <Columns>
  32. <Column size="25" band="left"/>
  33. <Column size="63"/>
  34. <Column size="77"/>
  35. <Column size="87"/>
  36. <Column size="63"/>
  37. <Column size="120"/>
  38. <Column size="90"/>
  39. <Column size="287"/>
  40. <Column size="343"/>
  41. <Column size="0"/>
  42. </Columns>
  43. <Rows>
  44. <Row size="24" band="head"/>
  45. <Row size="24"/>
  46. </Rows>
  47. <Band id="head">
  48. <Cell/>
  49. <Cell col="1" text="병실"/>
  50. <Cell col="2" text="등록번호"/>
  51. <Cell col="3" text="환자명"/>
  52. <Cell col="4" text="S/A"/>
  53. <Cell col="5" text="집도과"/>
  54. <Cell col="6" text="집도의"/>
  55. <Cell col="7" text="진단명"/>
  56. <Cell col="8" text="수술명"/>
  57. <Cell col="9" text="instcd"/>
  58. </Band>
  59. <Band id="body">
  60. <Cell celltype="head" text="expr:currow + 1"/>
  61. <Cell col="1" text="bind:roomcd" enable="false"/>
  62. <Cell col="2" text="bind:pid"/>
  63. <Cell col="3" text="bind:hngnm"/>
  64. <Cell col="4" text="bind:sa"/>
  65. <Cell col="5" text="bind:perfdeptcd" enable="false"/>
  66. <Cell col="6" text="bind:perfdrnm"/>
  67. <Cell col="7" text="bind:diagnm"/>
  68. <Cell col="8" text="bind:opnm"/>
  69. <Cell col="9" text="bind:instcd"/>
  70. </Band>
  71. </Format>
  72. </Formats>
  73. </Grid>
  74. <Combo position="absolute 737 25 835 44" id="cmb_orddrid" taborder="3" innerdataset="@ds_init_userlist" datacolumn="usernm" codecolumn="userid"/>
  75. <Combo position="absolute 232 48 330 67" id="cmb_wardcd" taborder="5" innerdataset="@ds_init_orddept2" datacolumn="depthngnm" codecolumn="deptcd"/>
  76. <Combo position="absolute 946 25 1044 44" id="cmb_anstdrid" taborder="4" innerdataset="@ds_init_userlist2" datacolumn="usernm" codecolumn="userid"/>
  77. <Static text="마 취 의" position="absolute 860 25 936 42" id="caption8" class="search_name"/>
  78. <Static text="PCA 환자 리스트" position="absolute 0 0 135 16" id="caption9" class="tit_1"/>
  79. <Button position="absolute 1125 78 1175 97" id="button1" class="btn7" text="엑셀" anchor="top right" onclick="button1_onclick"/>
  80. </Layout>
  81. </Layouts>
  82. <Objects>
  83. <Dataset id="ds_init_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  84. <ColumnInfo>
  85. <Column id="depthngnm" type="STRING"/>
  86. <Column id="deptcd" type="STRING"/>
  87. </ColumnInfo>
  88. </Dataset>
  89. <Dataset id="ds_main_pcapatinfo_pcapatlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  90. <ColumnInfo>
  91. <Column id="roomcd" type="STRING"/>
  92. <Column id="pid" type="STRING"/>
  93. <Column id="hngnm" type="STRING"/>
  94. <Column id="sa" type="STRING"/>
  95. <Column id="perfdeptcd" type="STRING"/>
  96. <Column id="perfdrnm" type="STRING"/>
  97. <Column id="diagnm" type="STRING"/>
  98. <Column id="opnm" type="STRING"/>
  99. <Column id="instcd" type="STRING"/>
  100. </ColumnInfo>
  101. </Dataset>
  102. <Dataset id="ds_init_userlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  103. <ColumnInfo>
  104. <Column id="usernm" type="STRING"/>
  105. <Column id="userid" type="STRING"/>
  106. </ColumnInfo>
  107. </Dataset>
  108. <Dataset id="ds_init_orddept2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  109. <ColumnInfo>
  110. <Column id="depthngnm" type="STRING"/>
  111. <Column id="deptcd" type="STRING"/>
  112. </ColumnInfo>
  113. </Dataset>
  114. <Dataset id="ds_init_userlist2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  115. <ColumnInfo>
  116. <Column id="usernm" type="STRING"/>
  117. <Column id="userid" type="STRING"/>
  118. </ColumnInfo>
  119. </Dataset>
  120. <Dataset id="ds_init_hardcdno" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  121. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_cond_oncolumnchanged">
  122. <ColumnInfo>
  123. <Column id="opcnfmdd" type="STRING" size="256"/>
  124. <Column id="perfdeptcd" type="STRING" size="256"/>
  125. <Column id="perfdrid" type="STRING" size="256"/>
  126. <Column id="wardcd" type="STRING" size="256"/>
  127. <Column id="pid" type="STRING" size="256"/>
  128. <Column id="hngnm" type="STRING" size="256"/>
  129. <Column id="anstdrid" type="STRING" size="256"/>
  130. </ColumnInfo>
  131. <Rows>
  132. <Row>
  133. <Col id="opcnfmdd"/>
  134. <Col id="perfdeptcd"/>
  135. <Col id="perfdrid"/>
  136. <Col id="wardcd"/>
  137. <Col id="pid"/>
  138. <Col id="hngnm"/>
  139. <Col id="anstdrid"/>
  140. </Row>
  141. </Rows>
  142. </Dataset>
  143. <Dataset id="ds_main_totcnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  144. <ColumnInfo>
  145. <Column id="totcnt" type="STRING" size="256"/>
  146. </ColumnInfo>
  147. <Rows>
  148. <Row>
  149. <Col id="totcnt"/>
  150. </Row>
  151. </Rows>
  152. </Dataset>
  153. </Objects>
  154. <Bind>
  155. <BindItem id="item0" compid="input11" propid="value" datasetid="ds_main_cond" columnid="opcnfmdd"/>
  156. <BindItem id="item1" compid="caption3" propid="text" datasetid="ds_main_totcnt" columnid="totcnt"/>
  157. <BindItem id="item2" compid="ipt_pid" propid="value" datasetid="ds_main_cond" columnid="pid"/>
  158. <BindItem id="item3" compid="input1" propid="value" datasetid="ds_main_cond" columnid="hngnm"/>
  159. <BindItem id="item4" compid="cmb_orddept" propid="value" datasetid="ds_main_cond" columnid="perfdeptcd"/>
  160. <BindItem id="item5" compid="cmb_orddrid" propid="value" datasetid="ds_main_cond" columnid="perfdrid"/>
  161. <BindItem id="item6" compid="cmb_wardcd" propid="value" datasetid="ds_main_cond" columnid="wardcd"/>
  162. <BindItem id="item7" compid="cmb_anstdrid" propid="value" datasetid="ds_main_cond" columnid="anstdrid"/>
  163. </Bind>
  164. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  165. * System Name :
  166. * Job Name :
  167. * Creator :
  168. * Make Date : 2015-11-13
  169. * Description :
  170. *---------------------------------------------------------------------------------------
  171. * Modify Date Modifier Modify Description
  172. *---------------------------------------------------------------------------------------
  173. * 2015-11-13 Live Converter TF->XP
  174. *
  175. *---------------------------------------------------------------------------------------
  176. ****************************************************************************************/
  177. include "com_commonxp::comm_main.xjs";
  178. include "emr_prcpmngtxp::MMO001.xjs";
  179. //include "emr_prcpmngtxp::SMMMO04100.xjs";
  180. //=======================================================================================
  181. // Global Form Variable
  182. //---------------------------------------------------------------------------------------
  183. var arErrorCode = new HashArray();
  184. //=======================================================================================
  185. // Function
  186. //---------------------------------------------------------------------------------------
  187. /****************************************************************************************
  188. * Argument : 01.grdObj
  189. * 02.title
  190. * Description : 엑셀저장
  191. ****************************************************************************************/
  192. function fsaveGridToExcel(grdObj, title){
  193. grdf_exportExcel(grdObj, title, title);
  194. // grdObj.saveExcel(fileName, title, true, true, "", "", true);
  195. }
  196. /****************************************************************************************
  197. * Argument : N/A
  198. * Description : 환자 조회
  199. ****************************************************************************************/
  200. function fPCAPatList() {
  201. ds_main_pcapatinfo_pcapatlist.clearData();
  202. var oParam = {};
  203. oParam.id = "TRMMO16901";
  204. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  205. oParam.method = "reqGetPCAPatList";
  206. oParam.inds = "req=ds_main_cond";
  207. oParam.outds = "ds_main_pcapatinfo_pcapatlist=pcapatlist";
  208. oParam.async = false;
  209. tranf_submit(oParam);
  210. }
  211. /****************************************************************************************
  212. * Argument : 01.s_val
  213. * 02.flag
  214. * Description : 환자 등록번호를 통한 환자 이름 가져오기
  215. ****************************************************************************************/
  216. function fPatSrch(s_val, flag){
  217. var nPid = "";
  218. var nHngnm = "";
  219. if(flag == "1"){
  220. nPid = s_val;
  221. }
  222. if(flag == "2"){
  223. nHngnm = s_val;
  224. }
  225. dsf_createDsRow("ds_tmp", [{col:"srchcond", type:"STRING", size:256, val:flag}
  226. , {col:"autoflag", type:"STRING", size:256, val:"Y"}
  227. , {col:"pid", type:"STRING", size:256, val:nPid}
  228. , {col:"hngnm", type:"STRING", size:256, val:nHngnm}
  229. , {col:"rrgstno1", type:"STRING", size:256, val:""}
  230. , {col:"rrgstno2", type:"STRING", size:256, val:""}
  231. , {col:"acptdd", type:"STRING", size:256, val:""}
  232. ]);
  233. if( this.objects["ds_patinfolist"] != null ) ds_patinfolist.clearData();
  234. var objArg = new Object();
  235. objArg.arg_ds_send = ds_tmp;
  236. frmf_modal("SPPMC02500", "SPPMC02500", objArg, false, 1, 10, 10, null, null, null, null, null, "M");
  237. }
  238. //=======================================================================================
  239. // Event
  240. //---------------------------------------------------------------------------------------
  241. /****************************************************************************************
  242. * Components : Form
  243. * Components ID : SMMMO16900
  244. * Event : onload
  245. * Argument : 01.obj : Object Event has occurred
  246. * : 02.e : Event Object
  247. * Description : 화면 초기화
  248. ****************************************************************************************/
  249. function SMMMO16900_onload(obj:Form, e:LoadEventInfo)
  250. {
  251. frmf_initForm(obj);
  252. grdf_setToolTipBind(grd_pcapatlist);
  253. grdf_setGridSort(grd_pcapatlist)
  254. lf_reqHardCodeInfo(ds_init_hardcdno, 18); //마취통증의학과 부서코드 조회
  255. var anstdeptcd = ds_init_hardcdno.getColumn(0, "hardcd");
  256. lf_mmbfGetDeptCodeComboList(ds_init_orddept, "D"); //부서콤보 조회
  257. frmf_addComboItem("cmb_orddept"); //부서콤보 Item '전체'추가
  258. lf_mmbfGetDeptCodeComboList(ds_init_orddept2, "W"); //병동코드 콤보
  259. frmf_addComboItem("cmb_wardcd"); //병동콤보 전체항목 추가
  260. lf_mmbfGetUserComboList(ds_init_userlist , sysf_getUserInfo("dutplcecd"), "0330"); //의사콤보 조회
  261. //frmf_addComboItem("cmb_orddrid"); //의사콤보 Item '전체'추가
  262. lf_mmbfGetUserComboList(ds_init_userlist2, anstdeptcd, "0330"); //마취통증의학과 의사콤보 조회
  263. frmf_addComboItem("cmb_anstdrid"); //의사콤보 Item '전체'추가
  264. ds_main_cond.setColumn(0, "opcnfmdd", utlf_getCurrentDate());
  265. ds_main_cond.setColumn(0, "perfdeptcd", "-");
  266. ds_main_cond.setColumn(0, "perfdrid", "-");
  267. ds_main_cond.setColumn(0, "anstdrid", "-");
  268. ds_main_cond.setColumn(0, "wardcd", "-");
  269. }
  270. /****************************************************************************************
  271. * Components : Edit
  272. * Components ID : ipt_pid
  273. * Event : onkeydown
  274. * Argument : 01.obj : Object Event has occurred
  275. * : 02.e : Event Object
  276. * Description : 환자 조회
  277. ****************************************************************************************/
  278. function ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  279. {
  280. if( e.keycode == 13 ){
  281. obj.updateToDataset();
  282. btn_reqpatnm.click();
  283. }
  284. }
  285. /****************************************************************************************
  286. * Components : Edit
  287. * Components ID : input1
  288. * Event : onkeydown
  289. * Argument : 01.obj : Object Event has occurred
  290. * : 02.e : Event Object
  291. * Description : 환자 조회
  292. ****************************************************************************************/
  293. function input1_onkeydown(obj:Edit, e:KeyEventInfo)
  294. {
  295. if( e.keycode == 13 ){
  296. obj.updateToDataset();
  297. btn_patsrch.click();
  298. }
  299. }
  300. /****************************************************************************************
  301. * Components : Button
  302. * Components ID : btn_req
  303. * Event : onclick
  304. * Argument : 01.obj : Object Event has occurred
  305. * : 02.e : Event Object
  306. * Description : PCA 리스트조회
  307. ****************************************************************************************/
  308. function btn_req_onclick(obj:Button, e:ClickEventInfo)
  309. {
  310. fPCAPatList();
  311. }
  312. /****************************************************************************************
  313. * Components : Button
  314. * Components ID : btn_prcpclsnm
  315. * Event : onclick
  316. * Argument : 01.obj : Object Event has occurred
  317. * : 02.e : Event Object
  318. * Description : 환자 조회
  319. ****************************************************************************************/
  320. function btn_prcpclsnm_onclick(obj:Button, e:ClickEventInfo)
  321. {
  322. frmf_modal("SPPMC02500", "SPPMC02500", null, null, null, null, null, null, null, null, null, null, "M");
  323. var sPid = ds_patinfolist.getColumn(0, "pid");
  324. var sHngnm = ds_patinfolist.getColumn(0, "hngnm");
  325. ds_main_cond.setColumn(0, "pid", sPid);
  326. ds_main_cond.setColumn(0, "hngnm", sHngnm);
  327. }
  328. /****************************************************************************************
  329. * Components : Button
  330. * Components ID : btn_reqpatnm
  331. * Event : onclick
  332. * Argument : 01.obj : Object Event has occurred
  333. * : 02.e : Event Object
  334. * Description : 환자 조회
  335. ****************************************************************************************/
  336. function btn_reqpatnm_onclick(obj:Button, e:ClickEventInfo)
  337. {
  338. var pid = ds_main_cond.getColumn(0, "pid");
  339. var hngnm = ds_main_cond.getColumn(0, "hngnm");
  340. if((utlf_isNull(pid))&&(!utlf_isNull(hngnm))){
  341. fPatSrch(hngnm, "2");
  342. } else if((!utlf_isNull(pid))&&(utlf_isNull(hngnm))){
  343. fPatSrch(pid, "1");
  344. } else {
  345. frmf_modal("SPPMC02500", "SPPMC02500", null, null, null, null, null, null, null, null, null, null, "M");
  346. }
  347. ds_main_cond.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  348. ds_main_cond.setColumn(0, "hngnm", ds_patinfolist.getColumn(0, "hngnm"));
  349. }
  350. /****************************************************************************************
  351. * Components : Dataset
  352. * Components ID : ds_main_cond
  353. * Event : oncolumnchanged
  354. * Argument : 01.obj : Object Event has occurred
  355. * : 02.e : Event Object
  356. * Description : -
  357. ****************************************************************************************/
  358. function ds_main_cond_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  359. {
  360. if( e.columnid == "perfdeptcd" ){
  361. ds_init_userlist.clearData();
  362. lf_mmbfGetUserComboList(ds_init_userlist, cmb_orddept.value, "0330"); //집도의 조회
  363. //frmf_addComboItem("cmb_orddrid");
  364. var deptcd = ds_main_cond.getColumn(0, "perfdeptcd");
  365. if (deptcd == "-") {
  366. frmf_addComboItem("cmb_orddrid");
  367. ds_main_cond.setColumn(0, "perfdrid", "-");
  368. } else {
  369. frmf_addComboItem("cmb_orddrid");
  370. ds_main_cond.setColumn(0, "perfdrid", "-");
  371. }
  372. }
  373. }
  374. /****************************************************************************************
  375. * Components : Button
  376. * Components ID : btn_patsrch
  377. * Event : onclick
  378. * Argument : 01.obj : Object Event has occurred
  379. * : 02.e : Event Object
  380. * Description : 환자 조회
  381. ****************************************************************************************/
  382. function btn_patsrch_onclick(obj:Button, e:ClickEventInfo)
  383. {
  384. var pid = ds_main_cond.getColumn(0, "pid");
  385. var hngnm = ds_main_cond.getColumn(0, "hngnm");
  386. if((utlf_isNull(pid))&&(!utlf_isNull(hngnm))){
  387. fPatSrch(hngnm, "2");
  388. } else if((!utlf_isNull(pid))&&(utlf_isNull(hngnm))){
  389. fPatSrch(pid, "1");
  390. } else {
  391. frmf_modal("SPPMC02500", "SPPMC02500", null, null, null, null, null, null, null, null, null, null, "M");
  392. }
  393. ds_main_cond.setColumn(0, "pid", ds_patinfolist.getColumn(0, "pid"));
  394. ds_main_cond.setColumn(0, "hngnm", ds_patinfolist.getColumn(0, "hngnm"));
  395. }
  396. /****************************************************************************************
  397. * Components : Button
  398. * Components ID : button1
  399. * Event : onclick
  400. * Argument : 01.obj : Object Event has occurred
  401. * : 02.e : Event Object
  402. * Description : 엑셀저장
  403. ****************************************************************************************/
  404. function button1_onclick(obj:Button, e:ClickEventInfo)
  405. {
  406. var title = "PCA 환자 리스트";
  407. fsaveGridToExcel(grd_pcapatlist, title);
  408. }
  409. ]]></Script>
  410. </Form>
  411. </FDL>