SMRPD30400_당직근무조회.xfdl 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPD30400" position="absolute 0 0 1198 794" titletext="당직근무 조회" oninit="SMRPD30400_oninit" onload="SMRPD30400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="당직근무 조회" class="tit_1" position="absolute 0 0 293 25"/>
  8. <Div id="grp_sea" anchor="left top right" taborder="1" class="div_SA2" position="absolute 0 39 1195 79">
  9. <Layouts>
  10. <Layout>
  11. <Shape id="line5" linetype="vertical" class="line_4" position="absolute 922 8 928 32" anchor="top right"/>
  12. <Button id="btn_search" taborder="6" text="조회" class="btn1" position="absolute 945 9 1001 31" anchor="top right" onclick="grp_sea_btn_search_onclick"/>
  13. <Edit id="opt_deptnm" taborder="7" readonly="true" class="output" position="absolute 422 10 612 29"/>
  14. <Static id="caption1" text="부서코드" class="search_name" position="absolute 245 11 321 28"/>
  15. <Edit id="ipt_deptcd" taborder="8" autoselect="true" autoskip="true" class="input_default" position="absolute 327 10 402 29" onkeyup="grp_sea_ipt_deptcd_onkeyup"/>
  16. <Button id="btn_deptcd" taborder="9" class="icon_search" position="absolute 404 11 420 27" onclick="grp_sea_btn_deptcd_onclick"/>
  17. <Static id="caption9" text="근무년월" class="search_name" position="absolute 57 12 135 29"/>
  18. <Calendar id="ipt_srchym" taborder="10" autoselect="true" autoskip="true" dateformat="yyyy-MM" editformat="yyyy-MM" class="input_default" position="absolute 137 10 215 29" mask="yyyy-mm" onchanged="grp_sea_ipt_srchym_onchanged" style="align:center middle;"/>
  19. <Button id="btn_emplnos" taborder="11" class="icon_search" position="absolute 758 11 774 27" onclick="grp_sea_btn_emplnos_onclick"/>
  20. <Static id="caption2" text="사번" class="search_name" position="absolute 644 11 700 28"/>
  21. <Edit id="ipt_emplnos" taborder="12" autoselect="true" autoskip="true" class="input_default" position="absolute 699 10 755 29" onkeydown="grp_sea_ipt_emplnos_onkeydown"/>
  22. <Edit id="ipt_emplnms" taborder="13" autoselect="true" autoskip="true" class="input_default" position="absolute 775 10 881 29" onkeyup="grp_sea_ipt_emplnms_onkeyup"/>
  23. </Layout>
  24. </Layouts>
  25. </Div>
  26. <Shape id="line3" class="line_10" position="absolute 0 108 1193 114" anchor="left top right"/>
  27. <Static id="caption21" text="개인별 당직일자" class="tit_2" position="absolute 0 92 121 114"/>
  28. <Button id="btn_excel" taborder="2" text="엑셀출력" class="btn7" visible="false" position="absolute 1113 89 1193 108" anchor="top right" onclick="btn_excel_onclick"/>
  29. <Grid id="grd_emplist" taborder="3" binddataset="ds_main_emplist" autoenter="select" useinputpanel="false" cellsizingtype="col" position="absolute 0 113 1193 713" anchor="all">
  30. <Formats>
  31. <Format id="default">
  32. <Columns>
  33. <Column size="22"/>
  34. <Column size="36"/>
  35. <Column size="67"/>
  36. <Column size="117"/>
  37. <Column size="51"/>
  38. <Column size="72"/>
  39. <Column size="30"/>
  40. <Column size="74"/>
  41. <Column size="440"/>
  42. <Column size="59"/>
  43. </Columns>
  44. <Rows>
  45. <Row size="24" band="head"/>
  46. <Row size="24"/>
  47. </Rows>
  48. <Band id="head">
  49. <Cell/>
  50. <Cell col="1" text="No."/>
  51. <Cell col="2" text="년월"/>
  52. <Cell col="3" text="부서명"/>
  53. <Cell col="4" text="사번"/>
  54. <Cell col="5" text="성명"/>
  55. <Cell col="6" text="년차"/>
  56. <Cell col="7" text="직종"/>
  57. <Cell col="8" text="당직일자"/>
  58. <Cell col="9" text="건수"/>
  59. </Band>
  60. <Band id="body">
  61. <Cell celltype="head" expr="expr:currow == ds_main_emplist.rowposition ? '▶' : ''"/>
  62. <Cell col="1" text="bind:no"/>
  63. <Cell col="2" text="bind:srchym" mask="####-##" maskchar=" "/>
  64. <Cell col="3" text="bind:deptnm"/>
  65. <Cell col="4" text="bind:emplno"/>
  66. <Cell col="5" text="bind:emplnm"/>
  67. <Cell col="6" text="bind:anual"/>
  68. <Cell col="7" text="bind:jobkindnm"/>
  69. <Cell col="8" style="align:left middle;padding:0 0 0 3;" text="bind:dutydate"/>
  70. <Cell col="9" text="bind:cnt"/>
  71. </Band>
  72. </Format>
  73. </Formats>
  74. </Grid>
  75. <Static id="caption22" text="※ 부서, 년차, 직종은 조회기간의 마지막 일자를 기준으로 인사발령정보를 참조합니다." position="absolute 5 719 531 739" anchor="left bottom" style="color:#ff0000ff;"/>
  76. <Static id="caption26" text="※ 칠곡 소아청소년 분과 중 하나를 선택 시, 아래 8개 분과 전체가 다 함께 조회됩니다. (본원은 해당되지 않습니다.)" position="absolute 5 733 812 761" anchor="left bottom" style="color:#ff0000ff;"/>
  77. <Static id="caption27" text="- 소아알레르기호흡기, 소아청소년내분비, 소아청소년소화기영양, 소아청소년신경, 소아청소년신장, 소아청소년심장, 소아청소년혈액종양, 신생아" position="absolute 20 750 827 778" anchor="left bottom" style="color:#ff0000ff;"/>
  78. <Shape id="line2" class="line_6" position="absolute 0 34 1195 40" anchor="left top right"/>
  79. </Layout>
  80. </Layouts>
  81. <Objects>
  82. <Dataset id="ds_main_condition" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_condition_oncolumnchanged">
  83. <ColumnInfo>
  84. <Column id="srchym" type="STRING" size="256"/>
  85. <Column id="deptcd" type="STRING" size="256"/>
  86. <Column id="deptnm" type="STRING" size="256"/>
  87. <Column id="emplno" type="STRING" size="256"/>
  88. <Column id="emplnm" type="STRING" size="256"/>
  89. </ColumnInfo>
  90. <Rows>
  91. <Row>
  92. <Col id="srchym"/>
  93. <Col id="deptcd"/>
  94. <Col id="deptnm"/>
  95. <Col id="emplno"/>
  96. <Col id="emplnm"/>
  97. </Row>
  98. </Rows>
  99. </Dataset>
  100. <Dataset id="ds_main_emplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  101. <ColumnInfo>
  102. <Column id="no" type="STRING" size="256" sumtext="순번"/>
  103. <Column id="srchym" type="STRING" size="256" sumtext="근무월"/>
  104. <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
  105. <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
  106. <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
  107. <Column id="anual" type="STRING" size="256" sumtext="년차"/>
  108. <Column id="jobkindnm" type="STRING" size="256" sumtext="직종"/>
  109. <Column id="duttypenm" type="STRING" size="256" sumtext="근태명"/>
  110. <Column id="cmt" type="STRING" size="256" sumtext="비고"/>
  111. <Column id="dutydate" type="STRING" size="256" sumtext="시작일자"/>
  112. <Column id="cnt" type="STRING" size="256" sumtext="건수"/>
  113. </ColumnInfo>
  114. </Dataset>
  115. </Objects>
  116. <Bind>
  117. <BindItem id="item0" compid="grp_sea.ipt_srchym" propid="value" datasetid="ds_main_condition" columnid="srchym"/>
  118. <BindItem id="item1" compid="grp_sea.ipt_deptcd" propid="value" datasetid="ds_main_condition" columnid="deptcd"/>
  119. <BindItem id="item2" compid="grp_sea.opt_deptnm" propid="value" datasetid="ds_main_condition" columnid="deptnm"/>
  120. <BindItem id="item3" compid="grp_sea.ipt_emplnos" propid="value" datasetid="ds_main_condition" columnid="emplno"/>
  121. <BindItem id="item4" compid="grp_sea.ipt_emplnms" propid="value" datasetid="ds_main_condition" columnid="emplnm"/>
  122. </Bind>
  123. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  124. * System Name :
  125. * Job Name :
  126. * Creator :
  127. * Make Date : 2017-06-19
  128. * Description :
  129. *---------------------------------------------------------------------------------------
  130. * Modify Date Modifier Modify Description
  131. *---------------------------------------------------------------------------------------
  132. * 2017-06-19 Live Converter TF->XP
  133. *
  134. *---------------------------------------------------------------------------------------
  135. ****************************************************************************************/
  136. include "com_commonxp::comm_main.xjs";
  137. include "mis_miscommonxp::MIS.xjs";
  138. include "mis_humtrafactmngtxp::RPB001.xjs";
  139. function SMRPD30400_oninit(obj:Form, e:InitEventInfo)
  140. {
  141. frmf_initForm(obj);
  142. }
  143. function SMRPD30400_onload(obj:Form, e:LoadEventInfo)
  144. {
  145. grdf_initGrid(grd_emplist);
  146. fOpenForm();
  147. }
  148. function fOpenForm()
  149. {
  150. var cur_yymm = String(utlf_getCurrentDate()).substring(0, 6);
  151. ds_main_condition.setColumn(0, "srchym", cur_yymm);
  152. misfGridInit(grd_emplist);
  153. }
  154. function grp_sea_ipt_srchym_onchanged(obj:Calendar, e:ChangeEventInfo)
  155. {
  156. ds_main_condition.setColumn(0, "srchym", String(obj.value).substr(0,6));
  157. }
  158. function ds_main_condition_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  159. {
  160. if(e.columnid == "deptcd")
  161. {
  162. var setFocus = this.getFocus();
  163. grp_sea.ipt_deptcd.value = e.newvalue;
  164. grp_sea.ipt_deptcd.setFocus();
  165. misfGridInit(grd_emplist)
  166. grp_sea.opt_deptnm.value = "";
  167. misfValidationCheck("02", "", "deptcd,deptnm" );
  168. setFocus.setFocus();
  169. }
  170. if(e.columnid == "emplno")
  171. {
  172. var setFocus = this.getFocus();
  173. grp_sea.ipt_emplnos.value = e.newvalue;
  174. grp_sea.ipt_emplnos.setFocus();
  175. var recv_list = "emplno,emplnm" ;
  176. rpbfValidationCheck("EMPLNO", recv_list);
  177. if (String(e.newvalue).length > 0)
  178. {
  179. grp_sea.btn_search.click();
  180. }
  181. setFocus.setFocus();
  182. }
  183. if(e.columnid == "emplnm")
  184. {
  185. var setFocus = this.getFocus();
  186. grp_sea.ipt_emplnms.value = e.newvalue;
  187. grp_sea.ipt_emplnms.setFocus();
  188. var recv_list = "emplno,emplnm" ;
  189. rpbfValidationCheck("EMPLNM", recv_list);
  190. if (String(e.newvalue).length > 0)
  191. {
  192. grp_sea.btn_search.click();
  193. }
  194. setFocus.setFocus();
  195. }
  196. }
  197. function grp_sea_ipt_deptcd_onkeyup(obj:Edit, e:KeyEventInfo)
  198. {
  199. if(e.keycode == 13)
  200. {
  201. obj.updateToDataset();
  202. }
  203. }
  204. function grp_sea_btn_deptcd_onclick(obj:Button, e:ClickEventInfo)
  205. {
  206. var vOrigDeptcd = grp_sea.ipt_deptcd.value;
  207. var recv_list = "deptcd,deptnm";
  208. misfOpenPopUpList("02", grp_sea.ipt_deptcd,"", recv_list);
  209. if(vOrigDeptcd != grp_sea.ipt_deptcd.value)
  210. {
  211. misfGridInit(grd_emplist);
  212. }
  213. }
  214. function grp_sea_ipt_emplnos_onkeydown(obj:Edit, e:KeyEventInfo)
  215. {
  216. if(e.keycode == 13)
  217. {
  218. obj.updateToDataset();
  219. grp_sea.btn_search.click();
  220. }
  221. }
  222. function grp_sea_ipt_emplnms_onkeyup(obj:Edit, e:KeyEventInfo)
  223. {
  224. if(e.keycode == 13)
  225. {
  226. obj.updateToDataset();
  227. grp_sea.btn_search.click();
  228. }
  229. }
  230. function grp_sea_btn_emplnos_onclick(obj:Button, e:ClickEventInfo)
  231. {
  232. var recv_list = "emplno,emplnm" ;
  233. rpbfOpenPopUpList("SPRPB00101", grp_sea.ipt_emplnos, recv_list,"1","N");
  234. if (String(grp_sea.ipt_emplnos.value).length > 0)
  235. {
  236. grp_sea.btn_search.click();
  237. }
  238. }
  239. function grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  240. {
  241. fGetEmpList();
  242. }
  243. function fGetEmpList()
  244. {
  245. if(String(ds_main_condition.getColumn(0, "srchym")).length != 6)
  246. {
  247. sysf_messageBox("근무년월을 정확하게 입력하십시요. ", "E999", "");
  248. grp_sea.ipt_srchym.setFocus();
  249. return;
  250. }
  251. misfGridInit(grd_emplist);
  252. if(sysf_getUserInfo("dutplceinstcd") == "032")
  253. {
  254. var sDeptcd = grp_sea.ipt_deptcd.value;
  255. if( sDeptcd == "2110500000" || sDeptcd == "2112300000" || sDeptcd == "2112400000" || sDeptcd == "2112500000" ||
  256. sDeptcd == "2112600000" || sDeptcd == "2112700000" || sDeptcd == "2112800000" || sDeptcd == "2112900000" )
  257. {
  258. ds_main_condition.setColumn(0, "deptcd", "2110000000");
  259. }
  260. }
  261. var oParam = {};
  262. oParam.id = "TRRPD30401";
  263. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  264. oParam.method = "reqGetDutyDateList";
  265. oParam.inds = "req=ds_main_condition";
  266. oParam.outds = "ds_main_emplist=emplist";
  267. oParam.async = false;
  268. //oParam.callback = "cf_TRRPD30401";
  269. tranf_submit(oParam);
  270. }
  271. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  272. {
  273. grdf_exportExcel(grd_emplist, "excel", "Sheet1", "true", "", "");
  274. }
  275. ]]></Script>
  276. </Form>
  277. </FDL>