SMAEA00400_개인별처방이력조회.xfdl 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAEA00400" position="absolute 0 0 1201 805" titletext="개인별 처방이력 조회" oninit="model1_oninit" onload="SMAEA00400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="grp_btn" position="absolute 0 757 1195 784" anchor="default" positiontype="position">
  8. <Layouts>
  9. <Layout/>
  10. </Layouts>
  11. </Div>
  12. <Shape id="line13" class="line_4" position="absolute 1127 29 1127 51" anchor="default" positiontype="position" linetype="vertical"/>
  13. <Static id="caption6" text="개인별 처방이력 조회" class="tit_1" position="absolute 0 0 180 25" positiontype="position"/>
  14. <Div id="grp_sea" taborder="1" style="align:center top;" position="absolute 0 25 1200 65" class="div_SA" anchor="left top right" positiontype="position">
  15. <Layouts>
  16. <Layout>
  17. <Static id="caption1" text="적용일자" class="search_name" position="absolute 345 10 419 30" anchor="default" positiontype="position"/>
  18. <Button id="btn_sea" taborder="4" text="조회" onlbuttonup="btn_sea_onlbuttonup" class="btn1" position="absolute 1133 10 1189 30" anchor="top right" onclick="btn_sea_onclick" positiontype="position"/>
  19. <Calendar id="ipt_endrsrvdd" taborder="6" class="input_default" position="absolute 521 10 607 30" anchor="default" positiontype="position" dateformat="yyyy-MM-dd" autoselect="true"/>
  20. <Calendar id="ipt_startrsrvdd" taborder="9" class="input_default" position="absolute 419 10 505 30" onmouseenter="ipt_startrsrvdd_onmouseenter" anchor="default" positiontype="position" dateformat="yyyy-MM-dd" value="null" autoselect="true"/>
  21. <Combo id="cmb_deptcd" taborder="10" class="combo_default" position="absolute 740 10 938 30" anchor="default" innerdataset="@ds_suppdeptlist" codecolumn="suppdeptcd" datacolumn="depthngnm" positiontype="position" type="filter"/>
  22. <Static id="caption5" text="지원부서" class="search_name" position="absolute 666 10 740 30" anchor="default" positiontype="position"/>
  23. <Static id="caption21" text="~" position="absolute 508 11 523 31" anchor="default"/>
  24. <Static id="caption00" text="등록번호" class="search_name" position="absolute 8 10 82 30" anchor="default"/>
  25. <Edit id="ipt_pid" taborder="13" class="input_essential" position="absolute 81 11 185 31" onkeydown="grp_sea_ipt_pid_onkeydown" anchor="default" autoselect="true"/>
  26. <Button id="btn_pidsearch" taborder="14" class="icon_search" position="absolute 188 11 208 31" onclick="grp_sea_btn_pidsearch_onclick" anchor="default"/>
  27. <Edit id="ipt_patnm" taborder="15" class="output" position="absolute 216 11 320 31" onkeydown="grp_sea_ipt_patnm_onkeydown" anchor="default" readonly="true"/>
  28. </Layout>
  29. </Layouts>
  30. </Div>
  31. <Static id="caption14" text="개인별 처방이력 조회" class="tit_2" position="absolute 0 75 176 95" positiontype="position"/>
  32. <Grid id="grd_prcphist" taborder="2" useinputpanel="false" position="absolute 0 96 1200 804" anchor="all" binddataset="ds_grid_grd_prcphist" positiontype="position" onbuttondown="grd_prcphist_onbuttondown" onmouseleave="grd_prcphist_onmouseleave" onrbuttondown="grd_prcphist_onrbuttondown" autosizingtype="none" cellsizingtype="both" oncolresized="grd_prcphist_oncolresized" extendsizetype="row">
  33. <Formats>
  34. <Format id="default">
  35. <Columns>
  36. <Column size="30" band="left"/>
  37. <Column size="80"/>
  38. <Column size="30"/>
  39. <Column size="100"/>
  40. <Column size="273"/>
  41. <Column size="70"/>
  42. <Column size="70"/>
  43. <Column size="80"/>
  44. <Column size="120"/>
  45. <Column size="70"/>
  46. <Column size="80"/>
  47. <Column size="120"/>
  48. <Column size="120"/>
  49. <Column size="300"/>
  50. </Columns>
  51. <Rows>
  52. <Row size="22" band="head"/>
  53. <Row size="24"/>
  54. </Rows>
  55. <Band id="head">
  56. <Cell/>
  57. <Cell col="1" text="처방일자"/>
  58. <Cell col="2" text="I/O"/>
  59. <Cell col="3" text="처방코드"/>
  60. <Cell col="4" text="처방명"/>
  61. <Cell col="5" text="처방상태"/>
  62. <Cell col="6" text="진료의사"/>
  63. <Cell col="7" text="진료과"/>
  64. <Cell col="8" text="예약일시"/>
  65. <Cell col="9" text="수납일자"/>
  66. <Cell col="10" text="접수일자"/>
  67. <Cell col="11" text="실시일시"/>
  68. <Cell col="12" text="판독일자"/>
  69. <Cell col="13" text="검사실 정보"/>
  70. </Band>
  71. <Band id="body">
  72. <Cell celltype="head" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" expr="expr:currow + 1"/>
  73. <Cell col="1" displaytype="date" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:prcpdd" calendardisplaynulltype="nulltext"/>
  74. <Cell col="2" style="align:center middle;color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:prcpgenrflag"/>
  75. <Cell col="3" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:calcscorcd"/>
  76. <Cell col="4" style="align:left;color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:excucdnm" wordwrap="word"/>
  77. <Cell col="5" displaytype="combo" edittype="combo" style="padding:0 0 0 2;color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:execprcpstatcd" combodataset="ds_initexecprcpstatcd" combocodecol="cdid" combodatacol="cdnm"/>
  78. <Cell col="6" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:usernm"/>
  79. <Cell col="7" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:depthngnm"/>
  80. <Cell col="8" displaytype="normal" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:rsrvdd" wordwrap="word" mask="expr:utlf_isNull(rsrvdd)?'':'####-##-## ##:##'"/>
  81. <Cell col="9" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:rcptdd" mask="expr:utlf_isNull(rcptdd)?'':'####-##-##'"/>
  82. <Cell col="10" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:acptdd" mask="expr:utlf_isNull(acptdd)?'':'####-##-##'"/>
  83. <Cell col="11" displaytype="normal" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:excuexectodt" mask="expr:utlf_isNull(excuexectodt)?'':'####-##-## ##:##'"/>
  84. <Cell col="12" displaytype="normal" style="color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:cnfmdt" mask="expr:utlf_isNull(cnfmdt)?'':'####-##-## ##:##'"/>
  85. <Cell col="13" style="align:left middle;color:EXPR(prcphistcd == 'C' ? '#ff0000': '');color2:EXPR(prcphistcd == 'C' ? '#ff0000': '');" text="bind:acptrem"/>
  86. </Band>
  87. </Format>
  88. </Formats>
  89. </Grid>
  90. <Button id="btn_excsave" taborder="3" text="엑셀저장" class="btn7" position="absolute 1121 68 1200 91" anchor="top right" positiontype="position" onclick="btn_excsave_onclick"/>
  91. <Button id="btn_prt" taborder="4" text="출력" class="btn6" visible="false" position="absolute 0 784 56 804" anchor="left bottom" positiontype="position"/>
  92. <Shape id="line2" class="line_10" position="absolute 0 91 1200 97" anchor="left top right"/>
  93. </Layout>
  94. </Layouts>
  95. <Objects>
  96. <Dataset id="ds_grid_grd_prcphist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  97. <ColumnInfo>
  98. <Column id="prcpdd" type="STRING"/>
  99. <Column id="prcpgenrflag" type="STRING"/>
  100. <Column id="prcpcd" type="STRING"/>
  101. <Column id="calcscorcd" type="STRING"/>
  102. <Column id="excucdnm" type="STRING"/>
  103. <Column id="prcphistcd" type="STRING"/>
  104. <Column id="execprcpstatcd" type="STRING"/>
  105. <Column id="usernm" type="STRING"/>
  106. <Column id="depthngnm" type="STRING"/>
  107. <Column id="payflagcd" type="STRING"/>
  108. <Column id="sna" type="STRING"/>
  109. <Column id="rrgstno" type="STRING"/>
  110. <Column id="rsrvdd" type="STRING"/>
  111. <Column id="rsrvnm" type="STRING"/>
  112. <Column id="rcptdd" type="STRING"/>
  113. <Column id="acptdd" type="STRING"/>
  114. <Column id="excuexectodt" type="STRING"/>
  115. <Column id="cnfmdt" type="STRING"/>
  116. <Column id="acptrem" type="STRING"/>
  117. <Column id="excuroomcdnm" type="STRING"/>
  118. <Column id="execrid1" type="STRING"/>
  119. </ColumnInfo>
  120. </Dataset>
  121. <Dataset id="ds_suppdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  122. <ColumnInfo>
  123. <Column id="suppdeptcd" type="STRING" size="256"/>
  124. <Column id="depthngnm" type="STRING" size="256"/>
  125. </ColumnInfo>
  126. </Dataset>
  127. <Dataset id="ds_init_initprcphistcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  128. <ColumnInfo>
  129. <Column id="cdid" type="STRING" size="256"/>
  130. <Column id="cdnm" type="STRING" size="256"/>
  131. </ColumnInfo>
  132. </Dataset>
  133. <Dataset id="ds_init_initexecprcpstatcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  134. <ColumnInfo>
  135. <Column id="cdid" type="STRING" size="256"/>
  136. <Column id="cdnm" type="STRING" size="256"/>
  137. </ColumnInfo>
  138. </Dataset>
  139. <Dataset id="ds_init_initpayflagcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  140. <ColumnInfo>
  141. <Column id="cdid" type="STRING" size="256"/>
  142. <Column id="cdnm" type="STRING" size="256"/>
  143. </ColumnInfo>
  144. </Dataset>
  145. <Dataset id="ds_patinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  146. <ColumnInfo>
  147. <Column id="pid" type="STRING" size="256"/>
  148. <Column id="hngnm" type="STRING" size="256"/>
  149. </ColumnInfo>
  150. </Dataset>
  151. <Dataset id="ds_data_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  152. <Dataset id="ds_dcyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  153. <ColumnInfo>
  154. <Column id="label" type="STRING" size="256"/>
  155. <Column id="value" type="STRING" size="256"/>
  156. </ColumnInfo>
  157. <Rows>
  158. <Row>
  159. <Col id="label">Y</Col>
  160. <Col id="value">Y</Col>
  161. </Row>
  162. <Row>
  163. <Col id="label">N</Col>
  164. <Col id="value">N</Col>
  165. </Row>
  166. </Rows>
  167. </Dataset>
  168. <Dataset id="ds_srchddyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  169. <ColumnInfo>
  170. <Column id="label" type="STRING" size="256"/>
  171. <Column id="value" type="STRING" size="256"/>
  172. </ColumnInfo>
  173. <Rows>
  174. <Row>
  175. <Col id="label">Y</Col>
  176. <Col id="value">Y</Col>
  177. </Row>
  178. <Row>
  179. <Col id="label">N</Col>
  180. <Col id="value">N</Col>
  181. </Row>
  182. </Rows>
  183. </Dataset>
  184. <Dataset id="ds_hidden_param" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  185. <ColumnInfo>
  186. <Column id="pathngnm" type="STRING" size="256"/>
  187. </ColumnInfo>
  188. </Dataset>
  189. </Objects>
  190. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  191. * System Name :
  192. * Job Name :
  193. * File Name : SMAEA00400_개인별처방이력조회.xfdl
  194. * Creator :
  195. * Make Date :
  196. *
  197. * Description :
  198. *---------------------------------------------------------------------------------------
  199. * Modify Date Modifier Modify Description
  200. *---------------------------------------------------------------------------------------
  201. *
  202. *---------------------------------------------------------------------------------------
  203. ****************************************************************************************/
  204. //=======================================================================================
  205. // xjs Include
  206. //---------------------------------------------------------------------------------------
  207. include "com_commonxp::comm_main.xjs";
  208. include "ast_examcurexp::AEZ0001.xjs";
  209. include "com_basiccodexp::ZBC001.xjs";
  210. //=======================================================================================
  211. // Function
  212. //---------------------------------------------------------------------------------------
  213. var lv_suppdeptcd="";
  214. //지원부서 조회
  215. function f_TRAEA00904()
  216. {
  217. dsf_createDsRow("ds_sup_req",
  218. [{col:"basesuppdeptcd", val:lv_suppdeptcd}
  219. ]);
  220. var oParam = new Object();
  221. oParam.id = "TRAEA00904";
  222. oParam.service = "examcurersrvapp.RsrvRef";
  223. oParam.method = "reqGetSuppDeptCdList";
  224. oParam.inds = "req=ds_sup_req";
  225. oParam.outds ="ds_suppdeptlist=item";
  226. //oParam.callback = "cbf_TRAEA00904";
  227. tranf_submit(oParam);
  228. }
  229. // 조회
  230. function f_TRAEA00401()
  231. {
  232. dsf_createDsRow("ds_sch_req",
  233. [{col:"pid", val:grp_sea.ipt_pid.value}
  234. ,{col:"prcpfromdd", val:grp_sea.ipt_startrsrvdd.value}
  235. ,{col:"prcptodd", val:grp_sea.ipt_endrsrvdd.value}
  236. ,{col:"suppdeptcd", val:grp_sea.cmb_deptcd.value}
  237. ]);
  238. var oParam = new Object();
  239. oParam.id = "TRAEA00401";
  240. oParam.service = "examcureacptexecapp.ExamCurePrcs";
  241. oParam.method = "reqGetPidPrcpHistList";
  242. oParam.inds = "req=ds_sch_req";
  243. oParam.outds ="ds_grid_grd_prcphist=prcplist";
  244. oParam.callback = "cbf_TRAEA00401";
  245. tranf_submit(oParam);
  246. }
  247. function cbf_TRAEA00401(sSvcId, objErrorCode, objErrorMsg)
  248. {
  249. if(ds_grid_grd_prcphist.getRowCount() == 0)
  250. {
  251. sysf_messageBox("입력하신 등록번호/일자에 해당하는 환자의 처방이력이 DB에 존재하지 않습니다.", "I999");
  252. }
  253. else
  254. {
  255. for(var i = 0; i < ds_grid_grd_prcphist.getRowCount(); i++)
  256. {
  257. ds_hidden_param.setColumn(i, "pathngnm", ds_grid_grd_prcphist.getColumn(i, "hngnm"));
  258. }
  259. }
  260. }
  261. //=======================================================================================
  262. // Event
  263. //---------------------------------------------------------------------------------------
  264. /****************************************************************************************
  265. * Components :
  266. * Components ID : SMAEA00400
  267. * Event : onload
  268. * Argument : 01.obj : Object Event has occurred
  269. * : 02.e : Event Object
  270. * Description :
  271. ****************************************************************************************/
  272. function SMAEA00400_onload(obj:Form, e:LoadEventInfo)
  273. {
  274. frmf_initForm(obj); // 화면공통
  275. grdf_initGrid(grd_prcphist);
  276. var pid = "";
  277. if (frmf_checkOpener()) {
  278. suppdeptcd = opener.frmf_getParameter("SMPEA00100_suppdeptcd");
  279. // 통합 예약에서 전달받은 pid 확인
  280. pid = opener.frmf_getParameter("SMPEA00100_pid");
  281. }
  282. // if( utlf_isNull(suppdeptcd))
  283. // {
  284. // suppdeptcd = frmf_getMenuParam();
  285. // }
  286. if (utlf_isNull(suppdeptcd))
  287. {
  288. lf_aezfSetSuppDeptcd();
  289. }
  290. //지원부서 조회
  291. f_TRAEA00904();
  292. //2.0 필요시 적용해야함
  293. // if( instance1.selectSingleNode("/root/init/cmb_info/suppdeptlist/suppdept[suppdeptcd='" + instance + "']") == null ){
  294. // model.setValue("root/send/suppdeptcd" , "2180000000"); //지원부서코드에 해당되지않으면 기본 핵의학과로 보여줌(공통으로뺄것임) - 박재영
  295. // model.setValue("/root/send/globalinstance/instance1", model.getValue("/root/send/suppdeptcd"));
  296. //
  297. // }else{
  298. // model.setValue("root/send/suppdeptcd" , instance); //지원부서코드에 해당되지않으면 기본 핵의학과로 보여줌(공통으로뺄것임) - 박재영);
  299. // }
  300. grp_sea.cmb_deptcd.value = suppdeptcd;
  301. var arrParam = [{dsNm: "ds_initexecprcpstatcd", cdGrpId: "M0011"}
  302. ,{dsNm: "ds_init_initprcphistcd", cdGrpId: "M0009"}
  303. ,{dsNm: "ds_init_initpayflagcd", cdGrpId: "M0029"}
  304. ]
  305. appf_getCodeList(arrParam);
  306. //3개월 전후 검사일 default
  307. var tempfrom1 = utlf_getCurrentDate().toDate();
  308. var tempfrom = tempfrom1.getAddDate(-2,"M").getDateFormat("YYYYMMDD");
  309. grp_sea.ipt_startrsrvdd.value = tempfrom;
  310. var tempfrom2 = utlf_getCurrentDate();
  311. grp_sea.ipt_endrsrvdd.value = tempfrom2;
  312. lf_init_SMAEA00400();//그리드 마우스 우클릭
  313. if (!utlf_isNull(pid)) {
  314. grp_sea.ipt_pid.value = pid;
  315. }
  316. if(utlf_isNull(grp_sea.ipt_pid.value) == false)
  317. {
  318. grp_sea.btn_sea.click();
  319. }
  320. else
  321. {
  322. var pamInfoCSV = sysf_getGlobalVariable("paminfo");//프로그램에 따라 원무정보(paminfo), 환자기본정보(patflag) get
  323. var gv_pid = sysf_getGlobalVariable("pid");//글로벌변수로 넘겨준 등록번호값
  324. var gv_hngnm = sysf_getGlobalVariable("hngnm");//글로벌변수로 넘겨준 등록번호값
  325. //원무 정보(기본 정보)가 있는 경우
  326. if(!utlf_isNull(pamInfoCSV))
  327. {
  328. dsf_setCSVToDs("ds_data_paminfo",pamInfoCSV);
  329. //상단 정보를 이용하여 프로그램 수행
  330. grp_sea.ipt_pid.value = ds_data_paminfo.getColumn(0, "pid");
  331. grp_sea.ipt_patnm.value = ds_data_paminfo.getColumn(0, "hngnm");
  332. grp_sea.btn_sea.click();
  333. }
  334. //글로벌변수(등록번호)가 있는경우
  335. if(!utlf_isNull(gv_pid))
  336. {
  337. grp_sea.ipt_pid.value = gv_pid;
  338. grp_sea.ipt_patnm.value = gv_hngnm;
  339. grp_sea.btn_sea.click();
  340. }
  341. }
  342. }
  343. /****************************************************************************************
  344. * Components :
  345. * Components ID : btn_sea
  346. * Event : onclick
  347. * Argument : 01.obj : Object Event has occurred
  348. * : 02.e : Event Object
  349. * Description :
  350. ****************************************************************************************/
  351. function btn_sea_onclick(obj:Button, e:ClickEventInfo)
  352. {
  353. var tpid = grp_sea.ipt_pid.value;
  354. var tfrdt = grp_sea.ipt_startrsrvdd.value;
  355. var ttodt = grp_sea.ipt_endrsrvdd.value;
  356. if(utlf_isNull(tpid) == true)
  357. {
  358. sysf_messageBox("필수입력사항인 등록번호를 입력해 주십시오.", "I999");
  359. }
  360. else if(utlf_isNull(tfrdt) == true && utlf_isNull(ttodt) == false)
  361. {
  362. sysf_messageBox("검색하실 날짜 범위의 시작일자를 입력해 주십시오." , "I999");
  363. grp_sea.ipt_startrsrvdd.setFocus();
  364. }
  365. else if(utlf_isNull(tfrdt) == false && utlf_isNull(ttodt) == true)
  366. {
  367. sysf_messageBox("검색하실 날짜 범위의 마지막 일자를 입력해 주십시오." , "I999");
  368. grp_sea.ipt_endrsrvdd.setFocus();
  369. }
  370. else
  371. {
  372. f_TRAEA00401();
  373. }
  374. }
  375. /****************************************************************************************
  376. * Components :
  377. * Components ID : btn_excsave
  378. * Event : onclick
  379. * Argument : 01.obj : Object Event has occurred
  380. * : 02.e : Event Object
  381. * Description :
  382. ****************************************************************************************/
  383. function btn_excsave_onclick(obj:Button, e:ClickEventInfo)
  384. {
  385. if(ds_grid_grd_prcphist.getRowCount() <= 0)
  386. {
  387. sysf_messageBox("엑셀파일로 저장할 리스트 내역이", "I004");
  388. return;
  389. }
  390. else
  391. {
  392. grdf_exportExcel(grd_prcphist, "개인별처방이력", "sheet1");
  393. }
  394. }
  395. /****************************************************************************************
  396. * Components :
  397. * Components ID : grd_prcphist
  398. * Event : onrbuttondown
  399. * Argument : 01.obj : Object Event has occurred
  400. * : 02.e : Event Object
  401. * Description : 그리드 마우스 우클릭시 처방명 클립보드 형태로 복사
  402. ****************************************************************************************/
  403. function grd_prcphist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  404. {
  405. this.ds_grid_grd_prcphist.rowposition = e.row;
  406. pmn_popupMenu.trackPopup(e.screenX,e.screenY);
  407. }
  408. function lf_init_SMAEA00400()
  409. {
  410. frmf_createPopupMenu("pmn_popupMenu", "pmn_popupMenu_onmenuclick", [{id: "lf_pidCopy", level: "1", title: "복사하기"}]);
  411. }
  412. function pmn_popupMenu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  413. {
  414. lf_pidCopy();
  415. }
  416. function lf_pidCopy()
  417. {
  418. varCol = ds_grid_grd_prcphist.getColumn(ds_grid_grd_prcphist.rowposition,"excucdnm");
  419. system.setClipboard("CF_TEXT", varCol);
  420. }
  421. function grd_prcphist_oncolresized(obj:Grid, e:GridSizeChangedEventInfo)
  422. {
  423. if(e.newvalue == 0){
  424. obj.setRealColSize(e.subindex, 1);
  425. }
  426. }
  427. function grp_sea_btn_pidsearch_onclick(obj:Button, e:ClickEventInfo)
  428. {
  429. //dsf_createDs("ds_patinfolist");
  430. dsf_createDsRow("ds_send_srchpid", [{col: "srchpid", val:utlf_transNullToEmpty(grp_sea.ipt_pid.value)}
  431. ]);
  432. var objArg = new Object();
  433. objArg.arg_ds_send = ds_send_srchpid;
  434. // 환자조회화면 호출
  435. frmf_modal("SPPMC02500", "SPPMC02500", objArg, "", "", "", "", "", "", "", "", "", "M");
  436. grp_sea.ipt_pid.value = ds_patinfolist.getColumn(0,"pid");
  437. grp_sea.ipt_patnm.value = ds_patinfolist.getColumn(0,"hngnm");
  438. }
  439. function grp_sea_ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  440. {
  441. if(e.keycode == 13) {
  442. obj.updateToDataset();
  443. var pid = obj.value;
  444. if(utlf_isNull(pid)){
  445. sysf_messageBox("환자를 지정하지", "E007")
  446. return ;
  447. }
  448. dsf_createDsRow("ds_send_req", [{col: "pid", val:utlf_transNullToEmpty(pid)}
  449. ]);
  450. //환자정보 조회
  451. var oParam = {};
  452. oParam.id = "TRAEA00204";
  453. oParam.service = "examcurersrvapp.RsrvRef";
  454. oParam.method = "reqGetPatInfo";
  455. oParam.inds = "req=ds_send_req";
  456. oParam.outds = "ds_patinfolist=patinfolist";
  457. oParam.async = false;
  458. oParam.callback = "cf_TRAEA00204";
  459. tranf_submit(oParam);
  460. grp_sea.btn_sea.click();
  461. }
  462. }
  463. function cf_TRAEA00204(sSvcId, nErrorCode, sErrorMsg) {
  464. if(nErrorCode < 0) return;
  465. grp_sea.ipt_patnm.value = ds_patinfolist.getColumn(0,"hngnm");
  466. }
  467. function grp_sea_ipt_patnm_onkeydown(obj:Edit, e:KeyEventInfo)
  468. {
  469. var _str = grp_sea.ipt_pid.text;
  470. if ( _str.isNumber() == false ) {
  471. sysf_messageBox("등록번호는 숫자만 입력이 가능합니다.", "I999");
  472. grp_sea.ipt_pid.value = "";
  473. }
  474. grp_sea.btn_sea.click();
  475. }
  476. ]]></Script>
  477. </Form>
  478. </FDL>