SMAEB00400_원내판독코드관리.xfdl 57 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAEB00400" classname="SMAEB00400" inheritanceid="" position="absolute 0 0 1196 768" titletext="원내판독코드관리" onload="SMAEB00400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption1" text="원내판독 코드관리" class="tit_1" position="absolute 0 0 160 27"/>
  8. <Div id="grp_srch" taborder="16" class="div_SA" position="absolute 0 27 1195 67">
  9. <Layouts>
  10. <Layout>
  11. <CheckBox id="chk_includeEnd" taborder="0" text="삭제포함" position="absolute 580 11 680 31" truevalue="Y" falsevalue="N" visible="false"/>
  12. </Layout>
  13. </Layouts>
  14. </Div>
  15. <Static id="cap_send_rulecd" text="판독 코드명 " class="search_name" position="absolute 14 40 100 57"/>
  16. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1108 37 1114 59"/>
  17. <Button id="btn_sea" taborder="17" text="조회" class="btn1" position="absolute 1127 37 1183 58" onclick="btn_sea_onclick"/>
  18. <Grid id="grd_aebmrulelist" taborder="19" useinputpanel="false" position="absolute 0 96 348 767" binddataset="ds_main_aebmrulelist" oncellclick="grd_aebmrulelist_oncellclick" autofittype="col" onrbuttondown="grd_aebmrulelist_onrbuttondown" cellsizingtype="both">
  19. <Formats>
  20. <Format id="default">
  21. <Columns>
  22. <Column size="25" band="left"/>
  23. <Column size="0"/>
  24. <Column size="0"/>
  25. <Column size="80"/>
  26. <Column size="0"/>
  27. <Column size="80"/>
  28. <Column size="243"/>
  29. <Column size="0"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. </Columns>
  37. <Rows>
  38. <Row size="24" band="head"/>
  39. <Row size="24"/>
  40. </Rows>
  41. <Band id="head">
  42. <Cell/>
  43. <Cell col="1" displaytype="normal" text="기관코드"/>
  44. <Cell col="2" displaytype="normal" text="사용부서"/>
  45. <Cell col="3" displaytype="normal" text="종료일자"/>
  46. <Cell col="4" displaytype="normal" text="시작일자"/>
  47. <Cell col="5" text="판독코드" taborder="undefined"/>
  48. <Cell col="6" text="판독코드명" taborder="undefined"/>
  49. <Cell col="7" displaytype="normal" text="제어코드 메시지"/>
  50. <Cell col="8" displaytype="normal" text="SECTION"/>
  51. <Cell col="9" displaytype="normal" text="MODALITY"/>
  52. <Cell col="10" displaytype="normal" text="입원/외래구분"/>
  53. <Cell col="11" displaytype="normal" text="원내판독여부"/>
  54. <Cell col="12" displaytype="normal" text="해당진료과"/>
  55. <Cell col="13" displaytype="normal" text="전달사항"/>
  56. </Band>
  57. <Band id="body">
  58. <Cell celltype="head" text="expr:currow+1"/>
  59. <Cell col="1" displaytype="normal" text="bind:instcd"/>
  60. <Cell col="2" displaytype="normal" text="bind:suppdeptcd"/>
  61. <Cell col="3" displaytype="normal" text="bind:todd"/>
  62. <Cell col="4" displaytype="normal" text="bind:fromdd"/>
  63. <Cell col="5" displaytype="text" text="bind:rulecd"/>
  64. <Cell col="6" displaytype="text" text="bind:rulenm"/>
  65. <Cell col="7" displaytype="normal" text="bind:rulemsg"/>
  66. <Cell col="8" displaytype="normal" text="bind:section"/>
  67. <Cell col="9" displaytype="normal" text="bind:modality"/>
  68. <Cell col="10" displaytype="normal" text="bind:ioflag"/>
  69. <Cell col="11" displaytype="normal" text="bind:insideyn"/>
  70. <Cell col="12" displaytype="normal" text="bind:acptdeptcd"/>
  71. <Cell col="13" displaytype="normal" text="bind:crtrem"/>
  72. </Band>
  73. </Format>
  74. </Formats>
  75. </Grid>
  76. <Static id="caption00" text="원내판독코드" class="tit_2" position="absolute 0 75 152 93"/>
  77. <Shape id="line1" class="line_10" position="absolute 0 91 1195 97"/>
  78. <Shape id="line00" class="line_10" position="absolute 352 263 1195 269"/>
  79. <Shape id="input_box" position="absolute 353 96 1195 239" class="roundrect_search" type="rectangle"/>
  80. <Static id="cap_rulecd" text="판독 코드 " class="cell_1" position="absolute 361 104 447 127"/>
  81. <Edit id="ipt_rulecd" taborder="0" class="input_essential" position="absolute 451 105 532 126" useime="none" enable="false"/>
  82. <Static id="cap_rulenm" text="판독 코드명" class="cell_1" position="absolute 536 104 622 127"/>
  83. <Edit id="ipt_rulenm" taborder="1" class="input_essential" position="absolute 626 105 902 126"/>
  84. <Static id="cap_fromdd" text="시작일자" class="cell_1" position="absolute 996 130 1082 153"/>
  85. <Calendar id="cal_fromdd" taborder="3" position="absolute 1086 131 1186 153" class="input_essential" dateformat="yyyy-MM-dd" value="null"/>
  86. <Static id="cap_rulemsg" text="메시지" class="cell_1" position="absolute 361 130 447 179"/>
  87. <Static id="cap_section" text="SECTION" class="cell_1" position="absolute 361 182 447 205"/>
  88. <TextArea id="txt_rulemsg" taborder="2" position="absolute 451 131 992 178" wordwrap="char" class="input_essential" style="padding:5 5 5 5;align:left top;"/>
  89. <Combo id="cmb_section" taborder="5" position="absolute 451 183 604 204" index="-1" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_essential">
  90. <Dataset id="innerdataset">
  91. <ColumnInfo>
  92. <Column id="codecolumn" size="256"/>
  93. <Column id="datacolumn" size="256"/>
  94. </ColumnInfo>
  95. <Rows>
  96. <Row>
  97. <Col id="codecolumn">Chest</Col>
  98. <Col id="datacolumn">Chest</Col>
  99. </Row>
  100. <Row>
  101. <Col id="codecolumn">Abdomen</Col>
  102. <Col id="datacolumn">Abdomen</Col>
  103. </Row>
  104. <Row>
  105. <Col id="codecolumn">Neuro</Col>
  106. <Col id="datacolumn">Neuro</Col>
  107. </Row>
  108. <Row>
  109. <Col id="codecolumn">Urogenital</Col>
  110. <Col id="datacolumn">Urogenital</Col>
  111. </Row>
  112. <Row>
  113. <Col id="codecolumn">MS</Col>
  114. <Col id="datacolumn">MS</Col>
  115. </Row>
  116. <Row>
  117. <Col id="codecolumn">Pediatrics</Col>
  118. <Col id="datacolumn">Pediatrics</Col>
  119. </Row>
  120. <Row>
  121. <Col id="codecolumn">Breast</Col>
  122. <Col id="datacolumn">Breast</Col>
  123. </Row>
  124. <Row>
  125. <Col id="codecolumn">Others</Col>
  126. <Col id="datacolumn">Others</Col>
  127. </Row>
  128. <Row>
  129. <Col id="codecolumn">ALL</Col>
  130. <Col id="datacolumn">전체</Col>
  131. </Row>
  132. </Rows>
  133. </Dataset>
  134. </Combo>
  135. <Combo id="cmb_modality" taborder="6" position="absolute 698 183 798 204" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_essential">
  136. <Dataset id="innerdataset">
  137. <ColumnInfo>
  138. <Column id="codecolumn" size="256"/>
  139. <Column id="datacolumn" size="256"/>
  140. </ColumnInfo>
  141. <Rows>
  142. <Row>
  143. <Col id="codecolumn">CR</Col>
  144. <Col id="datacolumn">CR</Col>
  145. </Row>
  146. <Row>
  147. <Col id="codecolumn">CT</Col>
  148. <Col id="datacolumn">CT</Col>
  149. </Row>
  150. <Row>
  151. <Col id="codecolumn">MR</Col>
  152. <Col id="datacolumn">MR</Col>
  153. </Row>
  154. <Row>
  155. <Col id="codecolumn">XA</Col>
  156. <Col id="datacolumn">XA</Col>
  157. </Row>
  158. <Row>
  159. <Col id="codecolumn">US</Col>
  160. <Col id="datacolumn">US</Col>
  161. </Row>
  162. <Row>
  163. <Col id="codecolumn">RF</Col>
  164. <Col id="datacolumn">RF</Col>
  165. </Row>
  166. <Row>
  167. <Col id="codecolumn">MG</Col>
  168. <Col id="datacolumn">MG</Col>
  169. </Row>
  170. <Row>
  171. <Col id="codecolumn">ALL</Col>
  172. <Col id="datacolumn">전체</Col>
  173. </Row>
  174. </Rows>
  175. </Dataset>
  176. </Combo>
  177. <Static id="cap_modality" text="MODALITY" class="cell_1" position="absolute 608 182 694 205"/>
  178. <Static id="cap_ioflag" text="입/외 구분" class="cell_1" position="absolute 802 182 888 205"/>
  179. <Combo id="cmb_ioflag" taborder="7" position="absolute 892 183 992 204" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_essential">
  180. <Dataset id="innerdataset">
  181. <ColumnInfo>
  182. <Column id="codecolumn" size="256"/>
  183. <Column id="datacolumn" size="256"/>
  184. </ColumnInfo>
  185. <Rows>
  186. <Row>
  187. <Col id="codecolumn">I</Col>
  188. <Col id="datacolumn">입원</Col>
  189. </Row>
  190. <Row>
  191. <Col id="codecolumn">O</Col>
  192. <Col id="datacolumn">외래</Col>
  193. </Row>
  194. <Row>
  195. <Col id="codecolumn">O^I^S^E^D</Col>
  196. <Col id="datacolumn">전체</Col>
  197. </Row>
  198. </Rows>
  199. </Dataset>
  200. </Combo>
  201. <Static id="cap_insideyn" text="원내판독여부" class="cell_1" position="absolute 996 182 1082 205"/>
  202. <Combo id="cmb_insideyn" taborder="8" position="absolute 1086 183 1186 204" codecolumn="codecolumn" datacolumn="datacolumn" enable="false">
  203. <Dataset id="innerdataset">
  204. <ColumnInfo>
  205. <Column id="codecolumn" size="256"/>
  206. <Column id="datacolumn" size="256"/>
  207. </ColumnInfo>
  208. <Rows>
  209. <Row>
  210. <Col id="codecolumn">Y</Col>
  211. <Col id="datacolumn">예</Col>
  212. </Row>
  213. <Row>
  214. <Col id="codecolumn">N</Col>
  215. <Col id="datacolumn">아니오</Col>
  216. </Row>
  217. </Rows>
  218. </Dataset>
  219. </Combo>
  220. <Static id="cap_acptdeptnm" class="cell_1" position="absolute 361 208 447 231" text="진료과"/>
  221. <Edit id="opt_acptdeptnm" taborder="21" readonly="true" class="output" position="absolute 451 209 727 230"/>
  222. <Button id="btn_acptdeptcd" taborder="22" class="icon_search" position="absolute 729 211 745 227" onclick="btn_acptdeptcd_onclick"/>
  223. <Static id="cap_crtrem" text="전달사항" class="cell_1" position="absolute 749 208 835 231"/>
  224. <Static id="caption13" text="원내판독 처방코드" class="tit_2" position="absolute 353 247 505 265"/>
  225. <Grid id="grd_aebmrudtlist" taborder="23" useinputpanel="false" position="absolute 353 268 1195 767" binddataset="ds_main_aebmrudtlist" autoenter="select" onexpandup="grd_aebmrudtlist_onexpandup" onenterdown="grd_aebmrudtlist_onenterdown" onkeydown="grd_aebmrudtlist_onkeydown" onkeyup="grd_aebmrudtlist_onkeyup" onlbuttondown="grd_aebmrudtlist_onlbuttondown" autoupdatetype="none" selecttype="multirow" onrbuttondown="grd_aebmrudtlist_onrbuttondown" autosizingtype="none" cellsizingtype="both">
  226. <Formats>
  227. <Format id="default">
  228. <Columns>
  229. <Column size="25" band="left"/>
  230. <Column size="0"/>
  231. <Column size="28"/>
  232. <Column size="100"/>
  233. <Column size="189"/>
  234. <Column size="0"/>
  235. <Column size="99"/>
  236. <Column size="0"/>
  237. <Column size="89"/>
  238. <Column size="0"/>
  239. <Column size="0"/>
  240. <Column size="266"/>
  241. <Column size="71"/>
  242. <Column size="86"/>
  243. <Column size="72"/>
  244. <Column size="91"/>
  245. <Column size="75"/>
  246. <Column size="80"/>
  247. </Columns>
  248. <Rows>
  249. <Row size="31" band="head"/>
  250. <Row size="24"/>
  251. </Rows>
  252. <Band id="head">
  253. <Cell/>
  254. <Cell col="1"/>
  255. <Cell col="2"/>
  256. <Cell col="3" displaytype="normal" text="처방코드" taborder="undefined"/>
  257. <Cell col="4" displaytype="normal" text="처방명" taborder="undefined"/>
  258. <Cell col="5" displaytype="normal" text="suppdeptcd"/>
  259. <Cell col="6" displaytype="normal" text="시작일자"/>
  260. <Cell col="7" displaytype="normal" text="rulecd"/>
  261. <Cell col="8" displaytype="normal" text="종료일자"/>
  262. <Cell col="9" displaytype="normal" text="instcd"/>
  263. <Cell col="10" text="원래종료일자"/>
  264. <Cell col="11" displaytype="normal" text="비고"/>
  265. <Cell col="12" text="최초등록자"/>
  266. <Cell col="13" text="최초등록일자"/>
  267. <Cell col="14" text="최종수정자"/>
  268. <Cell col="15" text="최종수정일자"/>
  269. <Cell col="16" text="확정등록자"/>
  270. <Cell col="17" text="확정일자"/>
  271. </Band>
  272. <Band id="body">
  273. <Cell celltype="head"/>
  274. <Cell col="1" displaytype="combo" edittype="none" style="align:center;" text="bind:status" combodataset="ds_combo_status" combocodecol="value" combodatacol="label"/>
  275. <Cell col="2" displaytype="checkbox" edittype="checkbox" text="bind:chk" expr="expr : (chk==&quot;Y&quot;||chk==1)?1:0"/>
  276. <Cell col="3" displaytype="text" edittype="expr:getRowType(currow) == '2' ? 'text' : 'none'" text="bind:calcscorcd" editautoselect="true" expandshow="show"/>
  277. <Cell col="4" displaytype="text" text="bind:calcscorcdnm" editautoselect="true"/>
  278. <Cell col="5" displaytype="normal" text="bind:suppdeptcd" editautoselect="true"/>
  279. <Cell col="6" displaytype="date" edittype="date" text="bind:fromdd" editautoselect="true" calendardisplay="display"/>
  280. <Cell col="7" displaytype="normal" text="bind:rulecd" editautoselect="true"/>
  281. <Cell col="8" displaytype="date" edittype="date" text="bind:todd" editautoselect="true" calendardisplay="display"/>
  282. <Cell col="9" displaytype="normal" text="bind:instcd" editautoselect="true"/>
  283. <Cell col="10" text="bind:orgtodd"/>
  284. <Cell col="11" displaytype="text" edittype="text" text="bind:remark" editautoselect="true"/>
  285. <Cell col="12" text="bind:fstrgstrid"/>
  286. <Cell col="13" displaytype="date" text="bind:fstrgstdt"/>
  287. <Cell col="14" text="bind:lastupdtrid"/>
  288. <Cell col="15" displaytype="date" text="bind:lastupdtdt"/>
  289. <Cell col="16" text="bind:cnfmmanid"/>
  290. <Cell col="17" displaytype="date" text="bind:cnfmdt"/>
  291. </Band>
  292. </Format>
  293. </Formats>
  294. </Grid>
  295. <Static id="cap_todd" text="종료일자" class="cell_1" position="absolute 996 156 1082 179"/>
  296. <Calendar id="cal_todd" taborder="4" class="input_essential" position="absolute 1086 156 1186 178" dateformat="yyyy-MM-dd" enable="true"/>
  297. <Button id="btn_new" taborder="10" text="신규" class="btn2" position="absolute 1054 69 1099 91" onclick="btn_new_onclick"/>
  298. <Button id="btn_save" taborder="11" text="저장" class="btn2" position="absolute 1102 69 1147 91" onclick="btn_save_onclick"/>
  299. <Button id="btn_del" taborder="12" text="삭제" class="btn2" position="absolute 1150 69 1195 91" onclick="btn_del_onclick"/>
  300. <Button id="btn_addrow" taborder="13" text="행추가" class="btn2" position="absolute 862 241 915 263" onclick="btn_addrow_onclick"/>
  301. <Button id="btn_delrow" taborder="14" text="행삭제" class="btn2" position="absolute 918 241 971 263" onclick="btn_delrow_onclick"/>
  302. <Button id="btn_savedetl" taborder="15" text="저장" class="btn2" position="absolute 974 241 1019 263" onclick="btn_savedetl_onclick"/>
  303. <cp_checkboxList id="chk_acptdeptnm" titletext="CheckBox List" taborder="20" scrollbars="none" visible="false" position="absolute 451 230 634 253" style="background:lightgrey;" col="2" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  304. <Edit id="ipt_send_rulecd" taborder="18" class="input_search" position="absolute 106 38 265 57" onkeydown="ipt_send_rulecd_onkeydown"/>
  305. <TextArea id="txt_crtrem" taborder="9" wordwrap="char" position="absolute 839 209 1186 230" oneditclick="txt_crtrem_oneditclick" onmouseleave="txt_crtrem_onmouseleave" style="align:left top;"/>
  306. <Button id="btn_code" taborder="24" text="처방코드추가" class="btn3" position="absolute 758 241 859 263" onclick="btn_code_onclick"/>
  307. <Static id="caption5" text="지원부서 :" class="search_name" position="absolute 309 40 395 57"/>
  308. <Combo id="cmb_send_suppdeptcd" taborder="25" innerdataset="ds_init_cmb_suppdept" codecolumn="suppdeptcd" datacolumn="depthngnm" position="absolute 394 38 567 57"/>
  309. <Static id="cap_suppdeptcd" text="지원부서" class="cell_1" position="absolute 906 104 992 127"/>
  310. <Combo id="cmb_suppdeptcd" taborder="26" innerdataset="ds_init_cmb_suppdept" codecolumn="suppdeptcd" datacolumn="depthngnm" position="absolute 996 105 1186 126" class="combo_essential"/>
  311. <Button id="btn_confirm" taborder="27" text="확정저장" class="btn4" position="absolute 1120 241 1195 263" onclick="btn_confirm_onclick"/>
  312. <CheckBox id="CheckBox00" taborder="28" text="CheckBox00" position="absolute 383 273 400 291" truevalue="Y" value="false" onclick="CheckBox00_onclick"/>
  313. <Edit id="ipt_orgtodd" taborder="29" position="absolute 616 243 678 260" visible="false"/>
  314. <PopupMenu id="pmn_menu" innerdataset="@ds_mouserght" idcolumn="func" captioncolumn="label" levelcolumn="level" position="absolute 1200 166 1336 208" onmenuclick="pmn_menu_onmenuclick"/>
  315. <PopupMenu id="pmn_menum" idcolumn="func" captioncolumn="label" levelcolumn="level" onmenuclick="pmn_menum_onmenuclick" position="absolute 1200 220 1336 248" innerdataset="@ds_mouserghtrule"/>
  316. <Button id="btn_excel" taborder="30" position="absolute 1029 241 1082 263" class="btn7" text="엑셀 " onclick="btn_excel_onclick"/>
  317. </Layout>
  318. </Layouts>
  319. <Objects>
  320. <Dataset id="ds_main_aebmrulelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  321. <ColumnInfo>
  322. <Column id="instcd" type="STRING" size="256"/>
  323. <Column id="suppdeptcd" type="STRING" size="256"/>
  324. <Column id="rulecd" type="STRING" size="256"/>
  325. <Column id="orgtodd" type="STRING" size="256"/>
  326. <Column id="todd" type="STRING" size="256"/>
  327. <Column id="fromdd" type="STRING" size="256"/>
  328. <Column id="rulenm" type="STRING" size="256"/>
  329. <Column id="rulemsg" type="STRING" size="256"/>
  330. <Column id="section" type="STRING" size="256"/>
  331. <Column id="modality" type="STRING" size="256"/>
  332. <Column id="ioflag" type="STRING" size="256"/>
  333. <Column id="insideyn" type="STRING" size="256"/>
  334. <Column id="acptdeptcd" type="STRING" size="256"/>
  335. <Column id="crtrem" type="STRING" size="256"/>
  336. </ColumnInfo>
  337. </Dataset>
  338. <Dataset id="ds_main_aebmrudtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  339. <ColumnInfo>
  340. <Column id="calcscorcd" type="STRING" size="256"/>
  341. <Column id="suppdeptcd" type="STRING" size="256"/>
  342. <Column id="fromdd" type="STRING" size="256"/>
  343. <Column id="rulecd" type="STRING" size="256"/>
  344. <Column id="todd" type="STRING" size="256"/>
  345. <Column id="instcd" type="STRING" size="256"/>
  346. <Column id="remark" type="STRING" size="256"/>
  347. <Column id="calcscorcdnm" type="STRING" size="256"/>
  348. <Column id="fstrgstrid" type="STRING" size="256"/>
  349. <Column id="fstrgstdt" type="STRING" size="256"/>
  350. <Column id="lastupdtrid" type="STRING" size="256"/>
  351. <Column id="lastupdtdt" type="STRING" size="256"/>
  352. <Column id="cnfmmanid" type="STRING" size="256"/>
  353. <Column id="cnfmdt" type="STRING" size="256"/>
  354. <Column id="chk" type="STRING" size="256"/>
  355. <Column id="orgtodd" type="STRING" size="256"/>
  356. <Column id="status" type="STRING" size="256"/>
  357. </ColumnInfo>
  358. </Dataset>
  359. <Dataset id="ds_send_aebmrule" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  360. <ColumnInfo>
  361. <Column id="instcd" type="STRING" size="256"/>
  362. <Column id="suppdeptcd" type="STRING" size="256"/>
  363. <Column id="rulecd" type="STRING" size="256"/>
  364. <Column id="orgtodd" type="STRING" size="256"/>
  365. <Column id="todd" type="STRING" size="256"/>
  366. <Column id="fromdd" type="STRING" size="256"/>
  367. <Column id="rulenm" type="STRING" size="256"/>
  368. <Column id="rulemsg" type="STRING" size="256"/>
  369. <Column id="section" type="STRING" size="256"/>
  370. <Column id="modality" type="STRING" size="256"/>
  371. <Column id="ioflag" type="STRING" size="256"/>
  372. <Column id="insideyn" type="STRING" size="256"/>
  373. <Column id="acptdeptcd" type="STRING" size="256"/>
  374. <Column id="crtrem" type="STRING" size="256"/>
  375. <Column id="status" type="STRING" size="256"/>
  376. </ColumnInfo>
  377. </Dataset>
  378. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  379. <ColumnInfo>
  380. <Column id="rulenm" type="STRING" size="256"/>
  381. <Column id="incdend" type="STRING" size="256"/>
  382. <Column id="suppdeptcd" type="STRING" size="256"/>
  383. </ColumnInfo>
  384. <Rows>
  385. <Row>
  386. <Col id="rulenm"/>
  387. <Col id="incdend"/>
  388. <Col id="suppdeptcd"/>
  389. </Row>
  390. </Rows>
  391. </Dataset>
  392. <Dataset id="ds_initexecorddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  393. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  394. <Dataset id="ds_init_cmb_suppdept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  395. <Dataset id="ds_init_E0002" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  396. <ColumnInfo>
  397. <Column id="cdid" type="STRING" size="256"/>
  398. <Column id="cdnm" type="STRING" size="256"/>
  399. </ColumnInfo>
  400. </Dataset>
  401. <Dataset id="ds_mouserght" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  402. <ColumnInfo>
  403. <Column id="func" type="STRING" size="256"/>
  404. <Column id="label" type="STRING" size="256"/>
  405. <Column id="level" type="STRING" size="256"/>
  406. </ColumnInfo>
  407. <Rows>
  408. <Row>
  409. <Col id="label">복사</Col>
  410. <Col id="func">fCopyRow</Col>
  411. <Col id="level">0</Col>
  412. </Row>
  413. <Row>
  414. <Col id="label">붙여넣기</Col>
  415. <Col id="func">fPrcpPaste</Col>
  416. <Col id="level">0</Col>
  417. </Row>
  418. </Rows>
  419. </Dataset>
  420. <Dataset id="ds_hidden_aebmrudtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  421. <ColumnInfo>
  422. <Column id="calcscorcd" type="STRING" size="256"/>
  423. <Column id="suppdeptcd" type="STRING" size="256"/>
  424. <Column id="fromdd" type="STRING" size="256"/>
  425. <Column id="rulecd" type="STRING" size="256"/>
  426. <Column id="todd" type="STRING" size="256"/>
  427. <Column id="instcd" type="STRING" size="256"/>
  428. <Column id="remark" type="STRING" size="256"/>
  429. <Column id="calcscorcdnm" type="STRING" size="256"/>
  430. <Column id="fstrgstrid" type="STRING" size="256"/>
  431. <Column id="fstrgstdt" type="STRING" size="256"/>
  432. <Column id="lastupdtrid" type="STRING" size="256"/>
  433. <Column id="lastupdtdt" type="STRING" size="256"/>
  434. <Column id="cnfmmanid" type="STRING" size="256"/>
  435. <Column id="cnfmdt" type="STRING" size="256"/>
  436. <Column id="chk" type="STRING" size="256"/>
  437. <Column id="orgtodd" type="STRING" size="256"/>
  438. <Column id="status" type="STRING" size="256"/>
  439. </ColumnInfo>
  440. </Dataset>
  441. <Dataset id="ds_combo_status" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  442. <ColumnInfo>
  443. <Column id="label" type="STRING" size="256"/>
  444. <Column id="value" type="STRING" size="256"/>
  445. </ColumnInfo>
  446. <Rows>
  447. <Row>
  448. <Col id="label">검색</Col>
  449. <Col id="value">S</Col>
  450. </Row>
  451. <Row>
  452. <Col id="label">신규</Col>
  453. <Col id="value">I</Col>
  454. </Row>
  455. <Row>
  456. <Col id="label">삭제</Col>
  457. <Col id="value">D</Col>
  458. </Row>
  459. <Row>
  460. <Col id="label">D/C</Col>
  461. <Col id="value">C</Col>
  462. </Row>
  463. <Row>
  464. <Col id="label">-</Col>
  465. <Col id="value">-</Col>
  466. </Row>
  467. <Row>
  468. <Col id="label">수정</Col>
  469. <Col id="value">U</Col>
  470. </Row>
  471. </Rows>
  472. </Dataset>
  473. <Dataset id="ds_mouserghtrule" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  474. <ColumnInfo>
  475. <Column id="func" type="STRING" size="256"/>
  476. <Column id="label" type="STRING" size="256"/>
  477. <Column id="level" type="STRING" size="256"/>
  478. </ColumnInfo>
  479. <Rows>
  480. <Row>
  481. <Col id="label">신규복사</Col>
  482. <Col id="func">fCopyRowNew</Col>
  483. <Col id="level">0</Col>
  484. </Row>
  485. </Rows>
  486. </Dataset>
  487. <Dataset id="ds_hidden_aebmrulelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  488. <ColumnInfo>
  489. <Column id="instcd" type="STRING" size="256"/>
  490. <Column id="suppdeptcd" type="STRING" size="256"/>
  491. <Column id="rulecd" type="STRING" size="256"/>
  492. <Column id="orgtodd" type="STRING" size="256"/>
  493. <Column id="todd" type="STRING" size="256"/>
  494. <Column id="fromdd" type="STRING" size="256"/>
  495. <Column id="rulenm" type="STRING" size="256"/>
  496. <Column id="rulemsg" type="STRING" size="256"/>
  497. <Column id="section" type="STRING" size="256"/>
  498. <Column id="modality" type="STRING" size="256"/>
  499. <Column id="ioflag" type="STRING" size="256"/>
  500. <Column id="insideyn" type="STRING" size="256"/>
  501. <Column id="acptdeptcd" type="STRING" size="256"/>
  502. <Column id="crtrem" type="STRING" size="256"/>
  503. </ColumnInfo>
  504. </Dataset>
  505. </Objects>
  506. <Bind>
  507. <BindItem id="item0" compid="ipt_rulenm" propid="value" datasetid="ds_send_aebmrule" columnid="rulenm"/>
  508. <BindItem id="item1" compid="ipt_rulecd" propid="value" datasetid="ds_send_aebmrule" columnid="rulecd"/>
  509. <BindItem id="item2" compid="txt_rulemsg" propid="value" datasetid="ds_send_aebmrule" columnid="rulemsg"/>
  510. <BindItem id="item3" compid="cal_fromdd" propid="value" datasetid="ds_send_aebmrule" columnid="fromdd"/>
  511. <BindItem id="item4" compid="cal_todd" propid="value" datasetid="ds_send_aebmrule" columnid="todd"/>
  512. <BindItem id="item5" compid="cmb_insideyn" propid="value" datasetid="ds_send_aebmrule" columnid="insideyn"/>
  513. <BindItem id="item6" compid="cmb_ioflag" propid="value" datasetid="ds_send_aebmrule" columnid="ioflag"/>
  514. <BindItem id="item7" compid="cmb_modality" propid="value" datasetid="ds_send_aebmrule" columnid="modality"/>
  515. <BindItem id="item8" compid="cmb_section" propid="value" datasetid="ds_send_aebmrule" columnid="section"/>
  516. <BindItem id="item9" compid="txt_crtrem" propid="value" datasetid="ds_send_aebmrule" columnid="crtrem"/>
  517. <BindItem id="item10" compid="ipt_send_rulecd" propid="value" datasetid="ds_send" columnid="rulenm"/>
  518. <BindItem id="item11" compid="grp_srch.chk_includeEnd" propid="value" datasetid="ds_send" columnid="incdend"/>
  519. <BindItem id="item12" compid="cmb_send_suppdeptcd" propid="value" datasetid="ds_send" columnid="suppdeptcd"/>
  520. <BindItem id="item13" compid="cmb_suppdeptcd" propid="value" datasetid="ds_send_aebmrule" columnid="suppdeptcd"/>
  521. <BindItem id="item14" compid="ipt_orgtodd" propid="class" datasetid="ds_send_aebmrule" columnid="orgtodd"/>
  522. </Bind>
  523. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  524. * System Name :
  525. * Job Name :
  526. * Creator :
  527. * Make Date : 2017-12-04
  528. * Description :
  529. *---------------------------------------------------------------------------------------
  530. * Modify Date Modifier Modify Description
  531. *---------------------------------------------------------------------------------------
  532. * 2017-06-19 Live Converter TF->XP
  533. *
  534. *---------------------------------------------------------------------------------------
  535. ****************************************************************************************/
  536. //=======================================================================================
  537. // Lib Include
  538. //---------------------------------------------------------------------------------------
  539. include "com_commonxp::comm_main.xjs";
  540. include "ast_examcurexp::AEZ0001.xjs";
  541. include "ast_examcurexp::combolist.xjs"
  542. //=======================================================================================
  543. // Global Form Variable
  544. //---------------------------------------------------------------------------------------
  545. var arErrorCode = new HashArray();
  546. var gSuppdeptcd = "";
  547. /**
  548. * @desc : 원내판독 처방코드 복사하기 기능
  549. * @param :
  550. * @id : grd_aebmrudtlist
  551. * @event : onmousedown
  552. * @return : void
  553. * @authur : 권영애 2019.03.11
  554. * @---------------------------------------------------
  555. */
  556. function fCopyRow() {
  557. var selectedRows = grdf_getSelectedRows(grd_aebmrudtlist);
  558. var cnt=0;
  559. var sStatus = "";
  560. for (var i = 0; i < selectedRows.length; i++) {
  561. sStatus = ds_main_aebmrudtlist.getColumn(selectedRows[i], "status");
  562. if (sStatus != "S" ){ //검색, 수가 종료은 드래그 안한다.
  563. fPrcpBuffer( ++cnt, selectedRows[i], "ds_hidden_aebmrudtlist", "ds_main_aebmrudtlist" );
  564. }
  565. }
  566. for ( var i = 0 ; i < ds_hidden_aebmrudtlist.rowcount; i++ ) {
  567. ds_hidden_aebmrudtlist.setColumn(i, "status" , "I" );
  568. }
  569. }
  570. //=======================================================================================
  571. // Function
  572. //---------------------------------------------------------------------------------------
  573. /*-**************************************************************************************
  574. * Argument : N/A
  575. * Description : 원내판독코드 저장
  576. ****************************************************************************************/
  577. function fn_TXAEB00401() {
  578. var oParam = {};
  579. oParam.id = "TXAEB00401";
  580. oParam.service = "examcurebaseapp.ExamCureCode";
  581. oParam.method = "reqExeAebmRule";
  582. oParam.inds = "req=ds_send_aebmrule";
  583. oParam.outds = "ds_temp=item";
  584. oParam.async = false;
  585. oParam.callback = "cf_TXAEB00401";
  586. tranf_submit(oParam);
  587. if(arErrorCode.pop("TXAEB00401") > -1) {
  588. sysf_messageBox("","I001");
  589. btn_sea.click();
  590. }
  591. }
  592. function cf_TXAEB00401(sSvcId, nErrorCode, sErrorMsg) {
  593. arErrorCode.push(sSvcId, nErrorCode);
  594. }
  595. /*-**************************************************************************************
  596. * Argument : sMultiyn - 멀티선택여부
  597. * : sPrcpcd - 처방코드
  598. * Description : 검사치료코드 조회팝업 오픈
  599. ****************************************************************************************/
  600. function fOpenPopup(sMultiyn, sPrcpcd) {
  601. var objArg = new Object();
  602. objArg.arg_calcscorcd = utlf_transNullToEmpty(sPrcpcd);
  603. objArg.arg_multiyn = sMultiyn;
  604. objArg.arg_suppdeptcd = dsf_getColumnNullToEmpty(ds_main_aebmrulelist, ds_main_aebmrulelist.rowposition, "suppdeptcd");;
  605. frmf_modal("SMAEB00401","SMAEB00401",objArg,"","","","","","","","","","M");
  606. if(!utlf_isNull(this.objects["ds_temp_prcplist"]) && ds_temp_prcplist.rowcount > 0) {
  607. if(sMultiyn == "Y") {
  608. for(var i = 0; i < ds_temp_prcplist.rowcount; i++) {
  609. var nRow = ds_main_aebmrudtlist.addRow();
  610. ds_main_aebmrudtlist.setColumn(nRow, "calcscorcd", ds_temp_prcplist.getColumn(i, "cd"));
  611. ds_main_aebmrudtlist.setColumn(nRow, "calcscorcdnm", ds_temp_prcplist.getColumn(i, "nm"));
  612. ds_main_aebmrudtlist.setColumn(nRow, "rulecd", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition, "rulecd"));
  613. ds_main_aebmrudtlist.setColumn(nRow, "suppdeptcd", gSuppdeptcd);
  614. ds_main_aebmrudtlist.setColumn(nRow, "fromdd", utlf_getCurrentDate());
  615. ds_main_aebmrudtlist.setColumn(nRow, "todd", "99991231");
  616. }
  617. } else {
  618. ds_main_aebmrudtlist.setColumn(ds_main_aebmrudtlist.rowposition, "calcscorcd", ds_temp_prcplist.getColumn(0, "cd"));
  619. ds_main_aebmrudtlist.setColumn(ds_main_aebmrudtlist.rowposition, "calcscorcdnm", ds_temp_prcplist.getColumn(0, "nm"));
  620. }
  621. dsf_deleteDs("ds_temp_prcplist");
  622. }
  623. }
  624. /*-**************************************************************************************
  625. * Argument : N/A
  626. * Description : 기초코드 조회
  627. ****************************************************************************************/
  628. function fn_TRAEA01301(){
  629. dsf_createDsRow("ds_reqparam", [
  630. {col:"basesuppdeptcd", type:"STRING", size:256, val:utlf_transNullToEmpty(frmf_getParameter("AST_DEPTCD"))}
  631. , {col:"instcd", type:"STRING", size:256, val:sysf_getUserInfo("dutplceinstcd")}
  632. , {col:"rbasecdflag", type:"STRING", size:256, val:"R"}
  633. , {col:"ebasecdflag", type:"STRING", size:256, val:"E"}
  634. , {col:"initflag", type:"STRING", size:256, val:"1"}
  635. , {col:"alladdyn", type:"STRING", size:256, val:""}
  636. ]);
  637. var oParam = {};
  638. oParam.id = "TRAEA01301";
  639. oParam.service = "examcureacptexecapp.ExamCureAcpt";
  640. oParam.method = "reqGetInitExamCureRoomGrpCodeList";
  641. oParam.inds = "reqparam=ds_reqparam";
  642. oParam.outds = "ds_init_cmb_suppdept=suppdept";
  643. oParam.async = false;
  644. //oParam.callback = "cf_TRAEA01301";
  645. tranf_submit(oParam);
  646. }
  647. /**@desc : 처방화면 오른쪽 마우스 클릭 처방붙여넣기
  648. * @param : prcphopeddflag - 6: prcpdd 와 prcphopedd를 똑같게 처리, 7: prcphopedd가 prcphopedd에 비해 과거날짜만 바꿔 줌.
  649. * @return : void
  650. * @authur : 권영애 2019.03.11
  651. */
  652. function fPrcpPaste() {
  653. var dropRow = ds_main_aebmrudtlist.rowposition;
  654. var row = 0;
  655. var cnt = 1
  656. for(var i = 0; i < ds_hidden_aebmrudtlist.rowcount; i++) {
  657. row = dropRow + cnt++;
  658. ds_main_aebmrudtlist.insertRow(row);
  659. ds_main_aebmrudtlist.copyRow(row, ds_hidden_aebmrudtlist, i);
  660. ds_main_aebmrudtlist.setColumn(row, "status", 'I');
  661. ds_main_aebmrudtlist.setColumn(row, "rulecd", ds_send_aebmrule.getColumn(0, "rulecd"));
  662. ds_main_aebmrudtlist.setColumn(row, "suppdeptcd", gSuppdeptcd);
  663. ds_main_aebmrudtlist.setColumn(row, "fromdd", utlf_getCurrentDate());
  664. ds_main_aebmrudtlist.setColumn(row, "todd", "99991231");
  665. ds_main_aebmrudtlist.setColumn(row, "orgtodd", "99991231");
  666. ds_main_aebmrudtlist.setColumn(row, "fstrgstrid", "");
  667. ds_main_aebmrudtlist.setColumn(row, "fstrgstdt", "");
  668. ds_main_aebmrudtlist.setColumn(row, "lastupdtrid", "");
  669. ds_main_aebmrudtlist.setColumn(row, "lastupdtdt", "");
  670. ds_main_aebmrudtlist.setColumn(row, "remark", "");
  671. ds_main_aebmrudtlist.setColumn(row, "cnfmmanid", "");
  672. ds_main_aebmrudtlist.setColumn(row, "cnfmdt", "");
  673. }
  674. ds_main_aebmrudtlist.rowposition = dropRow + ds_hidden_aebmrudtlist.rowcount;
  675. ds_hidden_aebmrudtlist.clearData();
  676. }
  677. /**@desc : 처방화면 오른쪽 마우스 클릭 처방붙여넣기
  678. * @param : prcphopeddflag - 6: prcpdd 와 prcphopedd를 똑같게 처리, 7: prcphopedd가 prcphopedd에 비해 과거날짜만 바꿔 줌.
  679. * @return : void
  680. * @authur : 권영애 2019.03.11
  681. */
  682. function fCopyRowNew() {
  683. ds_send_aebmrule.clearData();
  684. ds_send_aebmrule.addRow();
  685. dsf_setDefaultVal(ds_send_aebmrule, "all");
  686. ipt_rulecd.enable = true;
  687. ipt_rulecd.setFocus();
  688. var rownum = ds_main_aebmrulelist.rowcount;
  689. ds_send_aebmrule.setColumn(0, "rulecd", "R"+rownum );
  690. ds_send_aebmrule.setColumn(0, "rulenm", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'rulenm'));
  691. ds_send_aebmrule.setColumn(0, "rulemsg", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'rulemsg'));
  692. ds_send_aebmrule.setColumn(0, "acptdeptcd", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'acptdeptcd'));
  693. ds_send_aebmrule.setColumn(0, "crtrem", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'crtrem'));
  694. ds_send_aebmrule.setColumn(0, "modality", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'modality'));
  695. ds_send_aebmrule.setColumn(0, "ioflag", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'ioflag'));
  696. ds_send_aebmrule.setColumn(0, "section", ds_main_aebmrulelist.getColumn(ds_main_aebmrulelist.rowposition,'section'));
  697. ds_send_aebmrule.setColumn(0, "fromdd", utlf_getCurrentDate());
  698. ds_send_aebmrule.setColumn(0, "todd", "99991231");
  699. ds_send_aebmrule.setColumn(0, "suppdeptcd", gSuppdeptcd);
  700. ds_send_aebmrule.setColumn(0, "status", "i");
  701. ds_send_aebmrule.setColumn(0, "insideyn","Y");
  702. ds_main_aebmrulelist.rowposition = -1;
  703. ds_main_aebmrudtlist.clearData();
  704. }
  705. //=======================================================================================
  706. // Event
  707. //---------------------------------------------------------------------------------------
  708. /****************************************************************************************
  709. * Components : Form
  710. * Description : 화면 처음 초기화시 폼초기화
  711. ****************************************************************************************/
  712. function SMAEB00400_onload(obj:Form, e:LoadEventInfo)
  713. {
  714. frmf_initForm(obj);
  715. // 2011.06.21 권한 공통코드(E0002)로 관리
  716. lf_getAstCodeList([{dsNm: "ds_init_E0002", cdGrpId:"E0002"}], true);
  717. grdf_setRowTypeIcon(grd_aebmrudtlist, 0);
  718. // 근무지코드 셋팅
  719. lf_aezfSetSuppDeptcd(); //AEZ0001.xjs
  720. gSuppdeptcd = frmf_getParameter("AST_DEPTCD");
  721. fn_TRAEA01301();
  722. dsf_createDsRow("ds_req", [{col:"initflag", type:"STRING", size:256, val:"1"}]);
  723. var oParam = {};
  724. oParam.id = "TRAER00801";
  725. oParam.service = "examcureresultrefapp.RsltRef";
  726. oParam.method = "reqGetInitRsltRefDeptCdList";
  727. oParam.inds = "reqparam=ds_req";
  728. oParam.outds = "ds_initexecorddept=initexecdept";
  729. oParam.async = false;
  730. oParam.callback = "cf_TRAER00801";
  731. tranf_submit(oParam);
  732. grdf_setGridSort(grd_aebmrulelist); // 그리드 소트만
  733. grdf_setGridSort(grd_aebmrudtlist); // 그리드 소트만
  734. ds_main_aebmrudtlist.setColumn(0, "status", "S");
  735. var sProp = "col=3,row=15,cellspacing=5,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow='visible'";
  736. chk_acptdeptnm.setInitComp(sProp, ds_initexecorddept, "deptcd","deptnm", "");
  737. ds_send.setColumn(0, "suppdeptcd", gSuppdeptcd);
  738. btn_sea.click();
  739. }
  740. function cf_TRAER00801(sSvcId, nErrorCode, sErrorMsg) {
  741. if(nErrorCode < 0) return;
  742. ds_initexecorddept.setColumn(0, "deptcd", "ALL");
  743. }
  744. /****************************************************************************************
  745. * Components : Button
  746. * Description : 판독코드 리스트 조회
  747. ****************************************************************************************/
  748. function btn_sea_onclick(obj:Button, e:ClickEventInfo)
  749. {
  750. ds_main_aebmrulelist.clearData();
  751. ds_main_aebmrudtlist.clearData();
  752. ds_send_aebmrule.clearData();
  753. opt_acptdeptnm.value = "";
  754. var oParam = {};
  755. oParam.id = "TRAEB00401";
  756. oParam.service = "examcurebaseapp.ExamCureCode";
  757. oParam.method = "reqGetAebmRuleList";
  758. oParam.inds = "req=ds_send";
  759. oParam.outds = "ds_main_aebmrulelist=item";
  760. oParam.async = false;
  761. //oParam.callback = "cf_TRAEB00401";
  762. tranf_submit(oParam);
  763. ds_main_aebmrulelist.rowposition = -1;
  764. }
  765. /****************************************************************************************
  766. * Components : Button
  767. * Description : 판독코드 신규등록
  768. ****************************************************************************************/
  769. function btn_new_onclick(obj:Button, e:ClickEventInfo)
  770. {
  771. ds_send_aebmrule.clearData();
  772. ds_send_aebmrule.addRow();
  773. dsf_setDefaultVal(ds_send_aebmrule, "all");
  774. ipt_rulecd.enable = true;
  775. // cal_fromdd.enable = true;
  776. // cal_todd.enable = true;
  777. ipt_rulecd.setFocus();
  778. ds_send_aebmrule.setColumn(0, "fromdd", utlf_getCurrentDate());
  779. ds_send_aebmrule.setColumn(0, "todd", "99991231");
  780. ds_send_aebmrule.setColumn(0, "suppdeptcd", gSuppdeptcd);
  781. ds_send_aebmrule.setColumn(0, "status", "i");
  782. ds_send_aebmrule.setColumn(0, "insideyn","Y");
  783. opt_acptdeptnm.value = "";
  784. ds_main_aebmrulelist.rowposition = -1;
  785. ds_main_aebmrudtlist.clearData();
  786. ds_main_aebmrudtlist.addRow();
  787. }
  788. /****************************************************************************************
  789. * Components : Grid
  790. * Description : 판독코드 선택
  791. ****************************************************************************************/
  792. function grd_aebmrulelist_oncellclick(obj:Grid, e:GridClickEventInfo)
  793. {
  794. var cRow = obj.currentrow;
  795. if(cRow < 0) return;
  796. ipt_rulecd.enable = false;
  797. // cal_fromdd.enable = false;
  798. // cal_todd.enable = false;
  799. ds_send_aebmrule.clearData();
  800. ds_main_aebmrudtlist.clearData();
  801. ds_send_aebmrule.copyRow(ds_send_aebmrule.addRow(), ds_main_aebmrulelist, cRow);
  802. chk_acptdeptnm.visible = false;
  803. chk_acptdeptnm.setCheckAll(false);
  804. chk_acptdeptnm.setData(String(ds_send_aebmrule.getColumn(0,"acptdeptcd")).split("^"),null,false);
  805. opt_acptdeptnm.value = chk_acptdeptnm.getLableData();
  806. dsf_createDsRow("ds_req", [{col:"rulecd", type:"STRING", size:256, val:ds_main_aebmrulelist.getColumn(cRow, "rulecd")}
  807. ,{col:"suppdeptcd", type:"STRING", size:256, val:ds_main_aebmrulelist.getColumn(cRow, "suppdeptcd")}]);
  808. var oParam = {};
  809. oParam.id = "TRAEB00402";
  810. oParam.service = "examcurebaseapp.ExamCureCode";
  811. oParam.method = "reqGetAebmRudtList";
  812. oParam.inds = "req=ds_req";
  813. oParam.outds = "ds_main_aebmrudtlist=item";
  814. oParam.async = false;
  815. //oParam.callback = "cf_TRAEB00402";
  816. tranf_submit(oParam);
  817. ds_send_aebmrule.setColumn(0, "status", "u");
  818. }
  819. /****************************************************************************************
  820. * Components : Button
  821. * Description : 판독코드 저장
  822. ****************************************************************************************/
  823. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  824. {
  825. if(ds_send_aebmrule.rowcount == 0) return;
  826. var arrCompID = new Array("ipt_rulecd","ipt_rulenm","cmb_suppdeptcd","cal_fromdd","txt_rulemsg","cal_todd","cmb_section","cmb_modality","cmb_ioflag");
  827. if(frmf_isRequiredControls(arrCompID)) {
  828. fn_TXAEB00401();
  829. }
  830. }
  831. /****************************************************************************************
  832. * Components : Button
  833. * Description : 판독코드 삭제
  834. ****************************************************************************************/
  835. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  836. {
  837. if(ds_send_aebmrule.rowcount == 0) return;
  838. if(ds_main_aebmrudtlist.rowcount > 0) {
  839. sysf_messageBox("처방코드가 등록되어 있어 삭제할 수 없습니다.","E");
  840. return;
  841. } else {
  842. ds_send_aebmrule.setColumn(0, "status", "d");
  843. fn_TXAEB00401();
  844. }
  845. }
  846. /****************************************************************************************
  847. * Components : Button
  848. * Description : 처방코드 행추가
  849. ****************************************************************************************/
  850. function btn_addrow_onclick(obj:Button, e:ClickEventInfo)
  851. {
  852. var cRow = ds_main_aebmrulelist.rowposition;
  853. if(cRow < 0) {
  854. sysf_messageBox("원내판독코드가 선택되지 않았습니다.","E");
  855. return;
  856. }
  857. var nRow = ds_main_aebmrudtlist.addRow();
  858. ds_main_aebmrudtlist.setColumn(nRow, "rulecd", ds_main_aebmrulelist.getColumn(cRow, "rulecd"));
  859. ds_main_aebmrudtlist.setColumn(nRow, "suppdeptcd", gSuppdeptcd);
  860. ds_main_aebmrudtlist.setColumn(nRow, "fromdd", utlf_getCurrentDate());
  861. ds_main_aebmrudtlist.setColumn(nRow, "todd", "99991231");
  862. ds_main_aebmrudtlist.setColumn(nRow, "orgtodd", "99991231");
  863. }
  864. /****************************************************************************************
  865. * Components : Button
  866. * Description : 처방코드 저장
  867. ****************************************************************************************/
  868. function btn_savedetl_onclick(obj:Button, e:ClickEventInfo)
  869. {
  870. var auth_id = sysf_getUserInfo("userid");
  871. sysf_trace("auth_id =" + auth_id);
  872. //var dev_id = auth_id.substr(0,3);
  873. var idx_cncl = 0;
  874. var cnclidCnt = ds_init_E0002.rowcount;
  875. for( var i = 0 ; i< cnclidCnt ; i++){
  876. if(ds_init_E0002.getColumn(i,"cdid") == auth_id ){
  877. idx_cncl++;
  878. }
  879. }
  880. if ( idx_cncl != 0 || auth_id == "DEV" || auth_id == "AST" ) {
  881. }else {
  882. sysf_messageBox("저장/수정/삭제권한은 전산실 관리자에게만 부여합니다.","I999");
  883. return;
  884. }
  885. if(frmf_chkMdtGrid(grd_aebmrudtlist, [3,6,8], ["처방코드","시작일자","종료일자"])) {
  886. var dsUpdate = grdf_getGridUpdateData(grd_aebmrudtlist, "all");
  887. if( !utlf_isNull(dsUpdate) && dsUpdate.rowcount > 0 ) {
  888. grdf_setStatusColumn(dsUpdate, "status");
  889. dsf_createDs("ds_save_aebmrulelist");
  890. ds_save_aebmrulelist.copyData(dsUpdate, true);
  891. var oParam = {};
  892. oParam.id = "TXAEB00402";
  893. oParam.service = "examcurebaseapp.ExamCureCode";
  894. oParam.method = "reqExeAebmRudt";
  895. oParam.inds = "req=ds_save_aebmrulelist";
  896. oParam.outds = "ds_temp=item";
  897. oParam.async = false;
  898. oParam.callback = "cf_TXAEB00402";
  899. tranf_submit(oParam);
  900. if(arErrorCode.pop("TXAEB00402") > -1) {
  901. sysf_messageBox("","I001");
  902. grd_aebmrulelist.oncellclick.fireEvent(grd_aebmrulelist, new GridClickEventInfo);
  903. }
  904. }
  905. }
  906. }
  907. function cf_TXAEB00402(sSvcId, nErrorCode, sErrorMsg) {
  908. arErrorCode.push(sSvcId, nErrorCode);
  909. }
  910. /****************************************************************************************
  911. * Components : Button
  912. * Description : 처방코드 행삭제
  913. ****************************************************************************************/
  914. function btn_delrow_onclick(obj:Button, e:ClickEventInfo)
  915. {
  916. var grdObj = grd_aebmrudtlist;
  917. var dsObj = this.objects[grdObj.binddataset];
  918. var cRow = dsObj.rowposition;
  919. if( dsObj.getRowType(cRow) == 2 ) {
  920. dsObj.deleteRow(cRow);
  921. }else{
  922. grdf_setStatus(grdObj, "D", [cRow]);
  923. }
  924. }
  925. /****************************************************************************************
  926. * Components : Button
  927. * Description : 적용부서 선택
  928. ****************************************************************************************/
  929. function btn_acptdeptcd_onclick(obj:Button, e:ClickEventInfo)
  930. {
  931. if(chk_acptdeptnm.visible == false ){
  932. chk_acptdeptnm.visible = true;
  933. chk_acptdeptnm.setCheckAll(false);
  934. chk_acptdeptnm.setData(String(ds_send_aebmrule.getColumn(0,"acptdeptcd")).split("^"),null,false);
  935. }else {
  936. chk_acptdeptnm.visible = false;
  937. }
  938. var arr = String(chk_acptdeptnm.getData()).split(",");
  939. if(arr[0] == "ALL") {
  940. ds_send_aebmrule.setColumn(0,"acptdeptcd","ALL");
  941. opt_acptdeptnm.value = "-- 전체 --";
  942. } else {
  943. ds_send_aebmrule.setColumn(0,"acptdeptcd",String(chk_acptdeptnm.getData()).replace(",","^"));
  944. opt_acptdeptnm.value = chk_acptdeptnm.getLableData();
  945. }
  946. }
  947. /****************************************************************************************
  948. * Components : TextArea
  949. * Description : 사이즈 조절
  950. ****************************************************************************************/
  951. function txt_crtrem_oneditclick(obj:TextArea, e:EditClickEventInfo)
  952. {
  953. obj.position.height = 200;
  954. }
  955. function txt_crtrem_onmouseleave(obj:TextArea, e:MouseEventInfo)
  956. {
  957. obj.updateToDataset();
  958. obj.position.height = 21;
  959. }
  960. /****************************************************************************************
  961. * Components : Edit
  962. * Description : 코드명 입력 후 조회
  963. ****************************************************************************************/
  964. function ipt_send_rulecd_onkeydown(obj:Edit, e:KeyEventInfo)
  965. {
  966. if(e.keycode == 13) {
  967. obj.updateToDataset();
  968. btn_sea.click();
  969. }
  970. }
  971. /****************************************************************************************
  972. * Components : Grid
  973. * Description : 처방코드조회팝업 오픈
  974. ****************************************************************************************/
  975. function grd_aebmrudtlist_onexpandup(obj:Grid, e:GridMouseEventInfo)
  976. {
  977. if(e.col == obj.getBindCellIndex("body","calcscorcd")) {
  978. obj.updateToDataset();
  979. fOpenPopup("N", ds_main_aebmrudtlist.getColumn(obj.currentrow, "calcscorcd"));
  980. }
  981. }
  982. function grd_aebmrudtlist_onenterdown(obj:Grid, e:GridEditEventInfo)
  983. {
  984. if(e.col == obj.getBindCellIndex("body","calcscorcd")) {
  985. obj.updateToDataset();
  986. fOpenPopup("N", ds_main_aebmrudtlist.getColumn(obj.currentrow, "calcscorcd"));
  987. }
  988. }
  989. /****************************************************************************************
  990. * Components : Button
  991. * Description : 처방코드조회팝업 오픈
  992. ****************************************************************************************/
  993. function btn_code_onclick(obj:Button, e:ClickEventInfo)
  994. {
  995. if(grd_aebmrulelist.currentrow > -1) {
  996. fOpenPopup("Y");
  997. } else sysf_messageBox("원내판독코드가 선택되지 않았습니다.","E");
  998. }
  999. function btn_confirm_onclick(obj:Button, e:ClickEventInfo)
  1000. {
  1001. var auth_id = sysf_getUserInfo("userid");
  1002. sysf_trace("auth_id =" + auth_id);
  1003. //var dev_id = auth_id.substr(0,3);
  1004. var idx_cncl = 0;
  1005. var cnclidCnt = ds_init_E0002.rowcount;
  1006. for( var i = 0 ; i< cnclidCnt ; i++){
  1007. if(ds_init_E0002.getColumn(i,"cdid") == auth_id ){
  1008. idx_cncl++;
  1009. }
  1010. }
  1011. if ( idx_cncl != 0 || auth_id == "DEV" || auth_id == "AST" ) {
  1012. }else {
  1013. sysf_messageBox("저장/수정/삭제권한은 전산실 관리자에게만 부여합니다.","I999");
  1014. return;
  1015. }
  1016. if(frmf_chkMdtGrid(grd_aebmrudtlist, [3,6,8], ["처방코드","시작일자","종료일자"])) {
  1017. var dsUpdate = grdf_getGridUpdateData(grd_aebmrudtlist, "all");
  1018. if( !utlf_isNull(dsUpdate) && dsUpdate.rowcount > 0 ) {
  1019. grdf_setStatusColumn(dsUpdate, "status");
  1020. dsf_createDs("ds_save_aebmrulelist");
  1021. ds_save_aebmrulelist.copyData(dsUpdate, true);
  1022. var oParam = {};
  1023. oParam.id = "TXAEB00403";
  1024. oParam.service = "examcurebaseapp.ExamCureCode";
  1025. oParam.method = "reqCnfmAebmRudt";
  1026. oParam.inds = "req=ds_save_aebmrulelist";
  1027. oParam.outds = "ds_temp=item";
  1028. oParam.async = false;
  1029. oParam.callback = "cf_TXAEB00403";
  1030. tranf_submit(oParam);
  1031. if(arErrorCode.pop("TXAEB00403") > -1) {
  1032. sysf_messageBox("","I001");
  1033. grd_aebmrulelist.oncellclick.fireEvent(grd_aebmrulelist, new GridClickEventInfo);
  1034. }
  1035. }
  1036. }
  1037. }
  1038. function cf_TXAEB00403(sSvcId, nErrorCode, sErrorMsg) {
  1039. arErrorCode.push(sSvcId, nErrorCode);
  1040. }
  1041. function CheckBox00_onclick(obj:CheckBox, e:ClickEventInfo)
  1042. {
  1043. if( obj.value == "Y" ){
  1044. for( var i = 0; i < ds_main_aebmrudtlist.rowcount; i++ ){
  1045. ds_main_aebmrudtlist.setColumn(i, "chk", "Y");
  1046. }
  1047. } else {
  1048. for( var i = 0; i < ds_main_aebmrudtlist.rowcount; i++ ){
  1049. ds_main_aebmrudtlist.setColumn(i, "chk", "N");
  1050. }
  1051. }
  1052. }
  1053. function grd_aebmrudtlist_onkeydown(obj:Grid, e:KeyEventInfo)
  1054. {
  1055. var cRow = ds_main_prcplist.rowposition;
  1056. if(e.keycode == 38 || e.keycode == 40) // 38 : Up, 40 : Down
  1057. obj.userdata = 1;
  1058. else if(e.keycode == 9 || e.keycode == 37 || e.keycode == 39) // 9 : Tab, 37 : Left, 39 : Right
  1059. obj.userdata = 0;
  1060. if ( e.keycode == 46 ) { // delete key
  1061. if(obj.getEditText() == undefined) { // edit 중이 아닐때만 delete 키로 처방 삭제
  1062. fPrmsDeleteRow();
  1063. }
  1064. } else if ( e.keycode == 45 ) { // insert key
  1065. var prcpcd = ds_initsrch_prcpinsertcnts.getColumn(0, "trgtcd" );
  1066. if ( !utlf_isNull(prcpcd)) {
  1067. var prcpdd = "";
  1068. if ( !utlf_isNull(ds_init.getColumn(0, "prcpdd"))) {
  1069. prcpdd = ds_init.getColumn(0, "prcpdd");
  1070. } else {
  1071. prcpdd = utlf_getCurrentDate();
  1072. }
  1073. var setno = ds_prmsprcpsetdetlset.getColumn(0, "setno" );
  1074. var setnm = ds_prmsprcpsetdetlset.getColumn(0, "setnm");
  1075. if(setno == 1){
  1076. alert ( "최상위 약속처방폴더에는 검색하실 수 없습니다.");
  1077. return;
  1078. }
  1079. if (utlf_isNull(setnm)) {
  1080. alert ( "선택된 약속처방폴더가 없습니다.");
  1081. return;
  1082. }
  1083. div_all.grd_prcplist.setFocus();
  1084. }
  1085. } else if ( e.keycode == 13 ) {
  1086. var isEditing = (obj.getEditText() == undefined) ? false : true;
  1087. obj.showEditor(false);
  1088. // 현재 edit 중일때만
  1089. if(isEditing && !stopEnterEvent) {
  1090. var curcol = obj.getCellPos();
  1091. var currow = ds_main_prcplist.rowposition;
  1092. if ( curcol == obj.getBindCellIndex("body", "prcpvol") ) {
  1093. obj.setCellPos(obj.getBindCellIndex("body", "prcpqty"));
  1094. obj.showEditor(true);
  1095. } else if ( curcol == obj.getBindCellIndex("body", "prcpqty") ) {
  1096. obj.setCellPos(obj.getBindCellIndex("body", "prcptims"));
  1097. ds_main_prcplist.rowposition = currow;
  1098. obj.showEditor(true);
  1099. } else if ( curcol == obj.getBindCellIndex("body", "drprcpetc7") ) {
  1100. obj.setCellPos(obj.getBindCellIndex("body", "drprcpetc8"));
  1101. obj.showEditor(true);
  1102. } else if ( curcol == obj.getBindCellIndex("body", "drprcpetc8") ) {
  1103. obj.setCellPos(obj.getBindCellIndex("body", "prcptims"));
  1104. ds_main_prcplist.rowposition = currow;
  1105. obj.showEditor(true);
  1106. } else if ( curcol == obj.getBindCellIndex("body", "prcptims") ) {
  1107. obj.setCellPos(obj.getBindCellIndex("body", "prcpdayno"));
  1108. ds_main_prcplist.rowposition = currow;
  1109. obj.showEditor(true);
  1110. }
  1111. }
  1112. if(stopEnterEvent) {
  1113. stopEnterEvent = false;
  1114. obj.showEditor(true);
  1115. }
  1116. }
  1117. }
  1118. function grd_aebmrudtlist_onkeyup(obj:Grid, e:KeyEventInfo)
  1119. {
  1120. if ( e.keycode == 45 ) { // insert key
  1121. var insrow = 0;
  1122. if ( ds_main_prcplist.rowposition == ds_main_prcplist.rowcount - 1 ) {
  1123. insrow = ds_main_prcplist.rowcount - 1;
  1124. } else {
  1125. insrow = ds_main_prcplist.rowposition + 1;
  1126. }
  1127. ds_prcpsrch_prcplist.copyData(ds_directprcp_prcplist);
  1128. var srchRow = lf_addPrcpDetl ( "import" , "ds_prcpsrch_prcplist" , "ds_main_prcplist", 0, insrow, "00" );
  1129. ds_main_prcplist.selectRow(insrow);
  1130. ds_main_prcplist.rowposition = insrow;
  1131. obj.setCellPos(obj.getBindCellIndex("body", "prcpnm"));
  1132. div_all.grd_prcplist.setFocus();
  1133. obj.showEditor(true);
  1134. }
  1135. obj.userdata = 0;
  1136. }
  1137. function grd_aebmrudtlist_onlbuttondown(obj:Grid, e:GridMouseEventInfo)
  1138. {
  1139. if(e.row < 0 || e.col < 0) return;
  1140. obj.setFocus();
  1141. grdf_setSelectedCell(obj, e);
  1142. obj.oncellclick.fireEvent(obj, new GridClickEventInfo());
  1143. pmn_menu.trackPopup(e.screenX,e.screenY);
  1144. }
  1145. function grd_aebmrudtlist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1146. {
  1147. if(e.row < 0 || e.col < 0) return;
  1148. obj.setFocus();
  1149. grdf_setSelectedCell(obj, e);
  1150. obj.oncellclick.fireEvent(obj, new GridClickEventInfo());
  1151. pmn_menu.trackPopup(e.screenX,e.screenY);
  1152. }
  1153. function pmn_menu_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1154. {
  1155. eval(e.id + "()");
  1156. }
  1157. function grd_aebmrulelist_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  1158. {
  1159. if(e.row < 0 || e.col < 0) return;
  1160. obj.setFocus();
  1161. grdf_setSelectedCell(obj, e);
  1162. obj.oncellclick.fireEvent(obj, new GridClickEventInfo());
  1163. pmn_menum.trackPopup(e.screenX,e.screenY);
  1164. }
  1165. function pmn_menum_onmenuclick(obj:PopupMenu, e:MenuClickEventInfo)
  1166. {
  1167. //원내판독코드 마스터
  1168. eval(e.id + "()");
  1169. }
  1170. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  1171. {
  1172. grdf_exportExcel(grd_aebmrudtlist, "원내판독코드" , "원내판독코드");
  1173. }
  1174. ]]></Script>
  1175. </Form>
  1176. </FDL>