SMAHA02800_DM발송관리.xfdl 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMAHA02800" position="absolute 0 0 1204 805" titletext="건진 DM발송관리" oninit="SMAHA02800_oninit" onload="SMAHA02800_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="DM 발송관리" class="tit_1" position="absolute 0 0 210 25"/>
  8. <Static id="caption1" text="DM 발송 LIST" class="tit_2" position="absolute 0 80 210 102"/>
  9. <Shape id="line1" class="line_10" position="absolute 0 96 1195 102" anchor="left top right"/>
  10. <Grid id="dtg_healdmlist" taborder="1" binddataset="ds_main_healdminfo_healdmlist_item" useinputpanel="false" position="absolute 0 101 1195 765" autoenter="select" autofittype="none" cellsizingtype="col" anchor="all" selecttype="multirow" onheadclick="dtg_healdmlist_onheadclick">
  11. <Formats>
  12. <Format id="default">
  13. <Columns>
  14. <Column size="24"/>
  15. <Column size="25"/>
  16. <Column size="80"/>
  17. <Column size="70"/>
  18. <Column size="100"/>
  19. <Column size="100"/>
  20. <Column size="100"/>
  21. <Column size="80"/>
  22. <Column size="278"/>
  23. <Column size="55"/>
  24. <Column size="260"/>
  25. </Columns>
  26. <Rows>
  27. <Row size="24" band="head"/>
  28. <Row size="24"/>
  29. </Rows>
  30. <Band id="head">
  31. <Cell/>
  32. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  33. <Cell col="2" text="등록번호"/>
  34. <Cell col="3" text="환자명"/>
  35. <Cell col="4" text="주민번호"/>
  36. <Cell col="5" text="전화번호"/>
  37. <Cell col="6" text="핸드폰번호"/>
  38. <Cell col="7" text="우편번호"/>
  39. <Cell col="8" text="주소"/>
  40. <Cell col="9" text="누적횟수"/>
  41. <Cell col="10" text="마지막검진일"/>
  42. </Band>
  43. <Band id="body">
  44. <Cell celltype="head" expr="currow+1"/>
  45. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk" expr="expr:chk == 'Y' ? 1 : 0"/>
  46. <Cell col="2" edittype="none" text="bind:pid"/>
  47. <Cell col="3" edittype="none" text="bind:hngnm"/>
  48. <Cell col="4" edittype="none" text="bind:rrgstno"/>
  49. <Cell col="5" edittype="none" text="bind:telno"/>
  50. <Cell col="6" edittype="none" text="bind:mpphon"/>
  51. <Cell col="7" edittype="none" text="bind:zipcode" mask="###-###" maskchar=" "/>
  52. <Cell col="8" edittype="none" style="align:left middle;padding:0 0 0 3;" text="bind:address"/>
  53. <Cell col="9" edittype="none" text="bind:accnum"/>
  54. <Cell col="10" style="align:left middle;" text="bind:testnm" mask="expr:parseInt(testnm) ? '####-##-##' :''"/>
  55. </Band>
  56. </Format>
  57. </Formats>
  58. </Grid>
  59. <Div id="grp_sea" anchor="left top right" taborder="2" class="div_SA" position="absolute 0 25 1195 65">
  60. <Layouts>
  61. <Layout>
  62. <Static id="caption2" text="조회조건 :" class="search_name" position="absolute 15 11 101 28"/>
  63. <Static id="caption5" text="~" class="search_no_b" position="absolute 485 12 497 29"/>
  64. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1104 9 1110 31" anchor="top right"/>
  65. <Calendar id="ipt_fromdd" taborder="1" class="input_s_essential" position="absolute 382 11 482 30" autoselect="true"/>
  66. <Calendar id="ipt_todd" taborder="2" class="input_s_essential" position="absolute 500 11 600 30" autoselect="true"/>
  67. <Button id="btn_sea" taborder="3" text="조회" class="btn1" position="absolute 1123 9 1179 31" anchor="top right" onclick="grp_sea_btn_sea_onclick"/>
  68. <Static id="caption3" text="발송일자 :" class="search_name" position="absolute 290 12 376 29"/>
  69. <Combo id="cmb_state" taborder="4" innerdataset="@ds_init_baseinfo_detlcodelst_item" codecolumn="etcdetlcd" datacolumn="etcdetlnm" class="combo_search" position="absolute 110 10 260 29"/>
  70. </Layout>
  71. </Layouts>
  72. </Div>
  73. <Button id="btn_excsave" taborder="3" text="엑셀저장" class="btn7" position="absolute 1115 77 1195 96" anchor="top right" onclick="btn_excsave_onclick"/>
  74. <Button id="btn_prt" taborder="4" text="출력" class="btn6" position="absolute 0 770 56 792" anchor="left bottom" onclick="btn_prt_onclick"/>
  75. <Combo id="combo2" taborder="5" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 60 771 160 790" anchor="left bottom">
  76. <Dataset id="innerdataset">
  77. <ColumnInfo>
  78. <Column id="codecolumn"/>
  79. <Column id="datacolumn"/>
  80. </ColumnInfo>
  81. <Rows>
  82. <Row>
  83. <Col id="codecolumn">01</Col>
  84. <Col id="datacolumn">2x5</Col>
  85. </Row>
  86. <Row>
  87. <Col id="codecolumn">02</Col>
  88. <Col id="datacolumn">2x8</Col>
  89. </Row>
  90. </Rows>
  91. </Dataset>
  92. </Combo>
  93. <Button id="button1" taborder="6" text="추후검사 출력" class="btn6" position="absolute 164 770 280 792" anchor="left bottom" onclick="button1_onclick"/>
  94. </Layout>
  95. </Layouts>
  96. <Objects>
  97. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  98. <ColumnInfo>
  99. <Column id="srchfromdd" type="STRING" size="256"/>
  100. <Column id="srchtodd" type="STRING" size="256"/>
  101. <Column id="srchstate" type="STRING" size="256"/>
  102. <Column id="clscd" type="STRING" size="256"/>
  103. <Column id="etccd" type="STRING" size="256"/>
  104. <Column id="printformat" type="STRING" size="256"/>
  105. </ColumnInfo>
  106. <Rows>
  107. <Row>
  108. <Col id="srchfromdd"/>
  109. <Col id="srchtodd"/>
  110. <Col id="srchstate"/>
  111. <Col id="clscd"/>
  112. <Col id="etccd"/>
  113. <Col id="printformat">02</Col>
  114. </Row>
  115. </Rows>
  116. </Dataset>
  117. <Dataset id="ds_main_healdminfo_healdmlist_item" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_healdminfo_healdmlist_item_oncolumnchanged">
  118. <ColumnInfo>
  119. <Column id="chk" type="STRING" size="256" sumtext="check"/>
  120. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  121. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  122. <Column id="zipcode" type="STRING" size="256" sumtext="우편번호"/>
  123. <Column id="address" type="STRING" size="256" sumtext="주소"/>
  124. <Column id="telno" type="STRING" size="256" sumtext="전화번호"/>
  125. <Column id="mpphon" type="STRING" size="256" sumtext="핸드폰번호"/>
  126. <Column id="rrgstno" type="STRING" size="256" sumtext="주민번호"/>
  127. <Column id="accnum" type="STRING" size="256" sumtext="누적횟수"/>
  128. <Column id="testnm" type="STRING" size="256" sumtext="마지막검진일"/>
  129. </ColumnInfo>
  130. </Dataset>
  131. <Dataset id="ds_init_baseinfo_detlcodelst_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  132. <Dataset id="ds_main_seqprntdata_labelname_list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  133. <ColumnInfo>
  134. <Column id="pid" type="STRING" size="256"/>
  135. <Column id="hngnm" type="STRING" size="256"/>
  136. <Column id="sexage" type="STRING" size="256"/>
  137. <Column id="orddd" type="STRING" size="256"/>
  138. </ColumnInfo>
  139. </Dataset>
  140. <Dataset id="ds_main_seqprntdata_labelname" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  141. <ColumnInfo>
  142. <Column id="chk" type="STRING" size="256" sumtext="check"/>
  143. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  144. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  145. <Column id="zipcode" type="STRING" size="256" sumtext="우편번호"/>
  146. <Column id="address" type="STRING" size="256" sumtext="주소"/>
  147. <Column id="telno" type="STRING" size="256" sumtext="전화번호"/>
  148. <Column id="mpphon" type="STRING" size="256" sumtext="핸드폰번호"/>
  149. <Column id="rrgstno" type="STRING" size="256" sumtext="주민번호"/>
  150. <Column id="accnum" type="STRING" size="256" sumtext="누적횟수"/>
  151. <Column id="testnm" type="STRING" size="256" sumtext="마지막검진일"/>
  152. </ColumnInfo>
  153. </Dataset>
  154. <Dataset id="ds_rexaddprnt_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  155. <ColumnInfo>
  156. <Column id="pid" type="STRING" size="256"/>
  157. <Column id="hngnm" type="STRING" size="256"/>
  158. <Column id="rrgstno" type="STRING" size="256"/>
  159. <Column id="zipcode" type="STRING" size="256"/>
  160. <Column id="address" type="STRING" size="256"/>
  161. <Column id="testnm" type="STRING" size="256"/>
  162. </ColumnInfo>
  163. <Rows>
  164. <Row/>
  165. </Rows>
  166. </Dataset>
  167. </Objects>
  168. <Bind>
  169. <BindItem id="item0" compid="grp_sea.cmb_state" propid="value" datasetid="ds_send" columnid="srchstate"/>
  170. <BindItem id="item1" compid="grp_sea.ipt_fromdd" propid="value" datasetid="ds_send" columnid="srchfromdd"/>
  171. <BindItem id="item2" compid="grp_sea.ipt_todd" propid="value" datasetid="ds_send" columnid="srchtodd"/>
  172. <BindItem id="item3" compid="combo2" propid="value" datasetid="ds_send" columnid="printformat"/>
  173. </Bind>
  174. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  175. * System Name :
  176. * Job Name :
  177. * Creator :
  178. * Make Date : 2015-11-13
  179. * Description :
  180. *---------------------------------------------------------------------------------------
  181. * Modify Date Modifier Modify Description
  182. *---------------------------------------------------------------------------------------
  183. * 2015-11-13 Live Converter TF->XP
  184. *
  185. *---------------------------------------------------------------------------------------
  186. ****************************************************************************************/
  187. include "com_commonxp::comm_main.xjs";
  188. function SMAHA02800_oninit(obj:Form, e:InitEventInfo)
  189. {
  190. frmf_initForm(obj);
  191. }
  192. function SMAHA02800_onload(obj:Form, e:LoadEventInfo)
  193. {
  194. grdf_initGrid(dtg_healdmlist);
  195. grdf_setToolTipBind(dtg_healdmlist);
  196. fGetScreenInit();
  197. }
  198. function fGetScreenInit()
  199. {
  200. ds_main_healdminfo_healdmlist_item.clearData();
  201. ds_send.setColumn(0, "srchfromdd" , utlf_getCurrentDate());
  202. ds_send.setColumn(0, "srchtodd" , utlf_getCurrentDate());
  203. ds_send.setColumn(0, "clscd" , "G");
  204. ds_send.setColumn(0, "etccd" , "G16");
  205. var oParam = {};
  206. oParam.id = "TRAHB00602";
  207. oParam.service = "healexambaseapp.EtcCode";
  208. oParam.method = "reqGetDetlCodeList";
  209. oParam.inds = "req=ds_send";
  210. oParam.outds = "ds_init_baseinfo_detlcodelst_item=item";
  211. oParam.async = false;
  212. //oParam.callback = "cf_TRAHB00602";
  213. tranf_submit(oParam);
  214. ds_init_baseinfo_detlcodelst_item.updatecontrol = false;
  215. dsf_setFixVal(ds_init_baseinfo_detlcodelst_item, "sel:N");
  216. ds_init_baseinfo_detlcodelst_item.updatecontrol = true;
  217. frmf_addComboItem("grp_sea.cmb_state", "전체", "all", "above");
  218. grp_sea.cmb_state.value = "all";
  219. }
  220. function grp_sea_btn_sea_onclick(obj:Button, e:ClickEventInfo)
  221. {
  222. if(utlf_isNull(ds_send.getColumn(0, "srchstate"))||ds_send.getColumn(0, "srchstate") == "all")
  223. {
  224. sysf_messageBox("조회조건을", "C002");
  225. return;
  226. }
  227. var oParam = {};
  228. oParam.id = "TRAHA02800";
  229. oParam.service = "healexamrsrvacptapp.DmSendMngt";
  230. oParam.method = "reqGetHealDmSendLst";
  231. oParam.inds = "req=ds_send";
  232. oParam.outds = "ds_main_healdminfo_healdmlist_item=item";
  233. oParam.async = false;
  234. //oParam.callback = "cf_TRAHA02800";
  235. tranf_submit(oParam);
  236. }
  237. function btn_excsave_onclick(obj:Button, e:ClickEventInfo)
  238. {
  239. grdf_exportExcel(dtg_healdmlist, "excel", "Sheet1", "true", "", "");
  240. }
  241. function ds_main_healdminfo_healdmlist_item_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  242. {
  243. if(e.columnid == "chk")
  244. {
  245. obj.setColumn(e.row, "chk", (e.newvalue == "Y" || e.newvalue == 1) ? "Y" : "N");
  246. }
  247. }
  248. function btn_prt_onclick(obj:Button, e:ClickEventInfo)
  249. {
  250. fGetLabeladdr();
  251. }
  252. function fGetLabeladdr()
  253. {
  254. var nodeList = ds_main_healdminfo_healdmlist_item.getCaseCount("chk == 'Y'");
  255. if(nodeList == 0)
  256. {
  257. sysf_messageBox("출력할 내역이 ", "I004");
  258. return ;
  259. }
  260. var vGrd = null;
  261. var printFormat = ds_send.getColumn(0, "printformat");
  262. ds_main_seqprntdata_labelname_list.clearData();
  263. for(var i = 0; i < ds_main_healdminfo_healdmlist_item.rowcount; i++)
  264. {
  265. if(ds_main_healdminfo_healdmlist_item.getColumn(i, "chk") == "Y")
  266. {
  267. var addRow = ds_main_seqprntdata_labelname.addRow();
  268. ds_main_seqprntdata_labelname.copyRow(addRow, ds_main_healdminfo_healdmlist_item, i);
  269. }
  270. }
  271. nodeList = ds_main_seqprntdata_labelname.rowcount;
  272. if(nodeList != 0 )
  273. {
  274. if(printFormat == "01")
  275. {
  276. var objDOM = rptf_createDOM();
  277. rptf_setNodeListToDOM(objDOM, "/root/main/seqprntdata/labelname/list", ds_main_seqprntdata_labelname);
  278. var objParam = new Object();
  279. objParam.xml_data_XML1 = objDOM.documentElement.source;
  280. var option = "";
  281. rptf_exeReportPreview30(["RPAHA00410"],[objParam], option);
  282. }
  283. else if(printFormat == "02")
  284. {
  285. var objDOM = rptf_createDOM();
  286. rptf_setNodeListToDOM(objDOM, "/root/main/seqprntdata/labelname/list", ds_main_seqprntdata_labelname);
  287. var objParam = new Object();
  288. objParam.xml_data_XML1 = objDOM.documentElement.source;
  289. var option = "";
  290. rptf_exeReportPreview30(["RPAHA00411"],[objParam], option);
  291. }
  292. }
  293. }
  294. function button1_onclick(obj:Button, e:ClickEventInfo)
  295. {
  296. if(ds_send.getColumn(0, "srchstate") == "07" || ds_send.getColumn(0, "srchstate") == "08" || ds_send.getColumn(0, "srchstate") == "09")
  297. {
  298. var idx = 0;
  299. var cnt = ds_main_healdminfo_healdmlist_item.rowcount;
  300. ds_rexaddprnt_item.clearData();
  301. for(var i = 0; i < cnt; i++)
  302. {
  303. if(ds_main_healdminfo_healdmlist_item.getColumn(i, "chk") == "Y")
  304. {
  305. var iRow = ds_rexaddprnt_item.addRow();
  306. // dsf_makeValue(ds_rexaddprnt_item, "pid","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "pid"), iRow);
  307. // dsf_makeValue(ds_rexaddprnt_item, "hngnm","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "hngnm"), iRow);
  308. // dsf_makeValue(ds_rexaddprnt_item, "rrgstno","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "rrgstno"), iRow);
  309. // dsf_makeValue(ds_rexaddprnt_item, "zipcode","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "zipcode"), iRow);
  310. // dsf_makeValue(ds_rexaddprnt_item, "address","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "address"), iRow);
  311. // dsf_makeValue(ds_rexaddprnt_item, "testnm","string", ds_main_healdminfo_healdmlist_item.getColumn(i, "testnm"), iRow);
  312. // idx++;
  313. //trace('iRow '+iRow+"/"+ds_main_healdminfo_healdmlist_item.getColumn(i, "pid"));
  314. ds_rexaddprnt_item.setColumn(iRow,"pid", ds_main_healdminfo_healdmlist_item.getColumn(i, "pid"));
  315. ds_rexaddprnt_item.setColumn(iRow,"hngnm", ds_main_healdminfo_healdmlist_item.getColumn(i, "hngnm"));
  316. ds_rexaddprnt_item.setColumn(iRow,"rrgstno", ds_main_healdminfo_healdmlist_item.getColumn(i, "rrgstno"));
  317. ds_rexaddprnt_item.setColumn(iRow,"zipcode", ds_main_healdminfo_healdmlist_item.getColumn(i, "zipcode"));
  318. ds_rexaddprnt_item.setColumn(iRow,"address", ds_main_healdminfo_healdmlist_item.getColumn(i, "address"));
  319. ds_rexaddprnt_item.setColumn(iRow,"testnm", ds_main_healdminfo_healdmlist_item.getColumn(i, "testnm"));
  320. idx++;
  321. }
  322. }
  323. //trace(ds_rexaddprnt_item.saveXML());
  324. var instcd = sysf_getUserInfo("dutplceinstcd");
  325. if (instcd == "031")
  326. {
  327. var objDOM = rptf_createDOM();
  328. rptf_setNodeListToDOM(objDOM, "/root/rexaddprnt/item", ds_rexaddprnt_item);
  329. var objParam = new Object();
  330. objParam.xml_data_XML1 = objDOM.documentElement.source;
  331. var option = "";
  332. rptf_exeReportPreview30(["RPAHA02800"],[objParam], option);
  333. }
  334. else
  335. {
  336. var objDOM = rptf_createDOM();
  337. rptf_setNodeListToDOM(objDOM, "/root/rexaddprnt/item", ds_rexaddprnt_item);
  338. var objParam = new Object();
  339. objParam.xml_data_XML1 = objDOM.documentElement.source;
  340. var option = "";
  341. rptf_exeReportPreview30(["RPAHA02801"],[objParam], option);
  342. }
  343. //ds_rexaddprnt_item.clearData();
  344. }
  345. else
  346. {
  347. sysf_messageBox("추후검사일 경우에만", "I006");
  348. }
  349. }
  350. function dtg_healdmlist_onheadclick(obj:Grid, e:GridClickEventInfo)
  351. {
  352. if (e.col != 0 && e.col != 1 ){
  353. if (e.col != e.oldcol) grdf_clearSort(obj);
  354. grdf_gridSort(dtg_healdmlist,e);
  355. }
  356. }
  357. ]]></Script>
  358. </Form>
  359. </FDL>