SMRPD12600_월별휴일일수조회.xfdl 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPD12600" position="absolute 0 0 1200 785" titletext="월별휴일일수관리" oninit="SMRPD12600_oninit" onload="SMRPD12600_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group4" anchor="left top right" taborder="6" class="div_SA2" position="absolute 0 47 1190 87">
  8. <Layouts>
  9. <Layout>
  10. <Static id="cap_instcd" text="기관:" class="search_name" position="absolute 13 12 74 29" anchor="default"/>
  11. <Combo id="cmb_instcd" taborder="12" class="combo_s_essential" enable="false" position="absolute 72 10 197 29" anchor="default"/>
  12. <Static id="caption2" text="근무년월 :" class="search_name" position="absolute 226 12 309 29" anchor="default"/>
  13. <Calendar id="ipt_dutym" taborder="13" autoselect="true" autoskip="true" class="input_search" position="absolute 308 10 383 29" mask="yyyy-mm" anchor="default" dateformat="yyyy-MM" value="null" editformat="yyyy-MM" onchanged="group4_ipt_dutym_onchanged"/>
  14. <Calendar id="input1" taborder="14" autoselect="true" autoskip="true" class="input_search" position="absolute 398 10 473 29" mask="yyyy-mm" anchor="default" dateformat="yyyy-MM" editformat="yyyy-MM" onchanged="group4_input1_onchanged"/>
  15. <Static id="caption1" text="~" position="absolute 387 14 394 26" anchor="default"/>
  16. <Combo id="cmb_dutplce" taborder="15" class="combo_search" position="absolute 575 10 805 29" anchor="default" visible="false" onitemchanged="group4_cmb_dutplce_onitemchanged"/>
  17. <Static id="caption5" text="근무부서 :" class="search_name" position="absolute 494 12 573 29" anchor="default"/>
  18. <Static id="caption7" text="사번 :" class="search_name" position="absolute 827 11 882 28" anchor="default"/>
  19. <Edit id="ipt_emplnos" taborder="16" autoselect="true" autoskip="true" class="input_essential" enable="false" position="absolute 884 10 943 29" anchor="default" onkeydown="group4_ipt_emplnos_onkeydown"/>
  20. <Button id="btn_emplno" taborder="17" class="icon_search" enable="false" position="absolute 945 11 961 27" anchor="default" onclick="group4_btn_emplno_onclick"/>
  21. <Edit id="ipt_emplnms" taborder="18" autoselect="true" autoskip="true" class="input_default" enable="false" position="absolute 968 10 1048 29" anchor="default" onkeydown="group4_ipt_emplnms_onkeydown"/>
  22. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1095 9 1101 31" anchor="top right"/>
  23. <Button id="btn_search" taborder="19" text="조회" class="btn1" position="absolute 1118 9 1174 31" anchor="top right" onclick="group4_btn_search_onclick"/>
  24. <Edit id="ipt_dutdeptcd" taborder="20" autoselect="true" autoskip="true" class="input_search" enable="false" position="absolute 575 10 655 29" anchor="default" onkeydown="group4_ipt_dutdeptcd_onkeydown" visible="false"/>
  25. <Button id="btn_dutdept" taborder="21" class="icon_search" enable="false" position="absolute 656 11 672 27" anchor="default" onclick="group4_btn_dutdept_onclick" visible="false"/>
  26. <Edit id="ipt_dutdeptnm" taborder="22" autoselect="true" autoskip="true" class="input_search" enable="false" position="absolute 678 10 805 29" anchor="default" onkeydown="group4_ipt_dutdeptnm_onkeydown" visible="false"/>
  27. </Layout>
  28. </Layouts>
  29. </Div>
  30. <Static id="caption6" text="월별휴일일수조회(기간)" class="tit_1" position="absolute 0 0 280 25"/>
  31. <Static id="caption278" text="사원목록" class="tit_2" position="absolute 0 97 157 119"/>
  32. <Shape id="line207" class="line_10" position="absolute 0 113 1192 119" anchor="left top right"/>
  33. <Grid id="grd_deduitemlist" taborder="1" binddataset="ds_main_deduitem_deduitemlist" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 118 1192 778" anchor="all">
  34. <Formats>
  35. <Format id="default">
  36. <Columns>
  37. <Column size="26"/>
  38. <Column size="85"/>
  39. <Column size="90"/>
  40. <Column size="100"/>
  41. <Column size="85"/>
  42. <Column size="90"/>
  43. <Column size="90"/>
  44. <Column size="330"/>
  45. <Column size="100"/>
  46. <Column size="100"/>
  47. <Column size="90"/>
  48. <Column size="0"/>
  49. <Column size="0"/>
  50. <Column size="0"/>
  51. </Columns>
  52. <Rows>
  53. <Row size="24" band="head"/>
  54. <Row size="24"/>
  55. </Rows>
  56. <Band id="head">
  57. <Cell/>
  58. <Cell col="1" text="근무년월"/>
  59. <Cell col="2" text="사원번호"/>
  60. <Cell col="3" text="성명"/>
  61. <Cell col="4" text="직종"/>
  62. <Cell col="5" text="휴일개수"/>
  63. <Cell col="6" text="잔여휴일수"/>
  64. <Cell col="7" text="부서"/>
  65. <Cell col="8" text="입사일"/>
  66. <Cell col="9" text="퇴사일"/>
  67. <Cell col="10" text="확정여부"/>
  68. <Cell col="11" text="caption1"/>
  69. <Cell col="12" text="caption2"/>
  70. <Cell col="13" text="caption3"/>
  71. </Band>
  72. <Band id="body">
  73. <Cell celltype="head"/>
  74. <Cell col="1" displaytype="date" text="bind:dutym" mask="yyyy-MM" calendardisplaynulltype="nulltext"/>
  75. <Cell col="2" text="bind:emplno" enable="false"/>
  76. <Cell col="3" style="align:left middle;" text="bind:emplnm"/>
  77. <Cell col="4" style="align:center middle;" text="bind:jobkindnm"/>
  78. <Cell col="5" displaytype="normal" edittype="expr:deprtmangrdutcnfmyn == 'Y' ? 'none' : 'normal'" style="align:center middle;background:EXPR(holicnt == '0' || utlf_isNull(holicnt) ? '#ff99cc' : '');background2:EXPR(holicnt == '0' || utlf_isNull(holicnt) ? '#ff99cc' : '');" text="bind:holicnt"/>
  79. <Cell col="6" displaytype="normal" edittype="expr:deprtmangrdutcnfmyn == 'Y' ? 'none' : 'normal'" style="align:center middle;background:EXPR(jancnt == '0' || utlf_isNull(jancnt) ? '#ff99cc' : '');background2:EXPR(jancnt == '0' || utlf_isNull(jancnt) ? '#ff99cc' : '');" text="bind:jancnt"/>
  80. <Cell col="7" text="bind:dutplcedeptnm"/>
  81. <Cell col="8" displaytype="date" style="align:center middle;" text="bind:entcodd" calendardisplaynulltype="nulltext"/>
  82. <Cell col="9" displaytype="date" style="align:center middle;" text="bind:retiredd" calendardisplaynulltype="nulltext"/>
  83. <Cell col="10" displaytype="checkbox" text="bind:deprtmangrdutcnfmyn" expr="expr:deprtmangrdutcnfmyn == 'Y' ? 1 : 0" enable="false"/>
  84. <Cell col="11" text="bind:dutym"/>
  85. <Cell col="12" text="bind:instcd"/>
  86. <Cell col="13" text="bind:oldholicnt"/>
  87. </Band>
  88. </Format>
  89. </Formats>
  90. </Grid>
  91. <Grid id="grd_deduitemamtlist" taborder="2" binddataset="ds_main_deduitemamt_deduitemamtlist" useinputpanel="false" visible="false" position="absolute 1150 150 1165 565">
  92. <Formats>
  93. <Format id="default">
  94. <Columns>
  95. <Column size="129"/>
  96. <Column size="62"/>
  97. <Column size="0"/>
  98. <Column size="0"/>
  99. <Column size="0"/>
  100. </Columns>
  101. <Rows>
  102. <Row size="24" band="head"/>
  103. <Row size="24"/>
  104. </Rows>
  105. <Band id="head">
  106. <Cell text="OFF일"/>
  107. <Cell col="1" text="요일"/>
  108. <Cell col="2" text="caption1"/>
  109. <Cell col="3" text="caption3"/>
  110. <Cell col="4" text="caption2"/>
  111. </Band>
  112. <Band id="body">
  113. <Cell enable="false" text="bind:dutdd" mask="yyyy-mm-dd"/>
  114. <Cell col="1" text="bind:yoil" mask="(-)#,###"/>
  115. <Cell col="2" text="bind:emplno"/>
  116. <Cell col="3" text="bind:dutym"/>
  117. <Cell col="4" text="bind:instcd"/>
  118. </Band>
  119. </Format>
  120. </Formats>
  121. </Grid>
  122. <Button id="btn_saveexcel" taborder="3" text="엑셀저장" class="btn7" position="absolute 1111 94 1191 113" anchor="top right" onclick="btn_saveexcel_onclick"/>
  123. <CheckBox id="chk_tempyn" taborder="4" text="마지막 근무지 기준으로 전체기간 조회" truevalue="Y" position="absolute 872 93 1102 113" anchor="top right" visible="true" onclick="chk_tempyn_onclick"/>
  124. <Button id="btn_save" taborder="5" text="저장" class="btn4" enable="false" position="absolute 1135 22 1191 44" anchor="top right" onclick="btn_save_onclick"/>
  125. <Shape id="line9" class="line_6" position="absolute 0 43 1192 49" anchor="left top right"/>
  126. </Layout>
  127. </Layouts>
  128. <Objects>
  129. <Dataset id="ds_send_deduitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  130. <ColumnInfo>
  131. <Column id="instcd" type="STRING" size="256"/>
  132. <Column id="emplno" type="STRING" size="256"/>
  133. <Column id="emplnm" type="STRING" size="256"/>
  134. <Column id="dutym" type="STRING" size="256"/>
  135. <Column id="duttoym" type="STRING" size="256"/>
  136. <Column id="dutunitcd" type="STRING" size="256"/>
  137. <Column id="dutunitnm" type="STRING" size="256"/>
  138. <Column id="lastyn" type="STRING" size="256"/>
  139. </ColumnInfo>
  140. <Rows>
  141. <Row>
  142. <Col id="instcd"/>
  143. <Col id="emplno"/>
  144. <Col id="emplnm"/>
  145. <Col id="dutym"/>
  146. <Col id="duttoym"/>
  147. <Col id="dutunitcd"/>
  148. <Col id="dutunitnm"/>
  149. <Col id="lastyn"/>
  150. </Row>
  151. </Rows>
  152. </Dataset>
  153. <Dataset id="ds_main_deduitem_deduitemlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_deduitem_deduitemlist_oncolumnchanged">
  154. <ColumnInfo>
  155. <Column id="emplno" type="STRING" size="256" sumtext="사원번호"/>
  156. <Column id="dutdd" type="STRING" size="256" sumtext="휴일일자"/>
  157. <Column id="yoil" type="STRING" size="256" sumtext="요일"/>
  158. <Column id="dutym" type="STRING" size="256" sumtext="근무년월"/>
  159. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  160. </ColumnInfo>
  161. </Dataset>
  162. <Dataset id="ds_main_deduitemamt_deduitemamtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  163. <Dataset id="ds_init_combocd_combocdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  164. <Dataset id="ds_init_cmb_dutplce_combocodelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  165. <Dataset id="ds_temp_userinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  166. </Objects>
  167. <Bind>
  168. <BindItem id="item0" compid="group4.cmb_instcd" propid="value" datasetid="ds_send_deduitem" columnid="instcd"/>
  169. <BindItem id="item1" compid="group4.ipt_dutym" propid="value" datasetid="ds_send_deduitem" columnid="dutym"/>
  170. <BindItem id="item2" compid="group4.input1" propid="value" datasetid="ds_send_deduitem" columnid="duttoym"/>
  171. <BindItem id="item3" compid="group4.ipt_dutdeptcd" propid="value" datasetid="ds_send_deduitem" columnid="dutunitcd"/>
  172. <BindItem id="item4" compid="group4.cmb_dutplce" propid="value" datasetid="ds_send_deduitem" columnid="dutunitcd"/>
  173. <BindItem id="item5" compid="group4.ipt_dutdeptnm" propid="value" datasetid="ds_send_deduitem" columnid="dutunitnm"/>
  174. <BindItem id="item6" compid="group4.ipt_emplnos" propid="value" datasetid="ds_send_deduitem" columnid="emplno"/>
  175. <BindItem id="item7" compid="group4.ipt_emplnms" propid="value" datasetid="ds_send_deduitem" columnid="emplnm"/>
  176. <BindItem id="item8" compid="chk_tempyn" propid="value" datasetid="ds_send_deduitem" columnid="lastyn"/>
  177. </Bind>
  178. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  179. * System Name :
  180. * Job Name :
  181. * Creator :
  182. * Make Date : 2017-06-19
  183. * Description :
  184. *---------------------------------------------------------------------------------------
  185. * Modify Date Modifier Modify Description
  186. *---------------------------------------------------------------------------------------
  187. * 2017-06-19 Live Converter TF->XP
  188. *
  189. *---------------------------------------------------------------------------------------
  190. ****************************************************************************************/
  191. include "com_commonxp::comm_main.xjs";
  192. include "mis_miscommonxp::MIS.xjs";
  193. include "mis_humtrafactmngtxp::RPB001.xjs";
  194. include "mis_dligclaznsmngtxp::RPD001.xjs";
  195. function SMRPD12600_oninit(obj:Form, e:InitEventInfo)
  196. {
  197. frmf_initForm(obj);
  198. }
  199. function SMRPD12600_onload(obj:Form, e:LoadEventInfo)
  200. {
  201. grdf_initGrid(grd_deduitemlist);
  202. grdf_setRowTypeIcon(grd_deduitemlist, 0);
  203. var curdate = String(utlf_getCurrentDate());
  204. ds_send_deduitem.setColumn(0, "dutym", curdate.substr(0,6));
  205. ds_send_deduitem.setColumn(0, "duttoym", curdate.substr(0,6));
  206. ds_send_deduitem.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  207. misfGetUserAuth();
  208. misfGetAndSetUserInfo();
  209. if(DUTY_CERT_YN == "Y" || !utlf_isNull(JOB_POS_CD))
  210. {
  211. group4.ipt_emplnos.enable = true;
  212. group4.btn_emplno.enable = true;
  213. group4.ipt_emplnms.enable = true;
  214. btn_save.enable = true;
  215. if(DUTY_DILI_YN == "Y")
  216. {
  217. group4.ipt_dutdeptcd.enable = true;
  218. group4.btn_dutdept.enable = true;
  219. group4.ipt_dutdeptnm.enable = true;
  220. }
  221. }
  222. if (DUTY_PART_YN == "Y" && DUTY_MOVE_YN == "Y")
  223. {
  224. group4.cmb_dutplce.visible = false;
  225. }
  226. else
  227. {
  228. group4.cmb_dutplce.visible = true;
  229. }
  230. rpdfComboCdList(group4.cmb_dutplce);
  231. rpdfSetDutUnitCombo();
  232. ds_send_deduitem.setColumn(0, "emplno", sysf_getUserId());
  233. ds_send_deduitem.setColumn(0, "emplnm", sysf_getUserName());
  234. ds_send_deduitem.setColumn(0, "dutunitcd", DUT_PLCEDEPT_CD);
  235. ds_send_deduitem.setColumn(0, "dutunitnm", DUT_PLCEDEPT_NM);
  236. misfComboInstCdListMulti("group4.cmb_instcd",utlf_getCurrentDate(),"","N");
  237. }
  238. function group4_ipt_dutym_onchanged(obj:Calendar, e:ChangeEventInfo)
  239. {
  240. var date = String(obj.value).substr(0,6);
  241. ds_send_deduitem.setColumn(0, "dutym", date);
  242. }
  243. function group4_input1_onchanged(obj:Calendar, e:ChangeEventInfo)
  244. {
  245. var date = String(obj.value).substr(0,6);
  246. ds_send_deduitem.setColumn(0, "duttoym", date);
  247. }
  248. function group4_ipt_dutdeptcd_onkeydown(obj:Edit, e:KeyEventInfo)
  249. {
  250. if(e.keycode == 13)
  251. {
  252. obj.updateToDataset();
  253. misfValidationCheck("02", "", "dutunitcd,dutunitnm", group4.cmb_instcd.value, "instcd" );
  254. }
  255. }
  256. function group4_btn_dutdept_onclick(obj:Button, e:ClickEventInfo)
  257. {
  258. misfOpenPopUpList("02", ds_send_deduitem,"","dutunitcd,dutunitnm", group4.cmb_instcd.value + "," + group4.ipt_dutym.value+"01", "instcd,basedd");
  259. }
  260. function group4_ipt_dutdeptnm_onkeydown(obj:Edit, e:KeyEventInfo)
  261. {
  262. if(e.keycode == 13)
  263. {
  264. obj.updateToDataset();
  265. misfValidationCheck("02", "", "dutunitcd,dutunitnm", group4.cmb_instcd.value, "instcd" );
  266. }
  267. }
  268. function group4_cmb_dutplce_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  269. {
  270. group4_btn_search_onclick();
  271. }
  272. function group4_btn_search_onclick(obj:Button, e:ClickEventInfo)
  273. {
  274. misfGridInit(grd_deduitemlist);
  275. var oParam = {};
  276. oParam.id = "TRRPD12602";
  277. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  278. oParam.method = "reqGetHoliCountDtlInfoList";
  279. oParam.inds = "req=ds_send_deduitem";
  280. oParam.outds = "ds_main_deduitem_deduitemlist=deduitemamtlist";
  281. oParam.async = false;
  282. //oParam.callback = "cf_TRRPD12602";
  283. tranf_submit(oParam);
  284. }
  285. function group4_ipt_emplnos_onkeydown(obj:Edit, e:KeyEventInfo)
  286. {
  287. if(utlf_isNull(obj.value))
  288. {
  289. var recv_list = "emplno,emplnm" ;
  290. rpbfValidationCheck("EMPLNO", recv_list);
  291. if (String(obj.value).length > 0)
  292. {
  293. group4_btn_search_onclick();
  294. }
  295. }
  296. }
  297. function group4_btn_emplno_onclick(obj:Button, e:ClickEventInfo)
  298. {
  299. var recv_list = "emplno,emplnm" ;
  300. rpbfOpenPopUpList("SPRPB00101", group4.ipt_emplnos, recv_list,"1","N");
  301. if (String(group4.ipt_emplnos.value).length > 0)
  302. {
  303. group4_btn_search_onclick();
  304. }
  305. }
  306. function group4_ipt_emplnms_onkeydown(obj:Edit, e:KeyEventInfo)
  307. {
  308. if(utlf_isNull(obj.value))
  309. {
  310. var recv_list = "emplno,emplnm" ;
  311. rpbfValidationCheck("EMPLNM", recv_list);
  312. if (String(group4.ipt_emplnos.value).length > 0)
  313. {
  314. group4_btn_search_onclick();
  315. }
  316. }
  317. }
  318. function chk_tempyn_onclick(obj:CheckBox, e:ClickEventInfo)
  319. {
  320. if(obj.value == "Y")
  321. {
  322. }
  323. else
  324. {
  325. ds_send_deduitem.setColumn(0, "lastyn", "");
  326. }
  327. }
  328. function btn_saveexcel_onclick(obj:Button, e:ClickEventInfo)
  329. {
  330. grdf_exportExcel(grd_deduitemlist, "excel", "see");
  331. }
  332. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  333. {
  334. var oParam = {};
  335. oParam.id = "TXRPD12401";
  336. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  337. oParam.method = "reqExeHoliCountList";
  338. oParam.inds = "deduitemlist=ds_main_deduitem_deduitemlist:u deduitemamtlist=ds_main_deduitemamt_deduitemamtlist:u";
  339. oParam.outds = "";
  340. oParam.async = false;
  341. oParam.callback = "cf_TXRPD12401";
  342. tranf_submit(oParam);
  343. }
  344. function cf_TXRPD12401(sSvcId, nErrorCode, sErrorMsg)
  345. {
  346. if(nErrorCode < 0)
  347. {
  348. return;
  349. }
  350. else
  351. {
  352. group4_btn_search_onclick();
  353. }
  354. }
  355. function ds_main_deduitem_deduitemlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  356. {
  357. if (e.columnid == "emplno" )
  358. {
  359. var recv_list = "emplno,emplnm";
  360. misfValidationCheck("01-1", "", recv_list);
  361. if(!utlf_isNull(obj.getColumn(e.row, "emplno")))
  362. {
  363. misfGridInit(grd_deduitemamtlist);
  364. //btn_grdadddeduitemamtlist.dispatch("DOMActivate");
  365. }
  366. }
  367. if(e.columnid == "holicnt")
  368. {
  369. if(obj.getColumn(e.row, "deprtmangrdutcnfmyn") == "Y")
  370. {
  371. sysf_messageBox("확정된 자료는 수정할 수 없습니다.", "E999", "");
  372. obj.setColumn(e.row, "holicnt", obj.getColumn(e.row, "oldholicnt"));
  373. obj.updatecontrol = false;
  374. obj.setRowType(e.row, "");
  375. obj.updatecontrol = true;
  376. return;
  377. }
  378. }
  379. }
  380. ]]></Script>
  381. </Form>
  382. </FDL>