SPPMO02001_정산대상처방조회.xfdl 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPMO02001" position="absolute 0 0 806 360" titletext="정산대상처방조회" oninit="SPPMO02001_oninit" onload="SPPMO02001_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 805 300" id="group3" scrollbars="autoboth" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Div position="absolute 0 2 765 37" align="align:center top;" id="group2">
  11. <Layouts>
  12. <Layout>
  13. <Shape position="absolute 0 0 765 35" id="roundrect1" class="roundrect_search" type="roundrectangle"/>
  14. <Static text="등록번호 :" position="absolute 3 8 89 25" id="caption2" class="search_name"/>
  15. <Button position="absolute 699 7 755 29" id="btn_search" class="btn1" taborder="2" text="조회" onclick="group3_group2_btn_search_onclick"/>
  16. <Edit position="absolute 91 8 158 27" align="align:center middle;" id="input3" class="input_search" taborder="1" onkeydown="group3_group2_input3_onkeydown"/>
  17. <Combo position="absolute 190 10 290 29" id="combo1" codecolumn="codecolumn" datacolumn="datacolumn">
  18. <Dataset id="innerdataset">
  19. <ColumnInfo>
  20. <Column id="codecolumn"/>
  21. <Column id="datacolumn"/>
  22. </ColumnInfo>
  23. <Rows>
  24. <Row>
  25. <Col id="codecolumn">combo1</Col>
  26. <Col id="datacolumn">combo1</Col>
  27. </Row>
  28. </Rows>
  29. </Dataset>
  30. </Combo>
  31. <Edit position="absolute 310 10 410 30" id="input1"/>
  32. <Edit position="absolute 420 10 440 29" id="input2"/>
  33. </Layout>
  34. </Layouts>
  35. </Div>
  36. <Static text="정산대상처방" position="absolute 0 48 121 64" id="caption1" class="tit_2"/>
  37. <Grid position="absolute 0 69 805 300" id="grd_prcplist" binddataset="ds_grd_prcplist" autofittype="col" anchor="all">
  38. <Formats>
  39. <Format id="default">
  40. <Columns>
  41. <Column size="25"/>
  42. <Column size="58"/>
  43. <Column size="56"/>
  44. <Column size="80"/>
  45. <Column size="57"/>
  46. <Column size="107"/>
  47. <Column size="54"/>
  48. <Column size="91"/>
  49. <Column size="137"/>
  50. <Column size="100"/>
  51. <Column size="70"/>
  52. </Columns>
  53. <Rows>
  54. <Row size="24" band="head"/>
  55. <Row size="24"/>
  56. </Rows>
  57. <Band id="head">
  58. <Cell/>
  59. <Cell col="1" text="환자번호"/>
  60. <Cell col="2" text="성명"/>
  61. <Cell col="3" text="진료일자"/>
  62. <Cell col="4" text="구분"/>
  63. <Cell col="5" text="진료과"/>
  64. <Cell col="6" text="진료의"/>
  65. <Cell col="7" text="처방코드"/>
  66. <Cell col="8" text="처방명칭"/>
  67. <Cell col="9" text="검사부서명"/>
  68. <Cell col="10" text="실시일자"/>
  69. </Band>
  70. <Band id="body">
  71. <Cell celltype="head" expr="expr:currow + 1"/>
  72. <Cell col="1" style="align:center middle;" text="bind:pid"/>
  73. <Cell col="2" style="align:center middle;" text="bind:hngnm"/>
  74. <Cell col="3" displaytype="date" style="align:center middle;" text="bind:orddd" mask="yyyy-MM-dd" maskchar=" " calendardisplaynulltype="none"/>
  75. <Cell col="4" style="align:center middle;" text="bind:ordtype"/>
  76. <Cell col="5" style="align:left middle;padding:0 0 0 5;" text="bind:orddeptnm" wordwrap="char"/>
  77. <Cell col="6" style="align:center middle;" text="bind:orddrnm" wordwrap="char"/>
  78. <Cell col="7" style="align:left middle;padding:0 0 0 5;" text="bind:calcscorcd"/>
  79. <Cell col="8" style="align:left middle;padding:0 0 0 5;" text="bind:calcscornm" wordwrap="char"/>
  80. <Cell col="9" style="align:left middle;padding:0 0 0 5;" text="bind:execdeptnm"/>
  81. <Cell col="10" displaytype="date" style="align:center middle;" text="bind:execdd" mask="yyyy-MM-dd" maskchar=" " calendardisplaynulltype="none"/>
  82. </Band>
  83. </Format>
  84. </Formats>
  85. </Grid>
  86. <Static text="* 정산대상이 존재하는 경우 정산(추가수납 / 환불)을 위해 원무창구로 안내해 주시기 바랍니다." position="absolute 200 50 760 65" id="caption3" style="color:red;"/>
  87. <Div position="absolute 0 0 805 40" align="align:center top;" id="group4" class="div_SA2" anchor="left top right">
  88. <Layouts>
  89. <Layout width="805" height="35">
  90. <Static text="등록번호 :" position="absolute 8 11 94 28" id="caption4" class="search_name" anchor="default"/>
  91. <Button position="absolute 734 9 790 31" id="button1" class="btn1" taborder="2" text="조회" onclick="group3_group4_button1_onclick" anchor="top right"/>
  92. <Edit position="absolute 96 10 163 29" align="align:center middle;" id="input4" class="input_search" taborder="1" onkeydown="group3_group4_input4_onkeydown" autoselect="true" anchor="default"/>
  93. <Combo position="absolute 355 10 415 29" id="cmb_worktype" visible="false" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  94. <Dataset id="innerdataset">
  95. <ColumnInfo>
  96. <Column id="codecolumn"/>
  97. <Column id="datacolumn"/>
  98. </ColumnInfo>
  99. <Rows>
  100. <Row>
  101. <Col id="codecolumn">PAM</Col>
  102. <Col id="datacolumn">PAM</Col>
  103. </Row>
  104. <Row>
  105. <Col id="codecolumn">EMR</Col>
  106. <Col id="datacolumn">EMR</Col>
  107. </Row>
  108. <Row>
  109. <Col id="codecolumn">AST</Col>
  110. <Col id="datacolumn">AST</Col>
  111. </Row>
  112. <Row>
  113. <Col id="codecolumn">LIS</Col>
  114. <Col id="datacolumn">LIS</Col>
  115. </Row>
  116. </Rows>
  117. </Dataset>
  118. </Combo>
  119. <Edit position="absolute 427 10 507 29" align="align:center middle;" id="ipt_orddd" visible="false" anchor="default"/>
  120. <Edit position="absolute 510 10 540 29" id="ipt_cretno" visible="false" anchor="default"/>
  121. <Edit position="absolute 550 10 625 29" id="ipt_prcpdd" visible="false" anchor="default"/>
  122. <Edit position="absolute 628 10 725 29" id="ipt_execprcpuniqno" visible="false" anchor="default"/>
  123. <Combo position="absolute 165 10 245 29" id="combo2" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  124. <Dataset id="innerdataset">
  125. <ColumnInfo>
  126. <Column id="codecolumn"/>
  127. <Column id="datacolumn"/>
  128. </ColumnInfo>
  129. <Rows>
  130. <Row>
  131. <Col id="codecolumn">A</Col>
  132. <Col id="datacolumn">전체</Col>
  133. </Row>
  134. <Row>
  135. <Col id="codecolumn">N</Col>
  136. <Col id="datacolumn">미실시</Col>
  137. </Row>
  138. <Row>
  139. <Col id="codecolumn">Y</Col>
  140. <Col id="datacolumn">실시</Col>
  141. </Row>
  142. <Row>
  143. <Col id="codecolumn">T</Col>
  144. <Col id="datacolumn">당일실시</Col>
  145. </Row>
  146. </Rows>
  147. </Dataset>
  148. </Combo>
  149. <Combo position="absolute 246 10 340 29" id="combo3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  150. <Dataset id="innerdataset">
  151. <ColumnInfo>
  152. <Column id="codecolumn"/>
  153. <Column id="datacolumn"/>
  154. </ColumnInfo>
  155. <Rows>
  156. <Row>
  157. <Col id="codecolumn">A</Col>
  158. <Col id="datacolumn">전체</Col>
  159. </Row>
  160. <Row>
  161. <Col id="codecolumn">N</Col>
  162. <Col id="datacolumn">정산미실시</Col>
  163. </Row>
  164. <Row>
  165. <Col id="codecolumn">Y</Col>
  166. <Col id="datacolumn">정산실시</Col>
  167. </Row>
  168. </Rows>
  169. </Dataset>
  170. </Combo>
  171. </Layout>
  172. </Layouts>
  173. </Div>
  174. <Shape id="line2" class="line_10" position="absolute 0 65 805 69" anchor="left top right"/>
  175. </Layout>
  176. </Layouts>
  177. </Div>
  178. <Div position="absolute 0 300 805 359" id="group1" scrollbars="autoboth" anchor="left right bottom">
  179. <Layouts>
  180. <Layout>
  181. <Button position="absolute 749 5 805 27" id="btn_close" class="btn4" text="닫기" onclick="group1_btn_close_onclick" anchor="right bottom"/>
  182. <Static text="* 차트번호만 입력하여 검색 하는 경우 : 당일실시 + 미실시정산 건만 조회됨&#13;&#10;* 실시정산 대상 : 2011년 1월 1일 ~ 2014년 7월 31일 발행된 처방중, 2014년 8월 1일 이후 실시하는 경우&#13;&#10;* CT/MRI 조영제 수가 코드가 변경된 환자포함&#13;&#10;* 공단 암검진 관련 수가 변경된 환자 포함" position="absolute 5 1 570 59" id="caption5" style="linespace:2;" anchor="left bottom"/>
  183. </Layout>
  184. </Layouts>
  185. </Div>
  186. </Layout>
  187. </Layouts>
  188. <Objects>
  189. <Dataset id="ds_grd_prcplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  190. <ColumnInfo>
  191. <Column id="pid" type="STRING"/>
  192. <Column id="hngnm" type="STRING"/>
  193. <Column id="orddd" type="STRING"/>
  194. <Column id="orddeptnm" type="STRING"/>
  195. <Column id="orddrnm" type="STRING"/>
  196. <Column id="calcscorcd" type="STRING"/>
  197. <Column id="calcscornm" type="STRING"/>
  198. <Column id="execdeptnm" type="STRING"/>
  199. <Column id="execdd" type="STRING"/>
  200. </ColumnInfo>
  201. </Dataset>
  202. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  203. <ColumnInfo>
  204. <Column id="worktype" type="STRING" size="256"/>
  205. <Column id="pid" type="STRING" size="256"/>
  206. <Column id="orddd" type="STRING" size="256"/>
  207. <Column id="cretno" type="STRING" size="256"/>
  208. <Column id="prcpdd" type="STRING" size="256"/>
  209. <Column id="execprcpuniqno" type="STRING" size="256"/>
  210. <Column id="execflag" type="STRING" size="256"/>
  211. <Column id="rcptflag" type="STRING" size="256"/>
  212. </ColumnInfo>
  213. <Rows>
  214. <Row>
  215. <Col id="worktype"/>
  216. <Col id="pid"/>
  217. <Col id="orddd"/>
  218. <Col id="cretno"/>
  219. <Col id="prcpdd"/>
  220. <Col id="execprcpuniqno"/>
  221. <Col id="execflag">T</Col>
  222. <Col id="rcptflag">N</Col>
  223. </Row>
  224. </Rows>
  225. </Dataset>
  226. <Dataset id="ds_nhicinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  227. </Objects>
  228. <Bind>
  229. <BindItem id="item0" compid="group3.group2.input3" propid="value" datasetid="ds_send" columnid="pid"/>
  230. <BindItem id="item1" compid="group3.group4.input4" propid="value" datasetid="ds_send" columnid="pid"/>
  231. <BindItem id="item2" compid="group3.group4.combo2" propid="value" datasetid="ds_send" columnid="execflag"/>
  232. <BindItem id="item3" compid="group3.group4.combo3" propid="value" datasetid="ds_send" columnid="rcptflag"/>
  233. <BindItem id="item4" compid="group3.group4.cmb_worktype" propid="value" datasetid="ds_send" columnid="worktype"/>
  234. <BindItem id="item5" compid="group3.group4.ipt_orddd" propid="value" datasetid="ds_send" columnid="orddd"/>
  235. <BindItem id="item6" compid="group3.group4.ipt_cretno" propid="value" datasetid="ds_send" columnid="cretno"/>
  236. <BindItem id="item7" compid="group3.group4.ipt_prcpdd" propid="value" datasetid="ds_send" columnid="prcpdd"/>
  237. <BindItem id="item8" compid="group3.group4.ipt_execprcpuniqno" propid="value" datasetid="ds_send" columnid="execprcpuniqno"/>
  238. </Bind>
  239. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  240. * System Name :
  241. * Job Name :
  242. * Creator :
  243. * Make Date : 2014-11-07
  244. * Description :
  245. *---------------------------------------------------------------------------------------
  246. * Modify Date Modifier Modify Description
  247. *---------------------------------------------------------------------------------------
  248. * 2014-11-07 Live Converter TF->XP
  249. *
  250. *---------------------------------------------------------------------------------------
  251. ****************************************************************************************/
  252. include "com_commonxp::comm_main.xjs";
  253. function getPrcpRcptCheck(workType, pid, orddd, cretno, prcpdd, execPrcpUniqno) {
  254. if (utlf_isNull(pid) || pid == "-") {
  255. return 0;
  256. }
  257. ds_send.setColumn(0, "worktype", workType);
  258. ds_send.setColumn(0, "pid", pid);
  259. ds_send.setColumn(0, "orddd", orddd);
  260. ds_send.setColumn(0, "cretno", cretno);
  261. ds_send.setColumn(0, "prcpdd", prcpdd);
  262. ds_send.setColumn(0, "execprcpuniqno", execPrcpUniqno);
  263. var oParam = {};
  264. oParam.id = "TRPAO02003";
  265. oParam.service = "pamcomnapp.PamComn";
  266. oParam.method = "reqGetPrcpRcptCheck";
  267. oParam.inds = "req=ds_send";
  268. oParam.outds = "ds_grd_prcplist=prcplist";
  269. oParam.async = false;
  270. oParam.callback = "cf_TRPAO02003";
  271. tranf_submit(oParam);
  272. var cnt = ds_grd_prcplist.rowcount;
  273. // 결과가 있는 경우 opener로 데이터 전달
  274. if (cnt > 0) {
  275. parent.dsf_createDs("ds_hidden_tempprcplist");
  276. parent.ds_hidden_tempprcplist.copyData(ds_grd_prcplist);
  277. }
  278. return cnt;
  279. }
  280. function cf_TRPAO02003(sSvcId, nErrorCode, sErrorMsg) {
  281. if (nErrorCode < 0) return;
  282. }
  283. function fSearch() {
  284. ds_grd_prcplist.clearData();
  285. var oParam = {};
  286. oParam.id = "TRPAO02003";
  287. oParam.service = "pamcomnapp.PamComn";
  288. oParam.method = "reqGetPrcpRcptCheck";
  289. oParam.inds = "req=ds_send";
  290. oParam.outds = "ds_grd_prcplist=prcplist";
  291. oParam.async = false;
  292. oParam.callback = "cf_TRPAO02003";
  293. tranf_submit(oParam);
  294. if (ds_grd_prcplist.rowcount > 0) {
  295. fShowMSG();
  296. }
  297. }
  298. function fShowMSG() {
  299. if (sysf_getUserInfo("dutplceinstcd") == "031") {
  300. sysf_messageBox("수가변동으로 인해 진료비정산이 필요한 고객님입니다.\r\n재계산이 필요하니 안내센타 처방변경,수납 창구로 안내바랍니다.", "C000");
  301. } else {
  302. sysf_messageBox("수가변동으로 인해 진료비정산이 필요한 고객님입니다.\r\n재계산이 필요하니 원무과 창구로 안내부탁드립니다.", "C000");
  303. }
  304. }
  305. function fCheckNhicInfo(workType, pid, orddd, cretno, prcpdd, execPrcpUniqno) {
  306. if (utlf_isNull(prcpdd) || prcpdd.length < 1 || utlf_isNull(execPrcpUniqno) || execPrcpUniqno.length < 1) {
  307. return "";
  308. }
  309. ds_send.setColumn(0, "worktype", workType);
  310. ds_send.setColumn(0, "pid", pid);
  311. ds_send.setColumn(0, "orddd", orddd);
  312. ds_send.setColumn(0, "cretno", cretno);
  313. ds_send.setColumn(0, "prcpdd", prcpdd);
  314. ds_send.setColumn(0, "execprcpuniqno", execPrcpUniqno);
  315. var oParam = {};
  316. oParam.id = "TRPAC04002";
  317. oParam.service = "pamcomnapp.PamComn";
  318. oParam.method = "reqGetCheckNhicInfo";
  319. oParam.inds = "req=ds_send";
  320. oParam.outds = "ds_nhicinfo=nhicinfo";
  321. oParam.async = false;
  322. oParam.callback = "cf_TRPAC04002";
  323. tranf_submit(oParam);
  324. var msg = "";
  325. if (ds_nhicinfo.rowcount > 0) {
  326. if (ds_nhicinfo.getColumn(0, "chkrslt") == "N") {
  327. msg = ds_nhicinfo.getColumn(0, "msg");
  328. }
  329. }
  330. return msg;
  331. }
  332. function cf_TRPAC04002(sSvcId, nErrorCode, sErrorMsg) {
  333. if(nErrorCode < 0) return;
  334. }
  335. function SPPMO02001_oninit(obj:Form, e:InitEventInfo) {
  336. frmf_initForm(obj); // 화면공통
  337. }
  338. function SPPMO02001_onload(obj:Form, e:LoadEventInfo) {
  339. var userid = sysf_getUserId();
  340. if (userid == "PAM") {
  341. group3.group4.cmb_worktype.visible = true;
  342. group3.group4.ipt_orddd.visible = true;
  343. group3.group4.ipt_cretno.visible = true;
  344. group3.group4.ipt_prcpdd.visible = true;
  345. group3.group4.ipt_execprcpuniqno.visible = true;
  346. }
  347. if (frmf_checkOpener()) {
  348. var pid = opener.frmf_getParameter("SPPMO02001_PARM");
  349. ds_send.setColumn(0, "pid", pid);
  350. ds_grd_prcplist.clearData();
  351. try {
  352. ds_grd_prcplist.copyData(opener.ds_hidden_tempprcplist);
  353. } catch(e) {}
  354. if (ds_grd_prcplist.rowcount > 0) {
  355. fShowMSG();
  356. }
  357. }
  358. }
  359. function group3_group4_button1_onclick(obj:Button, e:ClickEventInfo)
  360. {
  361. var pid = ds_send.getColumn(0,"pid");
  362. if( utlf_isNull(pid) || pid == '-' ){
  363. sysf_messageBox("등록번호는 반드시 입력하셔야 합니다.", "E999", "");
  364. return false;
  365. }
  366. if(utlf_isNull(ds_send.getColumn(0,"worktype")))
  367. {
  368. ds_send.setColumn(0,"worktype", "PAM");
  369. }
  370. fSearch();
  371. }
  372. function group3_group4_input4_onkeydown(obj:Edit, e:KeyEventInfo)
  373. {
  374. if (e.keycode == "13") {
  375. ds_send.setColumn(0,"pid", group3.group2.input3.value);
  376. var ev = new ClickEventInfo;
  377. frmf_inputEnterKey("group3.group2.btn_search", "onclick", ev );
  378. }
  379. }
  380. function group1_btn_close_onclick(obj:Button, e:ClickEventInfo)
  381. {
  382. this.close();
  383. }
  384. function group3_group2_input3_onkeydown(obj:Edit, e:KeyEventInfo)
  385. {
  386. if (e.keycode == "13") {
  387. obj.updateToDataset();
  388. var ev = new ClickEventInfo;
  389. frmf_inputEnterKey("group3.group2.btn_search", "onclick", ev );
  390. }
  391. }
  392. function group3_group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  393. {
  394. var pid = ds_send.getColumn(0,"pid");
  395. if( utlf_isNull(pid) || pid == '-' ){
  396. sysf_messageBox("등록번호는 반드시 입력하셔야 합니다.", "E999", "");
  397. return false;
  398. }
  399. ds_send.setColumn(0,"worktype", "PAM");
  400. fSearch();
  401. }
  402. ]]></Script>
  403. </Form>
  404. </FDL>