SMRPD06300_개인별당직응급당직명세서.xfdl 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPD06300" position="absolute 0 0 1211 784" titletext="개인별 당직/응급당직 위로금명세서" oninit="SMRPD06300_oninit" onload="SMRPD06300_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 38 1195 782" id="group2" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Shape id="roundrect1" type="roundrectangle" position="absolute 0 10 1195 45"/>
  11. <Shape position="absolute 632 16 638 38" linetype="vertical" id="line13" class="line_4"/>
  12. <Static text="당직 내역" position="absolute 0 53 162 69" id="caption278" class="tit_2"/>
  13. <Shape position="absolute 0 69 1195 75" linetype="horizontal" id="line207" class="line_10"/>
  14. <Button position="absolute 1086 48 1194 67" id="btn_download" class="btn2" taborder="6" text="엑셀 Download" onclick="group2_btn_download_onclick"/>
  15. <Grid position="absolute 0 74 1195 665" id="grd_dutsumlist" taborder="1" binddataset="ds_main_list_dutsumlist">
  16. <Formats>
  17. <Format id="default">
  18. <Columns>
  19. <Column size="20" band="left"/>
  20. <Column size="129"/>
  21. <Column size="61"/>
  22. <Column size="70"/>
  23. <Column size="40"/>
  24. <Column size="70"/>
  25. <Column size="50"/>
  26. <Column size="86"/>
  27. <Column size="50"/>
  28. <Column size="86"/>
  29. <Column size="100"/>
  30. </Columns>
  31. <Rows>
  32. <Row size="24" band="head"/>
  33. <Row size="24" band="head"/>
  34. <Row size="24"/>
  35. </Rows>
  36. <Band id="head">
  37. <Cell rowspan="2" taborder="undefined"/>
  38. <Cell col="1" rowspan="2" text="부서" taborder="undefined"/>
  39. <Cell col="2" rowspan="2" text="사번" taborder="undefined"/>
  40. <Cell col="3" rowspan="2" text="성명" taborder="undefined"/>
  41. <Cell col="4" rowspan="2" text="년차" taborder="undefined"/>
  42. <Cell col="5" rowspan="2" text="직종" taborder="undefined"/>
  43. <Cell col="6" colspan="2" text="당직" taborder="undefined"/>
  44. <Cell col="8" colspan="2" text="응급당직" taborder="undefined"/>
  45. <Cell col="10" rowspan="2" text="합계" taborder="undefined"/>
  46. <Cell row="1" col="6" text="일수"/>
  47. <Cell row="1" col="7" text="숙직"/>
  48. <Cell row="1" col="8" text="일수"/>
  49. <Cell row="1" col="9" text="숙직"/>
  50. </Band>
  51. <Band id="body">
  52. <Cell celltype="head" expr="expr:currow + 1"/>
  53. <Cell col="1" text="bind:dutplcedeptnm" suppress="1" suppressalign="middle,over"/>
  54. <Cell col="2" text="bind:emplno"/>
  55. <Cell col="3" text="bind:emplnm"/>
  56. <Cell col="4" text="bind:anual"/>
  57. <Cell col="5" text="bind:jobkindnm"/>
  58. <Cell col="6" displaytype="number" style="align:center;" text="bind:ilsu" mask="#,###"/>
  59. <Cell col="7" displaytype="number" text="bind:amt" mask="#,###"/>
  60. <Cell col="8" displaytype="number" style="align:center;" text="bind:ilsu_e" mask="#,###"/>
  61. <Cell col="9" displaytype="number" text="bind:amt_e" mask="#,###"/>
  62. <Cell col="10" displaytype="number" text="bind:total" mask="#,###"/>
  63. </Band>
  64. </Format>
  65. </Formats>
  66. </Grid>
  67. <Static text="소속기관 :" position="absolute 45 19 131 36" id="caption5" class="search_name"/>
  68. <Static text="조회기간 :" position="absolute 300 19 386 36" id="caption1" class="search_name"/>
  69. <Calendar position="absolute 380 18 480 37" align="align:center middle;" id="ipt_frdutyd" class="input_search" taborder="3" mask="yyyy-mm-dd" autoselect="true"/>
  70. <Combo position="absolute 125 18 265 37" id="cmb_instcd" class="combo_search" enable="false" taborder="2" onitemchanged="group2_cmb_instcd_onitemchanged"/>
  71. <Button position="absolute 655 17 711 39" id="btn_search" class="btn1" taborder="5" text="조회" onclick="group2_btn_search_onclick"/>
  72. <Static text="~" position="absolute 482 20 497 35" id="caption4"/>
  73. <Calendar position="absolute 496 18 596 37" align="align:center middle;" id="ipt_todutyd" class="input_search" taborder="4" mask="yyyy-mm-dd" autoselect="true"/>
  74. <Static text="※ 유의사항" position="absolute 0 673 85 693" id="caption3" style="color:#ff0000ff;font:Dotum,9,bold;"/>
  75. <Static text="1. 부서, 년차, 직종은 조회기간의 마지막 일자를 기준으로 인사발령정보를 참조하여 보여줍니다." position="absolute 15 695 535 715" id="caption7" style="color:#ff0000ff;"/>
  76. <Static text="2. 인턴의 의,치과 여부는 &quot;인턴평가대상자관리&quot; 프로그램에 개인별로 등록된 치과구분을 사용합니다." position="absolute 15 713 573 733" id="caption8" style="color:#ff0000ff;"/>
  77. </Layout>
  78. </Layouts>
  79. </Div>
  80. <Div id="grp_btn" taborder="1" position="absolute 0 12 1195 42">
  81. <Layouts>
  82. <Layout>
  83. <Shape id="line4" class="line_6" position="absolute 0 24 1195 30"/>
  84. <Button id="btn_printLot" taborder="1" text="출력" onclick="grp_btn_btn_printLot_onclick" class="btn6" position="absolute 1138 3 1194 25"/>
  85. </Layout>
  86. </Layouts>
  87. </Div>
  88. <Static id="caption6" text="개인별 당직/응급당직 위로금명세서" class="tit_1" position="absolute 0 0 245 24"/>
  89. </Layout>
  90. </Layouts>
  91. <Objects>
  92. <Dataset id="ds_send_retrparams" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_retrparams_oncolumnchanged">
  93. <ColumnInfo>
  94. <Column id="instcd" type="STRING" size="256"/>
  95. <Column id="frdutyd" type="STRING" size="256"/>
  96. <Column id="todutyd" type="STRING" size="256"/>
  97. </ColumnInfo>
  98. <Rows>
  99. <Row/>
  100. </Rows>
  101. </Dataset>
  102. <Dataset id="ds_main_list_dutsumlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  103. <ColumnInfo>
  104. <Column id="no" type="STRING" size="256" sumtext="순번"/>
  105. <Column id="dutplcedeptnm" type="STRING" size="256" sumtext="부서명"/>
  106. <Column id="emplno" type="STRING" size="256" sumtext="사원번호"/>
  107. <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
  108. <Column id="anual" type="STRING" size="256" sumtext="연차"/>
  109. <Column id="jobkindnm" type="STRING" size="256" sumtext="직종명"/>
  110. <Column id="ilsu" type="STRING" size="256" sumtext="일수"/>
  111. <Column id="amt" type="STRING" size="256" sumtext="숙직"/>
  112. <Column id="ilsu_e" type="STRING" size="256" sumtext="일수(응급)"/>
  113. <Column id="amt_e" type="STRING" size="256" sumtext="요일"/>
  114. <Column id="total" type="STRING" size="256" sumtext="합계"/>
  115. </ColumnInfo>
  116. </Dataset>
  117. </Objects>
  118. <Bind>
  119. <BindItem id="item0" compid="group2.cmb_instcd" propid="value" datasetid="ds_send_retrparams" columnid="instcd"/>
  120. <BindItem id="item1" compid="group2.ipt_frdutyd" propid="value" datasetid="ds_send_retrparams" columnid="frdutyd"/>
  121. <BindItem id="item2" compid="group2.ipt_todutyd" propid="value" datasetid="ds_send_retrparams" columnid="todutyd"/>
  122. </Bind>
  123. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  124. * System Name : 경대 의료정보시스템
  125. * Job Name : mis_dligclaznsmngtxp -> SMRPD06300
  126. * Creator : yjh
  127. * Make Date : 2018-01-03
  128. * Description :
  129. *---------------------------------------------------------------------------------------
  130. * Modify Date Modifier Modify Description
  131. *---------------------------------------------------------------------------------------
  132. * 2018-01-03 yjh TF->XP
  133. *
  134. *---------------------------------------------------------------------------------------
  135. ****************************************************************************************/
  136. //=======================================================================================
  137. // Lib Include
  138. //---------------------------------------------------------------------------------------
  139. include "com_commonxp::comm_main.xjs";
  140. include "mis_miscommonxp::MIS.xjs";
  141. //=======================================================================================
  142. // Global Form Variable
  143. //---------------------------------------------------------------------------------------
  144. //=======================================================================================
  145. // Function
  146. //---------------------------------------------------------------------------------------
  147. function fInitialize()
  148. {
  149. ds_main_list_dutsumlist.clearData();
  150. // misfComboComCdListMulti("Z0007","cmb_instcd");
  151. ds_send_retrparams.enableevent = false;
  152. ds_send_retrparams.updatecontrol = false;
  153. ds_send_retrparams.setColumn(0, "frdutyd", utlf_getCurrentDate());
  154. ds_send_retrparams.setColumn(0, "todutyd", utlf_getCurrentDate());
  155. ds_send_retrparams.updatecontrol = true;
  156. ds_send_retrparams.enableevent = true;
  157. misfComboInstCdListMulti("group2.cmb_instcd", utlf_getCurrentDate(),"","N");
  158. misfGetAndSetUserInfo();
  159. ds_send_retrparams.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  160. //cmb_instcd.disabled = true;
  161. //btn_search.dispatch("DOMActivate");
  162. }
  163. //=======================================================================================
  164. // Event
  165. //---------------------------------------------------------------------------------------
  166. /****************************************************************************************
  167. * Components : Form
  168. * Components ID : SMRPD06300
  169. * Event : oninit
  170. * Argument : 01.obj : Object Event has occurred
  171. * : 02.e : Event Object
  172. * Description : 화면 처음 초기화시
  173. ****************************************************************************************/
  174. function SMRPD06300_oninit(obj:Form, e:InitEventInfo)
  175. {
  176. frmf_initForm(obj); //폼 초기화
  177. }
  178. /****************************************************************************************
  179. * Components : Form
  180. * Components ID : SMRPD06300
  181. * Event : onload
  182. * Argument : 01.obj : Object Event has occurred
  183. * : 02.e : Event Object
  184. * Description : 화면 로딩 완료시
  185. ****************************************************************************************/
  186. function SMRPD06300_onload(obj:Form, e:LoadEventInfo)
  187. {
  188. grdf_setGridSort(group2.grd_dutsumlist);
  189. fInitialize();
  190. }
  191. /****************************************************************************************
  192. * Components : Button
  193. * Components ID : btn_download
  194. * Event : onclick
  195. * Argument : 01.obj : Object Event has occurred
  196. * : 02.e : Event Object
  197. * Description : 엑셀 Download버튼 클릭시
  198. ****************************************************************************************/
  199. function group2_btn_download_onclick(obj:Button, e:ClickEventInfo)
  200. {
  201. //조회된 자료가 없으면 먼저 조회하라고 message
  202. if(ds_main_list_dutsumlist.rowcount < 1) {
  203. sysf_messageBox("조회된 결과가 존재하지 않습니다. \n\n먼저 조회 후 Download 하십시요. ", "E999", "");
  204. return;
  205. }
  206. misfSaveExcel(group2.grd_dutsumlist, "당직내역");
  207. }
  208. function ds_send_retrparams_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  209. {
  210. switch( e.columnid ){
  211. case "frdutyd" :
  212. misfGridInit(group2.grd_dutsumlist);
  213. break;
  214. case "todutyd" :
  215. misfGridInit(group2.grd_dutsumlist);
  216. break;
  217. default :
  218. break;
  219. }
  220. }
  221. /****************************************************************************************
  222. * Components : Combo
  223. * Components ID : cmb_instcd
  224. * Event : onitemchanged
  225. * Argument : 01.obj : Object Event has occurred
  226. * : 02.e : Event Object
  227. * Description : 콤보 값 변경시
  228. ****************************************************************************************/
  229. function group2_cmb_instcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  230. {
  231. misfGridInit(group2.grd_dutsumlist);
  232. }
  233. /****************************************************************************************
  234. * Components : Button
  235. * Components ID : btn_search
  236. * Event : onclick
  237. * Argument : 01.obj : Object Event has occurred
  238. * : 02.e : Event Object
  239. * Description : 조회버튼 클릭시
  240. ****************************************************************************************/
  241. function group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  242. {
  243. if( utlf_transNullToEmpty(group2.ipt_frdutyd.value+"").length != 8 ) {
  244. sysf_messageBox("조회기간이 정확하게 입력되지 않았습니다. 조회기간을 확인하세요. ", "E999", "");
  245. group2.ipt_frdutyd.setFocus();
  246. return;
  247. }
  248. // if( ipt_frdutyd.value < "20150101" ) {
  249. // messageBox("2015년 1월 1일 이전 자료는 조회가 불가능합니다. \n\n하단 유의사항을 참조하세요. ", "E999", "");
  250. // ipt_frdutyd.value = "20150101";
  251. // return;
  252. // }
  253. if( utlf_transNullToEmpty(group2.ipt_todutyd.value+"").length != 8 ) {
  254. sysf_messageBox("조회기간이 정확하게 입력되지 않았습니다. 조회기간을 확인하세요. ", "E999", "");
  255. group2.ipt_todutyd.setFocus();
  256. return;
  257. }
  258. var oParam = {};
  259. oParam.id = "TRRPD06301";
  260. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  261. oParam.method = "reqGetPersonalDangjikList";
  262. oParam.inds = "req=ds_send_retrparams";
  263. oParam.outds = "ds_main_list_dutsumlist=dutsumlist";
  264. oParam.async = false;
  265. //oParam.callback = "cf_TRRPD06301";
  266. tranf_submit(oParam);
  267. }
  268. /****************************************************************************************
  269. * Components : Button
  270. * Components ID : btn_printLot
  271. * Event : onclick
  272. * Argument : 01.obj : Object Event has occurred
  273. * : 02.e : Event Object
  274. * Description : 출력버튼 클릭시
  275. ****************************************************************************************/
  276. function grp_btn_btn_printLot_onclick(obj:Button, e:ClickEventInfo)
  277. {
  278. var objDOM = rptf_createDOM(); // DOM 객체 설정
  279. rptf_setNodeListToDOM(objDOM, "/root/main/list/dutsumlist", ds_main_list_dutsumlist); // 데이터셋 1
  280. rptf_setNodeListToDOM(objDOM, "/root/send/retrparams", ds_send_retrparams); // 데이터셋 1
  281. var objParam = new Object();
  282. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  283. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  284. rptf_exeReportPreview30(["RPRPD06301"],[objParam], option);
  285. }
  286. ]]></Script>
  287. </Form>
  288. </FDL>