SMMMB08400_진료공통코드관리.xfdl 43 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMMB08400" position="absolute 0 0 1000 700" titletext="진료공통코드관리" oninit="SMMMB08400_oninit" onload="SMMMB08400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="진료 공통코드 관리" position="absolute 0 0 173 20" id="caption1" class="tit_1"/>
  8. <Div position="absolute 0 20 490 700" id="grp_left" anchor="left top bottom">
  9. <Layouts>
  10. <Layout>
  11. <Static text="진료 공통코드 항목" position="absolute 0 7 220 23" align="align:left middle;" id="caption6" class="tit_2" anchor="default"/>
  12. <Shape position="absolute 0 23 490 29" linetype="horizontal" id="line2" class="line_10" anchor="default"/>
  13. <Div position="absolute 0 28 490 63" id="roundrect2" type="roundrectangle" anchor="default" class="div_SA2"/>
  14. <Static text="코드 :" position="absolute 6 37 53 54" id="caption2" class="search_name" anchor="default"/>
  15. <Edit position="absolute 55 35 115 54" id="ipt_search_hardcdno" class="input_search" onkeydown="grp_left_ipt_search_hardcdno_onkeydown" enableevent="false" anchor="default"/>
  16. <Static text="코드명 :" position="absolute 127 37 185 54" id="caption9" class="search_name" anchor="default"/>
  17. <Edit position="absolute 189 35 249 54" id="ipt_search_hardcdnm" class="input_search" onkeydown="grp_left_ipt_search_hardcdnm_onkeydown" anchor="default"/>
  18. <Shape position="absolute 411 32 417 60" linetype="vertical" id="line1" anchor="default"/>
  19. <Button position="absolute 426 35 482 55" id="btn_search_mhrcd" class="btn1" text="조회" onclick="grp_left_btn_search_mhrcd_onclick" anchor="default"/>
  20. <Grid position="absolute 0 65 490 680" id="grd_mhrcdlist" binddataset="ds_main_mhrcdlist" oncellclick="grp_left_grd_mhrcdlist_oncellclick" selecttype="treecell" useinputpanel="false" treeusecheckbox="false" anchor="left top bottom" autofittype="col">
  21. <Formats>
  22. <Format id="default">
  23. <Columns>
  24. <Column size="489"/>
  25. </Columns>
  26. <Rows>
  27. <Row size="24" band="head"/>
  28. <Row size="24"/>
  29. </Rows>
  30. <Band id="head">
  31. <Cell displaytype="normal" text="코드번호-코드명"/>
  32. </Band>
  33. <Band id="body">
  34. <Cell displaytype="tree" edittype="tree" text="bind:displaynm" treestartlevel="1" treelevel="bind:levl" autosizecol="limitmax"/>
  35. </Band>
  36. </Format>
  37. </Formats>
  38. </Grid>
  39. <Static id="caption00" text="상세코드 :" class="search_name" position="absolute 258 37 329 54"/>
  40. <Edit id="ipt_search_trgtcd" taborder="1" class="input_search" position="absolute 333 35 393 54" onkeydown="grp_left_ipt_search_trgtcd_onkeydown"/>
  41. </Layout>
  42. </Layouts>
  43. </Div>
  44. <Div position="absolute 500 20 1000 160" id="grp_right_top" anchor="left top right">
  45. <Layouts>
  46. <Layout>
  47. <Static text="기본정보" position="absolute 0 7 220 23" align="align:left middle;" id="caption3" class="tit_2"/>
  48. <Shape position="absolute 0 23 500 29" linetype="horizontal" id="line5" class="line_10" anchor="left top right"/>
  49. <Button position="absolute 304 3 346 23" id="button1" class="btn2" text="삭제" onclick="grp_right_top_button1_onclick" anchor="top right"/>
  50. <Button position="absolute 349 3 391 23" id="button2" class="btn2" text="신규" onclick="grp_right_top_button2_onclick" anchor="top right"/>
  51. <Button position="absolute 394 3 436 23" id="button7" class="btn2" text="수정" onclick="grp_right_top_button7_onclick" anchor="top right"/>
  52. <Button position="absolute 441 3 497 23" id="btn_SaveMhrcd" class="btn4" text="저장" onclick="grp_right_top_btn_SaveMhrcd_onclick" anchor="top right"/>
  53. <Static text="코드" position="absolute 0 28 55 51" align="align:center middle;" id="caption4" class="cell_1"/>
  54. <Edit position="absolute 57 30 260 49" id="ipt_hardcdno" class="input"/>
  55. <Static text="상위코드" position="absolute 273 28 334 51" align="align:center middle;" id="caption10" class="cell_1"/>
  56. <Edit position="absolute 341 30 500 49" id="ipt_suphardcdno" class="input" anchor="left top right"/>
  57. <Static text="코드명" position="absolute 0 53 55 76" align="align:center middle;" id="caption5" class="cell_1"/>
  58. <Edit position="absolute 57 55 500 74" id="ipt_hardcdnm" class="input" anchor="left top right"/>
  59. <Static text="비고" position="absolute 0 78 55 135" align="align:center middle;" id="caption8" class="cell_1"/>
  60. <TextArea position="absolute 57 80 500 135" id="txt_rmk" enable="false" anchor="left top right"/>
  61. </Layout>
  62. </Layouts>
  63. </Div>
  64. <Div position="absolute 500 160 1000 320" id="grp_right_middle" anchor="left top right">
  65. <Layouts>
  66. <Layout>
  67. <Static text="권한정보" position="absolute 0 7 220 27" align="align:left middle;" id="caption7" class="tit_2" anchor="default"/>
  68. <Shape position="absolute 0 23 500 29" linetype="horizontal" id="line3" class="line_10" anchor="left top right"/>
  69. <Button position="absolute 441 3 497 23" id="btn_SaveAhrcd" class="btn4" text="저장" onclick="grp_right_middle_btn_SaveAhrcd_onclick" anchor="top right"/>
  70. <Button position="absolute 394 3 436 23" id="button5" class="btn2" text="삭제" onclick="grp_right_middle_button5_onclick" anchor="top right"/>
  71. <Button position="absolute 329 3 392 23" id="button11" class="btn2" text="부서추가" onclick="grp_right_middle_button11_onclick" anchor="top right"/>
  72. <Grid position="absolute 0 28 500 160" id="grd_ahrcdlist" binddataset="ds_main_ahrcdlist" autofittype="col" anchor="left top right">
  73. <Formats>
  74. <Format id="default">
  75. <Columns>
  76. <Column size="25" band="left"/>
  77. <Column size="0"/>
  78. <Column size="60"/>
  79. <Column size="58"/>
  80. <Column size="139"/>
  81. <Column size="229"/>
  82. </Columns>
  83. <Rows>
  84. <Row size="24" band="head"/>
  85. <Row size="24"/>
  86. </Rows>
  87. <Band id="head">
  88. <Cell/>
  89. <Cell col="1" displaytype="normal" text="hardcdno"/>
  90. <Cell col="2" displaytype="normal" text="구분"/>
  91. <Cell col="3" displaytype="normal" text="권한"/>
  92. <Cell col="4" displaytype="normal" text="부서코드/사번"/>
  93. <Cell col="5" displaytype="normal" text="부서명/사용자명"/>
  94. </Band>
  95. <Band id="body">
  96. <Cell celltype="head"/>
  97. <Cell col="1" displaytype="normal" text="bind:hardcdno"/>
  98. <Cell col="2" displaytype="combo" edittype="combo" style="align:center;" text="bind:authclscd" combodataset="ds_authclscd" combocodecol="value" combodatacol="label"/>
  99. <Cell col="3" displaytype="combo" edittype="combo" style="align:center;" text="bind:authtypecd" combodataset="ds_authtypecd" combocodecol="value" combodatacol="label"/>
  100. <Cell col="4" displaytype="text" edittype="text" style="align:center;" text="bind:authtrgtcd" editautoselect="true"/>
  101. <Cell col="5" displaytype="normal" style="align:left middle;" text="bind:authtrgtnm"/>
  102. </Band>
  103. </Format>
  104. </Formats>
  105. </Grid>
  106. <Button id="button00" taborder="1" text="사용자추가" class="btn2" position="absolute 251 3 327 23" anchor="top right" onclick="grp_right_middle_button00_onclick"/>
  107. </Layout>
  108. </Layouts>
  109. </Div>
  110. <Div position="absolute 500 320 1000 699" id="grp_right_bottom" anchor="all">
  111. <Layouts>
  112. <Layout>
  113. <Static text="상세코드 리스트" position="absolute 0 7 220 27" align="align:left middle;" id="caption11" class="tit_2" anchor="default"/>
  114. <Shape position="absolute 0 47 500 53" linetype="horizontal" id="line6" class="line_10" anchor="left top right"/>
  115. <Button position="absolute 441 3 497 23" id="btn_SaveDhrcd" class="btn4" text="저장" onclick="grp_right_bottom_btn_SaveDhrcd_onclick" anchor="top right"/>
  116. <Button position="absolute 349 3 391 23" id="button8" class="btn2" text="추가" onclick="grp_right_bottom_button8_onclick" anchor="top right"/>
  117. <Button position="absolute 393 3 435 23" id="button9" class="btn2" text="삭제" onclick="grp_right_bottom_button9_onclick" anchor="top right"/>
  118. <Grid position="absolute 0 52 500 379" id="grd_dhrcdlist" binddataset="ds_main_dhrcdlist" style="align:center middle;" autosizingtype="row" extendsizetype="row" anchor="all">
  119. <Formats>
  120. <Format id="default">
  121. <Columns>
  122. <Column size="25" band="left"/>
  123. <Column size="0"/>
  124. <Column size="46"/>
  125. <Column size="80"/>
  126. <Column size="213"/>
  127. <Column size="80"/>
  128. <Column size="80"/>
  129. <Column size="84"/>
  130. <Column size="93"/>
  131. <Column size="272"/>
  132. <Column size="127"/>
  133. </Columns>
  134. <Rows>
  135. <Row size="24" band="head"/>
  136. <Row size="24"/>
  137. </Rows>
  138. <Band id="head">
  139. <Cell/>
  140. <Cell col="1" displaytype="normal" text="hardcdno"/>
  141. <Cell col="2" displaytype="normal" text="순번"/>
  142. <Cell col="3" displaytype="normal" text="코드"/>
  143. <Cell col="4" displaytype="normal" text="코드명"/>
  144. <Cell col="5" displaytype="normal" text="시작일자"/>
  145. <Cell col="6" displaytype="normal" text="종료일자"/>
  146. <Cell col="7" displaytype="normal" text="적용시작일시"/>
  147. <Cell col="8" displaytype="normal" text="적용종료일시"/>
  148. <Cell col="9" displaytype="normal" text="코드설명"/>
  149. <Cell col="10" displaytype="normal" text="코드별칭"/>
  150. </Band>
  151. <Band id="body">
  152. <Cell celltype="head"/>
  153. <Cell col="1" displaytype="normal" text="bind:hardcdno"/>
  154. <Cell col="2" displaytype="normal" edittype="text" style="align:center;" text="bind:cdseqno"/>
  155. <Cell col="3" displaytype="normal" edittype="text" style="align:center;" text="bind:trgtcd" editautoselect="true"/>
  156. <Cell col="4" displaytype="normal" edittype="text" style="align:left middle;" text="bind:trgtcdnm" editautoselect="true" autosizerow="limitmin"/>
  157. <Cell col="5" displaytype="date" edittype="date" text="bind:valifromdd"/>
  158. <Cell col="6" displaytype="date" edittype="date" text="bind:valitodd"/>
  159. <Cell col="7" displaytype="date" edittype="date" text="bind:valifromdt"/>
  160. <Cell col="8" displaytype="date" edittype="date" text="bind:valitodt"/>
  161. <Cell col="9" displaytype="normal" edittype="text" style="align:left;" text="bind:hardspec"/>
  162. <Cell col="10" displaytype="normal" edittype="text" style="align:left;" text="bind:trgtcdsnm"/>
  163. </Band>
  164. </Format>
  165. </Formats>
  166. </Grid>
  167. <Button id="btn_excel" taborder="1" text="Excel" onclick="btn_excel_onclick" class="btn7" position="absolute 274 3 337 23" anchor="top right"/>
  168. <Button id="button00" taborder="2" text="처방추가" class="btn2" position="absolute 161 26 224 46" anchor="top right" onclick="grp_right_bottom_button00_onclick"/>
  169. <Button id="button01" taborder="3" text="환자추가" class="btn2" position="absolute 434 26 497 46" anchor="top right" onclick="grp_right_bottom_button01_onclick"/>
  170. <Button id="button02" taborder="4" text="사용자추가" class="btn2" position="absolute 356 26 432 46" anchor="top right" onclick="grp_right_bottom_button02_onclick"/>
  171. <Button id="button03" taborder="5" text="부서추가" class="btn2" position="absolute 291 26 354 46" anchor="top right" onclick="grp_right_bottom_button03_onclick"/>
  172. <Button id="button04" taborder="6" text="진단추가" class="btn2" position="absolute 226 26 289 46" anchor="top right" onclick="grp_right_bottom_button04_onclick"/>
  173. </Layout>
  174. </Layouts>
  175. </Div>
  176. </Layout>
  177. </Layouts>
  178. <Objects>
  179. <Dataset id="ds_grd_mhrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  180. <ColumnInfo>
  181. <Column id="levl" type="STRING"/>
  182. <Column id="displaynm" type="STRING"/>
  183. <Column id="hardcdno" type="STRING"/>
  184. <Column id="hardcdnm" type="STRING"/>
  185. <Column id="suphardcdno" type="STRING"/>
  186. </ColumnInfo>
  187. </Dataset>
  188. <Dataset id="ds_grd_ahrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="truefds_main_mhrcdinfo" enableevent="true" loadkeymode="keep" reversesubsum="false">
  189. <ColumnInfo>
  190. <Column id="hardcdno" type="STRING"/>
  191. <Column id="authclscd" type="STRING"/>
  192. <Column id="authtypecd" type="STRING"/>
  193. <Column id="authtrgtcd" type="STRING"/>
  194. <Column id="authtrgtnm" type="STRING"/>
  195. </ColumnInfo>
  196. </Dataset>
  197. <Dataset id="ds_grd_dhrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  198. <ColumnInfo>
  199. <Column id="hardcdno" type="STRING"/>
  200. <Column id="cdseqno" type="STRING"/>
  201. <Column id="trgtcd" type="STRING"/>
  202. <Column id="trgtcdnm" type="STRING"/>
  203. <Column id="valifromdd" type="STRING"/>
  204. <Column id="valitodd" type="STRING"/>
  205. <Column id="valifromdt" type="STRING"/>
  206. <Column id="valitodt" type="STRING"/>
  207. <Column id="hardspec" type="STRING"/>
  208. <Column id="trgtcdsnm" type="STRING"/>
  209. </ColumnInfo>
  210. </Dataset>
  211. <Dataset id="ds_main_mhrcdinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  212. <ColumnInfo>
  213. <Column id="hardcdno" type="STRING" size="256"/>
  214. <Column id="hardcdnm" type="STRING" size="256"/>
  215. <Column id="suphardcdno" type="STRING" size="256"/>
  216. <Column id="rmk" type="STRING" size="256"/>
  217. <Column id="authtype" type="STRING" size="256"/>
  218. <Column id="status" type="STRING" size="256"/>
  219. </ColumnInfo>
  220. </Dataset>
  221. <Dataset id="ds_main_dhrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  222. <ColumnInfo>
  223. <Column id="hardcdno" type="STRING" size="256"/>
  224. <Column id="cdseqno" type="STRING" size="256"/>
  225. <Column id="trgtcd" type="STRING" size="256"/>
  226. <Column id="trgtcdnm" type="STRING" size="256"/>
  227. <Column id="valifromdd" type="STRING" size="256"/>
  228. <Column id="valitodd" type="STRING" size="256"/>
  229. <Column id="valifromdt" type="STRING" size="256"/>
  230. <Column id="valitodt" type="STRING" size="256"/>
  231. <Column id="hardspec" type="STRING" size="256"/>
  232. <Column id="trgtcdsnm" type="STRING" size="256"/>
  233. </ColumnInfo>
  234. <Rows>
  235. <Row/>
  236. </Rows>
  237. </Dataset>
  238. <Dataset id="ds_main_ahrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  239. <ahrcdlist>
  240. <hardcdno/>
  241. <authclscd/>
  242. <authtypecd/>
  243. <authtrgtcd/>
  244. <authtrgtnm/>
  245. </ahrcdlist>
  246. <ColumnInfo>
  247. <Column id="hardcdno" type="STRING" size="256"/>
  248. <Column id="authclscd" type="STRING" size="256"/>
  249. <Column id="authtypecd" type="STRING" size="256"/>
  250. <Column id="authtrgtcd" type="STRING" size="256"/>
  251. <Column id="authtrgtnm" type="STRING" size="256"/>
  252. </ColumnInfo>
  253. <Rows>
  254. <Row/>
  255. </Rows>
  256. </Dataset>
  257. <Dataset id="ds_main_mhrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  258. <ColumnInfo>
  259. <Column id="levl" type="STRING" size="256"/>
  260. <Column id="displaynm" type="STRING" size="256"/>
  261. <Column id="hardcdno" type="STRING" size="256"/>
  262. <Column id="hardcdnm" type="STRING" size="256"/>
  263. <Column id="suphardcdno" type="STRING" size="256"/>
  264. <Column id="rmk" type="STRING" size="256"/>
  265. </ColumnInfo>
  266. </Dataset>
  267. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  268. <ColumnInfo>
  269. <Column id="deptcd" type="STRING" size="256"/>
  270. <Column id="userid" type="STRING" size="256"/>
  271. <Column id="hardcdno" type="STRING" size="256"/>
  272. <Column id="hardcdnm" type="STRING" size="256"/>
  273. <Column id="trgtcd" type="STRING" size="256"/>
  274. </ColumnInfo>
  275. <Rows>
  276. <Row>
  277. <Col id="deptcd"/>
  278. <Col id="userid"/>
  279. <Col id="hardcdno"/>
  280. <Col id="hardcdnm"/>
  281. <Col id="trgtcd"/>
  282. </Row>
  283. </Rows>
  284. </Dataset>
  285. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  286. <Dataset id="ds_send_mhrcdinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  287. <Dataset id="ds_send_dhrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  288. <Dataset id="ds_send_ahrcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  289. <Dataset id="ds_authclscd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  290. <ColumnInfo>
  291. <Column id="label" type="STRING" size="256"/>
  292. <Column id="value" type="STRING" size="256"/>
  293. </ColumnInfo>
  294. <Rows>
  295. <Row>
  296. <Col id="label">사용자</Col>
  297. <Col id="value">P</Col>
  298. </Row>
  299. <Row>
  300. <Col id="label">부서</Col>
  301. <Col id="value">D</Col>
  302. </Row>
  303. </Rows>
  304. </Dataset>
  305. <Dataset id="ds_authtypecd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  306. <ColumnInfo>
  307. <Column id="label" type="STRING" size="256"/>
  308. <Column id="value" type="STRING" size="256"/>
  309. </ColumnInfo>
  310. <Rows>
  311. <Row>
  312. <Col id="label">관리</Col>
  313. <Col id="value">A</Col>
  314. </Row>
  315. <Row>
  316. <Col id="value">E</Col>
  317. <Col id="label">저장</Col>
  318. </Row>
  319. <Row>
  320. <Col id="label">조회</Col>
  321. <Col id="value">R</Col>
  322. </Row>
  323. </Rows>
  324. </Dataset>
  325. <Dataset id="ds_patinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  326. <ColumnInfo>
  327. <Column id="pid" type="STRING" size="256"/>
  328. <Column id="hngnm" type="STRING" size="256"/>
  329. </ColumnInfo>
  330. <Rows>
  331. <Row/>
  332. </Rows>
  333. </Dataset>
  334. </Objects>
  335. <Bind>
  336. <BindItem id="item0" compid="grp_left.ipt_search_hardcdno" propid="value" datasetid="ds_main_cond" columnid="hardcdno"/>
  337. <BindItem id="item1" compid="grp_left.ipt_search_hardcdnm" propid="value" datasetid="ds_main_cond" columnid="hardcdnm"/>
  338. <BindItem id="item2" compid="grp_right_top.ipt_hardcdno" propid="value" datasetid="ds_main_mhrcdinfo" columnid="hardcdno"/>
  339. <BindItem id="item3" compid="grp_right_top.ipt_suphardcdno" propid="value" datasetid="ds_main_mhrcdinfo" columnid="suphardcdno"/>
  340. <BindItem id="item4" compid="grp_right_top.ipt_hardcdnm" propid="value" datasetid="ds_main_mhrcdinfo" columnid="hardcdnm"/>
  341. <BindItem id="item5" compid="grp_right_top.txt_rmk" propid="value" datasetid="ds_main_mhrcdinfo" columnid="rmk"/>
  342. <BindItem id="item6" compid="grp_left.ipt_search_trgtcd" propid="value" datasetid="ds_main_cond" columnid="trgtcd"/>
  343. </Bind>
  344. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  345. * System Name :
  346. * Job Name :
  347. * Creator :
  348. * Make Date : 2014-12-10
  349. * Description :
  350. *---------------------------------------------------------------------------------------
  351. * Modify Date Modifier Modify Description
  352. *---------------------------------------------------------------------------------------
  353. * 2014-12-10 Live Converter TF->XP
  354. *
  355. *---------------------------------------------------------------------------------------
  356. ****************************************************************************************/
  357. include "com_commonxp::comm_main.xjs";
  358. include "emr_prcpmngtxp::MMO001.xjs";
  359. function SMMMB08400_oninit(obj:Form, e:InitEventInfo)
  360. {
  361. frmf_initForm(obj);
  362. grdf_initGrid(grp_right_middle.grd_ahrcdlist);
  363. grdf_initGrid(grp_right_bottom.grd_dhrcdlist);
  364. }
  365. function SMMMB08400_onload(obj:Form, e:LoadEventInfo)
  366. {
  367. fInitialize_SMMMB08400();
  368. grdf_setRowTypeIcon(grp_right_middle.grd_ahrcdlist, 0);
  369. grdf_setRowTypeIcon(grp_right_bottom.grd_dhrcdlist, 0);
  370. grdf_setToolTipBind(grp_right_middle.grd_ahrcdlist);
  371. grdf_setToolTipBind(grp_right_bottom.grd_dhrcdlist);
  372. grdf_setToolTipBind(grp_left.grd_mhrcdlist);
  373. }
  374. function grp_left_ipt_search_hardcdno_onkeydown(obj:Edit, e:KeyEventInfo)
  375. {
  376. if(e.keycode == 13) {
  377. var ev = new ClickEventInfo;
  378. frmf_inputEnterKey("grp_left.btn_search_mhrcd", "onclick", ev );
  379. }
  380. }
  381. function grp_left_ipt_search_hardcdnm_onkeydown(obj:Edit, e:KeyEventInfo)
  382. {
  383. if(e.keycode == 13) {
  384. var ev = new ClickEventInfo;
  385. frmf_inputEnterKey("grp_left.btn_search_mhrcd", "onclick", ev );
  386. //inputEnterKey("btn_search_mhrcd", "DOMActivate");
  387. }
  388. }
  389. function grp_left_ipt_search_trgtcd_onkeydown(obj:Edit, e:KeyEventInfo)
  390. {
  391. if(e.keycode == 13) {
  392. var ev = new ClickEventInfo;
  393. frmf_inputEnterKey("grp_left.btn_search_mhrcd", "onclick", ev );
  394. }
  395. }
  396. function grp_left_btn_search_mhrcd_onclick(obj:Button, e:ClickEventInfo)
  397. {
  398. fGetMhrcdList();
  399. }
  400. function grp_left_grd_mhrcdlist_oncellclick(obj:Grid, e:GridClickEventInfo)
  401. {
  402. fSetHrcdInfo();
  403. }
  404. function grp_right_top_button1_onclick(obj:Button, e:ClickEventInfo)
  405. {
  406. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno");
  407. if(utlf_isNull(sHardCdNo)) {
  408. alert("선택 된 공통코드가 없습니다.");
  409. return;
  410. }
  411. var sStatus = ds_main_mhrcdinfo.getColumn(0, "status");
  412. if(sStatus == "u" || sStatus == "i" ) {
  413. alert("신규 또는 수정중인 코드는 삭제 할수 없습니다.");
  414. return;
  415. }
  416. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype");
  417. if(sAuthType == "A") {
  418. ds_main_mhrcdinfo.setColumn(0, "status", "d"); // 입력 설정
  419. fSaveMHrcdInfo();
  420. } else {
  421. alert("삭제 권한이 없습니다.");
  422. return;
  423. }
  424. }
  425. function grp_right_top_button2_onclick(obj:Button, e:ClickEventInfo)
  426. {
  427. var sStatus = ds_main_mhrcdinfo.getColumn(0, "status");
  428. if(sStatus == "u" || sStatus == "d" ) {
  429. alert("수정 또는 삭제 중인 코드는 신규입력 할수 없습니다.");
  430. return;
  431. }
  432. if(sysf_getUserInfo("userid") == "EMR") { // 일단 EMR 아이디로만 신규 등록 권한 부여
  433. ds_main_mhrcdinfo.clearData(); // model.resetInstanceNode("/root/main/hardcdinfo/mhrcdinfo");
  434. ds_main_dhrcdlist.clearData(); // model.resetInstanceNode("/root/main/dhrcd/dhrcdlist");
  435. ds_main_ahrcdlist.clearData(); // model.resetInstanceNode("/root/main/ahrcd/ahrcdlist");
  436. // model.refresh();
  437. ds_main_mhrcdinfo.addRow();
  438. ds_main_mhrcdinfo.setColumn(0, "status", "i"); // 입력 설정
  439. ds_main_mhrcdinfo.setColumn(0, "authtype", "A"); // 저장 버튼을 사용할수 있도록 설정
  440. grp_right_top.btn_SaveMhrcd.enable = true; // 저장버튼 활성화
  441. grp_right_top.ipt_hardcdno.enable = true;
  442. grp_right_top.ipt_hardcdnm.enable = true;
  443. grp_right_top.ipt_suphardcdno.enable = true;
  444. grp_right_top.txt_rmk.enable = true;
  445. } else {
  446. alert("입력 권한이 없습니다.");
  447. return;
  448. }
  449. }
  450. function grp_right_top_button7_onclick(obj:Button, e:ClickEventInfo)
  451. {
  452. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno");
  453. if(utlf_isNull(sHardCdNo)) {
  454. alert("선택 된 공통코드가 없습니다.");
  455. return;
  456. }
  457. var sStatus = ds_main_mhrcdinfo.getColumn(0, "status");
  458. if(sStatus == "i" || sStatus == "d" ) {
  459. alert("신규 또는 삭제 중인 코드는 수정 할수 없습니다.");
  460. return;
  461. }
  462. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype");
  463. if(sAuthType == "A") {
  464. ds_main_mhrcdinfo.setColumn(0, "status", "u"); // 수정 설정
  465. grp_right_top.ipt_hardcdno.enable = false;
  466. grp_right_top.ipt_hardcdnm.enable = true;
  467. grp_right_top.ipt_suphardcdno.enable = true;
  468. grp_right_top.txt_rmk.enable = true;
  469. } else {
  470. alert("수정 권한이 없습니다.");
  471. return;
  472. }
  473. }
  474. function grp_right_top_btn_SaveMhrcd_onclick(obj:Button, e:ClickEventInfo)
  475. {
  476. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype");
  477. if(sAuthType == "A") {
  478. fSaveMHrcdInfo();
  479. } else {
  480. alert("저장 권한이 없습니다.");
  481. return;
  482. }
  483. }
  484. function grp_right_middle_btn_SaveAhrcd_onclick(obj:Button, e:ClickEventInfo)
  485. {
  486. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype");
  487. if(sAuthType == "A" || sysf_getUserInfo("userid") == "EMR") {
  488. fSaveAHrcdList();
  489. } else {
  490. alert("저장 권한이 없습니다.");
  491. return;
  492. }
  493. }
  494. function grp_right_middle_button5_onclick(obj:Button, e:ClickEventInfo)
  495. {
  496. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno"); //model.getValue("/root/main/hardcdinfo/mhrcdinfo/hardcdno");
  497. if(utlf_isNull(sHardCdNo)) {
  498. alert("선택 된 공통코드가 없습니다.");
  499. return;
  500. }
  501. var cur_row = ds_main_ahrcdlist.rowposition; //grd_ahrcdlist.row; // 행 번호 가져오기
  502. var iStatus = ds_main_ahrcdlist.getRowType(cur_row); //grd_ahrcdlist.rowstatus(cur_row);
  503. if(cur_row < 0) {
  504. alert("삭제할 조건행을 선택해주세요.");
  505. return;
  506. }
  507. if ( iStatus == 2 ) { // 새로 삽입된 행이면 iStatus == 1 || iStatus == 3
  508. ds_main_ahrcdlist.deleteRow(cur_row); //grd_ahrcdlist.deleteitem(cur_row);
  509. } else {
  510. grdf_setStatus(grp_right_middle.grd_ahrcdlist, "D", [cur_row])
  511. }
  512. }
  513. function grp_right_middle_button11_onclick(obj:Button, e:ClickEventInfo)
  514. {
  515. fAhrcdListGridAdd("D");
  516. }
  517. function grp_right_middle_button00_onclick(obj:Button, e:ClickEventInfo)
  518. {
  519. fAhrcdListGridAdd("U");
  520. }
  521. /*
  522. * 권한코드리스트에 항목 추가
  523. * sFlag = D:부서, U:사용자
  524. */
  525. function fAhrcdListGridAdd(sFlag){
  526. var sAuthClsCd = "";
  527. var sAuthTrgtCd = "";
  528. var sAuthTrgtNm = "";
  529. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno");
  530. if(utlf_isNull(sHardCdNo)) {
  531. alert("선택 된 공통코드가 없습니다.");
  532. return;
  533. }
  534. if(sFlag == "D") { // 부서
  535. //var sReturn = fAhrcdListGridAdd("deptnm");
  536. //20190422 이돈희 : 통합부서정보에서 사용자기관별부서정보검색으로 수정
  537. var sReturn = appf_openDeptCodeList("dutplceinstcd", sysf_getUserInfo("dutplceinstcd"), "deptnm", "", "", "", "", "deptcd depthngnm cntctel");
  538. sAuthClsCd = "D";
  539. sAuthTrgtCd = sReturn.deptcd;
  540. sAuthTrgtNm = sReturn.depthngnm;
  541. if(utlf_isNull(sAuthTrgtCd)) {
  542. return;
  543. }
  544. } else if(sFlag == "U") { // 사용자
  545. var sReturn = appf_openUserInfo('usernm', '', '', '', '');
  546. sReturn = utlf_transNullToEmpty(sReturn.userInfo).split('|');
  547. sAuthClsCd = "P";
  548. sAuthTrgtCd = sReturn[0];
  549. sAuthTrgtNm = sReturn[1];
  550. if(utlf_isNull(sAuthTrgtCd)) {
  551. return;
  552. }
  553. } else {
  554. sAuthClsCd = "P";
  555. sAuthTrgtCd = "";
  556. sAuthTrgtNm = "";
  557. }
  558. ds_main_ahrcdlist.addRow();
  559. grp_right_middle.grd_ahrcdlist.showEditor(true);
  560. var nRow = ds_main_ahrcdlist.rowposition;
  561. ds_main_ahrcdlist.setColumn(nRow, "hardcdno", sHardCdNo);
  562. ds_main_ahrcdlist.setColumn(nRow, "authclscd", sAuthClsCd);
  563. ds_main_ahrcdlist.setColumn(nRow, "authtrgtcd", sAuthTrgtCd);
  564. ds_main_ahrcdlist.setColumn(nRow, "authtrgtnm", sAuthTrgtNm);
  565. ds_main_ahrcdlist.setColumn(nRow, "authtypecd", "R");
  566. }
  567. function grp_right_bottom_btn_SaveDhrcd_onclick(obj:Button, e:ClickEventInfo)
  568. {
  569. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype"); //model.getValue("/root/main/hardcdinfo/mhrcdinfo/authtype");
  570. if(sAuthType == "A" || sAuthType == "E") {
  571. fSaveDHrcdList();
  572. } else {
  573. alert("저장 권한이 없습니다.");
  574. return;
  575. }
  576. }
  577. function grp_right_bottom_button8_onclick(obj:Button, e:ClickEventInfo)
  578. {
  579. fDhrcdListGridAdd(); // 상세항목 추가
  580. }
  581. function grp_right_bottom_button9_onclick(obj:Button, e:ClickEventInfo)
  582. {
  583. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno"); //model.getValue("/root/main/hardcdinfo/mhrcdinfo/hardcdno");
  584. if(utlf_isNull(sHardCdNo)) {
  585. alert("선택 된 공통코드가 없습니다.");
  586. return;
  587. }
  588. var cur_row = ds_main_dhrcdlist.rowposition;
  589. var iStatus = ds_main_dhrcdlist.getRowType(cur_row); //grd_dhrcdlist.rowstatus(cur_row);
  590. if(cur_row < 0) {
  591. alert("삭제할 조건행을 선택해주세요.");
  592. return;
  593. }
  594. if (iStatus == 2) { // 새로 삽입된 행이면
  595. ds_main_dhrcdlist.deleteRow(cur_row); //grd_dhrcdlist.deleteitem(cur_row);
  596. } else {
  597. grdf_setStatus(grp_right_bottom.grd_dhrcdlist, "D", [cur_row])
  598. }
  599. }
  600. /**
  601. * @desc : 화면 초기화
  602. * @
  603. * @param :
  604. * @return :
  605. * @author : 엄영만
  606. * @---------------------------------------------------
  607. */
  608. function fInitialize_SMMMB08400(){
  609. fGetMhrcdList();
  610. }
  611. /**
  612. * @desc : 진료공통코드 리스트 조회
  613. * @
  614. * @param :
  615. * @return :
  616. * @author : 엄영만
  617. * @---------------------------------------------------
  618. */
  619. function fGetMhrcdList(){
  620. //model.removeNodeset("/root/main/info/mhrcd/mhrcdlist"); // 진료공통코드 리스트
  621. // model.resetInstanceNode("/root/main/hardcdinfo/mhrcdinfo");
  622. // model.resetInstanceNode("/root/main/dhrcd/dhrcdlist");
  623. // model.resetInstanceNode("/root/main/ahrcd/ahrcdlist");
  624. ds_main_mhrcdinfo.clearData();
  625. ds_main_mhrcdinfo.addRow();
  626. ds_main_mhrcdlist.clearData();
  627. // ds_main_mhrcdinfo.clearData();
  628. ds_main_dhrcdlist.clearData();
  629. ds_main_ahrcdlist.clearData();
  630. ds_main_cond.setColumn(0, "userid", sysf_getUserInfo("userid")); //model.setValue("/root/main/cond/userid", getUserInfo("userid"));
  631. ds_main_cond.setColumn(0, "deptcd", sysf_getUserInfo("dutplcecd")); //model.setValue("/root/main/cond/deptcd", getUserInfo("dutplcecd"));
  632. ds_main_cond.setColumn(0, "hardcdno", grp_left.ipt_search_hardcdno.value);
  633. ds_main_cond.setColumn(0, "hardcdnm", grp_left.ipt_search_hardcdnm.value);
  634. var oParam = {};
  635. oParam.id = "TRMMB08401";
  636. oParam.service = "prcpbaseapp.PrcpClsMngt";
  637. oParam.method = "reqGetHardCodeList";
  638. oParam.inds = "req=ds_main_cond";
  639. oParam.outds = "ds_main_mhrcdlist=mhrcdlist";
  640. oParam.async = false;
  641. oParam.callback = "cf_TRMMB08401";
  642. tranf_submit(oParam);
  643. grdf_expandDepth(grp_left.grd_mhrcdlist, 3);
  644. //setTree(grd_mhrcdlist, grd_mhrcdlist.colRef("levl"), grd_mhrcdlist.colRef("displaynm"), false);
  645. //input박스 비활성화
  646. grp_right_top.ipt_hardcdno.enable = false;
  647. grp_right_top.ipt_hardcdnm.enable = false;
  648. grp_right_top.ipt_suphardcdno.enable = false;
  649. grp_right_top.txt_rmk.enable = false;
  650. // 저장버튼 비활성화
  651. grp_right_top.btn_SaveMhrcd.enable = false;
  652. grp_right_middle.btn_SaveAhrcd.enable = false;
  653. grp_right_bottom.btn_SaveDhrcd.enable = false;
  654. // grd_dhrcdlist.clearStatus();
  655. // grd_ahrcdlist.clearStatus();
  656. // model.refresh();
  657. }
  658. function cf_TRMMB08401(sSvcId, nErrorCode, sErrorMsg) {
  659. if(nErrorCode < 0) return;
  660. }
  661. /**
  662. * @desc : 진료공통코드 리스트 클릭시 기본정보 설정
  663. * @
  664. * @param :
  665. * @return :
  666. * @author : 엄영만
  667. * @---------------------------------------------------
  668. */
  669. function fSetHrcdInfo(){
  670. var nRow = ds_main_mhrcdlist.rowposition;
  671. var sHardCdNo = ds_main_mhrcdlist.getColumn(nRow, "hardcdno");
  672. if(!utlf_isNull(sHardCdNo)) {
  673. dsf_makeValue(ds_send_reqdata, "userid","string", sysf_getUserInfo("userid")); // model.makeValue("/root/send/reqdata/userid", getUserInfo("userid"));
  674. dsf_makeValue(ds_send_reqdata, "deptcd","string", sysf_getUserInfo("dutplcecd"));
  675. dsf_makeValue(ds_send_reqdata, "hardcdno","string", sHardCdNo);
  676. var oParam = {};
  677. oParam.id = "TRMMB08402";
  678. oParam.service = "prcpbaseapp.PrcpClsMngt";
  679. oParam.method = "reqGetHardCodeInfo";
  680. oParam.inds = "req=ds_send_reqdata";
  681. oParam.outds = "ds_main_mhrcdinfo=mhrcdinfo ds_main_ahrcdlist=ahrcdlist ds_main_dhrcdlist=dhrcdlist";
  682. oParam.async = false;
  683. oParam.callback = "cf_TRMMB08402";
  684. tranf_submit(oParam);
  685. }
  686. }
  687. function cf_TRMMB08402(sSvcId, nErrorCode, sErrorMsg) {
  688. if(nErrorCode < 0) {
  689. return;
  690. } else {
  691. // model.resetInstanceNode("/root/main/hardcdinfo/mhrcdinfo");
  692. // model.resetInstanceNode("/root/main/dhrcd/dhrcdlist");
  693. // model.resetInstanceNode("/root/main/ahrcd/ahrcdlist");
  694. //
  695. // copyNodesetType("/root/main/hardcdinfo/mhrcdinfo", "/root/main/recv/mhrcdinfo", "replace", model, model);
  696. // copyNodesetType("/root/main/dhrcd/dhrcdlist", "/root/main/recv/dhrcdlist", "replace", model, model);
  697. // copyNodesetType("/root/main/ahrcd/ahrcdlist", "/root/main/recv/ahrcdlist", "replace", model, model);
  698. ds_main_mhrcdinfo.addColumn("status", "string");
  699. //input박스 비활성화
  700. grp_right_top.ipt_hardcdno.enable = false;
  701. grp_right_top.ipt_hardcdnm.enable = false;
  702. grp_right_top.ipt_suphardcdno.enable = false;
  703. grp_right_top.txt_rmk.enable = false;
  704. // grd_dhrcdlist.clearStatus();
  705. // grd_ahrcdlist.clearStatus();
  706. var sAuthType = ds_main_mhrcdinfo.getColumn(0, "authtype"); //model.getValue("/root/main/hardcdinfo/mhrcdinfo/authtype");
  707. if(sAuthType == "A" || sysf_getUserInfo("userid") == "EMR") {
  708. grp_right_top.btn_SaveMhrcd.enable = true;
  709. grp_right_middle.btn_SaveAhrcd.enable = true;
  710. grp_right_bottom.btn_SaveDhrcd.enable = true;
  711. } else if(sAuthType == "E"){
  712. grp_right_top.btn_SaveMhrcd.enable = false;
  713. grp_right_middle.btn_SaveAhrcd.enable = false;
  714. grp_right_bottom.btn_SaveDhrcd.enable = true;
  715. } else {
  716. grp_right_top.btn_SaveMhrcd.enable = false;
  717. grp_right_middle.btn_SaveAhrcd.enable = false;
  718. grp_right_bottom.btn_SaveDhrcd.enable = false;
  719. }
  720. }
  721. }
  722. /**
  723. * @desc : 진료공통코드 상세 리스트 저장
  724. * @
  725. * @param :
  726. * @return :
  727. * @author : 엄영만
  728. * @---------------------------------------------------
  729. */
  730. function fSaveMHrcdInfo(){
  731. if( sysf_messageBox("기본정보를","Q002") == 6 ){
  732. dsf_copyDs(ds_send_mhrcdinfo, ds_main_mhrcdinfo, "replace"); //copyNodesetType("/root/send/savedata/mhrcdinfo", "/root/main/hardcdinfo/mhrcdinfo", "replace", model, model);
  733. var oParam = {};
  734. oParam.id = "TXMMB08401";
  735. oParam.service = "prcpbaseapp.PrcpClsMngt";
  736. oParam.method = "reqExeSaveMHardCodeInfo";
  737. oParam.inds = "req=ds_send_mhrcdinfo";
  738. oParam.outds = "";
  739. oParam.async = false;
  740. oParam.callback = "cf_TXMMB08401";
  741. tranf_submit(oParam);
  742. }
  743. }
  744. function cf_TXMMB08401(sSvcId, nErrorCode, sErrorMsg) {
  745. if(nErrorCode < 0) {
  746. return;
  747. } else {
  748. fGetMhrcdList();
  749. }
  750. }
  751. /**
  752. * @desc : 진료공통코드 상세 리스트 저장
  753. * @
  754. * @param :
  755. * @return :
  756. * @author : 엄영만
  757. * @---------------------------------------------------
  758. */
  759. function fSaveDHrcdList(){
  760. if( sysf_messageBox("상세코드 정보를","Q002") == 6 ){
  761. // var oDsUpdate = grdf_getGridUpdateData(grp_biz.grd_allergylist);
  762. // grdf_setStatusColumn(oDsUpdate,"m");
  763. // ds_send_data1.copyData(oDsUpdate, true);
  764. //dsf_copyDs(ds_send_dhrcdlist, grdf_getGridUpdateData(grp_right_bottom.grd_dhrcdlist), "replace"); //model.setValue("/root/send/savedata/dhrcdlist", grd_dhrcdlist.getUpdateData());
  765. var oParam = {};
  766. oParam.id = "TXMMB08402";
  767. oParam.service = "prcpbaseapp.PrcpClsMngt";
  768. oParam.method = "reqExeSaveDHardCodeList";
  769. oParam.inds = "req=ds_main_dhrcdlist:U";
  770. oParam.outds = "";
  771. oParam.async = false;
  772. oParam.callback = "cf_TXMMB08402";
  773. tranf_submit(oParam);
  774. }
  775. }
  776. function cf_TXMMB08402(sSvcId, nErrorCode, sErrorMsg) {
  777. if(nErrorCode < 0) {
  778. return;
  779. } else {
  780. fSetHrcdInfo();
  781. }
  782. }
  783. /**
  784. * @desc : 진료공통코드 권한 리스트 저장
  785. * @
  786. * @param :
  787. * @return :
  788. * @author : 엄영만
  789. * @---------------------------------------------------
  790. */
  791. function fSaveAHrcdList(){
  792. if( sysf_messageBox("권한정보를","Q002") == 6 ){
  793. //dsf_copyDs(ds_send_ahrcdlist, grdf_getGridUpdateData(grp_right_middle.grd_ahrcdlist), "replace"); //model.setValue("/root/send/savedata/ahrcdlist", grd_ahrcdlist.getUpdateData());
  794. var oParam = {};
  795. oParam.id = "TXMMB08403";
  796. oParam.service = "prcpbaseapp.PrcpClsMngt";
  797. oParam.method = "reqExeSaveAHardCodeList";
  798. oParam.inds = "req=ds_main_ahrcdlist:U";
  799. oParam.outds = "";
  800. oParam.async = false;
  801. oParam.callback = "cf_TXMMB08403";
  802. tranf_submit(oParam);
  803. }
  804. }
  805. function cf_TXMMB08403(sSvcId, nErrorCode, sErrorMsg) {
  806. if(nErrorCode < 0) {
  807. return;
  808. } else {
  809. fSetHrcdInfo();
  810. }
  811. }
  812. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  813. {
  814. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno");
  815. if(utlf_isNull(sHardCdNo)) {
  816. alert("선택 된 공통코드가 없습니다.");
  817. return;
  818. }
  819. grdf_exportExcel(grp_right_bottom.grd_dhrcdlist, "진료공통코드" + sHardCdNo, sHardCdNo, false, null, "user", true);
  820. }
  821. function grp_right_bottom_button00_onclick(obj:Button, e:ClickEventInfo)
  822. {
  823. fDhrcdListGridAdd("C"); // 처방
  824. }
  825. function grp_right_bottom_button01_onclick(obj:Button, e:ClickEventInfo)
  826. {
  827. fDhrcdListGridAdd("P"); // 환자
  828. }
  829. function grp_right_bottom_button02_onclick(obj:Button, e:ClickEventInfo)
  830. {
  831. fDhrcdListGridAdd("U"); // 사용자
  832. }
  833. function grp_right_bottom_button03_onclick(obj:Button, e:ClickEventInfo)
  834. {
  835. fDhrcdListGridAdd("D"); // 부서
  836. }
  837. function grp_right_bottom_button04_onclick(obj:Button, e:ClickEventInfo)
  838. {
  839. fDhrcdListGridAdd("I"); // 진단
  840. }
  841. /*
  842. * 상세코드리스트에 항목 추가
  843. * sFlag = D:부서, U:사용자, P:환자, C:처방코드, I:진단
  844. */
  845. function fDhrcdListGridAdd(sFlag){
  846. var sTrgtCd = "";
  847. var sTrgtCdNm = "";
  848. var sHardCdNo = ds_main_mhrcdinfo.getColumn(0, "hardcdno");
  849. if(utlf_isNull(sHardCdNo)) {
  850. alert("선택 된 공통코드가 없습니다.");
  851. return;
  852. }
  853. if(sFlag == "C") { // 처방코드
  854. frmf_setParameter("SPMMB21700_recive_srchflag", "prcpcd");
  855. frmf_modal("SPMMB21700","SPMMB21700","","","","","","","","","","","M");
  856. sTrgtCd = frmf_getParameter("SPMMB21700_prcpcd");
  857. sTrgtCdNm = frmf_getParameter("SPMMB21700_prcpnm");
  858. if(utlf_isNull(sTrgtCd)) {
  859. return;
  860. }
  861. } else if(sFlag == "D") { // 부서
  862. //var sReturn = appf_openMasterDeptCodeList("deptnm");
  863. //20190422 이돈희 : 통합부서정보에서 사용자기관별부서정보검색으로 수정
  864. var sReturn = appf_openDeptCodeList("dutplceinstcd", sysf_getUserInfo("dutplceinstcd"), "deptnm", "", "", "", "", "deptcd depthngnm cntctel");
  865. sTrgtCd = sReturn.deptcd;
  866. sTrgtCdNm = sReturn.depthngnm;
  867. if(utlf_isNull(sTrgtCd)) {
  868. return;
  869. }
  870. } else if(sFlag == "P") { // 환자
  871. frmf_modal("SPPMC02500","SPPMC02500","","","","","","","","","","","M");
  872. sTrgtCd = ds_patinfolist.getColumn(0,"pid");
  873. sTrgtCdNm = ds_patinfolist.getColumn(0,"hngnm");
  874. if(utlf_isNull(sTrgtCd)) {
  875. return;
  876. }
  877. } else if(sFlag == "I") { // 진단
  878. frmf_modal("SPMMO03200","SPMMO03200",null,null,null,null,null,null,null,null,null,null,"M");
  879. var useyn = frmf_getParameter("SPMMO03200_rtn_useyn");
  880. if(useyn == "Y"){
  881. frmf_setParameter("SPMMO03200_rtn_useyn", "");
  882. var totcnt = ds_temp_selectdiaglist.rowcount;
  883. for(var i = 0 ; i < totcnt ; i++) {
  884. sTrgtCd = ds_temp_selectdiaglist.getColumn(i,"icd10cd");
  885. sTrgtCdNm = ds_temp_selectdiaglist.getColumn(i,"diagengnm");
  886. ds_main_dhrcdlist.addRow();
  887. grp_right_bottom.grd_dhrcdlist.showEditor(true);
  888. var nRow = ds_main_dhrcdlist.rowposition;
  889. ds_main_dhrcdlist.setColumn(nRow, "hardcdno", sHardCdNo);
  890. ds_main_dhrcdlist.setColumn(nRow, "trgtcd", sTrgtCd);
  891. ds_main_dhrcdlist.setColumn(nRow, "trgtcdnm", sTrgtCdNm);
  892. ds_main_dhrcdlist.setColumn(nRow, "valifromdd", utlf_getCurrentDate());
  893. ds_main_dhrcdlist.setColumn(nRow, "valitodd", "99991231");
  894. }
  895. }
  896. return; // 멀티row 선택 처리를 위해
  897. } else if(sFlag == "U") { // 사용자
  898. var sReturn = appf_openUserInfo('usernm', '', '', '', '');
  899. sReturn = utlf_transNullToEmpty(sReturn.userInfo).split('|');
  900. sTrgtCd = sReturn[0];
  901. sTrgtCdNm = sReturn[1];
  902. if(utlf_isNull(sTrgtCd)) {
  903. return;
  904. }
  905. } else {
  906. sTrgtCd = "";
  907. sTrgtCdNm = "";
  908. }
  909. ds_main_dhrcdlist.addRow();
  910. grp_right_bottom.grd_dhrcdlist.showEditor(true);
  911. var nRow = ds_main_dhrcdlist.rowposition;
  912. ds_main_dhrcdlist.setColumn(nRow, "hardcdno", sHardCdNo);
  913. ds_main_dhrcdlist.setColumn(nRow, "trgtcd", sTrgtCd);
  914. ds_main_dhrcdlist.setColumn(nRow, "trgtcdnm", sTrgtCdNm);
  915. ds_main_dhrcdlist.setColumn(nRow, "valifromdd", utlf_getCurrentDate());
  916. ds_main_dhrcdlist.setColumn(nRow, "valitodd", "99991231");
  917. }
  918. ]]></Script>
  919. </Form>
  920. </FDL>