SPMMO02400_투약이력조회.xfdl 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO02400" position="absolute 0 0 1213 783" titletext="투약이력조회" oninit="SPMMO02400_oninit" onload="SPMMO02400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Button position="absolute 1161 23 1213 43" id="btn_medilistsrch" class="btn1" text="조회" onclick="btn_medilistsrch_onclick"/>
  8. <Grid position="absolute 2 77 486 783" id="grd_medilist" binddataset="ds_medilist" oncelldblclick="grd_medilist_oncelldblclick" anchor="left top bottom" autofittype="col" cellclickbound="cell" onrbuttondown="grd_medilist_onrbuttondown">
  9. <Formats>
  10. <Format id="default">
  11. <Columns>
  12. <Column size="25"/>
  13. <Column size="100"/>
  14. <Column size="272"/>
  15. <Column size="87"/>
  16. </Columns>
  17. <Rows>
  18. <Row size="24" band="head"/>
  19. <Row size="24"/>
  20. </Rows>
  21. <Band id="head">
  22. <Cell/>
  23. <Cell col="1" text="처방코드"/>
  24. <Cell col="2" text="처방명"/>
  25. <Cell col="3" text="약품분류"/>
  26. </Band>
  27. <Band id="body">
  28. <Cell displaytype="checkbox" edittype="checkbox" text="bind:status" expr="expr:(status == &quot;Y&quot; || status == 1) ? 1 : 0"/>
  29. <Cell col="1" displaytype="text" text="bind:prcpcd"/>
  30. <Cell col="2" displaytype="text" text="bind:prcpnm"/>
  31. <Cell col="3" displaytype="combo" edittype="none" text="bind:spcldrug" combodataset="ds_spcldruginfo" combocodecol="cdid" combodatacol="cdnm"/>
  32. </Band>
  33. </Format>
  34. </Formats>
  35. </Grid>
  36. <Static text="투약 리스트" position="absolute 0 58 92 78" id="caption22" class="tit_2"/>
  37. <Static text="투약이력 조회" position="absolute 489 58 604 78" id="caption4" class="tit_2"/>
  38. <Button position="absolute 400 56 486 76" id="btn_medihist" class="btn2" text="투약이력조회" onclick="btn_medihist_onclick"/>
  39. <Button position="absolute 268 56 332 76" id="button1" class="btn2" text="전체선택" onclick="button1_onclick"/>
  40. <Calendar position="absolute 387 23 478 43" id="input6" class="input_essential" dateformat="yyyy-MM-dd" value="null" autoselect="true" style="padding:0 2 0 5;"/>
  41. <Calendar position="absolute 490 23 581 43" id="input3" class="input_essential" dateformat="yyyy-MM-dd" value="null" autoselect="true" style="padding:0 2 0 5;"/>
  42. <Edit readonly="true" position="absolute 266 23 291 43" align="align:center middle;" id="output4" class="output"/>
  43. <Edit readonly="true" position="absolute 292 23 326 43" align="align:center middle;" id="output10" class="output"/>
  44. <Button position="absolute 243 22 263 42" id="button61" class="icon_search" text="" onclick="button61_onclick"/>
  45. <Static text="환자명" position="absolute 136 21 180 45" id="caption5" class="cell_1" style="padding:0 0 0 4;"/>
  46. <Shape position="absolute 0 18 1213 20" id="line17" type="rectangle" style="strokepen:0 solid #33bbbbff;fillbrush:solid #33bbbbff true;" radiusx="5" radiusy="0"/>
  47. <Static text="등록번호" position="absolute 0 21 57 45" id="caption6" class="cell_1" style="padding:0 0 0 4;"/>
  48. <Static text="처방일자" position="absolute 328 21 385 45" align="align:center middle;" id="caption17" class="cell_1" style="padding:0 0 0 4;"/>
  49. <Static text="투약이력조회" position="absolute 0 0 121 20" id="caption20" class="tit_2"/>
  50. <Shape position="absolute 0 46 1213 48" id="line6" style="strokepen:0 solid #33bbbbff;fillbrush:solid #33bbbbff true;" radiusx="5" radiusy="0" type="rectangle"/>
  51. <Static text="외래/입원" position="absolute 642 21 705 45" align="align:center middle;" id="caption1" class="cell_1" style="padding:0 0 0 4;"/>
  52. <Combo position="absolute 707 23 758 43" id="combo1" codecolumn="codecolumn" datacolumn="datacolumn">
  53. <Dataset id="innerdataset">
  54. <ColumnInfo>
  55. <Column id="codecolumn"/>
  56. <Column id="datacolumn"/>
  57. </ColumnInfo>
  58. <Rows>
  59. <Row>
  60. <Col id="codecolumn">-</Col>
  61. <Col id="datacolumn">전체</Col>
  62. </Row>
  63. <Row>
  64. <Col id="codecolumn">O</Col>
  65. <Col id="datacolumn">외래</Col>
  66. </Row>
  67. <Row>
  68. <Col id="codecolumn">I</Col>
  69. <Col id="datacolumn">입원</Col>
  70. </Row>
  71. <Row>
  72. <Col id="codecolumn">E</Col>
  73. <Col id="datacolumn">응급</Col>
  74. </Row>
  75. </Rows>
  76. </Dataset>
  77. </Combo>
  78. <Static text="투약종류" position="absolute 760 21 817 45" align="align:center middle;" id="caption2" class="cell_1" style="padding:0 0 0 4;"/>
  79. <Combo position="absolute 819 23 870 43" id="combo2" codecolumn="codecolumn" datacolumn="datacolumn">
  80. <Dataset id="innerdataset">
  81. <ColumnInfo>
  82. <Column id="codecolumn"/>
  83. <Column id="datacolumn"/>
  84. </ColumnInfo>
  85. <Rows>
  86. <Row>
  87. <Col id="codecolumn">-</Col>
  88. <Col id="datacolumn">전체</Col>
  89. </Row>
  90. <Row>
  91. <Col id="codecolumn">A2</Col>
  92. <Col id="datacolumn">내복</Col>
  93. </Row>
  94. <Row>
  95. <Col id="codecolumn">A4</Col>
  96. <Col id="datacolumn">외용</Col>
  97. </Row>
  98. <Row>
  99. <Col id="codecolumn">A6</Col>
  100. <Col id="datacolumn">주사</Col>
  101. </Row>
  102. </Rows>
  103. </Dataset>
  104. </Combo>
  105. <Static text="약품분류" position="absolute 872 21 929 45" align="align:center middle;" id="caption3" class="cell_1" style="padding:0 0 0 4;"/>
  106. <Static text="~" position="absolute 479 24 494 44" id="caption7"/>
  107. <Combo position="absolute 931 23 1023 43" id="combo3" innerdataset="ds_spcldruginfo" datacolumn="cdnm" codecolumn="cdid"/>
  108. <Static text="특정코드" position="absolute 1025 21 1082 45" align="align:center middle;" id="caption9" class="cell_1" style="padding:0 0 0 4;"/>
  109. <Edit position="absolute 1084 23 1159 43" id="input4" autoselect="true"/>
  110. <CheckBox position="absolute 163 56 259 76" id="bool1" text="타진료과 포함" falsevalue="N" truevalue="Y"/>
  111. <Grid position="absolute 489 77 1213 783" id="grd_mediday" binddataset="ds_main_medidayno_ret" anchor="all">
  112. <Formats>
  113. <Format id="default">
  114. <Columns>
  115. <Column size="100"/>
  116. </Columns>
  117. <Rows>
  118. <Row size="24" band="head"/>
  119. <Row size="24"/>
  120. </Rows>
  121. <Band id="head">
  122. <Cell text="처방코드"/>
  123. </Band>
  124. <Band id="body">
  125. <Cell style="align:left middle;" text="bind:prcpcd"/>
  126. </Band>
  127. </Format>
  128. </Formats>
  129. </Grid>
  130. <Edit position="absolute 182 23 240 43" id="ipt_hngnm" class="input_essential" taborder="2" autoselect="true" onkeydown="ipt_hngnm_onkeydown"/>
  131. <Edit position="absolute 59 23 132 43" id="ipt_pid" class="input_essential" taborder="1" autoselect="true" onkeydown="ipt_pid_onkeydown"/>
  132. <Combo position="absolute 583 23 640 43" id="combo4" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="combo4_onitemchanged">
  133. <Dataset id="innerdataset">
  134. <ColumnInfo>
  135. <Column id="codecolumn"/>
  136. <Column id="datacolumn"/>
  137. </ColumnInfo>
  138. <Rows>
  139. <Row>
  140. <Col id="codecolumn">1</Col>
  141. <Col id="datacolumn">1일</Col>
  142. </Row>
  143. <Row>
  144. <Col id="codecolumn">2</Col>
  145. <Col id="datacolumn">1개월</Col>
  146. </Row>
  147. <Row>
  148. <Col id="codecolumn">3</Col>
  149. <Col id="datacolumn">3개월</Col>
  150. </Row>
  151. <Row>
  152. <Col id="codecolumn">4</Col>
  153. <Col id="datacolumn">6개월</Col>
  154. </Row>
  155. <Row>
  156. <Col id="codecolumn">5</Col>
  157. <Col id="datacolumn">9개월</Col>
  158. </Row>
  159. <Row>
  160. <Col id="codecolumn">6</Col>
  161. <Col id="datacolumn">1년</Col>
  162. </Row>
  163. </Rows>
  164. </Dataset>
  165. </Combo>
  166. <Button id="Button00" taborder="3" text="선택취소" position="absolute 334 56 398 76" class="btn2" onclick="Button00_onclick"/>
  167. <PopupMenu id="pmn_menu" innerdataset="ds_menu" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menu_onmenuclick" position="absolute 1240 0 1355 24"/>
  168. </Layout>
  169. </Layouts>
  170. <Objects>
  171. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  172. <ColumnInfo>
  173. <Column id="pid" type="STRING" size="256"/>
  174. <Column id="hngnm" type="STRING" size="256"/>
  175. <Column id="sex" type="STRING" size="256"/>
  176. <Column id="age" type="STRING" size="256"/>
  177. <Column id="fromdd" type="STRING" size="256"/>
  178. <Column id="todd" type="STRING" size="256"/>
  179. <Column id="ioflag" type="STRING" size="256"/>
  180. <Column id="prcpclscd" type="STRING" size="256"/>
  181. <Column id="spcldrug" type="STRING" size="256"/>
  182. <Column id="drugcd" type="STRING" size="256"/>
  183. <Column id="deptflag" type="STRING" size="256"/>
  184. <Column id="termflag" type="STRING" size="256"/>
  185. </ColumnInfo>
  186. <Rows>
  187. <Row>
  188. <Col id="ioflag">-</Col>
  189. <Col id="prcpclscd">-</Col>
  190. <Col id="spcldrug">-</Col>
  191. </Row>
  192. </Rows>
  193. </Dataset>
  194. <Dataset id="ds_spcldruginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  195. <ColumnInfo>
  196. <Column id="cdnm" type="STRING" size="256" sumtext="약품분류명"/>
  197. <Column id="cdid" type="STRING" size="256" sumtext="약품분류코드"/>
  198. </ColumnInfo>
  199. </Dataset>
  200. <Dataset id="ds_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  201. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  202. <ColumnInfo>
  203. <Column id="srchcond1" type="STRING" size="256"/>
  204. <Column id="srchcond2" type="STRING" size="256"/>
  205. <Column id="srchcond3" type="STRING" size="256"/>
  206. <Column id="srchcond4" type="STRING" size="256"/>
  207. <Column id="srchcond5" type="STRING" size="256"/>
  208. <Column id="srchcond6" type="STRING" size="256"/>
  209. <Column id="srchcond7" type="STRING" size="256"/>
  210. <Column id="srchcond8" type="STRING" size="256"/>
  211. <Column id="srchcond9" type="STRING" size="256"/>
  212. </ColumnInfo>
  213. <Rows>
  214. <Row>
  215. <Col id="srchcond1">1</Col>
  216. <Col id="srchcond6">ALL</Col>
  217. <Col id="srchcond7">%</Col>
  218. </Row>
  219. </Rows>
  220. </Dataset>
  221. <Dataset id="ds_medilist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_medilist_oncolumnchanged">
  222. <ColumnInfo>
  223. <Column id="status" type="STRING" size="256" sumtext="선택여부(Y/N)"/>
  224. <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
  225. <Column id="prcpnm" type="STRING" size="256" sumtext="처방명"/>
  226. <Column id="spcldrug" type="STRING" size="256" sumtext="특별약품"/>
  227. </ColumnInfo>
  228. </Dataset>
  229. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  230. <ColumnInfo>
  231. <Column id="cond1" type="STRING" size="256"/>
  232. <Column id="cond2" type="STRING" size="256"/>
  233. <Column id="cond3" type="STRING" size="256"/>
  234. <Column id="cond4" type="STRING" size="256"/>
  235. <Column id="cond5" type="STRING" size="256"/>
  236. <Column id="cond6" type="STRING" size="256"/>
  237. <Column id="cond7" type="STRING" size="256"/>
  238. <Column id="cond8" type="STRING" size="256"/>
  239. <Column id="cond99" type="STRING" size="256"/>
  240. </ColumnInfo>
  241. </Dataset>
  242. <Dataset id="ds_medidayno_header" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  243. <ColumnInfo>
  244. <Column id="caption" type="STRING" size="256" sumtext="header caption"/>
  245. <Column id="colref" type="STRING" size="256" sumtext="ref"/>
  246. <Column id="type" type="STRING" size="256" sumtext="type"/>
  247. </ColumnInfo>
  248. </Dataset>
  249. <Dataset id="ds_medidayno_ret" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  250. <ColumnInfo>
  251. <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
  252. <Column id="prcpnm" type="STRING" size="256" sumtext="처방명"/>
  253. <Column id="prcpdayno" type="STRING" size="256" sumtext="처방일수"/>
  254. <Column id="day" type="STRING" size="256" sumtext="처방일"/>
  255. </ColumnInfo>
  256. </Dataset>
  257. <Dataset id="ds_main_medidayno_ret" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  258. <ColumnInfo>
  259. <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
  260. <Column id="prcpnm" type="STRING" size="256" sumtext="처방명"/>
  261. <Column id="prcpdayno" type="STRING" size="256" sumtext="처방일수"/>
  262. <Column id="day" type="STRING" size="256" sumtext="처방일"/>
  263. </ColumnInfo>
  264. </Dataset>
  265. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  266. <ColumnInfo>
  267. <Column id="srchcond" type="STRING" size="256"/>
  268. <Column id="pid" type="STRING" size="256"/>
  269. <Column id="hngnm" type="STRING" size="256"/>
  270. <Column id="rrgstno1" type="STRING" size="256"/>
  271. <Column id="rrgstno2" type="STRING" size="256"/>
  272. </ColumnInfo>
  273. <Rows>
  274. <Row>
  275. <Col id="srchcond"/>
  276. <Col id="pid"/>
  277. <Col id="hngnm"/>
  278. <Col id="rrgstno1"/>
  279. <Col id="rrgstno2"/>
  280. </Row>
  281. </Rows>
  282. </Dataset>
  283. <Dataset id="ds_patinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  284. <Dataset id="ds_menu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  285. <ColumnInfo>
  286. <Column id="label" type="STRING" size="256"/>
  287. <Column id="func" type="STRING" size="256"/>
  288. <Column id="level" type="STRING" size="256"/>
  289. </ColumnInfo>
  290. <Rows>
  291. <Row>
  292. <Col id="label">약품편람</Col>
  293. <Col id="func">fDrugInfo</Col>
  294. <Col id="level">0</Col>
  295. </Row>
  296. </Rows>
  297. </Dataset>
  298. <Dataset id="ds_hidden_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  299. <ColumnInfo>
  300. <Column id="srchdrugcd" type="STRING" size="256"/>
  301. </ColumnInfo>
  302. <Rows>
  303. <Row/>
  304. </Rows>
  305. </Dataset>
  306. </Objects>
  307. <Bind>
  308. <BindItem id="item0" compid="ipt_pid" propid="value" datasetid="ds_cond" columnid="pid"/>
  309. <BindItem id="item1" compid="ipt_hngnm" propid="value" datasetid="ds_cond" columnid="hngnm"/>
  310. <BindItem id="item2" compid="output4" propid="value" datasetid="ds_cond" columnid="sex"/>
  311. <BindItem id="item3" compid="output10" propid="value" datasetid="ds_cond" columnid="age"/>
  312. <BindItem id="item4" compid="input6" propid="value" datasetid="ds_cond" columnid="fromdd"/>
  313. <BindItem id="item5" compid="input3" propid="value" datasetid="ds_cond" columnid="todd"/>
  314. <BindItem id="item6" compid="combo4" propid="value" datasetid="ds_cond" columnid="termflag"/>
  315. <BindItem id="item7" compid="combo1" propid="value" datasetid="ds_cond" columnid="ioflag"/>
  316. <BindItem id="item8" compid="combo2" propid="value" datasetid="ds_cond" columnid="prcpclscd"/>
  317. <BindItem id="item9" compid="combo3" propid="value" datasetid="ds_cond" columnid="spcldrug"/>
  318. <BindItem id="item10" compid="input4" propid="value" datasetid="ds_cond" columnid="drugcd"/>
  319. <BindItem id="item11" compid="bool1" propid="value" datasetid="ds_cond" columnid="deptflag"/>
  320. </Bind>
  321. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  322. * System Name :
  323. * Job Name :
  324. * Creator :
  325. * Make Date : 2014-12-10
  326. * Description :
  327. *---------------------------------------------------------------------------------------
  328. * Modify Date Modifier Modify Description
  329. *---------------------------------------------------------------------------------------
  330. * 2014-12-10 Live Converter TF->XP
  331. *
  332. *---------------------------------------------------------------------------------------
  333. ****************************************************************************************/
  334. include "com_commonxp::comm_main.xjs";
  335. include "emr_prcpmngtxp::MMO001.xjs";
  336. function SPMMO02400_oninit(obj:Form, e:InitEventInfo)
  337. {
  338. frmf_initForm(obj);
  339. }
  340. function SPMMO02400_onload(obj:Form, e:LoadEventInfo)
  341. {
  342. //그리드 정렬기능 추가
  343. grdf_setGridSort(grd_medilist);
  344. grdf_setGridSort(grd_mediday);
  345. ds_cond.setColumn(0, "fromdd", utlf_getCurrentDate());
  346. ds_cond.setColumn(0, "todd" , utlf_getCurrentDate());
  347. var oParam = {};
  348. oParam.id = "TRMMO02404";
  349. oParam.service = "prcpmngtapp.PrcpMngt";
  350. oParam.method = "reqGetDrugEfcyClsCdList";
  351. oParam.outds = "ds_spcldruginfo=spcldruginfo";
  352. oParam.async = false;
  353. tranf_submit(oParam);
  354. frmf_addComboItem("combo3");
  355. var pid = opener.frmf_getParameter("SPMMO02400_pid");
  356. var paminfocvs = sysf_getGlobalVariable("paminfo");
  357. if(!utlf_isNull(pid)){
  358. var hngnm = opener.frmf_getParameter("SPMMO02400_hngnm");
  359. var sex = opener.frmf_getParameter("SPMMO02400_sex");
  360. var age = opener.frmf_getParameter("SPMMO02400_age");
  361. var ioflag= opener.frmf_getParameter("SPMMO02400_ioflag");
  362. }else if(!utlf_isNull(paminfocvs)){
  363. dsf_setCSVToDs("ds_paminfo", paminfocvs);
  364. var pid = ds_paminfo.getColumn(0, "pid");
  365. var hngnm = ds_paminfo.getColumn(0, "hngnm");
  366. var sex = ds_paminfo.getColumn(0, "sex");
  367. var age = ds_paminfo.getColumn(0, "age");
  368. var ioflag= ds_paminfo.getColumn(0, "ioflag");
  369. }
  370. if(!utlf_isNull(pid)){
  371. fInitSrchTerm(ioflag);
  372. }
  373. ds_init.setColumn(0, "srchcond2" , pid);
  374. ds_cond.setColumn(0, "pid" , pid);
  375. ds_cond.setColumn(0, "hngnm" , hngnm);
  376. ds_cond.setColumn(0, "sex" , sex);
  377. ds_cond.setColumn(0, "age" , age);
  378. ds_cond.setColumn(0, "ioflag", ioflag);
  379. fReqGetPatDrugList();
  380. }
  381. function ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  382. {
  383. }
  384. function ipt_hngnm_onkeydown(obj:Edit, e:KeyEventInfo)
  385. {
  386. }
  387. function button61_onclick(obj:Button, e:ClickEventInfo)
  388. {
  389. var xpt = this.getOwnerFrame().position.x + 100; //window.screenleft + 100;
  390. var ypt = this.getOwnerFrame().position.y + 100; //window.screenTop + 100;
  391. var objArg = new Object();
  392. objArg.arg_ds_send = ds_hidden;
  393. frmf_modal("SPPMC02500", "SPPMC02500", objArg, null, 1, xpt, ypt, null, null, null, null, null, "M"); //modal("SPPMC02500", "1", xpt, ypt, "SPPMC02500", "/root/hidden", "/root/send");
  394. var sPid = ds_patinfolist.getColumn(0, "pid"); //model.getValue("/root/main/patinfo/patinfolist/pid");
  395. var sHngnm = ds_patinfolist.getColumn(0, "hngnm"); //model.getValue("/root/main/patinfo/patinfolist/hngnm");
  396. ds_cond.setColumn(0, "pid", sPid); // model.setValue("/root/main/cond/pid", sPid);
  397. ds_cond.setColumn(0, "hngnm", sHngnm); // model.setValue("/root/main/cond/hngnm", sHngnm);
  398. //model.refresh();
  399. fReqGetPatDrugList();
  400. }
  401. function combo4_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  402. {
  403. fSettingSrchTerm();
  404. }
  405. function btn_medilistsrch_onclick(obj:Button, e:ClickEventInfo)
  406. {
  407. fReqGetPatDrugList();
  408. }
  409. function button1_onclick(obj:Button, e:ClickEventInfo)
  410. {
  411. for(var i = 0; i < ds_medilist.rowcount; i++)
  412. ds_medilist.setColumn(i, "status", "Y");
  413. }
  414. function Button00_onclick(obj:Button, e:ClickEventInfo)
  415. {
  416. for(var i = 0; i < ds_medilist.rowcount; i++)
  417. ds_medilist.setColumn(i, "status", "N");
  418. }
  419. function btn_medihist_onclick(obj:Button, e:ClickEventInfo)
  420. {
  421. var icnt = 0;
  422. var prcpcd = "";
  423. var prcpnm = "";
  424. var prcpnmlist = "prcpcd|prcpnm^";
  425. for ( var i = 0; i < ds_medilist.rowcount; i++) {
  426. if ( ds_medilist.getColumn(i, "status") == "Y" ) {
  427. prcpcd = ds_medilist.getColumn(i, "prcpcd");
  428. prcpnm = ds_medilist.getColumn(i, "prcpnm");
  429. prcpnmlist = prcpnmlist + prcpcd + "|" + prcpnm + "^";
  430. icnt++;
  431. }
  432. }
  433. if(icnt > 0){
  434. fReqGetPatDrugHistList(prcpnmlist);
  435. }else{
  436. sysf_messageBox("검색할 처방을", "C002");
  437. return;
  438. }
  439. }
  440. function grd_medilist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  441. {
  442. if(e.row < 0 || e.col < 0) return;
  443. var prcpnmlist = "prcpcd|prcpnm^";
  444. var prcpcd = ds_medilist.getColumn(e.row, "prcpcd");
  445. var prcpnm = ds_medilist.getColumn(e.row, "prcpnm");
  446. prcpnmlist = prcpnmlist + prcpcd + "|" + prcpnm;
  447. fReqGetPatDrugHistList(prcpnmlist);
  448. }
  449. function ds_medilist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  450. {
  451. if(e.columnid == "status")
  452. obj.setColumn(e.row, e.columnid, (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  453. }
  454. /**
  455. * 환자투약리스트 조회
  456. * 등록번호가 없는 경우, 조회처리 하지 않음
  457. */
  458. function fReqGetPatDrugList(){
  459. var pid = ds_cond.getColumn(0, "pid");
  460. if(!utlf_isNull(pid)){
  461. var oParam = {};
  462. oParam.id = "TRMMO02401";
  463. oParam.service = "prcpmngtapp.PrcpMngt";
  464. oParam.method = "reqGetPatDrugList";
  465. oParam.inds = "req=ds_cond";
  466. oParam.outds = "ds_medilist=medilist";
  467. oParam.async = true;
  468. tranf_submit(oParam);
  469. }
  470. }
  471. /**
  472. * 환자투약이력리스트 조회
  473. * 이력조회 이후, 투약이력그리드 생성
  474. * @param : prcpnmlist 투약명(prcpcd|prcpnm^prcpcd|prcpnm)
  475. */
  476. function fReqGetPatDrugHistList(prcpnmlist){
  477. ds_send.clearData();
  478. ds_send.addRow();
  479. ds_send.setColumn(0, "cond1", ds_cond.getColumn(0, "pid")); //등록번호
  480. ds_send.setColumn(0, "cond2", sysf_getUserInfo("dutplceinstcd")); //기관코드
  481. ds_send.setColumn(0, "cond3", ds_cond.getColumn(0, "fromdd")); //시작일자
  482. ds_send.setColumn(0, "cond4", ds_cond.getColumn(0, "todd")); //종료일자
  483. ds_send.setColumn(0, "cond5", prcpnmlist); //처방코드,처방명
  484. ds_send.setColumn(0, "cond6", ds_cond.getColumn(0, "ioflag")); //외래/입원
  485. ds_send.setColumn(0, "cond7", ds_cond.getColumn(0, "prcpclscd")); //투약종류
  486. ds_send.setColumn(0, "cond8", ds_cond.getColumn(0, "spcldrug")); //약품상세코드
  487. var oParam = {};
  488. oParam.id = "TRMMO02301";
  489. oParam.service = "prcpmngtapp.PrcpMngt";
  490. oParam.method = "reqGetMediDayNoList";
  491. oParam.inds = "req=ds_send";
  492. oParam.outds = "ds_medidayno_header=header ds_medidayno_ret=ret";
  493. oParam.async = true;
  494. oParam.callback = "cf_TRMMO02301";
  495. tranf_submit(oParam);
  496. }
  497. function cf_TRMMO02301(sSvcId, nErrorCode, sErrorMsg) {
  498. if(nErrorCode < 0) return;
  499. fMakeDrugHistGrid();
  500. }
  501. /**
  502. * 투약이력그리드 생성
  503. *
  504. */
  505. function fMakeDrugHistGrid(){
  506. fClrDrugHistGrid();
  507. var strcaption = ds_medidayno_header.getColumn(0, "caption");
  508. var strcolref = ds_medidayno_header.getColumn(0, "colref");
  509. var strcoltype = ds_medidayno_header.getColumn(0, "type");
  510. var strcaptionArr = strcaption.split("^");
  511. var strcolrefArr = strcolref.split("^");
  512. var strcoltypeArr = strcoltype.split("^");
  513. grd_mediday.enableevent = false;
  514. grd_mediday.enableredraw = false;
  515. for(var i = 1; i < strcolrefArr.length; i++){
  516. grd_mediday.insertContentsCol(i);
  517. grd_mediday.setCellProperty("head", i, "text", strcaptionArr[i]);
  518. grd_mediday.setCellProperty("body", i, "text", "bind:" + strcolrefArr[i]);
  519. if(i != 2)
  520. grd_mediday.setCellProperty("body", i, "align", "left middle");
  521. if(i > 2) {
  522. grd_mediday.setFormatColProperty(i, "size", 100);
  523. }
  524. }
  525. grd_mediday.setFormatColProperty(1, "size", 300);
  526. grd_mediday.setFormatColProperty(2, "size", 60);
  527. ds_main_medidayno_ret.enableevent = false;
  528. ds_main_medidayno_ret.clearData();
  529. var dayCmtCnt = 0;
  530. for(var i = 0; i < ds_medidayno_ret.rowcount; i++){
  531. var row = ds_main_medidayno_ret.addRow();
  532. ds_main_medidayno_ret.copyRow(row, ds_medidayno_ret, i);
  533. var dayCmtCnts = ds_medidayno_ret.getColumn(i, "day");
  534. dayCmtCnt = dayCmtCnts.split("|");
  535. for(var j = 0; j < dayCmtCnt.length - 1; j++){
  536. var columnNm = "day" + (j + 1);
  537. ds_main_medidayno_ret.addColumn(columnNm, "string");
  538. ds_main_medidayno_ret.setColumn(row, columnNm, dayCmtCnt[j]);
  539. }
  540. }
  541. ds_main_medidayno_ret.enableevent = true;
  542. grd_mediday.enableevent = true;
  543. grd_mediday.enableredraw = true;
  544. grd_mediday.vscrollbar.pos = 0;
  545. }
  546. /**
  547. * 투약이력그리드 초기화
  548. *
  549. */
  550. function fClrDrugHistGrid(){
  551. var totcol = grd_mediday.getFormatColCount();
  552. for(var i = totcol; i >= 1; i--){
  553. grd_mediday.deleteContentsCol(i);
  554. }
  555. }
  556. /**
  557. * 조회 기간 초기화
  558. *
  559. */
  560. function fInitSrchTerm(ioflag){
  561. if( ioflag == "O" ){
  562. //3개월전~현재까지 조회기간 설정
  563. ds_cond.setColumn(0, "termflag", "3");
  564. }else{
  565. //전일~현재까지 조회기간 설정
  566. ds_cond.setColumn(0, "termflag", "0"); //입원일~오늘-1일
  567. }
  568. fSettingSrchTerm();
  569. }
  570. /**
  571. * 조회 기간 설정
  572. *
  573. */
  574. function fSettingSrchTerm(){
  575. var number;
  576. var period;
  577. var termFlag = ds_cond.getColumn(0, "termflag");
  578. var currDD = utlf_getCurrentDate();
  579. switch( termFlag ){
  580. case "1" : //1일
  581. number = 1;
  582. period = "D";
  583. break;
  584. case "2" : //1개월
  585. number = 1;
  586. period = "M";
  587. break;
  588. case "3" : //3개월
  589. number = 3;
  590. period = "M";
  591. break;
  592. case "4" : //6개월
  593. number = 6;
  594. period = "M";
  595. break;
  596. case "5" : //9개월
  597. number = 9;
  598. period = "M";
  599. break;
  600. case "6" : //1년
  601. number = 1;
  602. period = "Y";
  603. break;
  604. case "0" : //입원일~전일
  605. number = 1;
  606. period = "D";
  607. break;
  608. }
  609. var fromdd, todd;
  610. var idate = new Date();
  611. if( termFlag == "0" ){
  612. fromdd = utlf_isNull(ds_paminfo.getColumnInfo("indd")) ? currDD : ds_paminfo.getColumn(0, "indd");
  613. todd = idate.getAddDate(parseInt(number) * -1, period).getDateFormat();
  614. }else{
  615. fromdd = idate.getAddDate(parseInt(number) * -1, period).getDateFormat();
  616. todd = currDD;
  617. }
  618. ds_cond.setColumn(0, "fromdd", fromdd);
  619. ds_cond.setColumn(0, "todd", todd);
  620. }
  621. function grd_medilist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  622. {
  623. if(e.row < 0) return;
  624. grdf_setSelectedCell(obj, e);
  625. pmn_menu.trackPopup(e.screenX,e.screenY);
  626. }
  627. function pmn_menu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  628. {
  629. eval(e.id + "()");
  630. }
  631. //약품편람
  632. function fDrugInfo() {
  633. var sDrugCd = ds_medilist.getColumn(ds_medilist.rowposition, "prcpcd");
  634. lf_DrugInfo(sDrugCd);
  635. }]]></Script>
  636. </Form>
  637. </FDL>