SMPMC02100_방문객용재원환자조회.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMPMC02100_방문객용재원환자조회" classname="SMPMC02100_방문객용재원환자조회" inheritanceid="" position="absolute 0 0 1190 690" titletext="방문객용 재원환자조회" oninit="SMPMC02100_oninit" onload="SMPMC02100_onload" onkeydown="SMPMC02100_방문객용재원환자조회_onkeydown">
  5. <Layouts>
  6. <Layout>
  7. <Static id="stt_titleText2" text="방문객용 재원환자 조회" onclick="caption00_onclick" position="absolute 0 0 173 25" class="tit_1"/>
  8. <Div id="div_search" anchor="left top right" taborder="1" style="align:center top;" class="div_SA" position="absolute 0 31 1190 69">
  9. <Layouts>
  10. <Layout>
  11. <Button id="btn_search" taborder="14" text="조회" onclick="div_search_btn_search_onclick" class="btn1" position="absolute 1118 8 1174 28" anchor="top right"/>
  12. <Static id="caption2" text="검색조건" class="search_name" position="absolute 8 8 82 28" anchor="default"/>
  13. <Static id="caption01" text="초기화시 F9버튼을 눌러 주세요!" visible="true" position="absolute 333 8 606 28" anchor="default" style="color:#0000ffff;font:Dotum,9,bold;"/>
  14. <Combo id="cmb_flag" taborder="18" value="1" text="환자 이름" codecolumn="codecolumn" datacolumn="datacolumn" index="0" onitemchanged="div_search_cmb_flag_onitemchanged" position="absolute 75 8 177 29" anchor="default" class="combo_essential">
  15. <Dataset id="innerdataset">
  16. <ColumnInfo>
  17. <Column id="codecolumn" size="256"/>
  18. <Column id="datacolumn" size="256"/>
  19. </ColumnInfo>
  20. <Rows>
  21. <Row>
  22. <Col id="codecolumn">1</Col>
  23. <Col id="datacolumn">환자 이름</Col>
  24. </Row>
  25. <Row>
  26. <Col id="codecolumn">2</Col>
  27. <Col id="datacolumn">피보험자 이름</Col>
  28. </Row>
  29. </Rows>
  30. </Dataset>
  31. </Combo>
  32. <Edit id="search_data" taborder="19" imemode="hangul" onkeydown="div_search_ed_ipt_data_onkeydown" position="absolute 187 8 325 28" class="input_essential" anchor="default" autoselect="true"/>
  33. </Layout>
  34. </Layouts>
  35. </Div>
  36. <Static id="caption3" text="재원환자 리스트" class="tit_2" position="absolute 0 79 154 95"/>
  37. <Grid id="gd_PatientInfo" taborder="3" binddataset="ds_result_data" useinputpanel="false" position="absolute 0 99 1190 657" tabstop="true" tooltiptype="default" autosizingtype="none" anchor="all" cellsizingtype="col" scrollpixel="all" cellsizebandtype="allband" oncelldblclick="gd_PatientInfo_oncelldblclick">
  38. <Formats>
  39. <Format id="default">
  40. <Columns>
  41. <Column size="20" band="left"/>
  42. <Column size="61"/>
  43. <Column size="0"/>
  44. <Column size="65"/>
  45. <Column size="34"/>
  46. <Column size="109"/>
  47. <Column size="0"/>
  48. <Column size="110"/>
  49. <Column size="110"/>
  50. <Column size="100"/>
  51. <Column size="100"/>
  52. <Column size="110"/>
  53. <Column size="102"/>
  54. <Column size="66"/>
  55. <Column size="110"/>
  56. <Column size="169"/>
  57. <Column size="70"/>
  58. <Column size="120"/>
  59. <Column size="120"/>
  60. <Column size="0"/>
  61. </Columns>
  62. <Rows>
  63. <Row size="24" band="head"/>
  64. <Row size="24"/>
  65. </Rows>
  66. <Band id="head">
  67. <Cell/>
  68. <Cell col="1" text="재원상태"/>
  69. <Cell col="2" text="구분"/>
  70. <Cell col="3" text="환자명"/>
  71. <Cell col="4" text="나이"/>
  72. <Cell col="5" text="주민번호"/>
  73. <Cell col="6" text="사생활보호여부"/>
  74. <Cell col="7" text="사생활보호신청자"/>
  75. <Cell col="8" text="사생활보호대상자"/>
  76. <Cell col="9" text="사생활보호내용"/>
  77. <Cell col="10" text="사생활보호비고"/>
  78. <Cell col="11" text="병동"/>
  79. <Cell col="12" text="병실"/>
  80. <Cell col="13" text="병실위치"/>
  81. <Cell col="14" text="전화번호(내선)"/>
  82. <Cell col="15" text="진료과"/>
  83. <Cell col="16" text="성별"/>
  84. <Cell col="17" text="입원일"/>
  85. <Cell col="18" text="퇴원일"/>
  86. <Cell col="19" text="환자번호"/>
  87. </Band>
  88. <Band id="body">
  89. <Cell celltype="head" expr="expr:currow + 1"/>
  90. <Cell col="1" displaytype="normal" style="align:center;background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:inhospstatus" tooltiptype="none"/>
  91. <Cell col="2" style="color:EXPR(EXPR(privacyyn=='Y'?'#FF99CC':'#000000'));color2:EXPR(EXPR(privacyyn=='Y'?'#FF99CC':'#000000'));" text="bind:instcd"/>
  92. <Cell col="3" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:hngnm"/>
  93. <Cell col="4" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:age"/>
  94. <Cell col="5" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:rrgstno"/>
  95. <Cell col="6" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacyyn"/>
  96. <Cell col="7" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacyrequest"/>
  97. <Cell col="8" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacytarget" tooltiptype="bottom"/>
  98. <Cell col="9" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacytype"/>
  99. <Cell col="10" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:privacyrmk"/>
  100. <Cell col="11" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:wardnm"/>
  101. <Cell col="12" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:roomnm"/>
  102. <Cell col="13" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:posinfonm"/>
  103. <Cell col="14" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:roomtel"/>
  104. <Cell col="15" style="align:left;background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:orddeptnm"/>
  105. <Cell col="16" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:sexnm"/>
  106. <Cell col="17" displaytype="date" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:indd" calendardisplaynulltype="none"/>
  107. <Cell col="18" displaytype="date" style="background:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');background2:EXPR(privacyyn=='Y'?'#FF99CC':'#ffffff');" text="bind:dschdd" calendardisplaynulltype="none"/>
  108. <Cell col="19" text="bind:pid"/>
  109. </Band>
  110. </Format>
  111. </Formats>
  112. </Grid>
  113. <Button id="btn_init" taborder="4" text="초기화" onclick="grp_btn_btn_init_onclick" class="btn4" position="absolute 1114 663 1182 685" anchor="right bottom" hotkey="F9"/>
  114. <ImageViewer id="ImageViewer00" taborder="5" position="absolute 117 77 136 96" style="background:#ff99ccff;border:1 solid black ;"/>
  115. <Static id="caption00" text="사생활 보호 요청환자입니다. 안내시 주의하시기 바랍니다!!!" visible="true" position="absolute 140 77 518 97" style="color:red;font:Dotum,9;"/>
  116. <Button id="btn_print" taborder="6" text="출력" class="btn6" position="absolute 1119 75 1175 97" onclick="btn_print_onclick"/>
  117. </Layout>
  118. </Layouts>
  119. <Bind>
  120. <BindItem id="item0" compid="div_search.cmb_flag" propid="value" datasetid="ds_req_data" columnid="srchcondflag"/>
  121. <BindItem id="item1" compid="div_search.search_data" propid="value" datasetid="ds_req_data" columnid="srchcond"/>
  122. </Bind>
  123. <Objects>
  124. <Dataset id="ds_req_data" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  125. <ColumnInfo>
  126. <Column id="srchcondflag" type="STRING" size="1"/>
  127. <Column id="srchcond" type="STRING" size="256"/>
  128. <Column id="instcd" type="STRING" size="256"/>
  129. </ColumnInfo>
  130. <Rows>
  131. <Row>
  132. <Col id="srchcondflag">1</Col>
  133. <Col id="srchcond"/>
  134. <Col id="instcd"> 3333</Col>
  135. </Row>
  136. </Rows>
  137. </Dataset>
  138. <Dataset id="ds_result_data" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  139. <ColumnInfo>
  140. <Column id="inhospstatus" type="STRING" size="256" sumtext="입퇴원접수상태"/>
  141. <Column id="instcd" type="STRING" size="256"/>
  142. <Column id="hngnm" type="STRING" size="256" sumtext="한글성명"/>
  143. <Column id="rrgstno" type="STRING" size="256" sumtext="주민번호"/>
  144. <Column id="wardnm" type="STRING" size="256" sumtext="병동명"/>
  145. <Column id="roomnm" type="STRING" size="256" sumtext="병실명"/>
  146. <Column id="posinfonm" type="STRING" size="256" sumtext="위치정보"/>
  147. <Column id="roomtel" type="STRING" size="256" sumtext="병실전화번호"/>
  148. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과명"/>
  149. <Column id="sex" type="STRING" size="256" sumtext="성별"/>
  150. <Column id="sexnm" type="STRING" size="256"/>
  151. <Column id="age" type="STRING" size="256"/>
  152. <Column id="indd" type="STRING" size="256" sumtext="입원일자"/>
  153. <Column id="dschdd" type="STRING" size="256" sumtext="퇴원일자(퇴원미수금일경우)"/>
  154. <Column id="pid" type="STRING" size="256" sumtext="환자의 고유ID"/>
  155. <Column id="privacyyn" type="STRING" size="256"/>
  156. <Column id="privacyrequest" type="STRING" size="256"/>
  157. <Column id="privacytarget" type="STRING" size="256"/>
  158. <Column id="privacytype" type="STRING" size="256"/>
  159. <Column id="privacyrmk" type="STRING" size="256"/>
  160. </ColumnInfo>
  161. </Dataset>
  162. <Dataset id="ds_main_paper" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  163. <ColumnInfo>
  164. <Column id="instcd" type="STRING" size="256"/>
  165. <Column id="hngnm" type="STRING" size="256"/>
  166. <Column id="wardnm" type="STRING" size="256"/>
  167. <Column id="roomnm" type="STRING" size="256"/>
  168. <Column id="posinfonm" type="STRING" size="256"/>
  169. <Column id="roomtel" type="STRING" size="256"/>
  170. </ColumnInfo>
  171. <Rows>
  172. <Row/>
  173. </Rows>
  174. </Dataset>
  175. </Objects>
  176. <Script type="xscript4.0"><![CDATA[include "com_commonxp::comm_main.xjs";
  177. var arErrorCode = new HashArray();
  178. function SMPMC02100_oninit(obj:Form, e:InitEventInfo)
  179. {
  180. frmf_initForm(obj);
  181. }
  182. function SMPMC02100_onload(obj:Form, e:LoadEventInfo)
  183. {
  184. // Grid 툴팁 세팅
  185. grdf_setToolTipBind(gd_PatientInfo);
  186. // 에디트박스에 포커스
  187. div_search.search_data.setFocus();
  188. }
  189. function div_search_btn_search_onclick(obj:Button, e:ClickEventInfo)
  190. {
  191. fSearch();
  192. }
  193. function fSearch()
  194. {
  195. //검색조건 콤보가 미선택 된 경우 알림
  196. var vaSrchCondFlag = ds_req_data.getColumn(0, "srchcondflag");
  197. if(vaSrchCondFlag < 1)
  198. {
  199. sysf_messageBox("검색조건을 정확히 ", "C001");
  200. return;
  201. }
  202. //이름을 입력안한 경우 알림
  203. var vaSearchDataLength = div_search.search_data.getLength();
  204. if(vaSearchDataLength < 1)
  205. {
  206. sysf_messageBox("이름을 ", "C001");
  207. div_search.search_data.setFocus();
  208. return;
  209. }
  210. //환자나 피보험자 성명이 1자인 경우 알림
  211. else if(vaSearchDataLength == 1)
  212. {
  213. if(vaSrchCondFlag == 1)
  214. {
  215. messageBox("환자성명 2자 이상", "C001");
  216. }
  217. else
  218. {
  219. messageBox("피보험자 성명을 2자 이상", "C001");
  220. }
  221. div_search.search_data.setFocus();
  222. return;
  223. }
  224. else
  225. {
  226. //do Nothing
  227. }
  228. var oParam = {};
  229. oParam.id = "SMPMC02101";
  230. oParam.service = "patinfomngtapp.VisitUsePatRef";
  231. oParam.method = "reqGetVisitUsePatRef";
  232. oParam.inds = "req=ds_req_data";
  233. oParam.outds = "ds_result_data=inhosppatlist";
  234. oParam.async = "false";
  235. oParam.callback = "cf_SMPMC02101";
  236. tranf_submit(oParam);
  237. ds_result_data.rowposition = -1;
  238. if( arErrorCode.pop("SMPMC02101") > -1 )
  239. {
  240. //조회 결과가 없는 경우 알림
  241. var vaRowCount = ds_result_data.getRowCount();
  242. if(vaRowCount <1)
  243. {
  244. sysf_messageBox("조회된 결과가", "I004");
  245. }
  246. }
  247. }
  248. function cf_SMPMC02101(sSvcId, nErrorCode, sErrorMsg)
  249. {
  250. arErrorCode.push(sSvcId, nErrorCode);
  251. }
  252. function div_search_ed_ipt_data_onkeydown(obj:Edit, e:KeyEventInfo)
  253. {
  254. //엔터키 누른 경우 조회 기능
  255. if(e.keycode == 13)
  256. {
  257. obj.updateToDataset();
  258. fSearch();
  259. }
  260. }
  261. function grp_btn_btn_init_onclick(obj:Button, e:ClickEventInfo)
  262. {
  263. //초기화로 에디트 박스 및 그리드 내용 삭제
  264. obj.setFocus();
  265. div_search.search_data.value = "";
  266. ds_result_data.clearData();
  267. }
  268. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  269. {
  270. //조회 결과가 없는 경우 알림
  271. var vaRowCount = ds_result_data.getRowCount();
  272. if(vaRowCount <1)
  273. {
  274. sysf_messageBox("조회된 결과가", "I004");
  275. }
  276. else
  277. {
  278. fPrint();
  279. }
  280. }
  281. function fPrint()
  282. {
  283. //프린트 기능
  284. var objDOM = rptf_createDOM();
  285. rptf_setNodeListToDOM(objDOM, "/root/main/visitinpatlist", ds_result_data); // 데이터셋 1
  286. var objParam = new Object();
  287. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  288. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;";
  289. rptf_exeReportPreview30(["RPPMC02100"],[objParam], option);
  290. }
  291. function SMPMC02100_방문객용재원환자조회_onkeydown(obj:Form, e:KeyEventInfo)
  292. {
  293. //초기화로 에디트 박스 및 그리드 내용 삭제
  294. if(e.keycode == '120')// f9누를 경우 초기화
  295. {
  296. div_search.search_data.value = "";
  297. ds_result_data.clearData();
  298. }
  299. }
  300. function gd_PatientInfo_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  301. {
  302. var row = gd_PatientInfo.currentrow;
  303. var sInstcd = ds_result_data.getColumn(row, "instcd");
  304. var sHngnm = ds_result_data.getColumn(row, "hngnm");
  305. var sWardnm = ds_result_data.getColumn(row, "wardnm");
  306. var sRoomnm = ds_result_data.getColumn(row, "roomnm");
  307. var sPosinfonm = ds_result_data.getColumn(row, "posinfonm");
  308. var sRoomtel = ds_result_data.getColumn(row, "roomtel");
  309. var oParam = {};
  310. oParam.id = "TRPMC02100";
  311. oParam.service = "patinfomngtapp.VisitUsePatRef";
  312. oParam.method = "reqGetVisitUsePatRef";
  313. oParam.inds = "req=ds_req_data";
  314. oParam.outds = "ds_result_data=inhosppatlist";
  315. oParam.async = false;
  316. //oParam.callback = "cf_TRPMC02100";
  317. tranf_submit(oParam);
  318. ds_main_paper.setColumn(0, "instcd" , sInstcd);
  319. ds_main_paper.setColumn(0, "hngnm" , sHngnm);
  320. ds_main_paper.setColumn(0, "wardnm" , sWardnm);
  321. ds_main_paper.setColumn(0, "roomnm" , sRoomnm);
  322. ds_main_paper.setColumn(0, "posinfonm" , sPosinfonm);
  323. ds_main_paper.setColumn(0, "roomtel" , sRoomtel);
  324. var objDOM = rptf_createDOM();
  325. rptf_setNodeListToDOM(objDOM, "/root/main/paper", ds_main_paper); // 데이터셋 1
  326. var objParam = new Object();
  327. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  328. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;";
  329. rptf_exeReportPreview30(["RPPMC02200"],[objParam], option);
  330. //exeReportPreview("RPPMC02200", "XMLSTR", "","", "true","","","","","true");
  331. }
  332. ]]></Script>
  333. </Form>
  334. </FDL>