SMPAS00164_예약통계.xfdl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417
  1. <?xml version="1.0" encoding="utf-8" standalone="no"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml" />
  4. <Form id="SMPAS00164" position="absolute 0 0 1211 784" titletext="예약통계" onload="SMPAS00164_onload">
  5. <Layouts>
  6. <Layout>
  7. <Grid id="grd_sel2" binddataset="ds_main_outhist_outhistlist" position="absolute 5 75 1205 770" style="">
  8. <Formats>
  9. <Format id="default">
  10. <Columns>
  11. <Column size="300" />
  12. <Column size="150" />
  13. <Column size="140" />
  14. <Column size="150" />
  15. <Column size="140" />
  16. <Column size="150" />
  17. <Column size="140" />
  18. </Columns>
  19. <Rows>
  20. <Row size="24" band="head" />
  21. <Row size="24" />
  22. </Rows>
  23. <Band id="head">
  24. <Cell text="진료과" />
  25. <Cell col="1" text="초진부도자" />
  26. <Cell col="2" text="초진부도율" />
  27. <Cell col="3" text="재진부도자" />
  28. <Cell col="4" text="재진부도율" />
  29. <Cell col="5" text="합계" />
  30. <Cell col="6" text="부도율" />
  31. </Band>
  32. <Band id="body">
  33. <Cell text="bind:orddeptnm" />
  34. <Cell col="1" text="bind:fstexamcnt" />
  35. <Cell col="2" text="bind:fstexamrate" />
  36. <Cell col="3" text="bind:reexamcnt" />
  37. <Cell col="4" text="bind:reexamrate" />
  38. <Cell col="5" text="bind:sumcnt" />
  39. <Cell col="6" text="bind:sumrate" />
  40. </Band>
  41. </Format>
  42. </Formats>
  43. </Grid>
  44. <Grid id="grd_sel1" binddataset="ds_main_outhist_outhistlist" position="absolute 5 120 1205 815" style="">
  45. <Formats>
  46. <Format id="default">
  47. <Columns>
  48. <Column size="300" />
  49. <Column size="290" />
  50. <Column size="290" />
  51. <Column size="290" />
  52. </Columns>
  53. <Rows>
  54. <Row size="24" band="head" />
  55. <Row size="24" />
  56. </Rows>
  57. <Band id="head">
  58. <Cell text="진료과" />
  59. <Cell col="1" text="초진" />
  60. <Cell col="2" text="재진" />
  61. <Cell col="3" text="합계" />
  62. </Band>
  63. <Band id="body">
  64. <Cell text="bind:orddeptnm" />
  65. <Cell col="1" text="bind:fstexamcnt" />
  66. <Cell col="2" text="bind:reexamcnt" />
  67. <Cell col="3" text="bind:sumcnt" />
  68. </Band>
  69. </Format>
  70. </Formats>
  71. </Grid>
  72. <Div id="group3" position="absolute 0 0 1211 13" style="">
  73. <Layouts>
  74. <Layout>
  75. <Static id="caption60" class="tit_1" position="absolute 0 0 196 14" style="font:돋움,,돋움;align: middle;" text="예약통계" />
  76. </Layout>
  77. </Layouts>
  78. </Div>
  79. <Div id="group2" position="absolute 4 22 1207 57" style="">
  80. <Layouts>
  81. <Layout>
  82. <Shape id="roundrect1" anchor="default" class="roundrect_search" type="roundrectangle" position="absolute 0 0 1202 35" style="border: solid #ffd799 #ffd799;background:#fffbf2 ;" />
  83. <Static id="caption2" class="search_name" position="absolute 295 9 505 26" style="" text="기간 ~" />
  84. <Shape id="line2" class="line_4" linetype="vertical" position="absolute 1130 7 1133 29" style="border: solid #ffe4bb #ffe4bb;" anchor="default" />
  85. <Button id="btn_search" class="btn1_letter2" position="absolute 1139 7 1195 29" style="" text="조회" onclick="group2_btn_search_onclick" />
  86. <Calendar id="ipt_fromdd" class="input_default" taborder="7" position="absolute 350 9 440 28" style="" anchor="default" />
  87. <Calendar id="ipt_todd" class="input_default" taborder="7" position="absolute 460 9 550 28" style="" anchor="default" />
  88. <Combo datacolumn="datacolumn" codecolumn="codecolumn" columncount="-1" rowcount="-1" id="cmb_rsrvflag" class="combo_search" taborder="14" position="absolute 632 9 727 28" style="">
  89. <Dataset id="innerdataset">
  90. <ColumnInfo>
  91. <Column id="codecolumn" />
  92. <Column id="datacolumn" />
  93. </ColumnInfo>
  94. <Rows>
  95. <Row>
  96. <Col id="codecolumn">0</Col>
  97. <Col id="datacolumn"></Col>
  98. </Row>
  99. <Row>
  100. <Col id="codecolumn">1</Col>
  101. <Col id="datacolumn">전화예약</Col>
  102. </Row>
  103. <Row>
  104. <Col id="codecolumn">2</Col>
  105. <Col id="datacolumn">인터넷예약</Col>
  106. </Row>
  107. </Rows>
  108. </Dataset>
  109. </Combo>
  110. <Static id="caption7" class="search_name" position="absolute 577 9 642 26" style="font:,,bold;" text="예약" />
  111. <Combo innerdataset="ds_init_orddeptcd_orddeptcdlist" datacolumn="nm" codecolumn="cd" columncount="-1" rowcount="-1" id="cmb_orddeptcd" class="combo_search" taborder="14" position="absolute 820 9 915 28" style="" onitemclick="group2_cmb_orddeptcd_onitemclick" />
  112. <Static id="caption1" class="search_name" position="absolute 751 9 816 26" style="font:,,bold;" text="진료과" />
  113. <Static id="caption3" class="search_name" position="absolute 937 9 1017 26" style="font:,,bold;" text="의사" />
  114. <Combo innerdataset="ds_init_orddrid_orddridlist" datacolumn="nm" codecolumn="cd" columncount="-1" rowcount="-1" id="cmb_orddrid" class="combo_search" taborder="14" position="absolute 993 9 1088 28" style="" />
  115. <Static id="caption4" class="search_name" position="absolute 10 9 75 26" style="font:,,bold;" text="선택" />
  116. </Layout>
  117. </Layouts>
  118. </Div>
  119. <Radio datacolumn="datacolumn" codecolumn="codecolumn" columncount="-1" rowcount="-1" id="rdo_histstat" class="radio_search" taborder="11" position="absolute 73 32 275 51" style="" onitemclick="rdo_histstat_onitemclick">
  120. <Dataset id="innerdataset">
  121. <ColumnInfo>
  122. <Column id="codecolumn" />
  123. <Column id="datacolumn" />
  124. </ColumnInfo>
  125. <Rows>
  126. <Row>
  127. <Col id="codecolumn">R</Col>
  128. <Col id="datacolumn">예약</Col>
  129. </Row>
  130. <Row>
  131. <Col id="codecolumn">C</Col>
  132. <Col id="datacolumn">변경</Col>
  133. </Row>
  134. <Row>
  135. <Col id="codecolumn">X</Col>
  136. <Col id="datacolumn">취소</Col>
  137. </Row>
  138. <Row>
  139. <Col id="codecolumn">T</Col>
  140. <Col id="datacolumn">부도자</Col>
  141. </Row>
  142. </Rows>
  143. </Dataset>
  144. </Radio>
  145. <Button id="btn_print" class="btn6_letter2" visible="false" position="absolute 0 762 56 784" style="" text="출력" onclick="btn_print_onclick" />
  146. </Layout>
  147. </Layouts>
  148. <Objects>
  149. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  150. <ColumnInfo>
  151. <Column id="histstat" type="STRING" size="256" />
  152. <Column id="fromdd" type="STRING" size="256" />
  153. <Column id="todd" type="STRING" size="256" />
  154. <Column id="rsrvflag" type="STRING" size="256" />
  155. <Column id="orddeptcd" type="STRING" size="256" />
  156. <Column id="orddrid" type="STRING" size="256" />
  157. </ColumnInfo>
  158. <Rows>
  159. <Row>
  160. <Col id="histstat"></Col>
  161. <Col id="fromdd"></Col>
  162. <Col id="todd"></Col>
  163. <Col id="rsrvflag"></Col>
  164. <Col id="orddeptcd"></Col>
  165. <Col id="orddrid"></Col>
  166. </Row>
  167. </Rows>
  168. </Dataset>
  169. <Dataset id="ds_main" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  170. <ColumnInfo />
  171. </Dataset>
  172. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  173. <ColumnInfo>
  174. <Column id="hidden" type="STRING" size="256" />
  175. </ColumnInfo>
  176. <Rows>
  177. <Row>
  178. <Col id="hidden"></Col>
  179. </Row>
  180. </Rows>
  181. </Dataset>
  182. <Dataset id="ds_tmp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  183. <ColumnInfo>
  184. <Column id="tmp" type="STRING" size="256" />
  185. </ColumnInfo>
  186. </Dataset>
  187. <Dataset id="ds_main_outhist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  188. <ColumnInfo>
  189. <Column id="outhistlist" type="STRING" size="256" />
  190. </ColumnInfo>
  191. <Rows>
  192. <Row>
  193. <Col id="outhistlist"></Col>
  194. </Row>
  195. </Rows>
  196. </Dataset>
  197. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="keep">
  198. <ColumnInfo>
  199. <Column id="orddeptcd" type="STRING" size="256" />
  200. <Column id="orddrid" type="STRING" size="256" />
  201. </ColumnInfo>
  202. <Rows>
  203. <Row>
  204. <Col id="orddeptcd"></Col>
  205. <Col id="orddrid"></Col>
  206. </Row>
  207. </Rows>
  208. </Dataset>
  209. </Objects>
  210. <Bind>
  211. <BindItem id="item0" compid="group2.ipt_fromdd" propid="value" datasetid="ds_send" columnid="fromdd" />
  212. <BindItem id="item1" compid="group2.ipt_todd" propid="value" datasetid="ds_send" columnid="todd" />
  213. <BindItem id="item2" compid="group2.cmb_rsrvflag" propid="value" datasetid="ds_send" columnid="rsrvflag" />
  214. <BindItem id="item3" compid="group2.cmb_orddeptcd" propid="value" datasetid="ds_send" columnid="orddeptcd" />
  215. <BindItem id="item4" compid="group2.cmb_orddrid" propid="value" datasetid="ds_send" columnid="orddrid" />
  216. <BindItem id="item5" compid="rdo_histstat" propid="value" datasetid="ds_send" columnid="histstat" />
  217. </Bind>
  218. <Script type="xscript4.0"><![CDATA[function SMPAS00164_onload(obj:Form, e:LoadEventInfo) {
  219. // 기간 초기화
  220. var vToday = new Date();
  221. var tmpYear = vToday.getYear();
  222. var tmpMonth = vToday.getMonth()+1;
  223. var tmpDate = vToday.getDate();
  224. if (tmpMonth < 10) { tmpMonth = "0"+tmpMonth; }
  225. if (tmpDate < 10) {tmpDate = "0"+tmpDate; }
  226. ds_send.setColumn( 0, "fromdd", tmpYear+""+tmpMonth+""+tmpDate);
  227. ds_send.setColumn( 0, "todd", tmpYear+""+tmpMonth+""+tmpDate);
  228. // 선택 초기화
  229. ds_send.setColumn( 0, "histstat", "R");
  230. //model.refresh();
  231. // 그리드 초기화
  232. grd_sel1.visible = true;
  233. grd_sel2.visible = false;
  234. // 진료과, 의사 코드 초기화
  235. // submit("TRPAM00101");
  236. var oParam = {};
  237. oParam.id = "TRPAM00101";
  238. oParam.service = "pamcomnapp.PamComn";
  239. oParam.method = "reqGetDeptCDDrID";
  240. oParam.inds = "req=ds_";
  241. oParam.outds = "ds_=orddeptcd ds_=orddrid ds_=centcd ds_=subdeptcd";
  242. oParam.async = false;
  243. oParam.callback = "cf_TRPAM00101";
  244. tranf_submit(oParam);
  245. /*
  246. function cf_TRPAM00101(sSvcId, nErrorCode, sErrorMsg) {
  247. if(nErrorCode < 0) return;
  248. }
  249. function cf_TRPAM00101(sSvcId, nErrorCode, sErrorMsg) {
  250. arErrorCode.push(sSvcId, nErrorCode);
  251. }
  252. arErrorCode.pop("TRPAM00101") > -1
  253. arErrorCode.pop("TRPAM00101") < 0
  254. */
  255. model.copyNode("ds_init_orddeptcd", "root_tmp_orddeptcd");
  256. model.copyNode("ds_init_orddrid", "root_tmp_orddrid");
  257. ds_tmp.clearData();
  258. group2.cmb_orddrid.enable = false;
  259. //model.refresh();
  260. }
  261. include '../../.._com_commonweb_js_common.js'
  262. include '../../.._com_commonweb_js_utilHelper.js'
  263. include '../../.._com_commonweb_js_tfHelper.js'
  264. include '../../.._com_commonweb_js_dateHelper.js'
  265. include '../../.._com_commonweb_js_numericHelper.js'
  266. include '../../.._com_commonweb_js_stringHelper.js'
  267. include '../../.._com_basiccodeweb_js_ZBC001.js'
  268. include '../../.._pam_pamcomnweb_js_PAM.js'
  269. // 출력
  270. function fPrintView() {
  271. var sel = ds_send.getColumn(0, "histstat");
  272. switch (sel) {
  273. case "1" :
  274. var objDOM = rptf_createDOM();
  275. var objParam = new Object();
  276. rptf_setNodeListToDOM(objDOM, "/root/XXX" , ds_XXX);
  277. objParam.xml_data_XML1 = objDOM.documentElement.source;
  278. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  279. rptf_exeReportPreview30(["RPPID20701"],[objParam], option); // 예약통계
  280. break;
  281. case "2" :
  282. var objDOM = rptf_createDOM();
  283. var objParam = new Object();
  284. rptf_setNodeListToDOM(objDOM, "/root/XXX" , ds_XXX);
  285. objParam.xml_data_XML1 = objDOM.documentElement.source;
  286. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  287. rptf_exeReportPreview30(["RPPID20701"],[objParam], option); // 변경통계
  288. break;
  289. case "3" :
  290. var objDOM = rptf_createDOM();
  291. var objParam = new Object();
  292. rptf_setNodeListToDOM(objDOM, "/root/XXX" , ds_XXX);
  293. objParam.xml_data_XML1 = objDOM.documentElement.source;
  294. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  295. rptf_exeReportPreview30(["RPPID20700"],[objParam], option); // 취소통계
  296. break;
  297. case "4" :
  298. var objDOM = rptf_createDOM();
  299. var objParam = new Object();
  300. rptf_setNodeListToDOM(objDOM, "/root/XXX" , ds_XXX);
  301. objParam.xml_data_XML1 = objDOM.documentElement.source;
  302. var option = "open=1;save=1;directprint=0;printdialog=1;print=1;zoom=0";
  303. rptf_exeReportPreview30(["RPPID20700"],[objParam], option); // 부도자통계
  304. break;
  305. default :
  306. }
  307. }
  308. function group2_btn_search_onclick(obj:Button, e:ClickEventInfo) {
  309. var fromdd = ds_send.getColumn(0, "fromdd");
  310. var todd = ds_send.getColumn(0, "todd");
  311. if (fromdd == "" || fromdd == null){
  312. sysf_messageBox("시작일을 입력","E007");
  313. group2.ipt_fromdd.setFocus();
  314. return false;
  315. }
  316. if (todd == "" || todd == null){
  317. sysf_messageBox("종료일을 입력","E007");
  318. group2.ipt_todd.setFocus();
  319. return false;
  320. }
  321. if(fromdd > todd){
  322. sysf_messageBox("시작일이 종료일보다 클수 ", "C001")
  323. return false;
  324. }else{
  325. ds_main_outhist_outhistlist.clearData();
  326. // submit("TRPAS00164");
  327. var oParam = {};
  328. oParam.id = "TRPAS00164";
  329. oParam.service = "planteamstatsapp.planteamstats";
  330. oParam.method = "reqGetOutRgstList";
  331. oParam.inds = "req=ds_";
  332. oParam.outds = "ds_=outhistlist";
  333. oParam.async = false;
  334. oParam.callback = "cf_TRPAS00164";
  335. tranf_submit(oParam);
  336. /*
  337. function cf_TRPAS00164(sSvcId, nErrorCode, sErrorMsg) {
  338. if(nErrorCode < 0) return;
  339. }
  340. function cf_TRPAS00164(sSvcId, nErrorCode, sErrorMsg) {
  341. arErrorCode.push(sSvcId, nErrorCode);
  342. }
  343. arErrorCode.pop("TRPAS00164") > -1
  344. arErrorCode.pop("TRPAS00164") < 0
  345. */
  346. var sel = ds_send.getColumn(0, "histstat");
  347. if (sel == "T") {
  348. // 부도자
  349. grd_sel1.visible = false;
  350. grd_sel2.visible = true;
  351. } else {
  352. grd_sel1.visible = true;
  353. grd_sel2.visible = false;
  354. }
  355. }
  356. //model.refresh();
  357. }
  358. function group2_cmb_orddeptcd_onitemclick(obj:Combo, e:ListBoxClickEventInfo) {
  359. var orddeptcd = ds_send.getColumn(0, "orddeptcd");
  360. if (orddeptcd) {
  361. group2.cmb_orddrid.choices.itemset.attribute("nodeset") = "ds_init_orddrid_orddridlist[dp='" + orddeptcd + "']";
  362. group2.cmb_orddrid.enable = true;
  363. } else {
  364. group2.cmb_orddrid.choices.itemset.attribute("nodeset") = "ds_init_orddrid_orddridlist";
  365. group2.cmb_orddrid.enable = false;
  366. }
  367. ds_send_orddrid.clearData(); ds_send_orddrid.addRow(); // 주치의 선택을 초기화한다.
  368. //model.refresh();
  369. }
  370. function rdo_histstat_onitemclick(obj:Radio, e:RadioMouseEventInfo) {
  371. var sel = ds_send.getColumn(0, "histstat");
  372. if (sel == "T") {
  373. // 부도자
  374. grd_sel1.visible = false;
  375. grd_sel2.visible = true;
  376. } else {
  377. grd_sel1.visible = true;
  378. grd_sel2.visible = false;
  379. }
  380. }
  381. function btn_print_onclick(obj:Button, e:ClickEventInfo) {
  382. fPrintView();
  383. }
  384. ]]></Script>
  385. </Form>
  386. </FDL>