SMAHB00310_수가관리.xfdl 58 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAHB00310" position="absolute 0 0 1195 791" titletext="수가관리" onload="SMAHB00310_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="건진수가관리" class="tit_1" position="absolute 0 0 120 25"/>
  8. <Div id="group6" taborder="1" class="div_SA" position="absolute 0 25 1194 65" anchor="left top right">
  9. <Layouts>
  10. <Layout>
  11. <Static id="caption8" text="건진구분:" class="search_name" position="absolute 10 12 109 29"/>
  12. <Combo id="cmb_healexamflag" taborder="1" innerdataset="@ds_init_A0068" codecolumn="cdid" datacolumn="cdnm" class="combo_search" position="absolute 87 11 192 30" onitemchanged="group6_cmb_healexamflag_onitemchanged"/>
  13. <Static id="caption9" text="건진상세분류 :" class="search_name" position="absolute 208 12 317 29"/>
  14. <Combo id="cmb_srchhealexamdetlflag" taborder="2" innerdataset="@ds_init_A0069" codecolumn="cdid" datacolumn="cdnm" class="combo_search" position="absolute 315 11 405 30" onitemchanged="group6_cmb_srchhealexamdetlflag_onitemchanged"/>
  15. <Static id="caption21" text="패키지코드 :" class="search_name" position="absolute 419 12 510 29"/>
  16. <Edit id="ipt_srchpkgcd" taborder="3" class="input_essential" position="absolute 515 11 615 30" onkeyup="group6_ipt_srchpkgcd_onkeyup"/>
  17. <Static id="caption22" text="명칭 :" class="search_name" position="absolute 630 12 695 29"/>
  18. <Edit id="ipt_srchpkgnm" taborder="4" class="input_search" position="absolute 687 11 787 30" onkeyup="group6_ipt_srchpkgnm_onkeyup"/>
  19. <CheckBox id="chk_useyn" taborder="5" position="absolute 794 11 869 31" text="사용여부" truevalue="Y" onclick="group6_chk_useyn_onclick"/>
  20. <Shape id="line18" linetype="vertical" class="line_4" position="absolute 1101 10 1107 32" anchor="top right"/>
  21. <Button id="btn_search" taborder="6" text="조회" class="btn1" position="absolute 1122 10 1178 32" onclick="group6_btn_search_onclick" anchor="top right"/>
  22. </Layout>
  23. </Layouts>
  24. </Div>
  25. <Static id="caption11" text="패키지코드 - 조회기준일" class="tit_2" position="absolute 0 73 172 89"/>
  26. <Button id="btn_grdsize" taborder="2" text="펼치기" class="btn2" position="absolute 341 67 394 89" onclick="btn_grdsize_onclick"/>
  27. <Button id="btn_excsave1" taborder="3" text="엑셀" class="btn7" position="absolute 287 67 339 89" onclick="btn_excsave1_onclick"/>
  28. <Shape id="line7" linetype="horizontal" class="line_10" position="absolute 0 89 395 95"/>
  29. <Static id="caption2" text="수가정보 - 조회기준일" class="tit_2" position="absolute 400 73 558 89"/>
  30. <Button id="button5" taborder="4" text="엑셀" class="btn7" position="absolute 783 67 835 89" onclick="button5_onclick"/>
  31. <Shape id="line1" linetype="horizontal" class="line_10" position="absolute 400 89 835 95"/>
  32. <Grid id="grd_calcscorelst" taborder="5" binddataset="ds_main_calcscorelst_calcscore" useinputpanel="false" position="absolute 400 94 835 762" oncelldblclick="grd_calcscorelst_oncelldblclick" selecttype="multirow" anchor="left top bottom" cellsizingtype="col" autoenter="select">
  33. <Formats>
  34. <Format id="default">
  35. <Columns>
  36. <Column size="25" band="left"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="60"/>
  41. <Column size="100"/>
  42. <Column size="0"/>
  43. <Column size="60"/>
  44. <Column size="100"/>
  45. <Column size="100"/>
  46. <Column size="0"/>
  47. <Column size="0"/>
  48. <Column size="0"/>
  49. <Column size="100"/>
  50. <Column size="100"/>
  51. </Columns>
  52. <Rows>
  53. <Row size="24" band="head"/>
  54. <Row size="24"/>
  55. <Row size="24" band="summ"/>
  56. </Rows>
  57. <Band id="head">
  58. <Cell/>
  59. <Cell col="1" text="건진구분"/>
  60. <Cell col="2" text="패키지코드"/>
  61. <Cell col="3" text="상세패키지코드"/>
  62. <Cell col="4" text="검사코드"/>
  63. <Cell col="5" text="검사명"/>
  64. <Cell col="6" text="수가검사코드"/>
  65. <Cell col="7" text="단가"/>
  66. <Cell col="8" text="적용일자"/>
  67. <Cell col="9" text="종료일자"/>
  68. <Cell col="10" text="최종수정자"/>
  69. <Cell col="11" text="최종수정일시"/>
  70. <Cell col="12"/>
  71. <Cell col="13"/>
  72. <Cell col="14"/>
  73. </Band>
  74. <Band id="body">
  75. <Cell celltype="head"/>
  76. <Cell col="1" text="bind:healexamflag"/>
  77. <Cell col="2" text="bind:pkgcd"/>
  78. <Cell col="3" text="bind:gpkgcd"/>
  79. <Cell col="4" displaytype="text" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:testcd"/>
  80. <Cell col="5" displaytype="text" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:testnm"/>
  81. <Cell col="6" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:mtestcd"/>
  82. <Cell col="7" displaytype="number" edittype="masknumber" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:testamt"/>
  83. <Cell col="8" displaytype="date" edittype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:fromdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  84. <Cell col="9" displaytype="date" edittype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:todd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  85. <Cell col="10" displaytype="date" edittype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:oldfromdd" mask="yyyy-mm-dd hh:nn"/>
  86. <Cell col="11" displaytype="date" edittype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:oldtodd" mask="yyyy-mm-dd hh:nn"/>
  87. <Cell col="12" displaytype="date" edittype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:changeoldtodd" mask="yyyy-mm-dd hh:nn"/>
  88. <Cell col="13" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:lastupdtrid"/>
  89. <Cell col="14" displaytype="date" style="background:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');background2:EXPR(getRowType(currow)==2 ? '#F6B7B9' : '');" text="bind:lastupdtdt" mask="yyyy-MM-dd HH:mm"/>
  90. </Band>
  91. <Band id="summary" style="background:#99ff99ff;">
  92. <Cell/>
  93. <Cell col="1"/>
  94. <Cell col="2"/>
  95. <Cell col="3"/>
  96. <Cell col="4" style="font:Dotum,9,bold;" text="총계"/>
  97. <Cell col="5"/>
  98. <Cell col="6"/>
  99. <Cell col="7" displaytype="number" style="font:Dotum,9,bold;" text="expr:getSum('testamt')"/>
  100. <Cell col="8"/>
  101. <Cell col="9"/>
  102. <Cell col="10"/>
  103. <Cell col="11"/>
  104. <Cell col="12"/>
  105. <Cell col="13"/>
  106. <Cell col="14"/>
  107. </Band>
  108. </Format>
  109. </Formats>
  110. </Grid>
  111. <Static id="caption1" text="이력정보" class="tit_2" position="absolute 840 73 948 89"/>
  112. <Button id="btn_grdadd" taborder="6" text="행추가" class="btn2" position="absolute 1086 67 1139 89" onclick="btn_grdadd_onclick" anchor="top right"/>
  113. <Button id="btn_grddel" taborder="7" text="행삭제" class="btn2" position="absolute 1141 67 1194 89" onclick="btn_grddel_onclick" anchor="top right"/>
  114. <Shape id="line2" class="line_10" position="absolute 840 89 1194 95" anchor="left top right"/>
  115. <Grid id="grd_calcscoredetlst" taborder="8" binddataset="ds_main_calcscoredetlst_calcscore" useinputpanel="false" position="absolute 840 94 1194 762" selecttype="multirow" anchor="all" cellsizingtype="col">
  116. <Formats>
  117. <Format id="default">
  118. <Columns>
  119. <Column size="25" band="left"/>
  120. <Column size="0"/>
  121. <Column size="0"/>
  122. <Column size="60"/>
  123. <Column size="0"/>
  124. <Column size="60"/>
  125. <Column size="100"/>
  126. <Column size="100"/>
  127. <Column size="0"/>
  128. <Column size="0"/>
  129. <Column size="100"/>
  130. <Column size="100"/>
  131. </Columns>
  132. <Rows>
  133. <Row size="24" band="head"/>
  134. <Row size="24"/>
  135. </Rows>
  136. <Band id="head">
  137. <Cell/>
  138. <Cell col="1" text="건진구분"/>
  139. <Cell col="2" text="패키지코드"/>
  140. <Cell col="3" text="검사코드"/>
  141. <Cell col="4" text="검사명"/>
  142. <Cell col="5" text="단가"/>
  143. <Cell col="6" text="적용일자"/>
  144. <Cell col="7" text="종료일자"/>
  145. <Cell col="8" text="최종수정자"/>
  146. <Cell col="9" text="최종수정일시"/>
  147. <Cell col="10"/>
  148. <Cell col="11"/>
  149. </Band>
  150. <Band id="body">
  151. <Cell celltype="head"/>
  152. <Cell col="1" text="bind:healexamflag"/>
  153. <Cell col="2" text="bind:pkgcd"/>
  154. <Cell col="3" displaytype="text" text="bind:testcd"/>
  155. <Cell col="4" text="bind:testnm"/>
  156. <Cell col="5" displaytype="number" edittype="masknumber" text="bind:testamt"/>
  157. <Cell col="6" displaytype="date" edittype="date" text="bind:fromdd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  158. <Cell col="7" displaytype="date" edittype="date" text="bind:todd" mask="yyyy-MM-dd" calendardisplaynulltype="nulltext"/>
  159. <Cell col="8" displaytype="date" edittype="date" text="bind:oldfromdd" mask="yyyy-mm-dd hh:nn"/>
  160. <Cell col="9" displaytype="date" edittype="date" text="bind:oldtodd" mask="yyyy-mm-dd hh:nn"/>
  161. <Cell col="10" text="bind:lastupdtrid"/>
  162. <Cell col="11" displaytype="date" text="bind:lastupdtdt" mask="yyyy-MM-dd HH:mm"/>
  163. </Band>
  164. </Format>
  165. </Formats>
  166. </Grid>
  167. <Grid id="grd_pkglst" taborder="9" binddataset="ds_main_pkgcdlst_item1" useinputpanel="false" position="absolute 0 94 395 762" oncelldblclick="grd_pkglst_oncelldblclick" selecttype="multirow" anchor="left top bottom" cellsizingtype="col">
  168. <Formats>
  169. <Format id="default">
  170. <Columns>
  171. <Column size="20" band="left"/>
  172. <Column size="30" band="left"/>
  173. <Column size="78" band="left"/>
  174. <Column size="0" band="left"/>
  175. <Column size="0" band="left"/>
  176. <Column size="80" band="left"/>
  177. <Column size="0" band="left"/>
  178. <Column size="100"/>
  179. <Column size="0"/>
  180. <Column size="60"/>
  181. <Column size="70"/>
  182. <Column size="85"/>
  183. <Column size="90"/>
  184. <Column size="80"/>
  185. <Column size="100"/>
  186. <Column size="125"/>
  187. <Column size="100"/>
  188. <Column size="100"/>
  189. <Column size="100"/>
  190. <Column size="100"/>
  191. <Column size="100"/>
  192. <Column size="100"/>
  193. <Column size="90"/>
  194. <Column size="100"/>
  195. <Column size="100"/>
  196. <Column size="100"/>
  197. <Column size="60"/>
  198. <Column size="0"/>
  199. <Column size="0"/>
  200. </Columns>
  201. <Rows>
  202. <Row size="24" band="head"/>
  203. <Row size="24"/>
  204. </Rows>
  205. <Band id="head">
  206. <Cell/>
  207. <Cell col="1" text="순번"/>
  208. <Cell col="2" text="건진상세구분"/>
  209. <Cell col="3" text="코드구분"/>
  210. <Cell col="4" text="pkgcd"/>
  211. <Cell col="5" text="패키지코드"/>
  212. <Cell col="6" text="구코드"/>
  213. <Cell col="7" text="패키지명"/>
  214. <Cell col="8" text="패키지명(영문)"/>
  215. <Cell col="9" text="가격"/>
  216. <Cell col="10" text="수가코드"/>
  217. <Cell col="11" text="수가명칭"/>
  218. <Cell col="12" text="비자국가코드"/>
  219. <Cell col="13" text="남여구분"/>
  220. <Cell col="14" text="사용여부"/>
  221. <Cell col="15" text="미수분류"/>
  222. <Cell col="16" text="수익분류"/>
  223. <Cell col="17" text="패키지수익분류"/>
  224. <Cell col="18" text="비고"/>
  225. <Cell col="19" text="최종수정자"/>
  226. <Cell col="20" text="최종수정일시"/>
  227. <Cell col="21" text="검사설명"/>
  228. <Cell col="22" text="할인적용여부"/>
  229. <Cell col="23" text="인터넷 적용여부"/>
  230. <Cell col="24" text="유해인자"/>
  231. <Cell col="25" text="주기"/>
  232. <Cell col="26" text="조회순서"/>
  233. <Cell col="27" text="earnclscd"/>
  234. <Cell col="28" text="dietconstyn"/>
  235. </Band>
  236. <Band id="body">
  237. <Cell celltype="head"/>
  238. <Cell col="1" text="bind:seq"/>
  239. <Cell col="2" displaytype="combo" edittype="combo" style="align:left middle;padding:0 0 0 3;" text="bind:healexamdetlflag" combodataset="ds_init_A0070" combocodecol="cdid" combodatacol="cdnm" id="colflag" enable="false"/>
  240. <Cell col="3" displaytype="combo" edittype="combo" text="bind:pkgflag" enable="false"/>
  241. <Cell col="4" text="bind:pkgcdkey"/>
  242. <Cell col="5" style="align:left middle;padding:0 0 0 3;" text="bind:pkgcd"/>
  243. <Cell col="6" text="bind:oldordcd"/>
  244. <Cell col="7" style="align:left middle;padding:0 0 0 3;" text="bind:pkgnm"/>
  245. <Cell col="8" text="bind:pkgengnm"/>
  246. <Cell col="9" displaytype="number" text="bind:pkgamt"/>
  247. <Cell col="10" style="align:left middle;padding:0 0 0 3;" text="bind:calcscorcd"/>
  248. <Cell col="11" style="align:left middle;padding:0 0 0 3;" text="bind:calcscornm"/>
  249. <Cell col="12" displaytype="combo" edittype="combo" text="bind:brthareacnts" combodataset="ds_init_A0465" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  250. <Cell col="13" displaytype="combo" edittype="combo" text="bind:gndrflag" combodataset="ds_cmb_gndrflag" combocodecol="value" combodatacol="label" enable="false"/>
  251. <Cell col="14" displaytype="checkbox" edittype="checkbox" text="bind:useyn" expr="expr:(useyn==&quot;Y&quot;||useyn==1)?1:0" enable="false"/>
  252. <Cell col="15" displaytype="combo" edittype="combo" text="bind:uncoflag" combodataset="ds_init_A0067" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  253. <Cell col="16" displaytype="combo" edittype="combo" text="bind:earnclslst" combodataset="ds_init_A0435" combocodecol="cdid" combodatacol="cdnm" enable="false"/>
  254. <Cell col="17" displaytype="combo" edittype="combo" text="bind:pkgsumearncls" combodataset="ds_cmb_pkgsumearncls" combocodecol="value" combodatacol="label" enable="false"/>
  255. <Cell col="18" text="bind:remcnts"/>
  256. <Cell col="19" text="bind:lastupdtrid"/>
  257. <Cell col="20" style="align:left middle;padding:0 0 0 3;" text="bind:lastupdtdt"/>
  258. <Cell col="21" style="align:left middle;padding:0 0 0 3;" text="bind:pkgdesc"/>
  259. <Cell col="22" displaytype="checkbox" edittype="checkbox" text="bind:discyn" expr="expr:(discyn==&quot;Y&quot;||discyn==1)?1:0" enable="false"/>
  260. <Cell col="23" displaytype="checkbox" edittype="checkbox" text="bind:inetyn" expr="expr:(inetyn==&quot;Y&quot;||inetyn==1)?1:0" enable="false"/>
  261. <Cell col="24" text="bind:hrmfctr"/>
  262. <Cell col="25" text="bind:cycle"/>
  263. <Cell col="26" text="bind:prntseq"/>
  264. <Cell col="27" text="bind:earnclscd"/>
  265. <Cell col="28" text="bind:dietconstyn"/>
  266. </Band>
  267. </Format>
  268. </Formats>
  269. </Grid>
  270. <Div id="group4" taborder="10" position="absolute -5 760 1194 788" anchor="left right bottom">
  271. <Layouts>
  272. <Layout>
  273. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 784 5 840 27" anchor="left" onclick="group4_btn_save_onclick"/>
  274. <Button id="btn_detlsave" taborder="2" text="저장" class="btn4" position="absolute 1143 5 1199 27" anchor="right" onclick="group4_btn_detlsave_onclick"/>
  275. <Static id="Static00" text="~" position="absolute 510 9 527 27" style="font:arial,11,bold;"/>
  276. </Layout>
  277. </Layouts>
  278. </Div>
  279. <Calendar id="ipt_mechdd" taborder="11" position="absolute 558 69 656 88" dateformat="yyyy-MM-dd" value="null" class="input_essential" onchanged="ipt_mechdd_onchanged"/>
  280. <Button id="btn_update" taborder="12" text="수가일괄적용" position="absolute 624 765 713 787" class="btn2" onclick="btn_update_onclick"/>
  281. <Calendar id="ipt_upfromdd" taborder="13" dateformat="yyyy-MM-dd" class="input_essential" position="absolute 400 767 498 786"/>
  282. <Calendar id="ipt_uptodd" taborder="14" dateformat="yyyy-MM-dd" class="input_essential" position="absolute 520 767 618 786"/>
  283. <Calendar id="ipt_mechddpkg" taborder="15" dateformat="yyyy-MM-dd" class="input_essential" position="absolute 170 69 268 88" onchanged="ipt_mechddpkg_onchanged"/>
  284. </Layout>
  285. </Layouts>
  286. <Objects>
  287. <Dataset id="ds_main_calcscoredetlst_calcscore" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep" oncolumnchanged="ds_main_calcscoredetlst_calcscore_oncolumnchanged">
  288. <ColumnInfo>
  289. <Column id="healexamflag" type="STRING" size="256"/>
  290. <Column id="pkgcd" type="STRING" size="256"/>
  291. <Column id="testcd" type="STRING" size="256"/>
  292. <Column id="testnm" type="STRING" size="256"/>
  293. <Column id="testamt" type="STRING" size="256"/>
  294. <Column id="todd" type="STRING" size="256"/>
  295. <Column id="fromdd" type="STRING" size="256"/>
  296. <Column id="oldtodd" type="STRING" size="256"/>
  297. <Column id="oldfromdd" type="STRING" size="256"/>
  298. <Column id="lastupdtrid" type="STRING" size="256"/>
  299. <Column id="lastupdtdt" type="STRING" size="256"/>
  300. </ColumnInfo>
  301. <Rows>
  302. <Row>
  303. <Col id="healexamflag"/>
  304. <Col id="pkgcd"/>
  305. <Col id="testcd"/>
  306. <Col id="testnm"/>
  307. <Col id="testamt"/>
  308. <Col id="todd"/>
  309. <Col id="fromdd"/>
  310. <Col id="oldtodd"/>
  311. <Col id="oldfromdd"/>
  312. <Col id="lastupdtrid"/>
  313. <Col id="lastupdtdt"/>
  314. </Row>
  315. </Rows>
  316. </Dataset>
  317. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  318. <ColumnInfo>
  319. <Column id="hidden" type="STRING" size="256"/>
  320. </ColumnInfo>
  321. </Dataset>
  322. <Dataset id="ds_init_A0435" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  323. <ColumnInfo>
  324. <Column id="cdid" type="STRING" size="256"/>
  325. <Column id="cdnm" type="STRING" size="256"/>
  326. </ColumnInfo>
  327. <Rows>
  328. <Row>
  329. <Col id="cdid"/>
  330. <Col id="cdnm"/>
  331. </Row>
  332. </Rows>
  333. </Dataset>
  334. <Dataset id="ds_init_A0465" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  335. <ColumnInfo>
  336. <Column id="cdid" type="STRING" size="256"/>
  337. <Column id="cdnm" type="STRING" size="256"/>
  338. </ColumnInfo>
  339. <Rows>
  340. <Row>
  341. <Col id="cdid"/>
  342. <Col id="cdnm"/>
  343. </Row>
  344. </Rows>
  345. </Dataset>
  346. <Dataset id="ds_init_baseinfo_pkgflag_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  347. <ColumnInfo>
  348. <Column id="cdid" type="STRING" size="256"/>
  349. <Column id="cdnm" type="STRING" size="256"/>
  350. </ColumnInfo>
  351. <Rows>
  352. <Row>
  353. <Col id="cdid">P</Col>
  354. <Col id="cdnm">패키지</Col>
  355. </Row>
  356. <Row>
  357. <Col id="cdid">G</Col>
  358. <Col id="cdnm">묶음처방</Col>
  359. </Row>
  360. </Rows>
  361. </Dataset>
  362. <Dataset id="ds_savecalcscore_calcscore" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  363. <Dataset id="ds_init_A0067" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  364. <ColumnInfo>
  365. <Column id="cdid" type="STRING" size="256"/>
  366. <Column id="cdnm" type="STRING" size="256"/>
  367. </ColumnInfo>
  368. <Rows>
  369. <Row>
  370. <Col id="cdid"/>
  371. <Col id="cdnm"/>
  372. </Row>
  373. </Rows>
  374. </Dataset>
  375. <Dataset id="ds_init_A0069" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  376. <ColumnInfo>
  377. <Column id="cdid" type="STRING" size="256"/>
  378. <Column id="cdnm" type="STRING" size="256"/>
  379. </ColumnInfo>
  380. <Rows>
  381. <Row>
  382. <Col id="cdid"/>
  383. <Col id="cdnm"/>
  384. </Row>
  385. </Rows>
  386. </Dataset>
  387. <Dataset id="ds_main_calcscorelst_calcscore" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep" oncolumnchanged="ds_main_calcscorelst_calcscore_oncolumnchanged">
  388. <ColumnInfo>
  389. <Column id="healexamflag" type="STRING" size="256"/>
  390. <Column id="pkgcd" type="STRING" size="256"/>
  391. <Column id="gpkgcd" type="STRING" size="256"/>
  392. <Column id="testcd" type="STRING" size="256"/>
  393. <Column id="testnm" type="STRING" size="256"/>
  394. <Column id="mtestcd" type="STRING" size="256"/>
  395. <Column id="testamt" type="STRING" size="256"/>
  396. <Column id="todd" type="STRING" size="256"/>
  397. <Column id="fromdd" type="STRING" size="256"/>
  398. <Column id="oldtodd" type="STRING" size="256"/>
  399. <Column id="oldfromdd" type="STRING" size="256"/>
  400. <Column id="changeoldtodd" type="STRING" size="256"/>
  401. <Column id="lastupdtrid" type="STRING" size="256"/>
  402. <Column id="lastupdtdt" type="STRING" size="256"/>
  403. </ColumnInfo>
  404. <Rows>
  405. <Row>
  406. <Col id="healexamflag"/>
  407. <Col id="pkgcd"/>
  408. <Col id="gpkgcd"/>
  409. <Col id="testcd"/>
  410. <Col id="testnm"/>
  411. <Col id="mtestcd"/>
  412. <Col id="testamt"/>
  413. <Col id="todd"/>
  414. <Col id="fromdd"/>
  415. <Col id="oldtodd"/>
  416. <Col id="oldfromdd"/>
  417. <Col id="changeoldtodd"/>
  418. <Col id="lastupdtrid"/>
  419. <Col id="lastupdtdt"/>
  420. </Row>
  421. </Rows>
  422. </Dataset>
  423. <Dataset id="ds_main_pkgcdlst_item1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  424. <ColumnInfo>
  425. <Column id="seq" type="STRING" size="256"/>
  426. <Column id="healexamdetlflag" type="STRING" size="256"/>
  427. <Column id="pkgflag" type="STRING" size="256"/>
  428. <Column id="pkgcdkey" type="STRING" size="256"/>
  429. <Column id="pkgcd" type="STRING" size="256"/>
  430. <Column id="oldordcd" type="STRING" size="256"/>
  431. <Column id="pkgnm" type="STRING" size="256"/>
  432. <Column id="pkgengnm" type="STRING" size="256"/>
  433. <Column id="pkgamt" type="STRING" size="256"/>
  434. <Column id="calcscorcd" type="STRING" size="256"/>
  435. <Column id="calcscornm" type="STRING" size="256"/>
  436. <Column id="brthareacnts" type="STRING" size="256"/>
  437. <Column id="gndrflag" type="STRING" size="256"/>
  438. <Column id="useyn" type="STRING" size="256"/>
  439. <Column id="uncoflag" type="STRING" size="256"/>
  440. <Column id="earnclslst" type="STRING" size="256"/>
  441. <Column id="pkgsumearncls" type="STRING" size="256"/>
  442. <Column id="remcnts" type="STRING" size="256"/>
  443. <Column id="lastupdtrid" type="STRING" size="256"/>
  444. <Column id="lastupdtdt" type="STRING" size="256"/>
  445. <Column id="pkgdesc" type="STRING" size="256"/>
  446. <Column id="discyn" type="STRING" size="256"/>
  447. <Column id="inetyn" type="STRING" size="256"/>
  448. <Column id="hrmfctr" type="STRING" size="256"/>
  449. <Column id="cycle" type="STRING" size="256"/>
  450. <Column id="prntseq" type="STRING" size="256"/>
  451. <Column id="earnclscd" type="STRING" size="256"/>
  452. <Column id="dietconstyn" type="STRING" size="256"/>
  453. </ColumnInfo>
  454. <Rows>
  455. <Row>
  456. <Col id="seq"/>
  457. <Col id="healexamdetlflag"/>
  458. <Col id="pkgflag"/>
  459. <Col id="pkgcdkey"/>
  460. <Col id="pkgcd"/>
  461. <Col id="oldordcd"/>
  462. <Col id="pkgnm"/>
  463. <Col id="pkgengnm"/>
  464. <Col id="pkgamt"/>
  465. <Col id="calcscorcd"/>
  466. <Col id="calcscornm"/>
  467. <Col id="brthareacnts"/>
  468. <Col id="gndrflag"/>
  469. <Col id="useyn"/>
  470. <Col id="uncoflag"/>
  471. <Col id="earnclslst"/>
  472. <Col id="pkgsumearncls"/>
  473. <Col id="remcnts"/>
  474. <Col id="lastupdtrid"/>
  475. <Col id="lastupdtdt"/>
  476. <Col id="pkgdesc"/>
  477. <Col id="discyn"/>
  478. <Col id="inetyn"/>
  479. <Col id="hrmfctr"/>
  480. <Col id="cycle"/>
  481. <Col id="prntseq"/>
  482. <Col id="earnclscd"/>
  483. <Col id="dietconstyn"/>
  484. </Row>
  485. </Rows>
  486. </Dataset>
  487. <Dataset id="ds_savecalcscoredet_calcscore" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep"/>
  488. <Dataset id="ds_init_A0068" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  489. <ColumnInfo>
  490. <Column id="cdid" type="STRING" size="256"/>
  491. <Column id="cdnm" type="STRING" size="256"/>
  492. </ColumnInfo>
  493. <Rows>
  494. <Row>
  495. <Col id="cdid"/>
  496. <Col id="cdnm"/>
  497. </Row>
  498. </Rows>
  499. </Dataset>
  500. <Dataset id="ds_init_A0070" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  501. <ColumnInfo>
  502. <Column id="cdid" type="STRING" size="256"/>
  503. <Column id="cdnm" type="STRING" size="256"/>
  504. </ColumnInfo>
  505. <Rows>
  506. <Row>
  507. <Col id="cdid"/>
  508. <Col id="cdnm"/>
  509. </Row>
  510. </Rows>
  511. </Dataset>
  512. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  513. <ColumnInfo>
  514. <Column id="srchhealexamflag" type="STRING" size="256"/>
  515. <Column id="srchhealexamdetlflag" type="STRING" size="256"/>
  516. <Column id="srchpkgflag" type="STRING" size="256"/>
  517. <Column id="srchpkgcd" type="STRING" size="256"/>
  518. <Column id="srchcdflag" type="STRING" size="256"/>
  519. <Column id="srchpkgnm" type="STRING" size="256"/>
  520. <Column id="srchuseyn" type="STRING" size="256"/>
  521. <Column id="pkgcd" type="STRING" size="256"/>
  522. <Column id="testcd" type="STRING" size="256"/>
  523. <Column id="mechdd" type="STRING" size="256"/>
  524. </ColumnInfo>
  525. <Rows>
  526. <Row>
  527. <Col id="srchhealexamflag"/>
  528. <Col id="srchhealexamdetlflag"/>
  529. <Col id="srchpkgflag">P</Col>
  530. <Col id="srchpkgcd"/>
  531. <Col id="srchcdflag"/>
  532. <Col id="srchpkgnm"/>
  533. <Col id="srchuseyn"/>
  534. <Col id="pkgcd"/>
  535. <Col id="testcd"/>
  536. </Row>
  537. </Rows>
  538. </Dataset>
  539. <Dataset id="ds_cmb_gndrflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  540. <ColumnInfo>
  541. <Column id="label" type="STRING" size="256"/>
  542. <Column id="value" type="STRING" size="256"/>
  543. </ColumnInfo>
  544. <Rows>
  545. <Row>
  546. <Col id="label">공통</Col>
  547. <Col id="value">C</Col>
  548. </Row>
  549. <Row>
  550. <Col id="label">남</Col>
  551. <Col id="value">M</Col>
  552. </Row>
  553. <Row>
  554. <Col id="label">여</Col>
  555. <Col id="value">F</Col>
  556. </Row>
  557. </Rows>
  558. </Dataset>
  559. <Dataset id="ds_cmb_pkgsumearncls" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  560. <ColumnInfo>
  561. <Column id="label" type="STRING" size="256"/>
  562. <Column id="value" type="STRING" size="256"/>
  563. </ColumnInfo>
  564. <Rows>
  565. <Row>
  566. <Col id="label">가정의학과</Col>
  567. <Col id="value">01</Col>
  568. </Row>
  569. <Row>
  570. <Col id="label">소화기내과</Col>
  571. <Col id="value">02</Col>
  572. </Row>
  573. <Row>
  574. <Col id="label">청소년 소아과</Col>
  575. <Col id="value">03</Col>
  576. </Row>
  577. <Row>
  578. <Col id="label">소아치과</Col>
  579. <Col id="value">04</Col>
  580. </Row>
  581. </Rows>
  582. </Dataset>
  583. </Objects>
  584. <Bind>
  585. <BindItem id="item0" compid="group6.cmb_healexamflag" propid="value" datasetid="ds_send" columnid="srchhealexamflag"/>
  586. <BindItem id="item1" compid="group6.cmb_srchhealexamdetlflag" propid="value" datasetid="ds_send" columnid="srchhealexamdetlflag"/>
  587. <BindItem id="item2" compid="group6.ipt_srchpkgcd" propid="value" datasetid="ds_send" columnid="srchpkgcd"/>
  588. <BindItem id="item3" compid="group6.ipt_srchpkgnm" propid="value" datasetid="ds_send" columnid="srchpkgnm"/>
  589. <BindItem id="item4" compid="group6.chk_useyn" propid="value" datasetid="ds_send" columnid="srchuseyn"/>
  590. <BindItem id="item5" compid="ipt_mechddpkg" propid="value" datasetid="ds_send" columnid="mechdd"/>
  591. </Bind>
  592. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  593. * System Name :
  594. * Job Name :
  595. * Creator :
  596. * Make Date : 2017-12-04
  597. * Description :
  598. *---------------------------------------------------------------------------------------
  599. * Modify Date Modifier Modify Description
  600. *---------------------------------------------------------------------------------------
  601. * 2017-06-19 Live Converter TF->XP
  602. *
  603. *---------------------------------------------------------------------------------------
  604. ****************************************************************************************/
  605. //=======================================================================================
  606. // Lib Include
  607. //---------------------------------------------------------------------------------------
  608. include "com_commonxp::comm_main.xjs";
  609. include "ast_commonxp::AST.xjs";
  610. include "ast_healexamxp::AHA001.xjs";
  611. include "mis_miscommonxp::MIS.xjs";
  612. //=======================================================================================
  613. // Global Form Variable
  614. //---------------------------------------------------------------------------------------
  615. var arErrorCode = new HashArray();
  616. //=======================================================================================
  617. // Function
  618. //---------------------------------------------------------------------------------------
  619. /*-**************************************************************************************
  620. * Argument : N/A
  621. * Description : 패키지 조회
  622. ****************************************************************************************/
  623. function call_TRAHB00301() {
  624. var oParam = {};
  625. oParam.id = "TRAHB00301";
  626. oParam.service = "healexambaseapp.PkgCode";
  627. oParam.method = "reqGetPkgList";
  628. oParam.inds = "req=ds_send";
  629. oParam.outds = "ds_main_pkgcdlst_item1=item";
  630. oParam.async = false;
  631. oParam.callback = "cf_TRAHB00301";
  632. tranf_submit(oParam);
  633. }
  634. function cf_TRAHB00301(sSvcId, nErrorCode, sErrorMsg) {
  635. arErrorCode.push(sSvcId, nErrorCode);
  636. }
  637. /*-**************************************************************************************
  638. * Argument : N/A
  639. * Description : 컨트롤 초기화
  640. ****************************************************************************************/
  641. function fInitCtrl(bAll){
  642. if(bAll == true){
  643. ds_main_pkgcdlst_item1.clearData();
  644. }
  645. ds_main_calcscorelst_calcscore.clearData();
  646. ds_main_calcscoredetlst_calcscore.clearData();
  647. }
  648. /*-**************************************************************************************
  649. * Argument : N/A
  650. * Description : 선택된 건진 구분을 가져온다.
  651. ****************************************************************************************/
  652. function fGetHealExamFg(){
  653. return ds_send.getColumn(0, "srchhealexamflag");
  654. }
  655. /*-**************************************************************************************
  656. * Argument : N/A
  657. * Description : 선택된 건진 상세구분을 가져온다.
  658. ****************************************************************************************/
  659. function fGetHealExamDetlFg(){
  660. return ds_send.getColumn(0, "srchhealexamdetlflag");
  661. }
  662. /*-**************************************************************************************
  663. * Argument : N/A
  664. * Description : 건진상세구분바꾸기
  665. ****************************************************************************************/
  666. function fSetHealExamDetlFlag(){
  667. ds_init_A0069.clearData();
  668. ds_init_A0070.clearData();
  669. var vItem = "";
  670. var vHealexamflag = fGetHealExamFg();
  671. if(vHealexamflag == "C"){
  672. vItem = "A0069";
  673. }else{
  674. vItem = "A0070"; //일반건진
  675. }
  676. var arrParam = [{dsNm: "ds_init_"+vItem, cdGrpId: vItem}]
  677. appf_getCodeList(arrParam);
  678. grd_pkglst.setCellProperty("body", grd_pkglst.getBindCellIndex("body","healexamdetlflag"), "combodataset", "ds_init_"+vItem);
  679. group6.cmb_srchhealexamdetlflag.innerdataset = "ds_init_"+vItem;
  680. group6.cmb_srchhealexamdetlflag.index = 0;
  681. frmf_inputEnterKey("group6.cmb_srchhealexamdetlflag", "onitemchanged", new ItemChangeEventInfo );
  682. }
  683. /*-**************************************************************************************
  684. * Argument : N/A
  685. * Description : 패키지 내역 조회
  686. ****************************************************************************************/
  687. function fGetPkgList(){
  688. fInitCtrl(true);
  689. var vHealexamflag = fGetHealExamFg();
  690. if(utlf_isNull(vHealexamflag)) return false;
  691. ds_send.setColumn( 0, "srchhealexamflag" , vHealexamflag);
  692. ds_send.setColumn( 0, "srchhealexamdetlflag" , group6.cmb_srchhealexamdetlflag.value);
  693. call_TRAHB00301();
  694. if(arErrorCode.pop("TRAHB00301") > -1) return true;
  695. else return false;
  696. }
  697. /*-**************************************************************************************
  698. * Argument : N/A
  699. * Description : 패키지 수가조회
  700. ****************************************************************************************/
  701. function fGetCalcScore(){
  702. fInitCtrl(false);
  703. var idx = ds_main_pkgcdlst_item1.rowposition;
  704. if(idx < 0) return;
  705. var vHealexamflag = fGetHealExamFg();
  706. var vPkgcd = ds_main_pkgcdlst_item1.getColumn(idx, "pkgcdkey");
  707. if(utlf_isNull(vHealexamflag) || utlf_isNull(vPkgcd)) return;
  708. ds_send.setColumn( 0, "srchhealexamflag" , vHealexamflag);
  709. ds_send.setColumn( 0, "pkgcd" , vPkgcd);
  710. var ret = false;
  711. dsf_createDsRow("ds_req", [
  712. {col:"srchhealexamflag", type:"STRING", size:256, val:ds_send.getColumn(0,"srchhealexamflag")}
  713. , {col:"srchpkgflag", type:"STRING", size:256, val:ds_send.getColumn(0,"srchpkgflag")}
  714. , {col:"srchpkgcd", type:"STRING", size:256, val:ds_send.getColumn(0,"pkgcd")}
  715. , {col:"mechdd", type:"STRING", size:256, val:ipt_mechdd.value}
  716. ]);
  717. var oParam = {};
  718. oParam.id = "TRAHB00310";
  719. oParam.service = "healexambaseapp.CalcScore";
  720. oParam.method = "reqGetPkgCalcScoreList";
  721. oParam.inds = "req=ds_req";
  722. oParam.outds = "ds_main_calcscorelst_calcscore=calcscore";
  723. oParam.async = false;
  724. oParam.callback = "cf_TRAHB00310";
  725. tranf_submit(oParam);
  726. if(arErrorCode.pop("TRAHB00310") > -1) ret = true;
  727. else ret = false;
  728. return ret;
  729. }
  730. function cf_TRAHB00310(sSvcId, nErrorCode, sErrorMsg) {
  731. arErrorCode.push(sSvcId, nErrorCode);
  732. ds_main_calcscorelst_calcscore.updatecontrol = false;
  733. ds_main_calcscorelst_calcscore.enableevent = false;
  734. ds_main_calcscorelst_calcscore.addColumn("oldfromdd","string");
  735. ds_main_calcscorelst_calcscore.addColumn("oldtodd","string");
  736. ds_main_calcscorelst_calcscore.addColumn("changeoldtodd","string");
  737. for(var i = 0 ; i < ds_main_calcscorelst_calcscore.rowcount ; i++) {
  738. ds_main_calcscorelst_calcscore.setColumn(i, "oldfromdd", ds_main_calcscorelst_calcscore.getColumn(i, "fromdd"));
  739. ds_main_calcscorelst_calcscore.setColumn(i, "oldtodd", ds_main_calcscorelst_calcscore.getColumn(i, "todd"));
  740. }
  741. ds_main_calcscorelst_calcscore.enableevent = true;
  742. ds_main_calcscorelst_calcscore.updatecontrol = true;
  743. }
  744. /*-**************************************************************************************
  745. * Argument : N/A
  746. * Description : 패키지 상세내역 상태변경
  747. ****************************************************************************************/
  748. function fSetStatCalcScore(){
  749. var idx = ds_main_calcscorelst_calcscore.rowcount;
  750. if(idx < 1) return;
  751. for(var i = 0; i < ds_main_calcscorelst_calcscore.rowcount; i++) {
  752. var testcd = ds_main_calcscorelst_calcscore.getColumn( i , "testcd");
  753. var mtestcd = ds_main_calcscorelst_calcscore.getColumn( i , "mtestcd");
  754. if(testcd != mtestcd){
  755. grdf_setStatus(grd_calcscorelst, "I", [i]);
  756. //misfSetGridColor(grd_calcscorelst, "all", "#F6B7B9", "B", i);
  757. }
  758. }
  759. }
  760. /*-**************************************************************************************
  761. * Argument : N/A
  762. * Description : 패키지검사 가격 총계_2011.09.02 By 김금련
  763. ****************************************************************************************/
  764. function fSetRcptSum() {
  765. // grd_calcscorelst.subtotalPosition = "below";
  766. // grd_calcscorelst.subtotal("clear", -1, i, "format:(-,+)#,###; roundmode:round; roundpostion:2", "background-color:#99ff99; font-weight:bold; text-align:center", 4, "총계" );
  767. //
  768. // for(var i=0; i < grd_calcscorelst.cols; i++){
  769. // if(i == grd_calcscorelst.colRef("testamt")){
  770. // grd_calcscorelst.subtotal("sum", -1, i, "format:(-,+)#,###; roundmode:round; roundpostion:2", "background-color:#99ff99; font-weight:bold; text-align:right", 4, "총계" );
  771. // }
  772. // }
  773. }
  774. /*-**************************************************************************************
  775. * Argument : N/A
  776. * Description : 수가이력 조회
  777. ****************************************************************************************/
  778. function fGetCalcScoreDet(){
  779. ds_main_calcscoredetlst_calcscore.clearData();
  780. var idx = ds_main_calcscorelst_calcscore.rowposition;
  781. if(idx < 0) return;
  782. var vHealexamflag = fGetHealExamFg();
  783. var vPkgcd = ds_main_calcscorelst_calcscore.getColumn(idx, "pkgcd");
  784. var vTestcd = ds_main_calcscorelst_calcscore.getColumn(idx, "testcd");
  785. if(utlf_isNull(vHealexamflag) || utlf_isNull(vPkgcd)) return;
  786. ds_send.setColumn( 0, "srchhealexamflag" , vHealexamflag);
  787. ds_send.setColumn( 0, "pkgcd" , vPkgcd);
  788. ds_send.setColumn( 0, "testcd" , vTestcd);
  789. var ret = false;
  790. dsf_createDsRow("ds_req", [
  791. {col:"srchhealexamflag", type:"STRING", size:256, val:ds_send.getColumn(0, "srchhealexamflag")}
  792. , {col:"srchpkgflag", type:"STRING", size:256, val:ds_send.getColumn(0, "srchpkgflag")}
  793. , {col:"srchpkgcd", type:"STRING", size:256, val:ds_send.getColumn(0, "pkgcd")}
  794. , {col:"srchtestcd", type:"STRING", size:256, val:ds_send.getColumn(0, "testcd")}
  795. ]);
  796. var oParam = {};
  797. oParam.id = "TRAHB00311";
  798. oParam.service = "healexambaseapp.CalcScore";
  799. oParam.method = "reqGetCalcScoreList";
  800. oParam.inds = "req=ds_req";
  801. oParam.outds = "ds_main_calcscoredetlst_calcscore=calcscore";
  802. oParam.async = false;
  803. oParam.callback = "cf_TRAHB00311";
  804. tranf_submit(oParam);
  805. if(arErrorCode.pop("TRAHB00311") > -1) ret = true;
  806. else ret = false;
  807. return ret;
  808. }
  809. function cf_TRAHB00311(sSvcId, nErrorCode, sErrorMsg) {
  810. arErrorCode.push(sSvcId, nErrorCode);
  811. ds_main_calcscoredetlst_calcscore.updatecontrol = false;
  812. ds_main_calcscoredetlst_calcscore.addColumn("oldfromdd","string");
  813. ds_main_calcscorelst_calcscore.addColumn("oldtodd","string");
  814. ds_main_calcscoredetlst_calcscore.addColumn("oldtodd","string");
  815. for(var i = 0 ; i < ds_main_calcscoredetlst_calcscore.rowcount ; i++) {
  816. ds_main_calcscoredetlst_calcscore.setColumn(i, "oldfromdd", ds_main_calcscoredetlst_calcscore.getColumn(i, "fromdd"));
  817. ds_main_calcscoredetlst_calcscore.setColumn(i, "oldtodd", ds_main_calcscoredetlst_calcscore.getColumn(i, "todd"));
  818. }
  819. ds_main_calcscoredetlst_calcscore.updatecontrol = true;
  820. }
  821. //=======================================================================================
  822. // Event
  823. //---------------------------------------------------------------------------------------
  824. /****************************************************************************************
  825. * Components : Form
  826. * Description : 화면 처음 초기화시 폼초기화
  827. ****************************************************************************************/
  828. function SMAHB00310_onload(obj:Form, e:LoadEventInfo) {
  829. frmf_initForm(obj);
  830. //grdf_initGrid(grd_XXX);
  831. //grdf_setGridSort(grd_XXX);
  832. grdf_setRowTypeIcon(grd_pkglst, 0);
  833. grdf_setRowTypeIcon(grd_calcscorelst, 0);
  834. grdf_setRowTypeIcon(grd_calcscoredetlst, 0);
  835. grdf_setToolTipBind(grd_pkglst);
  836. grdf_setToolTipBind(grd_calcscorelst);
  837. grdf_setToolTipBind(grd_calcscoredetlst);
  838. ds_init_A0067.clearData();
  839. ds_init_A0068.clearData();
  840. ds_init_A0069.clearData();
  841. ds_init_A0070.clearData();
  842. var vHeFgLen = fGetHealExamFlag().length;
  843. var vHeFg = fGetHealExamFlag();
  844. var vHeFgCd = "";
  845. if( vHeFg.substr(0, 1) == "C" ){
  846. vHeFgCd = "A0069";
  847. }else{
  848. vHeFgCd = "A0070";
  849. }
  850. //공통코드 콤보 호출
  851. var arrParam = [{dsNm: "ds_init_A0067", cdGrpId: "A0067"}
  852. ,{dsNm: "ds_init_A0068", cdGrpId: "A0068"}
  853. ,{dsNm: "ds_init_A0069", cdGrpId: "A0069"}
  854. ,{dsNm: "ds_init_A0070", cdGrpId: "A0070"}
  855. ,{dsNm: "ds_init_A0435", cdGrpId: "A0435"}
  856. ,{dsNm: "ds_init_A0465", cdGrpId: "A0465"}
  857. ];
  858. appf_getCodeList(arrParam);
  859. grd_pkglst.setCellProperty("body", grd_pkglst.getBindCellIndex("body","healexamdetlflag"), "combodataset", "ds_init_"+vHeFgCd);
  860. group6.cmb_srchhealexamdetlflag.innerdataset = "ds_init_"+vHeFgCd;
  861. fInitCtrl(true); //초기화
  862. group6.cmb_healexamflag.value = vHeFg.substr(0,1);
  863. //종건, 일건 구분
  864. if(vHeFgLen == 1){
  865. group6.cmb_srchhealexamdetlflag.value = vHeFg + "01";
  866. }else{
  867. group6.cmb_srchhealexamdetlflag.value = vHeFg;
  868. }
  869. ipt_mechddpkg.value = utlf_getCurrentDate(); //패키지코드 조회기준일
  870. ipt_mechdd.value = utlf_getCurrentDate(); //수가정보 조회기준일
  871. fGetPkgList(); //조회
  872. }
  873. /****************************************************************************************
  874. * Components : Combo
  875. * Description : 건진구분 변경
  876. ****************************************************************************************/
  877. function group6_cmb_healexamflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo) {
  878. fSetHealExamDetlFlag();
  879. }
  880. /****************************************************************************************
  881. * Components : Combo
  882. * Description : 건진상세분류 변경
  883. ****************************************************************************************/
  884. function group6_cmb_srchhealexamdetlflag_onitemchanged(obj:Combo, e:ItemChangeEventInfo) {
  885. fGetPkgList();
  886. }
  887. /****************************************************************************************
  888. * Components : Edit
  889. * Description : 패키지코드 입력 후 조회
  890. ****************************************************************************************/
  891. function group6_ipt_srchpkgcd_onkeyup(obj:Edit, e:KeyEventInfo) {
  892. if(e.keycode == 13) {
  893. obj.updateToDataset();
  894. group6.btn_search.click();
  895. }
  896. }
  897. /****************************************************************************************
  898. * Components : Edit
  899. * Description : 명칭입력 후 조회
  900. ****************************************************************************************/
  901. function group6_ipt_srchpkgnm_onkeyup(obj:Edit, e:KeyEventInfo) {
  902. if(e.keycode == 13) {
  903. obj.updateToDataset();
  904. group6.btn_search.click();
  905. }
  906. }
  907. /****************************************************************************************
  908. * Components : Button
  909. * Description : 조회
  910. ****************************************************************************************/
  911. function group6_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  912. fGetPkgList();
  913. }
  914. /****************************************************************************************
  915. * Components : Button
  916. * Description : 패키지 펼치기 / 접기
  917. ****************************************************************************************/
  918. function btn_grdsize_onclick(obj:Button, e:ClickEventInfo) {
  919. if(obj.text == "펼치기"){
  920. obj.text = "줄이기";
  921. grd_pkglst.position.width = parseInt(grd_pkglst.position.width) + parseInt(grd_calcscorelst.position.width) + parseInt(grd_calcscoredetlst.position.width);
  922. }else{
  923. obj.text = "펼치기";
  924. grd_pkglst.position.width = parseInt(grd_pkglst.position.width) - parseInt(grd_calcscorelst.position.width) - parseInt(grd_calcscoredetlst.position.width);
  925. }
  926. }
  927. /****************************************************************************************
  928. * Components : Button
  929. * Description : 패키지 엑셀저장
  930. ****************************************************************************************/
  931. function btn_excsave1_onclick(obj:Button, e:ClickEventInfo) {
  932. if( ds_main_pkgcdlst_item1.rowcount > 0 ){
  933. grdf_exportExcel(grd_pkglst, "SheetName", "SheetName", false, "", "user", false);
  934. } else {
  935. sysf_messageBox("조회된 데이터가 ", "I004");
  936. }
  937. }
  938. /****************************************************************************************
  939. * Components : Button
  940. * Description : 수가정보 엑셀저장
  941. ****************************************************************************************/
  942. function button5_onclick(obj:Button, e:ClickEventInfo) {
  943. if( ds_main_calcscorelst_calcscore.rowcount > 0 ){
  944. grdf_exportExcel(grd_calcscorelst, "SheetName", "SheetName", false, "", "user", false);
  945. } else {
  946. sysf_messageBox("조회된 데이터가 ", "I004");
  947. }
  948. }
  949. /****************************************************************************************
  950. * Components : Grid
  951. * Description : 수가정보 선택
  952. ****************************************************************************************/
  953. function grd_calcscorelst_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  954. if(e.row > -1){
  955. fGetCalcScoreDet(); //수가이력 조회
  956. }
  957. }
  958. /****************************************************************************************
  959. * Components : Button
  960. * Description : 이력정보 행추가
  961. ****************************************************************************************/
  962. function btn_grdadd_onclick(obj:Button, e:ClickEventInfo) {
  963. var nRow = ds_main_calcscoredetlst_calcscore.addRow();
  964. var vHealexamflag = fGetHealExamFg();
  965. var vHealExamDetlFlag = fGetHealExamDetlFg();
  966. var vPkgcd = ds_main_calcscorelst_calcscore.getColumn(ds_main_calcscorelst_calcscore.rowposition, "pkgcd");
  967. var vTestcd = ds_main_calcscorelst_calcscore.getColumn(ds_main_calcscorelst_calcscore.rowposition, "testcd");
  968. ds_main_calcscoredetlst_calcscore.setColumn( nRow, "healexamflag" , vHealexamflag);
  969. ds_main_calcscoredetlst_calcscore.setColumn( nRow, "pkgcd" , vPkgcd);
  970. ds_main_calcscoredetlst_calcscore.setColumn( nRow, "testcd" , vTestcd);
  971. grd_calcscoredetlst.setFocus();
  972. grd_calcscoredetlst.setCellPos(4);
  973. grd_calcscoredetlst.showEditor(true);
  974. }
  975. /****************************************************************************************
  976. * Components : Button
  977. * Description : 이력정보 행삭제
  978. ****************************************************************************************/
  979. function btn_grddel_onclick(obj:Button, e:ClickEventInfo) {
  980. var objGrd = grd_calcscoredetlst;
  981. var selectedRows = grdf_getSelectedRows(objGrd);
  982. for (var i = selectedRows.length-1; i >= 0; i--){
  983. if( objects[objGrd.binddataset].getRowType(selectedRows[i]) == 2 ) {
  984. objects[objGrd.binddataset].deleteRow(selectedRows[i]);
  985. }else{
  986. grdf_setStatus(objGrd, "D", [selectedRows[i]]);
  987. }
  988. }
  989. }
  990. /****************************************************************************************
  991. * Components : Grid
  992. * Description : 패키지 선택
  993. ****************************************************************************************/
  994. function grd_pkglst_oncelldblclick(obj:Grid, e:GridClickEventInfo) {
  995. if(e.row > -1){
  996. fGetCalcScore(); //상세 수가 조회
  997. fSetStatCalcScore(); //상세 수가 상태변경
  998. fSetRcptSum(); //상세 패키지 단가 합계
  999. }
  1000. }
  1001. /****************************************************************************************
  1002. * Components : Button
  1003. * Description : 수가정보 저장
  1004. ****************************************************************************************/
  1005. function group4_btn_save_onclick(obj:Button, e:ClickEventInfo) {
  1006. if(sysf_messageBox("수가 정보를","Q002") == 6){
  1007. var new_fromdd = ""; //신규_적용일자
  1008. var new_todd = ""; //신규_종료일자
  1009. var old_fromdd = ""; //과거_적용일자
  1010. var change_oldtodd = ""; //기존자료_종료일자
  1011. for(var i = 0; i < ds_main_calcscorelst_calcscore.rowcount; i++){
  1012. //상태 - 입력, 수정, 삭제
  1013. if(ds_main_calcscorelst_calcscore.getRowType(i) == 2 || ds_main_calcscorelst_calcscore.getRowType(i) == 4 || ds_main_calcscorelst_calcscore.getRowType(i) == 8){
  1014. new_fromdd = utlf_transNullToEmpty(ds_main_calcscorelst_calcscore.getColumn( i , "fromdd"));
  1015. new_todd = utlf_transNullToEmpty(ds_main_calcscorelst_calcscore.getColumn( i , "todd"));
  1016. old_fromdd = utlf_transNullToEmpty(ds_main_calcscorelst_calcscore.getColumn( i , "oldfromdd"));
  1017. //상태 - 수정
  1018. if(ds_main_calcscorelst_calcscore.getRowType(i) == 4){
  1019. //20190805 이력정리 후 다시 넣는걸로 결정
  1020. /*if(new_fromdd <= old_fromdd){
  1021. sysf_messageBox("새로 적용할 일자는 원래적용일자보다 커야합니다. 적용일자를 확인해주십시요!", "E999");
  1022. return;
  1023. }*/
  1024. if(new_fromdd >= new_todd ){
  1025. sysf_messageBox("종료일자가 시작일자 보다 이전이거나 같습니다.", "E999");
  1026. return;
  1027. }
  1028. //20190805 이력정리 후 다시 넣는걸로 결정
  1029. /*if(new_todd < utlf_getCurrentDate()){
  1030. sysf_messageBox("종료일자가 오늘일자 보다 이전이거나 같습니다.", "E999");
  1031. return;
  1032. }*/
  1033. }
  1034. //위에서 기존자료 종료일 받아서 새로운 수가에 시작일로 박아줌
  1035. var thisYear = new_fromdd.substring(0, 4); //현재 입력된 연
  1036. var thisMonth = new_fromdd.substring(4, 6); //현재 입력된 월
  1037. var thisDay = new_fromdd.substring(6, 8); //현재 입력된 일
  1038. var preDate = new Date(thisYear, (thisMonth - 1), thisDay);
  1039. preDate.setHours(-24); //24시간 뒤인 다음날 날짜를 구한다.
  1040. change_oldtodd = "";
  1041. change_oldtodd += preDate.getYear();
  1042. if((preDate.getMonth() + 1) < 10){
  1043. change_oldtodd += "0" + (preDate.getMonth() + 1);
  1044. }else {
  1045. change_oldtodd += (preDate.getMonth() + 1);
  1046. }
  1047. if(preDate.getDate() < 10){
  1048. change_oldtodd += "0" + preDate.getDate();
  1049. }else{
  1050. change_oldtodd += preDate.getDate();
  1051. }
  1052. ds_main_calcscorelst_calcscore.setColumn(i, "changeoldtodd", change_oldtodd);
  1053. }
  1054. }
  1055. //기존자료 종료처리, 새로운 자료 등록
  1056. var dsUpdate = grdf_getGridUpdateData(grd_calcscorelst, "all");
  1057. grdf_setStatusColumn(dsUpdate, "m");
  1058. ds_savecalcscore_calcscore.copyData(dsUpdate, true);
  1059. var oParam = {};
  1060. oParam.id = "TXAHB00311";
  1061. oParam.service = "healexambaseapp.CalcScore";
  1062. oParam.method = "reqExeCalcScore";
  1063. oParam.inds = "req=ds_savecalcscore_calcscore";
  1064. oParam.outds = "ds_hidden=item";
  1065. oParam.async = false;
  1066. //oParam.typeStr = "m"
  1067. oParam.callback = "cf_TXAHB00311";
  1068. tranf_submit(oParam);
  1069. if(arErrorCode.pop("TXAHB00311") > -1){
  1070. fGetCalcScore(); //상세 수가 조회
  1071. fSetStatCalcScore(); //상세 수가 상태변경
  1072. fSetRcptSum(); //상세 패키지 단가 합계
  1073. }
  1074. }
  1075. }
  1076. function cf_TXAHB00311(sSvcId, nErrorCode, sErrorMsg) {
  1077. arErrorCode.push(sSvcId, nErrorCode);
  1078. }
  1079. /****************************************************************************************
  1080. * Components : Button
  1081. * Description : 이력정보 저장
  1082. ****************************************************************************************/
  1083. function group4_btn_detlsave_onclick(obj:Button, e:ClickEventInfo) {
  1084. if(sysf_messageBox("이력 정보를","Q002") == 6){
  1085. var grd_pkglstRow = ds_main_pkgcdlst_item1.rowposition;
  1086. var grd_calcscorelstRow = ds_main_calcscorelst_calcscore.rowposition;
  1087. var oParam = {};
  1088. oParam.id = "TXAHB00312";
  1089. oParam.service = "healexambaseapp.CalcScore";
  1090. oParam.method = "reqExeCalcScoreDet";
  1091. oParam.inds = "req=ds_main_calcscoredetlst_calcscore:U";
  1092. oParam.outds = "ds_hidden=item";
  1093. oParam.async = false;
  1094. oParam.typeStr = "m"
  1095. oParam.callback = "cf_TXAHB00312";
  1096. tranf_submit(oParam);
  1097. if(arErrorCode.pop("TXAHB00312") > -1){
  1098. ds_main_pkgcdlst_item1.rowposition = grd_pkglstRow;
  1099. fGetCalcScore(); //상세 수가 조회
  1100. fSetStatCalcScore(); //상세 수가 상태변경
  1101. fSetRcptSum(); //상세 패키지 단가 합계
  1102. ds_main_calcscorelst_calcscore.rowposition = grd_calcscorelstRow;
  1103. fGetCalcScoreDet(); //수가이력 조회
  1104. }
  1105. }
  1106. }
  1107. function cf_TXAHB00312(sSvcId, nErrorCode, sErrorMsg) {
  1108. arErrorCode.push(sSvcId, nErrorCode);
  1109. }
  1110. function group6_chk_useyn_onclick(obj:CheckBox, e:ClickEventInfo)
  1111. {
  1112. if(obj.value == false) ds_send.setColumn(0, "srchuseyn", "");
  1113. }
  1114. function ds_main_calcscorelst_calcscore_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1115. {
  1116. fSetRcptSum();
  1117. }
  1118. function ds_main_calcscoredetlst_calcscore_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1119. {
  1120. fSetRcptSum();
  1121. }
  1122. function btn_update_onclick(obj:Button, e:ClickEventInfo)
  1123. {
  1124. for(var i = 0; i < ds_main_calcscorelst_calcscore.rowcount; i++){
  1125. ds_main_calcscorelst_calcscore.setColumn(i, "fromdd", ipt_upfromdd.value);
  1126. ds_main_calcscorelst_calcscore.setColumn(i, "todd", ipt_uptodd.value);
  1127. }
  1128. }
  1129. function ipt_mechddpkg_onchanged(obj:Calendar, e:ChangeEventInfo)
  1130. {
  1131. group6.btn_search.onclick.fireEvent(group6.btn_search, new ClickEventInfo());
  1132. }
  1133. function ipt_mechdd_onchanged(obj:Calendar, e:ChangeEventInfo)
  1134. {
  1135. fGetCalcScore(); //상세 수가 조회
  1136. fSetStatCalcScore(); //상세 수가 상태변경
  1137. fSetRcptSum(); //상세 패키지 단가 합계
  1138. }
  1139. ]]></Script>
  1140. </Form>
  1141. </FDL>