SMMMR04000_SAPS3.xfdl 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMMR04000" position="absolute 0 0 1250 820" titletext="SAPS3 조회" oninit="SMMMR04000_oninit" onload="SMMMR04000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Shape id="roundrect1" type="roundrectangle" position="absolute 10 25 1240 60"/>
  8. <Static text="SAPS3" position="absolute 10 0 86 25" id="caption6" class="tit_1"/>
  9. <Shape position="absolute 973 31 979 55" linetype="vertical" id="line13" class="line_4"/>
  10. <Static text="입실일자" position="absolute 298 34 363 51" id="caption2" class="search_name"/>
  11. <Shape position="absolute 12 61 1239 67" linetype="horizontal" id="line12" class="line_10"/>
  12. <Static text="중환자실" position="absolute 638 34 703 51" id="caption29" class="search_name"/>
  13. <Calendar position="absolute 370 33 463 52" id="ipt_reqstnddd" class="input_essential" mask="yyyy-mm-dd" onchanged="ipt_reqstnddd_onchanged" taborder="1"/>
  14. <Calendar position="absolute 469 33 562 52" id="ipt_reqenddd" class="input_essential" mask="yyyy-mm-dd" onchanged="ipt_reqenddd_onchanged" taborder="2"/>
  15. <Combo position="absolute 569 33 629 52" id="cmb_term" class="combo_search" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="cmb_term_onitemchanged" taborder="3">
  16. <Dataset id="innerdataset">
  17. <ColumnInfo>
  18. <Column id="codecolumn"/>
  19. <Column id="datacolumn"/>
  20. </ColumnInfo>
  21. <Rows>
  22. <Row>
  23. <Col id="codecolumn">0</Col>
  24. <Col id="datacolumn">
  25. </Col>
  26. </Row>
  27. <Row>
  28. <Col id="codecolumn">90</Col>
  29. <Col id="datacolumn">3개월</Col>
  30. </Row>
  31. <Row>
  32. <Col id="codecolumn">180</Col>
  33. <Col id="datacolumn">6개월</Col>
  34. </Row>
  35. <Row>
  36. <Col id="codecolumn">270</Col>
  37. <Col id="datacolumn">9개월</Col>
  38. </Row>
  39. <Row>
  40. <Col id="codecolumn">365</Col>
  41. <Col id="datacolumn">1년</Col>
  42. </Row>
  43. <Row>
  44. <Col id="codecolumn">730</Col>
  45. <Col id="datacolumn">2년</Col>
  46. </Row>
  47. </Rows>
  48. </Dataset>
  49. </Combo>
  50. <Combo position="absolute 703 33 790 52" id="cmb_icu" class="combo_search" innerdataset="@ds_init_ward_icudept" datacolumn="deptnm" codecolumn="deptcd" onitemchanged="cmb_icu_onitemchanged" taborder="4"/>
  51. <Combo position="absolute 862 33 960 52" id="cmb_orddeptcd" class="combo_search" innerdataset="@ds_init_orddept_dept" datacolumn="depthngnm" codecolumn="deptcd" onitemchanged="cmb_orddeptcd_onitemchanged" taborder="5"/>
  52. <Button position="absolute 1171 32 1227 54" id="btn_excel" class="btn7" text="엑셀" onclick="btn_excel_onclick" taborder="6"/>
  53. <Static text="진 료 과" position="absolute 799 34 864 51" id="caption3" class="search_name"/>
  54. <Button position="absolute 1113 32 1169 54" id="button1" class="btn1" text="조회" onclick="button1_onclick" taborder="7"/>
  55. <Grid id="grd_list" taborder="8" binddataset="ds_main_list_item" useinputpanel="false" selecttype="multirow" oncelldblclick="grd_list_oncelldblclick" position="absolute 9 67 1239 814">
  56. <Formats>
  57. <Format id="default">
  58. <Columns>
  59. <Column size="20"/>
  60. <Column size="28"/>
  61. <Column size="64"/>
  62. <Column size="54"/>
  63. <Column size="36"/>
  64. <Column size="39"/>
  65. <Column size="0"/>
  66. <Column size="0"/>
  67. <Column size="0"/>
  68. <Column size="55"/>
  69. <Column size="40"/>
  70. <Column size="117"/>
  71. <Column size="120"/>
  72. <Column size="109"/>
  73. <Column size="114"/>
  74. <Column size="107"/>
  75. <Column size="64"/>
  76. <Column size="117"/>
  77. <Column size="74"/>
  78. <Column size="44"/>
  79. <Column size="100"/>
  80. </Columns>
  81. <Rows>
  82. <Row size="24" band="head"/>
  83. <Row size="24"/>
  84. </Rows>
  85. <Band id="head">
  86. <Cell/>
  87. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  88. <Cell col="2" text="등록번호"/>
  89. <Cell col="3" text="성 명"/>
  90. <Cell col="4" text="나이"/>
  91. <Cell col="5" text="성별"/>
  92. <Cell col="6" text="입원일"/>
  93. <Cell col="7" text="입실일"/>
  94. <Cell col="8" text="cretno"/>
  95. <Cell col="9" text="유형"/>
  96. <Cell col="10" text="횟수"/>
  97. <Cell col="11" text="입원일자"/>
  98. <Cell col="12" text="입실일자"/>
  99. <Cell col="13" text="퇴실일자"/>
  100. <Cell col="14" text="퇴원일자"/>
  101. <Cell col="15" text="사망일자"/>
  102. <Cell col="16" text="사망(ICU)"/>
  103. <Cell col="17" text="진료과"/>
  104. <Cell col="18" text="중환자실"/>
  105. <Cell col="19" text="점수"/>
  106. <Cell col="20" text="예측사망율(%)"/>
  107. </Band>
  108. <Band id="body">
  109. <Cell celltype="head" expr="expr:currow + 1"/>
  110. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  111. <Cell col="2" text="bind:pid"/>
  112. <Cell col="3" style="align:left;" text="bind:hngnm"/>
  113. <Cell col="4" text="bind:age"/>
  114. <Cell col="5" text="bind:sex"/>
  115. <Cell col="6" text="bind:orddd"/>
  116. <Cell col="7" text="bind:fromdd"/>
  117. <Cell col="8" text="bind:cretno"/>
  118. <Cell col="9" style="align:left;" text="bind:insukind"/>
  119. <Cell col="10" text="bind:rn"/>
  120. <Cell col="11" style="align:left;" text="bind:indt"/>
  121. <Cell col="12" text="bind:ipsildt"/>
  122. <Cell col="13" text="bind:toisildt" mask="expr:(utlf_isNull(toisildt) || toisildt =='-') ? '' : '####-##-## ##:##'"/>
  123. <Cell col="14" style="align:left;" text="bind:dschdt"/>
  124. <Cell col="15" text="bind:dethdt" mask="expr:utlf_isNull(dethdt) ? '' : '####-##-## ##:##'"/>
  125. <Cell col="16" text="bind:icudethyn"/>
  126. <Cell col="17" style="align:left top;padding:4 2 2 2;" text="bind:orddeptnm" wordwrap="word"/>
  127. <Cell col="18" style="align:left top;padding:2 2 2 2;" text="bind:wardnm" wordwrap="word"/>
  128. <Cell col="19" text="bind:sapsscore"/>
  129. <Cell col="20" text="bind:pom"/>
  130. </Band>
  131. </Format>
  132. </Formats>
  133. </Grid>
  134. <Static id="caption00" text="입원일자" class="search_name" position="absolute 16 33 81 50"/>
  135. <Calendar id="ipt_infromdd" taborder="9" class="input_essential" position="absolute 94 31 187 50" mask="yyyy-mm-dd"/>
  136. <Calendar id="ipt_intodd" taborder="10" class="input_essential" position="absolute 195 31 288 50" mask="yyyy-mm-dd"/>
  137. <Button id="button00" taborder="11" text="표준화사망률" class="btn1" position="absolute 979 32 1083 54" onclick="button00_onclick"/>
  138. <Edit id="ed_jo" taborder="12" position="absolute 1039 4 1122 24" displaynulltext="숫자로 입력" inputtype="number"/>
  139. <Static id="Static00" text="조사망률" position="absolute 975 8 1029 20" style="font:dotum,9,bold;"/>
  140. </Layout>
  141. </Layouts>
  142. <Objects>
  143. <Dataset id="ds_init_ward_icudept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  144. <ColumnInfo>
  145. <Column id="deptnm" type="STRING"/>
  146. <Column id="deptcd" type="STRING"/>
  147. </ColumnInfo>
  148. </Dataset>
  149. <Dataset id="ds_init_orddept_dept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  150. <ColumnInfo>
  151. <Column id="depthngnm" type="STRING"/>
  152. <Column id="deptcd" type="STRING"/>
  153. </ColumnInfo>
  154. </Dataset>
  155. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  156. <ColumnInfo>
  157. <Column id="stnddd" type="STRING" size="256" sumtext="조회시작일자"/>
  158. <Column id="enddd" type="STRING" size="256" sumtext="조회종료일자"/>
  159. <Column id="ward" type="STRING" size="256"/>
  160. <Column id="orddept" type="STRING" size="256"/>
  161. <Column id="range" type="STRING" size="256"/>
  162. <Column id="infromdd" type="STRING" size="256"/>
  163. <Column id="intodd" type="STRING" size="256"/>
  164. </ColumnInfo>
  165. <Rows>
  166. <Row/>
  167. </Rows>
  168. </Dataset>
  169. <Dataset id="ds_temp_initlist_icudept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  170. <ColumnInfo>
  171. <Column id="deptcd" type="STRING" size="256" sumtext="부서코드"/>
  172. <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
  173. </ColumnInfo>
  174. </Dataset>
  175. <Dataset id="ds_main_list_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  176. <ColumnInfo>
  177. <Column id="instcd" type="STRING" size="256" sumtext=""/>
  178. <Column id="pid" type="STRING" size="256" sumtext=""/>
  179. <Column id="hngnm" type="STRING" size="256" sumtext=""/>
  180. <Column id="sex" type="STRING" size="256" sumtext=""/>
  181. <Column id="age" type="STRING" size="256" sumtext=""/>
  182. <Column id="orddept" type="STRING" size="256" sumtext=""/>
  183. <Column id="ward" type="STRING" size="256" sumtext=""/>
  184. <Column id="orddeptnm" type="STRING" size="256" sumtext=""/>
  185. <Column id="wardnm" type="STRING" size="256" sumtext=""/>
  186. <Column id="fromdd" type="STRING" size="256" sumtext=""/>
  187. <Column id="todd" type="STRING" size="256" sumtext=""/>
  188. <Column id="toisildt" type="STRING" size="256" sumtext=""/>
  189. <Column id="ipsildt" type="STRING" size="256" sumtext="입실시각"/>
  190. <Column id="orddd" type="STRING" size="256" sumtext=""/>
  191. <Column id="cretno" type="STRING" size="256" sumtext=""/>
  192. <Column id="sapsscore" type="STRING" size="256" sumtext=""/>
  193. <Column id="pom" type="STRING" size="256" sumtext=""/>
  194. <Column id="condqry" type="STRING" size="256" sumtext=""/>
  195. <Column id="dethyn" type="STRING" size="256" sumtext=""/>
  196. <Column id="dethdt" type="STRING" size="256" sumtext=""/>
  197. <Column id="indt" type="STRING" size="256"/>
  198. <Column id="dschdt" type="STRING" size="256"/>
  199. <Column id="rn" type="STRING" size="256"/>
  200. <Column id="insukind" type="STRING" size="256"/>
  201. <Column id="chk" type="STRING" size="256"/>
  202. <Column id="icudethyn" type="STRING" size="256"/>
  203. </ColumnInfo>
  204. <Rows>
  205. <Row/>
  206. </Rows>
  207. </Dataset>
  208. </Objects>
  209. <Bind>
  210. <BindItem id="item0" compid="ipt_reqstnddd" propid="value" datasetid="ds_cond" columnid="stnddd"/>
  211. <BindItem id="item1" compid="ipt_reqenddd" propid="value" datasetid="ds_cond" columnid="enddd"/>
  212. <BindItem id="item2" compid="cmb_term" propid="value" datasetid="ds_cond" columnid="range"/>
  213. <BindItem id="item3" compid="cmb_icu" propid="value" datasetid="ds_cond" columnid="ward"/>
  214. <BindItem id="item4" compid="cmb_orddeptcd" propid="value" datasetid="ds_cond" columnid="orddept"/>
  215. <BindItem id="item5" compid="ipt_infromdd" propid="value" datasetid="ds_cond" columnid="infromdd"/>
  216. <BindItem id="item6" compid="ipt_intodd" propid="value" datasetid="ds_cond" columnid="intodd"/>
  217. </Bind>
  218. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  219. * System Name : 경대 의료정보시스템
  220. * Job Name : emr_anstrecxp -> SMMMR04000
  221. * Creator : yjh
  222. * Make Date : 2016-10-31
  223. * Description :
  224. *---------------------------------------------------------------------------------------
  225. * Modify Date Modifier Modify Description
  226. *---------------------------------------------------------------------------------------
  227. * 2016-10-31 yjh TF->XP
  228. *
  229. *---------------------------------------------------------------------------------------
  230. ****************************************************************************************/
  231. //=======================================================================================
  232. // Lib Include
  233. //---------------------------------------------------------------------------------------
  234. include "com_commonxp::comm_main.xjs";
  235. include "emr_anstrecxp::MMR04000.xjs"; //yjh : 커밋
  236. include "emr_prcpmngtxp::MMOCommon.xjs";
  237. //=======================================================================================
  238. // Global Form Variable
  239. //---------------------------------------------------------------------------------------
  240. var arErrorCode = new HashArray();
  241. //=======================================================================================
  242. // Function
  243. //---------------------------------------------------------------------------------------
  244. //=======================================================================================
  245. // Event
  246. //---------------------------------------------------------------------------------------
  247. /****************************************************************************************
  248. * Components : Form
  249. * Components ID : SMMMR04000
  250. * Event : oninit
  251. * Argument : 01.obj : Object Event has occurred
  252. * : 02.e : Event Object
  253. * Description : 화면 처음 초기화시
  254. ****************************************************************************************/
  255. function SMMMR04000_oninit(obj:Form, e:InitEventInfo)
  256. {
  257. frmf_initForm(obj); //폼 초기화
  258. }
  259. /****************************************************************************************
  260. * Components : Form
  261. * Components ID : SMMMR04000
  262. * Event : onload
  263. * Argument : 01.obj : Object Event has occurred
  264. * : 02.e : Event Object
  265. * Description : 화면 로딩 완료시
  266. ****************************************************************************************/
  267. function SMMMR04000_onload(obj:Form, e:LoadEventInfo)
  268. {
  269. fIni();
  270. }
  271. /****************************************************************************************
  272. * Components : Grid
  273. * Components ID : grd_list
  274. * Event : oncelldblclick
  275. * Argument : 01.obj : Object Event has occurred
  276. * : 02.e : Event Object
  277. * Description : 그리드 셀 더블클릭시
  278. ****************************************************************************************/
  279. function grd_list_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  280. {
  281. fSAPS();
  282. }
  283. /****************************************************************************************
  284. * Components : Calendar
  285. * Components ID : ipt_reqstnddd
  286. * Event : onchanged
  287. * Argument : 01.obj : Object Event has occurred
  288. * : 02.e : Event Object
  289. * Description : 달력 값 변경시
  290. ****************************************************************************************/
  291. function ipt_reqstnddd_onchanged(obj:Calendar, e:ChangeEventInfo)
  292. {
  293. ds_cond.setColumn(0, "stnddd", ds_cond.getColumn(0, "stnddd"));
  294. }
  295. /****************************************************************************************
  296. * Components : Calendar
  297. * Components ID : ipt_reqenddd
  298. * Event : onchanged
  299. * Argument : 01.obj : Object Event has occurred
  300. * : 02.e : Event Object
  301. * Description : 달력 값 변경시
  302. ****************************************************************************************/
  303. function ipt_reqenddd_onchanged(obj:Calendar, e:ChangeEventInfo)
  304. {
  305. ds_cond.setColumn(0, "enddd", ds_cond.getColumn(0, "enddd"));
  306. }
  307. /****************************************************************************************
  308. * Components : Combo
  309. * Components ID : cmb_term
  310. * Event : onitemchanged
  311. * Argument : 01.obj : Object Event has occurred
  312. * : 02.e : Event Object
  313. * Description : 콤보 값 변경시
  314. ****************************************************************************************/
  315. function cmb_term_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  316. {
  317. var date2 = ipt_reqenddd.value;
  318. var term = cmb_term.value;
  319. ipt_reqstnddd.value = (date2+"").toDate().getAddDate(-term, "D").getDateFormat("YYYYMMDD");
  320. }
  321. /****************************************************************************************
  322. * Components : Combo
  323. * Components ID : cmb_icu
  324. * Event : onitemchanged
  325. * Argument : 01.obj : Object Event has occurred
  326. * : 02.e : Event Object
  327. * Description : 콤보 값 변경시
  328. ****************************************************************************************/
  329. function cmb_icu_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  330. {
  331. ds_cond.setColumn(0, "ward", ds_cond.getColumn(0, "ward"));
  332. }
  333. /****************************************************************************************
  334. * Components : Combo
  335. * Components ID : cmb_orddeptcd
  336. * Event : onitemchanged
  337. * Argument : 01.obj : Object Event has occurred
  338. * : 02.e : Event Object
  339. * Description : 콤보 값 변경시
  340. ****************************************************************************************/
  341. function cmb_orddeptcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  342. {
  343. ds_cond.setColumn(0, "orddept", ds_cond.getColumn(0, "orddept"));
  344. }
  345. /****************************************************************************************
  346. * Components : Button
  347. * Components ID : btn_excel
  348. * Event : onclick
  349. * Argument : 01.obj : Object Event has occurred
  350. * : 02.e : Event Object
  351. * Description : 엑셀버튼 클릭시
  352. ****************************************************************************************/
  353. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  354. {
  355. if( grd_list.rowcount > 0 ){
  356. grdf_exportExcel(grd_list, "SAPS3", "SAPS3", false, "", "user", false);
  357. } else {
  358. sysf_messageBox("조회된 데이터가 ", "I004");
  359. return;
  360. }
  361. }
  362. /****************************************************************************************
  363. * Components : Button
  364. * Components ID : button1
  365. * Event : onclick
  366. * Argument : 01.obj : Object Event has occurred
  367. * : 02.e : Event Object
  368. * Description : 조회버튼 클릭시
  369. ****************************************************************************************/
  370. function button1_onclick(obj:Button, e:ClickEventInfo)
  371. {
  372. fSearch();
  373. }
  374. function button00_onclick(obj:Button, e:ClickEventInfo)
  375. {
  376. // var C0 = 18;
  377. // var C1 = 4;
  378. // var C2 = 4.44;
  379. // var C3 = 22.22;
  380. // var C4 = 24.70;
  381. // var C5 = 16.9;
  382. // var C6 = 15.20;
  383. var rowcount = ds_main_list_item.rowcount;
  384. var chk = "";
  385. var sum = 0;
  386. var pom = 0;
  387. var tmp = 0;
  388. var tmp2 = 0;
  389. //선택환자수
  390. C0 = ds_main_list_item.getCaseCount("chk == 1");
  391. //조사망률
  392. C5 = ed_jo.value;
  393. if (C0 == 0 ) {
  394. sysf_messageBox("선택된 행이 없습니다","I");
  395. return;
  396. }
  397. if (utlf_isNull(C5)) {
  398. sysf_messageBox("조사망률이 입력되지 않았습니다","I");
  399. return;
  400. }
  401. //실제 사망자수
  402. C1 = ds_main_list_item.getCaseCount("chk == 1 && icudethyn == 'Y'");
  403. for ( var i = 0 ; i < rowcount ; i++ )
  404. {
  405. chk = ds_main_list_item.getColumn(i,"chk");
  406. if (chk == 1) {
  407. pom = ds_main_list_item.getColumn(i,"pom")
  408. if (!utlf_isNull(pom)){
  409. tmp = parseFloat(pom)/100;
  410. //tmp2 = Math.round(tmp * 100000000)/100000000;
  411. sum = sum + tmp
  412. }
  413. }
  414. }
  415. //기대 사망자수
  416. C2 = Math.round(sum * 100000000)/100000000;
  417. //실제 사망률
  418. C3 = Math.round(C1/C0 * 100 * 100)/100;
  419. //기대 사망률
  420. C4 = Math.round(C2/C0 * 100 * 100)/100;
  421. //표준화 사망률
  422. C6 = Math.round(C3/C4 * C5 * 100)/100;
  423. frmf_setParameter("SPMMR04003_C0", C0);
  424. frmf_setParameter("SPMMR04003_C1", C1);
  425. frmf_setParameter("SPMMR04003_C2", C2);
  426. frmf_setParameter("SPMMR04003_C3", C3);
  427. frmf_setParameter("SPMMR04003_C4", C4);
  428. frmf_setParameter("SPMMR04003_C5", C5);
  429. frmf_setParameter("SPMMR04003_C6", C6);
  430. frmf_modal("SPMMR04003", "SPMMR04003", null, null, null, null, null, null, null, null, null, null, "M");
  431. }
  432. ]]></Script>
  433. </Form>
  434. </FDL>