SMLMS00200_미생물통계.xfdl 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLMS00200" position="absolute 0 0 1256 805" titletext="부서별 통계" onload="SMLMS00200_onload" oninit="SMLMS00200_oninit">
  5. <Layouts>
  6. <Layout>
  7. <Tab id="tab_statflag" class="sw_box" position="absolute 0 102 1256 805" anchor="all" positiontype="position" onchanged="tab_statflag_onchanged" visible="true">
  8. <Tabpages>
  9. <Tabpage id="page_dd" text="일별 통계">
  10. <Layouts>
  11. <Layout>
  12. <Grid id="grd_dd" position="absolute 0 0 1256 676" style="align:center middle;" anchor="all" positiontype="position" cellsizingtype="col" binddataset="ds_grid_grd_ddstats">
  13. <Formats>
  14. <Format id="default">
  15. <Columns>
  16. <Column size="0"/>
  17. <Column size="30"/>
  18. <Column size="60"/>
  19. <Column size="300"/>
  20. <Column size="80"/>
  21. <Column size="40"/>
  22. <Column size="40"/>
  23. <Column size="40"/>
  24. <Column size="40"/>
  25. <Column size="40"/>
  26. <Column size="40"/>
  27. <Column size="40"/>
  28. <Column size="40"/>
  29. <Column size="40"/>
  30. <Column size="40"/>
  31. <Column size="40"/>
  32. <Column size="40"/>
  33. <Column size="40"/>
  34. <Column size="40"/>
  35. <Column size="40"/>
  36. <Column size="40"/>
  37. <Column size="40"/>
  38. <Column size="40"/>
  39. <Column size="40"/>
  40. <Column size="40"/>
  41. <Column size="40"/>
  42. <Column size="40"/>
  43. <Column size="40"/>
  44. <Column size="40"/>
  45. <Column size="40"/>
  46. <Column size="40"/>
  47. <Column size="40"/>
  48. <Column size="40"/>
  49. <Column size="40"/>
  50. <Column size="40"/>
  51. <Column size="40"/>
  52. <Column size="40"/>
  53. </Columns>
  54. <Rows>
  55. <Row size="22" band="head"/>
  56. <Row size="20"/>
  57. </Rows>
  58. <Band id="head">
  59. <Cell text="부서"/>
  60. <Cell col="1" text="No"/>
  61. <Cell col="2" text="코드"/>
  62. <Cell col="3" text="검사항목"/>
  63. <Cell col="4" text="Total"/>
  64. <Cell col="5" text="01"/>
  65. <Cell col="6" text="02"/>
  66. <Cell col="7" text="03"/>
  67. <Cell col="8" text="04"/>
  68. <Cell col="9" text="05"/>
  69. <Cell col="10" text="06"/>
  70. <Cell col="11" text="07"/>
  71. <Cell col="12" text="08"/>
  72. <Cell col="13" text="09"/>
  73. <Cell col="14" text="10"/>
  74. <Cell col="15" text="11"/>
  75. <Cell col="16" text="12"/>
  76. <Cell col="17" text="13"/>
  77. <Cell col="18" text="14"/>
  78. <Cell col="19" text="15"/>
  79. <Cell col="20" text="16"/>
  80. <Cell col="21" text="17"/>
  81. <Cell col="22" text="18"/>
  82. <Cell col="23" text="19"/>
  83. <Cell col="24" text="20"/>
  84. <Cell col="25" text="21"/>
  85. <Cell col="26" text="22"/>
  86. <Cell col="27" text="23"/>
  87. <Cell col="28" text="24"/>
  88. <Cell col="29" text="25"/>
  89. <Cell col="30" text="26"/>
  90. <Cell col="31" text="27"/>
  91. <Cell col="32" text="28"/>
  92. <Cell col="33" text="29"/>
  93. <Cell col="34" text="30"/>
  94. <Cell col="35" text="31"/>
  95. <Cell col="36"/>
  96. </Band>
  97. <Band id="body">
  98. <Cell/>
  99. <Cell col="1" celltype="head" expr="currow+1"/>
  100. <Cell col="2" style="align:left middle;" text="bind:tclscd"/>
  101. <Cell col="3" style="align:left middle;" text="bind:tclsscrnnm"/>
  102. <Cell col="4" style="align:right middle;background:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));background2:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));" text="bind:total" mask="#,###"/>
  103. <Cell col="5" style="align:right middle;" text="bind:d01" mask="#,###"/>
  104. <Cell col="6" style="align:right middle;" text="bind:d02" mask="#,###"/>
  105. <Cell col="7" style="align:right middle;" text="bind:d03" mask="#,###"/>
  106. <Cell col="8" style="align:right middle;" text="bind:d04" mask="#,###"/>
  107. <Cell col="9" style="align:right middle;" text="bind:d05" mask="#,###"/>
  108. <Cell col="10" style="align:right middle;" text="bind:d06" mask="#,###"/>
  109. <Cell col="11" style="align:right middle;" text="bind:d07" mask="#,###"/>
  110. <Cell col="12" style="align:right middle;" text="bind:d08" mask="#,###"/>
  111. <Cell col="13" style="align:right middle;" text="bind:d09" mask="#,###"/>
  112. <Cell col="14" style="align:right middle;" text="bind:d10" mask="#,###"/>
  113. <Cell col="15" style="align:right middle;" text="bind:d11" mask="#,###"/>
  114. <Cell col="16" style="align:right middle;" text="bind:d12" mask="#,###"/>
  115. <Cell col="17" style="align:right middle;" text="bind:d13" mask="#,###"/>
  116. <Cell col="18" style="align:right middle;" text="bind:d14" mask="#,###"/>
  117. <Cell col="19" style="align:right middle;" text="bind:d15" mask="#,###"/>
  118. <Cell col="20" style="align:right middle;" text="bind:d16" mask="#,###"/>
  119. <Cell col="21" style="align:right middle;" text="bind:d17" mask="#,###"/>
  120. <Cell col="22" style="align:right middle;" text="bind:d18" mask="#,###"/>
  121. <Cell col="23" style="align:right middle;" text="bind:d19" mask="#,###"/>
  122. <Cell col="24" style="align:right middle;" text="bind:d20" mask="#,###"/>
  123. <Cell col="25" style="align:right middle;" text="bind:d21" mask="#,###"/>
  124. <Cell col="26" style="align:right middle;" text="bind:d22" mask="#,###"/>
  125. <Cell col="27" style="align:right middle;" text="bind:d23" mask="#,###"/>
  126. <Cell col="28" style="align:right middle;" text="bind:d24" mask="#,###"/>
  127. <Cell col="29" style="align:right middle;" text="bind:d25" mask="#,###"/>
  128. <Cell col="30" style="align:right middle;" text="bind:d26" mask="#,###"/>
  129. <Cell col="31" style="align:right middle;" text="bind:d27" mask="#,###"/>
  130. <Cell col="32" style="align:right middle;" text="bind:d28" mask="#,###"/>
  131. <Cell col="33" style="align:right middle;" text="bind:d29" mask="#,###"/>
  132. <Cell col="34" style="align:right middle;" text="bind:d30" mask="#,###"/>
  133. <Cell col="35" style="align:right middle;" text="bind:d31" mask="#,###"/>
  134. <Cell col="36" text="bind:btotal"/>
  135. </Band>
  136. </Format>
  137. </Formats>
  138. </Grid>
  139. </Layout>
  140. </Layouts>
  141. </Tabpage>
  142. <Tabpage id="page_mm" text="월별 통계">
  143. <Layouts>
  144. <Layout>
  145. <Grid id="grd_mm" position="absolute 0 0 1256 676" style="align:center middle;" anchor="all" positiontype="position" autofittype="col" binddataset="ds_grid_grd_mmstats">
  146. <Formats>
  147. <Format id="default">
  148. <Columns>
  149. <Column size="0"/>
  150. <Column size="30"/>
  151. <Column size="60"/>
  152. <Column size="300"/>
  153. <Column size="80"/>
  154. <Column size="60"/>
  155. <Column size="60"/>
  156. <Column size="60"/>
  157. <Column size="60"/>
  158. <Column size="60"/>
  159. <Column size="60"/>
  160. <Column size="60"/>
  161. <Column size="60"/>
  162. <Column size="60"/>
  163. <Column size="60"/>
  164. <Column size="60"/>
  165. <Column size="60"/>
  166. </Columns>
  167. <Rows>
  168. <Row size="22" band="head"/>
  169. <Row size="20"/>
  170. </Rows>
  171. <Band id="head">
  172. <Cell text="부서"/>
  173. <Cell col="1" text="No"/>
  174. <Cell col="2" text="코드"/>
  175. <Cell col="3" text="검사항목"/>
  176. <Cell col="4" text="Total"/>
  177. <Cell col="5" text="01"/>
  178. <Cell col="6" text="02"/>
  179. <Cell col="7" text="03"/>
  180. <Cell col="8" text="04"/>
  181. <Cell col="9" text="05"/>
  182. <Cell col="10" text="06"/>
  183. <Cell col="11" text="07"/>
  184. <Cell col="12" text="08"/>
  185. <Cell col="13" text="09"/>
  186. <Cell col="14" text="10"/>
  187. <Cell col="15" text="11"/>
  188. <Cell col="16" text="12"/>
  189. </Band>
  190. <Band id="body">
  191. <Cell/>
  192. <Cell col="1" celltype="head" expr="currow+1"/>
  193. <Cell col="2" style="align:left middle;" text="bind:tclscd"/>
  194. <Cell col="3" style="align:left middle;" text="bind:tclsscrnnm"/>
  195. <Cell col="4" style="align:right middle;background:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));background2:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));" text="bind:total" mask="#,###"/>
  196. <Cell col="5" style="align:right middle;" text="bind:d01" mask="#,###"/>
  197. <Cell col="6" style="align:right middle;" text="bind:d02" mask="#,###"/>
  198. <Cell col="7" style="align:right middle;" text="bind:d03" mask="#,###"/>
  199. <Cell col="8" style="align:right middle;" text="bind:d04" mask="#,###"/>
  200. <Cell col="9" style="align:right middle;" text="bind:d05" mask="#,###"/>
  201. <Cell col="10" style="align:right middle;" text="bind:d06" mask="#,###"/>
  202. <Cell col="11" style="align:right middle;" text="bind:d07" mask="#,###"/>
  203. <Cell col="12" style="align:right middle;" text="bind:d08" mask="#,###"/>
  204. <Cell col="13" style="align:right middle;" text="bind:d09" mask="#,###"/>
  205. <Cell col="14" style="align:right middle;" text="bind:d10" mask="#,###"/>
  206. <Cell col="15" style="align:right middle;" text="bind:d11" mask="#,###"/>
  207. <Cell col="16" style="align:right middle;" text="bind:d12" mask="#,###"/>
  208. </Band>
  209. </Format>
  210. </Formats>
  211. </Grid>
  212. </Layout>
  213. </Layouts>
  214. </Tabpage>
  215. <Tabpage id="page_yy" text="연별 통계">
  216. <Layouts>
  217. <Layout>
  218. <Grid id="grd_yy" position="absolute 0 0 1256 676" anchor="all" positiontype="position" autofittype="none" binddataset="ds_grid_grd_yystats" cellsizingtype="col" selecttype="row">
  219. <Formats>
  220. <Format id="default">
  221. <Columns>
  222. <Column size="0"/>
  223. <Column size="26"/>
  224. <Column size="60"/>
  225. <Column size="300"/>
  226. <Column size="80"/>
  227. <Column size="80"/>
  228. <Column size="80"/>
  229. <Column size="80"/>
  230. <Column size="80"/>
  231. <Column size="80"/>
  232. <Column size="80"/>
  233. <Column size="80"/>
  234. <Column size="80"/>
  235. <Column size="80"/>
  236. <Column size="80"/>
  237. <Column size="80"/>
  238. </Columns>
  239. <Rows>
  240. <Row size="22" band="head"/>
  241. <Row size="20"/>
  242. </Rows>
  243. <Band id="head">
  244. <Cell/>
  245. <Cell col="1" text="No"/>
  246. <Cell col="2" text="코드"/>
  247. <Cell col="3" text="검사항목"/>
  248. <Cell col="4" text="Total"/>
  249. <Cell col="5"/>
  250. <Cell col="6"/>
  251. <Cell col="7"/>
  252. <Cell col="8"/>
  253. <Cell col="9"/>
  254. <Cell col="10"/>
  255. <Cell col="11"/>
  256. <Cell col="12"/>
  257. <Cell col="13"/>
  258. <Cell col="14"/>
  259. <Cell col="15"/>
  260. </Band>
  261. <Band id="body">
  262. <Cell/>
  263. <Cell col="1" celltype="head" expr="currow+1"/>
  264. <Cell col="2" style="align:left middle;" text="bind:tclscd"/>
  265. <Cell col="3" text="bind:tclsscrnnm"/>
  266. <Cell col="4" style="align:right middle;background:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));background2:EXPR(tclsscrnnm == '소계' ? '#f3e1bf' : (tclsscrnnm == '부서계' || tclsscrnnm == '부서합계' ? '#3399ff' : (tclsscrnnm == '합계' ? '#7BE6B7' : '#ffe79d')));" text="bind:total"/>
  267. <Cell col="5" style="align:right middle;" text="bind:d01" mask="#,###"/>
  268. <Cell col="6" style="align:right middle;" text="bind:d02" mask="#,###"/>
  269. <Cell col="7" style="align:right middle;" text="bind:d03" mask="#,###"/>
  270. <Cell col="8" style="align:right middle;" text="bind:d04" mask="#,###"/>
  271. <Cell col="9" style="align:right middle;" text="bind:d05" mask="#,###"/>
  272. <Cell col="10" style="align:right middle;" text="bind:d06" mask="#,###"/>
  273. <Cell col="11" style="align:right middle;" text="bind:d07" mask="#,###"/>
  274. <Cell col="12" style="align:right middle;" text="bind:d08" mask="#,###"/>
  275. <Cell col="13" style="align:right middle;" text="bind:d09" mask="#,###"/>
  276. <Cell col="14" style="align:right middle;" text="bind:d10" mask="#,###"/>
  277. <Cell col="15" style="align:right middle;" mask="#,###"/>
  278. </Band>
  279. </Format>
  280. </Formats>
  281. </Grid>
  282. </Layout>
  283. </Layouts>
  284. </Tabpage>
  285. </Tabpages>
  286. </Tab>
  287. <Static id="caption6" class="tit_1" position="absolute 0 0 109 25" anchor="default" positiontype="position" text="미생물통계"/>
  288. <Button id="btn_print" class="btn6" visible="false" position="absolute 1200 0 1256 20" anchor="top right" positiontype="position" text="출력" onlbuttonup="btn_print_onlbuttonup"/>
  289. <Button id="btn_excel" class="btn7" position="absolute 1152 3 1254 23" anchor="top right" positiontype="position" text="EXCEL저장" onclick="btn_excel_onclick"/>
  290. <Div id="div_search" anchor="left top right" taborder="12" style="align:center top;" class="div_SA" position="absolute 0 25 1256 92">
  291. <Layouts>
  292. <Layout width="1256" height="42">
  293. <Static id="caption4" text="통계 희망일" class="search_name" position="absolute 8 10 118 30" anchor="default"/>
  294. <Static id="caption5" text="입원/외래" class="search_name" visible="false" position="absolute 8 35 102 55" anchor="default"/>
  295. <Static id="stt_swung" text="~" visible="false" position="absolute 179 10 195 30" anchor="default"/>
  296. <Calendar id="ipt_workfromdd_bk" taborder="1" class="input_search" position="absolute 99 10 169 30" anchor="default" dateformat="yyyy-MM-dd" value="null" visible="false"/>
  297. <Combo id="cmb_ioflag" taborder="2" visible="false" position="absolute 88 35 181 55" anchor="default" codecolumn="codecolumn" datacolumn="datacolumn">
  298. <Dataset id="innerdataset">
  299. <ColumnInfo>
  300. <Column id="codecolumn" size="256"/>
  301. <Column id="datacolumn" size="256"/>
  302. </ColumnInfo>
  303. <Rows>
  304. <Row>
  305. <Col id="codecolumn">0</Col>
  306. <Col id="datacolumn">- 전체 -</Col>
  307. </Row>
  308. <Row>
  309. <Col id="codecolumn">I</Col>
  310. <Col id="datacolumn">입원</Col>
  311. </Row>
  312. <Row>
  313. <Col id="codecolumn">O</Col>
  314. <Col id="datacolumn">외래</Col>
  315. </Row>
  316. <Row>
  317. <Col id="codecolumn">E</Col>
  318. <Col id="datacolumn">응급</Col>
  319. </Row>
  320. <Row>
  321. <Col id="codecolumn">S</Col>
  322. <Col id="datacolumn">건진</Col>
  323. </Row>
  324. </Rows>
  325. </Dataset>
  326. </Combo>
  327. <CheckBox id="chk_itemgbn" taborder="3" text="검사항목 제외" truevalue="Y" visible="false" position="absolute 193 35 299 55" anchor="default"/>
  328. <Calendar id="ipt_worktodd_bk" taborder="4" class="input_search" visible="false" position="absolute 185 10 255 30" anchor="default"/>
  329. <Static id="caption12" text="조회구분" class="search_name" position="absolute 279 10 365 30" anchor="default"/>
  330. <Combo id="cmb_searchgbn" taborder="5" position="absolute 353 10 445 30" anchor="default" codecolumn="codecolumn" datacolumn="datacolumn" index="0" value="1" text="검사코드">
  331. <Dataset id="innerdataset">
  332. <ColumnInfo>
  333. <Column id="codecolumn" size="256"/>
  334. <Column id="datacolumn" size="256"/>
  335. </ColumnInfo>
  336. <Rows>
  337. <Row>
  338. <Col id="codecolumn">1</Col>
  339. <Col id="datacolumn">검사코드</Col>
  340. </Row>
  341. <Row>
  342. <Col id="codecolumn">2</Col>
  343. <Col id="datacolumn">검사명</Col>
  344. </Row>
  345. </Rows>
  346. </Dataset>
  347. </Combo>
  348. <Static id="caption2" text="구분" class="search_name" position="absolute 562 10 625 30" anchor="default"/>
  349. <Radio id="rdo_cntgbn" taborder="7" columncount="3" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 615 10 785 30" anchor="default" index="0" value="T">
  350. <Dataset id="innerdataset">
  351. <ColumnInfo>
  352. <Column id="codecolumn" size="256"/>
  353. <Column id="datacolumn" size="256"/>
  354. </ColumnInfo>
  355. <Rows>
  356. <Row>
  357. <Col id="codecolumn">T</Col>
  358. <Col id="datacolumn">검사</Col>
  359. </Row>
  360. <Row>
  361. <Col id="codecolumn">P</Col>
  362. <Col id="datacolumn">환자</Col>
  363. </Row>
  364. <Row>
  365. <Col id="codecolumn">B</Col>
  366. <Col id="datacolumn">검체</Col>
  367. </Row>
  368. </Rows>
  369. </Dataset>
  370. </Radio>
  371. <Static id="caption13" text="통계기준일" class="search_name" visible="false" position="absolute 562 35 661 55" anchor="default"/>
  372. <Combo id="cmb_ddstandard" taborder="8" visible="false" position="absolute 653 35 745 55" anchor="default" codecolumn="codecolumn" datacolumn="datacolumn" index="0" value="1" text="보고일">
  373. <Dataset id="innerdataset">
  374. <ColumnInfo>
  375. <Column id="codecolumn" size="256"/>
  376. <Column id="datacolumn" size="256"/>
  377. </ColumnInfo>
  378. <Rows>
  379. <Row>
  380. <Col id="codecolumn">1</Col>
  381. <Col id="datacolumn">보고일</Col>
  382. </Row>
  383. <Row>
  384. <Col id="codecolumn">2</Col>
  385. <Col id="datacolumn">접수일</Col>
  386. </Row>
  387. </Rows>
  388. </Dataset>
  389. </Combo>
  390. <Static id="caption1" text="부서" class="search_name" visible="false" position="absolute 769 35 831 55" anchor="default"/>
  391. <Combo id="cmb_sectcd" taborder="9" visible="false" position="absolute 816 35 938 55" anchor="default" innerdataset="@ds_init_lb0111" codecolumn="cd" datacolumn="nm"/>
  392. <Static id="caption3" text="|" visible="false" position="absolute 925 10 940 30" anchor="default"/>
  393. <Radio id="rdo_workgbn" taborder="10" columncount="3" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" visible="false" position="absolute 945 10 1115 30" anchor="default" index="2" value="A">
  394. <Dataset id="innerdataset">
  395. <ColumnInfo>
  396. <Column id="codecolumn" size="256"/>
  397. <Column id="datacolumn" size="256"/>
  398. </ColumnInfo>
  399. <Rows>
  400. <Row>
  401. <Col id="codecolumn">D</Col>
  402. <Col id="datacolumn">주간</Col>
  403. </Row>
  404. <Row>
  405. <Col id="codecolumn">N</Col>
  406. <Col id="datacolumn">야간</Col>
  407. </Row>
  408. <Row>
  409. <Col id="codecolumn">A</Col>
  410. <Col id="datacolumn">All</Col>
  411. </Row>
  412. </Rows>
  413. </Dataset>
  414. </Radio>
  415. <Button id="btn_search" taborder="11" text="조회" class="btn1" position="absolute 1189 10 1245 30" anchor="top right" onclick="div_search_btn_search_onclick"/>
  416. <Edit id="ipt_search" taborder="12" position="absolute 448 10 538 30" anchor="default" inputmode="upper" onkeydown="div_search_ipt_search_onkeydown"/>
  417. <cp_monthCal id="ipt_workfromdd" titletext="monthCalendar" taborder="13" scrollbars="none" position="absolute 98 10 173 29" onclick="div_search_cp_monthCal00_onclick"/>
  418. <cp_monthCal id="ipt_worktodd" titletext="monthCalendar" taborder="14" onclick="div_search_cp_monthCal00_onclick" scrollbars="none" position="absolute 192 10 267 29" visible="false"/>
  419. </Layout>
  420. </Layouts>
  421. </Div>
  422. </Layout>
  423. </Layouts>
  424. <Objects>
  425. <Dataset id="ds_totalstats2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  426. <Dataset id="ds_totalstats3" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  427. <Dataset id="ds_grid_grd_ddstats" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  428. <Dataset id="ds_grid_grd_mmstats" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  429. <Dataset id="ds_grid_grd_yystats" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false"/>
  430. <Dataset id="ds_init_lb0111" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  431. <ColumnInfo>
  432. <Column id="cd" type="STRING"/>
  433. <Column id="nm" type="STRING"/>
  434. </ColumnInfo>
  435. </Dataset>
  436. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  437. <ColumnInfo>
  438. <Column id="statshopefromdd" type="STRING" size="256"/>
  439. <Column id="statshopetodd" type="STRING" size="256"/>
  440. <Column id="ioflag" type="STRING" size="256"/>
  441. <Column id="sectcd" type="STRING" size="256"/>
  442. <Column id="workgbn" type="STRING" size="256"/>
  443. <Column id="cntgbn" type="STRING" size="256"/>
  444. <Column id="itemgbn" type="STRING" size="256"/>
  445. <Column id="ddstandard" type="STRING" size="256"/>
  446. </ColumnInfo>
  447. <Rows>
  448. <Row>
  449. <Col id="ioflag">0</Col>
  450. <Col id="workgbn">A</Col>
  451. <Col id="cntgbn">T</Col>
  452. <Col id="ddstandard">1</Col>
  453. </Row>
  454. </Rows>
  455. </Dataset>
  456. </Objects>
  457. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  458. * System Name :
  459. * Job Name :
  460. * Creator :
  461. * Make Date : 2015-11-13
  462. * Description :
  463. *---------------------------------------------------------------------------------------
  464. * Modify Date Modifier Modify Description
  465. *---------------------------------------------------------------------------------------
  466. * 2015-11-13 Live Converter TF->XP
  467. *
  468. *---------------------------------------------------------------------------------------
  469. ****************************************************************************************/
  470. include "com_commonxp::comm_main.xjs";
  471. include "lis_commonxp::LLZ001.xjs";
  472. function SMLMS00200_oninit(obj:Form, e:InitEventInfo)
  473. {
  474. //폼 초기화 함수
  475. frmf_initForm(obj);
  476. }
  477. function SMLMS00200_onload(obj:Form, e:LoadEventInfo)
  478. {
  479. fSetInit(); //초기화 함수 호출
  480. // //초기정보 조회
  481. // lf_setInit_search();
  482. //
  483. // //그리드 초기 셋팅
  484. // lf_setGrid();
  485. //
  486. // lf_setInit();
  487. }
  488. function cbf_SMLMS00200(strSvcID, nErrorCode, strErrorMag){
  489. if(nErrorCode != 0) sysf_messageBox("ID: " + strSvcID + " Error: " + strErrorMag, "E009", "");
  490. }
  491. function lf_setInit_search(){
  492. lf_getDbDeptcd("0000|0011|0111|");
  493. }
  494. function fSetInit()
  495. {
  496. lf_getDbDeptcd("0111|"); //0111 : 계코드
  497. var toDay = utlf_getCurrentDate();
  498. div_search.cmb_sectcd.value = "00";//부서 전체
  499. div_search.cmb_ioflag.value = "0";///입원/외래구분을 전체
  500. div_search.ipt_workfromdd.value = toDay;//통계희망시작일 = 현재일자
  501. div_search.ipt_worktodd.value = toDay;//통계희망종료일 = 현재일자
  502. // ds_hidden.setColumn(0, "sectcd", "00"); //부서 전체
  503. // ds_hidden.setColumn(0, "ioflag", "00"); //입원/외래구분을 전체
  504. // ds_hidden.setColumn(0, "statshopefromdd", toDay); //통계희망시작일 = 현재일자
  505. // ds_hidden.setColumn(0, "statshopetodd", toDay); //통계희망종료일 = 현재일자
  506. div_search.stt_swung.visible = false;
  507. div_search.ipt_workfromdd.cal_Month.dateformat = "yyyy-MM";
  508. div_search.ipt_workfromdd.cal_Month.editformat = "yyyy-MM";
  509. div_search.ipt_worktodd.visible = false;
  510. //그리드 초기화
  511. ds_grid_grd_ddstats.clearData();
  512. ds_grid_grd_mmstats.clearData();
  513. ds_grid_grd_yystats.clearData();
  514. tab_statflag.tabindex = 0;
  515. }
  516. function lf_gridInit(){
  517. switch (tab_statflag.tabindex){
  518. case 0 :{
  519. div_search.stt_swung.visible = false;
  520. //div_search.ipt_workfromdd.value = utlf_getCurrentDate(); //20141229 주석처리
  521. div_search.ipt_workfromdd.cal_Month.dateformat = "yyyy-MM";
  522. div_search.ipt_workfromdd.cal_Month.editformat = "yyyy-MM";
  523. div_search.ipt_worktodd.visible = false;
  524. break;
  525. }case 1 :{
  526. div_search.stt_swung.visible = false;
  527. //div_search.ipt_workfromdd.value = utlf_getCurrentDate(); //20141229 주석처리
  528. div_search.ipt_workfromdd.cal_Month.dateformat = "yyyy";
  529. div_search.ipt_workfromdd.cal_Month.editformat = "yyyy";
  530. div_search.ipt_worktodd.visible = false;
  531. break;
  532. }case 2 :{
  533. lf_setyytitle();
  534. break;
  535. }
  536. }
  537. }
  538. function lf_setyytitle(){
  539. //div_search.ipt_workfromdd.value = utlf_getCurrentDate().substr(0, 4);
  540. //div_search.ipt_worktodd.value = utlf_getCurrentDate().substr(0, 4); //20141229 주석처리
  541. div_search.stt_swung.visible = true;
  542. div_search.ipt_workfromdd.cal_Month.dateformat = "yyyy";
  543. div_search.ipt_workfromdd.cal_Month.editformat = "yyyy"; //20150105
  544. div_search.ipt_workfromdd.visible = true;
  545. div_search.ipt_worktodd.cal_Month.dateformat = "yyyy";
  546. div_search.ipt_worktodd.cal_Month.editformat = "yyyy"; //20150105
  547. div_search.ipt_worktodd.visible = true;
  548. for(i = 5; i < tab_statflag.page_yy.grd_yy.getCellCount("Body"); i++){
  549. if(i == 5) tab_statflag.page_yy.grd_yy.setCellProperty("head", i, "text", utlf_getCurrentDate().substr(0, 4));
  550. else tab_statflag.page_yy.grd_yy.setFormatColProperty(i, "size", 0);
  551. }
  552. }
  553. function lf_setGrid(){
  554. for(i = 0; i < 4; i++){
  555. //일별 통계
  556. tab_statflag.page_dd.grd_dd.setFormatColProperty(i, "band", "left");
  557. //월별통계
  558. tab_statflag.page_mm.grd_mm.setFormatColProperty(i, "band", "left");
  559. //년별통계
  560. tab_statflag.page_yy.grd_yy.setFormatColProperty(i, "band", "left");
  561. }
  562. }
  563. function lf_exeSaveToExcel(){
  564. switch (tab_statflag.tabindex){
  565. case 0 :{
  566. grdf_exportExcel(tab_statflag.page_dd.grd_dd, lf_lisGetTitle(this) + "_일별", "see");
  567. break;
  568. }case 1 :{
  569. grdf_exportExcel(tab_statflag.page_mm.grd_mm, lf_lisGetTitle(this) + "_월별", "see");
  570. break;
  571. }case 2 :{
  572. grdf_exportExcel(tab_statflag.page_yy.grd_yy, lf_lisGetTitle(this) + "_연별", "see");
  573. break;
  574. }
  575. }
  576. }
  577. function lf_getStats(){
  578. var sInDsName = dsf_createDsRow("ds_temp_search"
  579. , [{col: "sectcd", val: div_search.cmb_sectcd.value}
  580. , {col: "workgbn", val: div_search.rdo_workgbn.value}
  581. , {col: "cntgbn", val: div_search.rdo_cntgbn.value}
  582. , {col: "itemgbn", val: div_search.chk_itemgbn.value}
  583. , {col: "ioflag", val: div_search.cmb_ioflag.value}
  584. , {col: "statshopefromdd", val: div_search.ipt_workfromdd.cal_Month.text.replace("-","")} //20150105
  585. , {col: "statshopetodd", val: div_search.ipt_worktodd.cal_Month.text.replace("-","")} //20150105
  586. , {col: "refflag", val: ""}
  587. , {col: "ddstandard", val: div_search.cmb_ddstandard.value}
  588. , {col: "searchgbn", val: div_search.cmb_searchgbn.value}
  589. , {col: "searchname", val: div_search.ipt_search.value}]);
  590. switch (tab_statflag.tabindex){
  591. case 0 :{
  592. ds_temp_search.setColumn(0, "refflag", "dd");//일월연구분
  593. var oParam = {};
  594. oParam.id = "TRLLS01101";
  595. oParam.service = "statsmngtapp.MicroStatsRefMngt";
  596. oParam.method = "reqGetMSectTestStats";
  597. oParam.inds = "cond="+sInDsName;
  598. oParam.outds = "ds_grid_grd_ddstats=getSectTestStats ds_totalstats2=getSectTestStatsTotal ds_totalstats3=getSectTestStatsTotalB";
  599. oParam.async = false;
  600. oParam.callback = "cbf_SMLMS00200";
  601. tranf_submit(oParam);
  602. if(div_search.chk_itemgbn.value != "Y"){
  603. lf_setRowStyle(tab_statflag.page_dd.grd_dd, "2", "소계", "tclsscrnnm", "equal"); //소계 색변경
  604. }
  605. lf_setRowStyle(tab_statflag.page_dd.grd_dd, "11", "부서계", "tclsscrnnm", "equal"); //부서별합계 색변경
  606. lf_setRowStyle(tab_statflag.page_dd.grd_dd, "11", "부서합계", "tclsscrnnm", "equal"); //부서별합계 색변경
  607. lf_setRowStyle(tab_statflag.page_dd.grd_dd, "3", "합계", "tclsscrnnm", "equal"); //총합계 색변경 에메랄드색
  608. break; //20141229 추가
  609. }
  610. case 1 :{
  611. ds_temp_search.setColumn(0, "refflag", "mm");//일월연구분
  612. var oParam = {};
  613. oParam.id = "TRLLS01103";
  614. oParam.service = "statsmngtapp.MicroStatsRefMngt";
  615. oParam.method = "reqGetMSectTestmmStats";
  616. oParam.inds = "cond="+sInDsName;
  617. oParam.outds = "ds_grid_grd_mmstats=getSectTestmmStats ds_totalstats2=getSectTestStatsTotal ds_totalstats3=getSectTestStatsTotalB";
  618. oParam.async = false;
  619. oParam.callback = "cbf_SMLMS00200";
  620. tranf_submit(oParam);
  621. if(div_search.chk_itemgbn.value != "Y"){
  622. lf_setRowStyle(tab_statflag.page_mm.grd_mm, "2", "소계", "tclsscrnnm", "equal"); //소계 색변경
  623. }
  624. lf_setRowStyle(tab_statflag.page_mm.grd_mm, "11", "부서계", "tclsscrnnm", "equal"); //부서별합계 색변경
  625. lf_setRowStyle(tab_statflag.page_mm.grd_mm, "11", "부서합계", "tclsscrnnm", "equal"); //부서별합계 색변경
  626. lf_setRowStyle(tab_statflag.page_mm.grd_mm, "3", "합계", "tclsscrnnm", "equal"); //총합계 색변경 에메랄드색
  627. break; //20141229 추가
  628. }
  629. case 2 :{
  630. lf_setyygrid();
  631. ds_temp_search.setColumn(0, "refflag", "yy");//일월연구분
  632. var fromdd = div_search.ipt_workfromdd.getData().substring(0,4);
  633. var todd = div_search.ipt_worktodd.getData().substring(0,4);
  634. ds_temp_search.setColumn(0,"statshopefromdd",fromdd);
  635. ds_temp_search.setColumn(0,"statshopetodd",todd);
  636. var oParam = {};
  637. oParam.id = "TRLLS01104";
  638. oParam.service = "statsmngtapp.MicroStatsRefMngt";
  639. oParam.method = "reqGetMSectTestyy1Stats";
  640. oParam.inds = "cond="+sInDsName;
  641. oParam.outds = "ds_grid_grd_yystats=getSectTestyyStats ds_totalstats2=getSectTestStatsTotal ds_totalstats3=getSectTestStatsTotalB";
  642. oParam.async = false;
  643. oParam.callback = "cbf_SMLMS00200";
  644. tranf_submit(oParam);
  645. if(div_search.chk_itemgbn.value != "Y"){
  646. lf_setRowStyle(tab_statflag.page_yy.grd_yy, "2", "소계", "tclsscrnnm", "equal"); //소계 색변경
  647. }
  648. lf_setRowStyle(tab_statflag.page_yy.grd_yy, "11", "부서계", "tclsscrnnm", "equal"); //부서별합계 색변경
  649. lf_setRowStyle(tab_statflag.page_yy.grd_yy, "11", "부서합계", "tclsscrnnm", "equal"); //부서별합계 색변경
  650. lf_setRowStyle(tab_statflag.page_yy.grd_yy, "3", "합계", "tclsscrnnm", "equal"); //총합계 색변경 에메랄드색
  651. break; //20141229 추가
  652. }
  653. }
  654. }
  655. function lf_setyygrid(){
  656. for(i = 6; i < tab_statflag.page_yy.grd_yy.getCellCount("Body"); i++){
  657. tab_statflag.page_yy.grd_yy.setFormatColProperty(i, "size", 0);
  658. }
  659. var sdd = div_search.ipt_workfromdd.cal_Month.text.substr(0, 4); //20150105
  660. var edd = div_search.ipt_worktodd.cal_Month.text.substr(0, 4); //20150105
  661. var ddcnt = parseInt(edd) - parseInt(sdd);
  662. var plusY = 0;
  663. for(i = 5; i < parseInt(ddcnt) + 6; i++){
  664. tab_statflag.page_yy.grd_yy.setFormatColProperty(i, "size", 80);
  665. tab_statflag.page_yy.grd_yy.setCellProperty("Head", i, "text", parseInt(sdd) + parseInt(plusY));
  666. plusY++;
  667. }
  668. }
  669. function lf_setRowStyle( gridID , styleFlag , data , colRef , control ) {
  670. var fillStyle = "";
  671. var style = new Array("#fcd2c1" , "#ffe79d" , "#f3e1bf" , "#7BE6B7" , "#b9e5fb" , "#f7a08b" , "#fec34d" , "#dec6a4" , "#c8e67b" ,
  672. "#43c8f5" , "#ff9933" , "#3399ff" , "#9999cc" , "#FFC8C8" , "#fab7bf" , "#ffff00" , "#ccffcc" , "#FF9A00", "#ff0000");
  673. var styleFlags = styleFlag.split("^");
  674. var datas = data.split("^");
  675. if( control == null || control == "" )
  676. control = "equal";
  677. var controls = control.split("^");
  678. var BackGroundFont = "";
  679. var end = "";
  680. for( var j = 0 ; j < datas.length ; j++ ) {
  681. var dataValue = datas[j];
  682. var styleValue = style[styleFlags[j]];
  683. if(controls[j] == null)
  684. controls[j] = "equal";
  685. var ctrl = "";
  686. switch( controls[j] ) {
  687. case "small":
  688. ctrl = "<";
  689. break;
  690. case "smallThen":
  691. ctrl = "<=";
  692. break;
  693. case "bigger":
  694. ctrl = ">";
  695. break;
  696. case "biggerThen":
  697. ctrl = ">=";
  698. break;
  699. case "equal":
  700. ctrl = "==";
  701. break;
  702. }
  703. if(j == datas.length-1){
  704. if(datas.length == 1){
  705. BackGroundFont = "expr:String(" + colRef +") "+ctrl+ " '" + dataValue +"' ? '"+styleValue+"' : ''";
  706. }else{
  707. BackGroundFont += "String(" + colRef+") "+ctrl+ " '" + dataValue +"' ? '"+styleValue+"' : ''";
  708. }
  709. }else if(j == 0){
  710. BackGroundFont += "expr:String(" + colRef+") "+ctrl+ " '" + dataValue +"' ? '"+styleValue+"' : (";
  711. }else{
  712. BackGroundFont += "String("+colRef+") "+ctrl+ " '" + dataValue +"' ? '"+styleValue+"' : (";
  713. }
  714. if( j<datas.length-1)
  715. end += ")";
  716. }
  717. BackGroundFont += end;
  718. for(var i=0; i<gridID.getCellCount("body");i++){
  719. if(i != 4){
  720. gridID.setCellProperty("body", i, "background" ,BackGroundFont);
  721. gridID.setCellProperty("body", i, "background2" ,BackGroundFont);
  722. }
  723. }
  724. }
  725. function tab_statflag_onchanged(obj:Tab, e:TabIndexChangeEventInfo){
  726. lf_gridInit();
  727. }
  728. function btn_excel_onclick(obj:Button, e:ClickEventInfo){
  729. lf_exeSaveToExcel();
  730. }
  731. function div_search_btn_search_onclick(obj:Button, e:ClickEventInfo){
  732. if(tab_statflag.tabindex == 2){
  733. var fromdd = parseInt(div_search.ipt_workfromdd.cal_Month.text.substr(0, 4));
  734. var todd = parseInt(div_search.ipt_worktodd.cal_Month.text.substr(0, 4)); //20150105
  735. if(todd - fromdd >9 ){
  736. sysf_messageBox("10년 이내로 조회 가능합니다\n조회기간을 다시 ", "C002", "");
  737. return;
  738. }
  739. if(fromdd > todd){
  740. sysf_messageBox("통계 희망일 시작시간이 종료시간보다 작아야 합니다. 희망일을 ", "I007", "");
  741. return;
  742. }
  743. }
  744. lf_getStats();
  745. }
  746. function div_search_ipt_search_onkeydown(obj:Edit, e:KeyEventInfo)
  747. {
  748. if(e.keycode == 13)
  749. {
  750. if(tab_statflag.tabindex == 2)
  751. {
  752. var fromdd = parseInt(div_search.ipt_workfromdd.cal_Month.text.substr(0, 4));
  753. var todd = parseInt(div_search.ipt_worktodd.cal_Month.text.substr(0, 4)); //20150105
  754. if(todd - fromdd >9 ){
  755. sysf_messageBox("10년 이내로 조회 가능합니다\n조회기간을 다시 ", "C002", "");
  756. return;
  757. }
  758. if(fromdd > todd){
  759. sysf_messageBox("통계 희망일 시작시간이 종료시간보다 작아야 합니다. 희망일을 ", "I007", "");
  760. return;
  761. }
  762. }
  763. lf_getStats();
  764. }
  765. }
  766. ]]></Script>
  767. </Form>
  768. </FDL>