SMRPD30900_전공의수련현황.xfdl 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPD30900" position="absolute 0 0 1199 805" titletext="전공의 수련 현황 조회" oninit="SMRPD30900_oninit" onload="SMRPD30900_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="전공의 수련현황 조회" class="tit_1" position="absolute 0 0 293 25"/>
  8. <Shape id="line2" class="line_6" position="absolute 0 46 1194 52" anchor="left top right"/>
  9. <Button id="btn_print" taborder="1" text="출력" class="btn6" position="absolute 1137 25 1193 47" anchor="top right" onclick="btn_print_onclick"/>
  10. <Div id="grp_sea" anchor="left top right" taborder="2" class="div_SA2" position="absolute 0 50 1195 90">
  11. <Layouts>
  12. <Layout>
  13. <Shape id="line5" linetype="vertical" class="line_4" position="absolute 1077 8 1083 32" anchor="top right"/>
  14. <Button id="btn_search" taborder="6" text="조회" class="btn1" position="absolute 1100 9 1156 31" anchor="top right" onclick="grp_sea_btn_search_onclick"/>
  15. <Edit id="opt_deptnm" taborder="7" readonly="true" autoselect="true" autoskip="true" class="output" position="absolute 622 10 812 29"/>
  16. <Static id="caption1" text="부서코드" class="search_name" position="absolute 445 11 521 28"/>
  17. <Edit id="ipt_deptcd" taborder="8" autoselect="true" autoskip="true" class="input_default" position="absolute 527 10 602 29" onkeydown="grp_sea_ipt_deptcd_onkeydown"/>
  18. <Button id="btn_deptcd" taborder="9" class="icon_search" position="absolute 604 11 620 27" onclick="grp_sea_btn_deptcd_onclick"/>
  19. <Static id="caption9" text="근무년월" class="search_name" position="absolute 275 11 356 28"/>
  20. <Button id="btn_emplnos" taborder="10" class="icon_search" position="absolute 938 11 954 27" onclick="grp_sea_btn_emplnos_onclick"/>
  21. <Static id="caption2" text="사번" class="search_name" position="absolute 824 11 880 28"/>
  22. <Edit id="ipt_emplnos" taborder="11" autoselect="true" autoskip="true" class="input_default" position="absolute 879 10 935 29" onkeyup="grp_sea_ipt_emplnos_onkeyup"/>
  23. <Edit id="ipt_emplnms" taborder="12" autoselect="true" autoskip="true" class="input_default" position="absolute 955 10 1061 29" onkeyup="grp_sea_ipt_emplnms_onkeyup"/>
  24. <Calendar id="ipt_ym" taborder="13" autoselect="true" autoskip="true" class="input_default" position="absolute 357 10 435 29" mask="yyyy-mm" dateformat="yyyy-MM" value="null" editformat="yyyy-MM" style="align:center middle;" onchanged="grp_sea_ipt_ym_onchanged"/>
  25. <Combo id="cmb_instcd" taborder="14" class="combo_s_default" enable="false" position="absolute 120 10 262 29" onitemchanged="grp_sea_cmb_instcd_onitemchanged"/>
  26. <Static id="caption29" text="기관코드" class="search_name" position="absolute 39 11 115 28"/>
  27. </Layout>
  28. </Layouts>
  29. </Div>
  30. <Shape id="line3" class="line_10" position="absolute 365 127 1193 133" anchor="left top right"/>
  31. <Static id="caption21" text="개인 수련현황" class="tit_2" position="absolute 365 111 470 133"/>
  32. <Grid id="grd_dutlist" taborder="3" binddataset="ds_main_dutlist" autoenter="select" useinputpanel="false" cellsizingtype="col" position="absolute 365 132 1193 667" anchor="all" autofittype="col" onheadclick="grd_dutlist_onheadclick">
  33. <Formats>
  34. <Format id="default">
  35. <Columns>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="110"/>
  40. <Column size="23"/>
  41. <Column size="23"/>
  42. <Column size="23"/>
  43. <Column size="23"/>
  44. <Column size="23"/>
  45. <Column size="23"/>
  46. <Column size="23"/>
  47. <Column size="23"/>
  48. <Column size="23"/>
  49. <Column size="23"/>
  50. <Column size="23"/>
  51. <Column size="23"/>
  52. <Column size="23"/>
  53. <Column size="23"/>
  54. <Column size="23"/>
  55. <Column size="23"/>
  56. <Column size="23"/>
  57. <Column size="23"/>
  58. <Column size="23"/>
  59. <Column size="23"/>
  60. <Column size="23"/>
  61. <Column size="23"/>
  62. <Column size="23"/>
  63. <Column size="23"/>
  64. <Column size="23"/>
  65. <Column size="23"/>
  66. <Column size="23"/>
  67. <Column size="23"/>
  68. <Column size="23"/>
  69. <Column size="23"/>
  70. <Column size="23"/>
  71. <Column size="42"/>
  72. </Columns>
  73. <Rows>
  74. <Row size="24" band="head"/>
  75. <Row size="24" band="head"/>
  76. <Row size="24"/>
  77. </Rows>
  78. <Band id="head">
  79. <Cell text="년차"/>
  80. <Cell col="1" text="사번"/>
  81. <Cell col="2" text="성명"/>
  82. <Cell col="3" rowspan="2" text="근무형태" taborder="undefined"/>
  83. <Cell col="4" text=" "/>
  84. <Cell col="5" text=" "/>
  85. <Cell col="6" text=" "/>
  86. <Cell col="7" text=" "/>
  87. <Cell col="8" text=" "/>
  88. <Cell col="9" text=" "/>
  89. <Cell col="10" text=" "/>
  90. <Cell col="11" text=" "/>
  91. <Cell col="12" text=" "/>
  92. <Cell col="13" text=" "/>
  93. <Cell col="14" text=" "/>
  94. <Cell col="15" text=" "/>
  95. <Cell col="16" text=" "/>
  96. <Cell col="17" text=" "/>
  97. <Cell col="18" text=" "/>
  98. <Cell col="19" text=" "/>
  99. <Cell col="20" text=" "/>
  100. <Cell col="21" text=" "/>
  101. <Cell col="22" text=" "/>
  102. <Cell col="23" text=" "/>
  103. <Cell col="24" text=" "/>
  104. <Cell col="25" text=" "/>
  105. <Cell col="26" text=" "/>
  106. <Cell col="27" text=" "/>
  107. <Cell col="28" text=" "/>
  108. <Cell col="29" text=" "/>
  109. <Cell col="30" text=" "/>
  110. <Cell col="31" text=" "/>
  111. <Cell col="32" text=" "/>
  112. <Cell col="33" text=" "/>
  113. <Cell col="34" text=" "/>
  114. <Cell col="35" rowspan="2" text="월근로시간" wordwrap="word" taborder="undefined"/>
  115. <Cell row="1" text="년차"/>
  116. <Cell row="1" col="1" text="사번"/>
  117. <Cell row="1" col="2" text="성명"/>
  118. <Cell row="1" col="4" text="1"/>
  119. <Cell row="1" col="5" text="2"/>
  120. <Cell row="1" col="6" text="3"/>
  121. <Cell row="1" col="7" text="4"/>
  122. <Cell row="1" col="8" text="5"/>
  123. <Cell row="1" col="9" text="6"/>
  124. <Cell row="1" col="10" text="7"/>
  125. <Cell row="1" col="11" text="8"/>
  126. <Cell row="1" col="12" text="9"/>
  127. <Cell row="1" col="13" text="10"/>
  128. <Cell row="1" col="14" text="11"/>
  129. <Cell row="1" col="15" text="12"/>
  130. <Cell row="1" col="16" text="13"/>
  131. <Cell row="1" col="17" text="14"/>
  132. <Cell row="1" col="18" text="15"/>
  133. <Cell row="1" col="19" text="16"/>
  134. <Cell row="1" col="20" text="17"/>
  135. <Cell row="1" col="21" text="18"/>
  136. <Cell row="1" col="22" text="19"/>
  137. <Cell row="1" col="23" text="20"/>
  138. <Cell row="1" col="24" text="21"/>
  139. <Cell row="1" col="25" text="22"/>
  140. <Cell row="1" col="26" text="23"/>
  141. <Cell row="1" col="27" text="24"/>
  142. <Cell row="1" col="28" text="25"/>
  143. <Cell row="1" col="29" text="26"/>
  144. <Cell row="1" col="30" text="27"/>
  145. <Cell row="1" col="31" text="28"/>
  146. <Cell row="1" col="32" text="29"/>
  147. <Cell row="1" col="33" text="30"/>
  148. <Cell row="1" col="34" text="31"/>
  149. </Band>
  150. <Band id="body">
  151. <Cell text="bind:anual"/>
  152. <Cell col="1" text="bind:emplno"/>
  153. <Cell col="2" text="bind:emplnm"/>
  154. <Cell col="3" style="align:left top;padding:5 2 1 2;" text="bind:cdnm" wordwrap="word"/>
  155. <Cell col="4" displaytype="number" style="align:center middle;" text="bind:d1"/>
  156. <Cell col="5" displaytype="number" style="align:center middle;" text="bind:d2"/>
  157. <Cell col="6" displaytype="number" style="align:center middle;" text="bind:d3"/>
  158. <Cell col="7" displaytype="number" style="align:center middle;" text="bind:d4"/>
  159. <Cell col="8" displaytype="number" style="align:center middle;" text="bind:d5"/>
  160. <Cell col="9" displaytype="number" style="align:center middle;" text="bind:d6"/>
  161. <Cell col="10" displaytype="number" style="align:center middle;" text="bind:d7"/>
  162. <Cell col="11" displaytype="number" style="align:center middle;" text="bind:d8"/>
  163. <Cell col="12" displaytype="number" style="align:center middle;" text="bind:d9"/>
  164. <Cell col="13" displaytype="number" style="align:center middle;" text="bind:d10"/>
  165. <Cell col="14" displaytype="number" style="align:center middle;" text="bind:d11"/>
  166. <Cell col="15" displaytype="number" style="align:center middle;" text="bind:d12"/>
  167. <Cell col="16" displaytype="number" style="align:center middle;" text="bind:d13"/>
  168. <Cell col="17" displaytype="number" style="align:center middle;" text="bind:d14"/>
  169. <Cell col="18" displaytype="number" style="align:center middle;" text="bind:d15"/>
  170. <Cell col="19" displaytype="number" style="align:center middle;" text="bind:d16"/>
  171. <Cell col="20" displaytype="number" style="align:center middle;" text="bind:d17"/>
  172. <Cell col="21" displaytype="number" style="align:center middle;" text="bind:d18"/>
  173. <Cell col="22" displaytype="number" style="align:center middle;" text="bind:d19"/>
  174. <Cell col="23" displaytype="number" style="align:center middle;" text="bind:d20"/>
  175. <Cell col="24" displaytype="number" style="align:center middle;" text="bind:d21"/>
  176. <Cell col="25" displaytype="number" style="align:center middle;" text="bind:d22"/>
  177. <Cell col="26" displaytype="number" style="align:center middle;" text="bind:d23"/>
  178. <Cell col="27" displaytype="number" style="align:center middle;" text="bind:d24"/>
  179. <Cell col="28" displaytype="number" style="align:center middle;" text="bind:d25"/>
  180. <Cell col="29" displaytype="number" style="align:center middle;" text="bind:d26"/>
  181. <Cell col="30" displaytype="number" style="align:center middle;" text="bind:d27"/>
  182. <Cell col="31" displaytype="number" style="align:center middle;" text="bind:d28"/>
  183. <Cell col="32" displaytype="number" style="align:center middle;" text="bind:d29"/>
  184. <Cell col="33" displaytype="number" style="align:center middle;" text="bind:d30"/>
  185. <Cell col="34" displaytype="number" style="align:center middle;" text="bind:d31"/>
  186. <Cell col="35" text="bind:msum"/>
  187. </Band>
  188. </Format>
  189. </Formats>
  190. </Grid>
  191. <Button id="btn_excel" taborder="4" text="엑셀다운" class="btn7" position="absolute 1113 108 1193 127" anchor="top right" onclick="btn_excel_onclick"/>
  192. <Static id="caption3" text="※ OFF 는 주간에 등록된 것만 count 됩니다." position="absolute 5 778 812 798" style="color:#993300ff;" anchor="left bottom"/>
  193. <Static id="caption5" text="대상 목록" class="tit_2" position="absolute 0 111 80 133"/>
  194. <Shape id="line1" class="line_10" position="absolute 0 127 360 133"/>
  195. <Grid id="grd_emplist" taborder="5" binddataset="ds_main_emplist" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 132 360 667" anchor="left top bottom" oncellclick="grd_emplist_oncellclick">
  196. <Formats>
  197. <Format id="default">
  198. <Columns>
  199. <Column size="18"/>
  200. <Column size="41"/>
  201. <Column size="48"/>
  202. <Column size="39"/>
  203. <Column size="92"/>
  204. <Column size="106"/>
  205. <Column size="0"/>
  206. <Column size="0"/>
  207. <Column size="0"/>
  208. </Columns>
  209. <Rows>
  210. <Row size="24" band="head"/>
  211. <Row size="24"/>
  212. </Rows>
  213. <Band id="head">
  214. <Cell/>
  215. <Cell col="1" text="사번"/>
  216. <Cell col="2" text="성명"/>
  217. <Cell col="3" text="년차"/>
  218. <Cell col="4" text="부서"/>
  219. <Cell col="5" text="처리상태"/>
  220. <Cell col="6" text="직종"/>
  221. <Cell col="7" text="procstat"/>
  222. <Cell col="8" text="deptcd"/>
  223. </Band>
  224. <Band id="body">
  225. <Cell celltype="head" expr="expr:currow == ds_main_emplist.rowposition ? '▶' : ''"/>
  226. <Cell col="1" text="bind:emplno"/>
  227. <Cell col="2" text="bind:emplnm"/>
  228. <Cell col="3" text="bind:anual"/>
  229. <Cell col="4" style="align:left middle;" text="bind:deptnm"/>
  230. <Cell col="5" text="bind:procstatnm"/>
  231. <Cell col="6" text="bind:jobkindnm"/>
  232. <Cell col="7" text="bind:procstat"/>
  233. <Cell col="8" text="bind:deptcd"/>
  234. </Band>
  235. </Format>
  236. </Formats>
  237. </Grid>
  238. <Static id="caption23" text="※ 부서, 년차, 직종은 조회하신 근무년월의 마지막 일자를 기준으로 인사발령정보를 참조합니다." position="absolute 5 722 539 742" style="color:#993300ff;" anchor="left bottom"/>
  239. <Static id="caption26" text="※ 칠곡 소아청소년 분과 중 하나를 선택 시, 아래 8개 분과 전체가 다 함께 조회됩니다. (본원은 해당되지 않습니다.)" position="absolute 5 737 812 765" style="color:#993300ff;" anchor="left bottom"/>
  240. <Static id="caption27" text="- 소아알레르기호흡기, 소아청소년내분비, 소아청소년소화기영양, 소아청소년신경, 소아청소년신장, 소아청소년심장, 소아청소년혈액종양, 신생아" position="absolute 20 754 827 782" style="color:#993300ff;" anchor="left bottom"/>
  241. <Static id="caption22" text=" - 인턴 : 개인자료 저장, 제출 -&gt; 교육수련담당 확인 -&gt; 교육수련실장 승인" position="absolute 5 704 849 724" style="color:#993300ff;" anchor="left bottom"/>
  242. <Static id="caption24" text=" - 레지던트 : 개인자료 저장, 제출 -&gt; 의국장 확인 -&gt; 부서장 승인 -&gt; 교육수련담당 확인 -&gt; 교육수련실장 승인" position="absolute 5 689 849 709" style="color:#993300ff;" anchor="left bottom"/>
  243. <Static id="caption25" text="※ 처리 절차" position="absolute 5 673 849 693" style="color:#993300ff;" anchor="left bottom"/>
  244. </Layout>
  245. </Layouts>
  246. <Objects>
  247. <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">
  248. <ColumnInfo>
  249. <Column id="instcd" type="STRING" size="256"/>
  250. <Column id="ym" type="STRING" size="256"/>
  251. <Column id="deptcd" type="STRING" size="256"/>
  252. <Column id="deptnm" type="STRING" size="256"/>
  253. <Column id="emplno" type="STRING" size="256"/>
  254. <Column id="emplnm" type="STRING" size="256"/>
  255. <Column id="powertp" type="STRING" size="256"/>
  256. </ColumnInfo>
  257. <Rows>
  258. <Row>
  259. <Col id="instcd"/>
  260. <Col id="ym"/>
  261. <Col id="deptcd"/>
  262. <Col id="deptnm"/>
  263. <Col id="emplno"/>
  264. <Col id="emplnm"/>
  265. <Col id="powertp"/>
  266. </Row>
  267. </Rows>
  268. </Dataset>
  269. <Dataset id="ds_main_emplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  270. <ColumnInfo>
  271. <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
  272. <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
  273. <Column id="anual" type="STRING" size="256" sumtext="년차"/>
  274. <Column id="jobkindnm" type="STRING" size="256" sumtext="직종"/>
  275. <Column id="deptnm" type="STRING" size="256" sumtext="부서명"/>
  276. <Column id="procstatnm" type="STRING" size="256" sumtext="처리상태"/>
  277. <Column id="procstat" type="STRING" size="256" sumtext="처리상태"/>
  278. <Column id="deptcd" type="STRING" size="256" sumtext="부서코드"/>
  279. </ColumnInfo>
  280. </Dataset>
  281. <Dataset id="ds_main_dutlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  282. <ColumnInfo>
  283. <Column id="emplno" type="STRING" size="256" sumtext="사번"/>
  284. <Column id="anual" type="STRING" size="256" sumtext="년차"/>
  285. <Column id="emplnm" type="STRING" size="256" sumtext="성명"/>
  286. <Column id="cdnm" type="STRING" size="256" sumtext="근무형태"/>
  287. <Column id="d1" type="STRING" size="256" sumtext="d1"/>
  288. <Column id="d2" type="STRING" size="256" sumtext="d2"/>
  289. <Column id="d3" type="STRING" size="256" sumtext="d3"/>
  290. <Column id="d4" type="STRING" size="256" sumtext="d4"/>
  291. <Column id="d5" type="STRING" size="256" sumtext="d5"/>
  292. <Column id="d6" type="STRING" size="256" sumtext="d6"/>
  293. <Column id="d7" type="STRING" size="256" sumtext="d7"/>
  294. <Column id="d8" type="STRING" size="256" sumtext="d8"/>
  295. <Column id="d9" type="STRING" size="256" sumtext="d9"/>
  296. <Column id="d10" type="STRING" size="256" sumtext="d10"/>
  297. <Column id="d11" type="STRING" size="256" sumtext="d11"/>
  298. <Column id="d12" type="STRING" size="256" sumtext="d12"/>
  299. <Column id="d13" type="STRING" size="256" sumtext="d13"/>
  300. <Column id="d14" type="STRING" size="256" sumtext="d14"/>
  301. <Column id="d15" type="STRING" size="256" sumtext="d15"/>
  302. <Column id="d16" type="STRING" size="256" sumtext="d16"/>
  303. <Column id="d17" type="STRING" size="256" sumtext="d17"/>
  304. <Column id="d18" type="STRING" size="256" sumtext="d18"/>
  305. <Column id="d19" type="STRING" size="256" sumtext="d19"/>
  306. <Column id="d20" type="STRING" size="256" sumtext="d20"/>
  307. <Column id="d21" type="STRING" size="256" sumtext="d21"/>
  308. <Column id="d22" type="STRING" size="256" sumtext="d22"/>
  309. <Column id="d23" type="STRING" size="256" sumtext="d23"/>
  310. <Column id="d24" type="STRING" size="256" sumtext="d24"/>
  311. <Column id="d25" type="STRING" size="256" sumtext="d25"/>
  312. <Column id="d26" type="STRING" size="256" sumtext="d26"/>
  313. <Column id="d27" type="STRING" size="256" sumtext="d27"/>
  314. <Column id="d28" type="STRING" size="256" sumtext="d28"/>
  315. <Column id="d29" type="STRING" size="256" sumtext="d29"/>
  316. <Column id="d30" type="STRING" size="256" sumtext="d30"/>
  317. <Column id="d31" type="STRING" size="256" sumtext="d31"/>
  318. <Column id="msum" type="STRING" size="256" sumtext="월근로시간"/>
  319. </ColumnInfo>
  320. </Dataset>
  321. <Dataset id="ds_main_powerinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  322. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  323. <Dataset id="ds_main_daylist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  324. <ColumnInfo>
  325. <Column id="dd" type="STRING" size="256" sumtext="일자"/>
  326. <Column id="day" type="STRING" size="256" sumtext="요일"/>
  327. <Column id="holiflag" type="STRING" size="256" sumtext="휴일구분(0:휴일, 4:토요일, 8:평일)"/>
  328. </ColumnInfo>
  329. </Dataset>
  330. <Dataset id="ds_print_daylist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  331. <ColumnInfo>
  332. <Column id="dy1" type="STRING" size="256"/>
  333. <Column id="dy2" type="STRING" size="256"/>
  334. <Column id="dy3" type="STRING" size="256"/>
  335. <Column id="dy4" type="STRING" size="256"/>
  336. <Column id="dy5" type="STRING" size="256"/>
  337. <Column id="dy6" type="STRING" size="256"/>
  338. <Column id="dy7" type="STRING" size="256"/>
  339. <Column id="dy8" type="STRING" size="256"/>
  340. <Column id="dy9" type="STRING" size="256"/>
  341. <Column id="dy10" type="STRING" size="256"/>
  342. <Column id="dy11" type="STRING" size="256"/>
  343. <Column id="dy12" type="STRING" size="256"/>
  344. <Column id="dy13" type="STRING" size="256"/>
  345. <Column id="dy14" type="STRING" size="256"/>
  346. <Column id="dy15" type="STRING" size="256"/>
  347. <Column id="dy16" type="STRING" size="256"/>
  348. <Column id="dy17" type="STRING" size="256"/>
  349. <Column id="dy18" type="STRING" size="256"/>
  350. <Column id="dy19" type="STRING" size="256"/>
  351. <Column id="dy20" type="STRING" size="256"/>
  352. <Column id="dy21" type="STRING" size="256"/>
  353. <Column id="dy22" type="STRING" size="256"/>
  354. <Column id="dy23" type="STRING" size="256"/>
  355. <Column id="dy24" type="STRING" size="256"/>
  356. <Column id="dy25" type="STRING" size="256"/>
  357. <Column id="dy26" type="STRING" size="256"/>
  358. <Column id="dy27" type="STRING" size="256"/>
  359. <Column id="dy28" type="STRING" size="256"/>
  360. <Column id="dy29" type="STRING" size="256"/>
  361. <Column id="dy30" type="STRING" size="256"/>
  362. <Column id="dy31" type="STRING" size="256"/>
  363. </ColumnInfo>
  364. </Dataset>
  365. <Dataset id="ds_print_holiflaglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  366. <ColumnInfo>
  367. <Column id="h1" type="STRING" size="256"/>
  368. <Column id="h2" type="STRING" size="256"/>
  369. <Column id="h3" type="STRING" size="256"/>
  370. <Column id="h4" type="STRING" size="256"/>
  371. <Column id="h5" type="STRING" size="256"/>
  372. <Column id="h6" type="STRING" size="256"/>
  373. <Column id="h7" type="STRING" size="256"/>
  374. <Column id="h8" type="STRING" size="256"/>
  375. <Column id="h9" type="STRING" size="256"/>
  376. <Column id="h10" type="STRING" size="256"/>
  377. <Column id="h11" type="STRING" size="256"/>
  378. <Column id="h12" type="STRING" size="256"/>
  379. <Column id="h13" type="STRING" size="256"/>
  380. <Column id="h14" type="STRING" size="256"/>
  381. <Column id="h15" type="STRING" size="256"/>
  382. <Column id="h16" type="STRING" size="256"/>
  383. <Column id="h17" type="STRING" size="256"/>
  384. <Column id="h18" type="STRING" size="256"/>
  385. <Column id="h19" type="STRING" size="256"/>
  386. <Column id="h20" type="STRING" size="256"/>
  387. <Column id="h21" type="STRING" size="256"/>
  388. <Column id="h22" type="STRING" size="256"/>
  389. <Column id="h23" type="STRING" size="256"/>
  390. <Column id="h24" type="STRING" size="256"/>
  391. <Column id="h25" type="STRING" size="256"/>
  392. <Column id="h26" type="STRING" size="256"/>
  393. <Column id="h27" type="STRING" size="256"/>
  394. <Column id="h28" type="STRING" size="256"/>
  395. <Column id="h29" type="STRING" size="256"/>
  396. <Column id="h30" type="STRING" size="256"/>
  397. <Column id="h31" type="STRING" size="256"/>
  398. </ColumnInfo>
  399. </Dataset>
  400. <Dataset id="ds_print" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  401. <ColumnInfo>
  402. <Column id="emplno" type="STRING" size="256"/>
  403. <Column id="emplnm" type="STRING" size="256"/>
  404. <Column id="deptnm" type="STRING" size="256"/>
  405. <Column id="jobkindnm" type="STRING" size="256"/>
  406. <Column id="anual" type="STRING" size="256"/>
  407. <Column id="ym" type="STRING" size="256"/>
  408. </ColumnInfo>
  409. </Dataset>
  410. </Objects>
  411. <Bind>
  412. <BindItem id="item0" compid="grp_sea.cmb_instcd" propid="value" datasetid="ds_main_condition" columnid="instcd"/>
  413. <BindItem id="item1" compid="grp_sea.ipt_ym" propid="value" datasetid="ds_main_condition" columnid="ym"/>
  414. <BindItem id="item2" compid="grp_sea.ipt_deptcd" propid="value" datasetid="ds_main_condition" columnid="deptcd"/>
  415. <BindItem id="item3" compid="grp_sea.opt_deptnm" propid="value" datasetid="ds_main_condition" columnid="deptnm"/>
  416. <BindItem id="item4" compid="grp_sea.ipt_emplnos" propid="value" datasetid="ds_main_condition" columnid="emplno"/>
  417. <BindItem id="item5" compid="grp_sea.ipt_emplnms" propid="value" datasetid="ds_main_condition" columnid="emplnm"/>
  418. </Bind>
  419. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  420. * System Name :
  421. * Job Name :
  422. * Creator :
  423. * Make Date : 2017-06-19
  424. * Description :
  425. *---------------------------------------------------------------------------------------
  426. * Modify Date Modifier Modify Description
  427. *---------------------------------------------------------------------------------------
  428. * 2017-06-19 Live Converter TF->XP
  429. *
  430. *---------------------------------------------------------------------------------------
  431. ****************************************************************************************/
  432. include "com_commonxp::comm_main.xjs";
  433. include "mis_miscommonxp::MIS.xjs";
  434. include "mis_humtrafactmngtxp::RPB001.xjs";
  435. var arErrorCode = new HashArray();
  436. function SMRPD30900_oninit(obj:Form, e:InitEventInfo)
  437. {
  438. frmf_initForm(obj);
  439. }
  440. function SMRPD30900_onload(obj:Form, e:LoadEventInfo)
  441. {
  442. grdf_initGrid(grd_emplist);
  443. grdf_initGrid(grd_dutlist);
  444. fOpenForm();
  445. }
  446. function fOpenForm()
  447. {
  448. misfComboInstCdListMulti("grp_sea.cmb_instcd", utlf_getCurrentDate(),"","N");
  449. grp_sea.cmb_instcd.value = sysf_getUserInfo("dutplceinstcd");
  450. ds_main_emplist.clearData();
  451. ds_main_dutlist.clearData();
  452. ds_main_condition.setColumn(0, "ym", String(utlf_getCurrentDate()).substr(0,6));
  453. var oParam = {};
  454. oParam.id = "TRRPD30305";
  455. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  456. oParam.method = "reqGetDutyPowerInfo";
  457. oParam.inds = "req=ds_main_condition";
  458. oParam.outds = "ds_main_powerinfo=powerinfo";
  459. oParam.async = false;
  460. oParam.callback = "cf_TRRPD30305";
  461. tranf_submit(oParam);
  462. if(arErrorCode.pop("TRRPD30305") > -1)
  463. {
  464. var powertp = ds_main_powerinfo.getColumn(0, "powertp");
  465. ds_main_condition.setColumn(0, "powertp", powertp);
  466. if(utlf_isNull(powertp))
  467. {
  468. grp_sea.ipt_emplnos.value = sysf_getUserInfo("userid");
  469. grp_sea.ipt_emplnms.value = sysf_getUserInfo("usernm");
  470. grp_sea.ipt_emplnos.enable = false;
  471. grp_sea.btn_emplnos.enable = false;
  472. grp_sea.ipt_emplnms.enable = false;
  473. }
  474. else if(powertp == "1")
  475. {
  476. grp_sea.ipt_deptcd.value = ds_main_powerinfo.getColumn(0, "deptcd");
  477. grp_sea.opt_deptnm.value = ds_main_powerinfo.getColumn(0, "deptnm");
  478. grp_sea.ipt_deptcd.enable = false;
  479. grp_sea.btn_deptcd.enable = false;
  480. }
  481. else if(powertp == "2")
  482. {
  483. grp_sea.ipt_deptcd.value = ds_main_powerinfo.getColumn(0, "deptcd");
  484. grp_sea.opt_deptnm.value = ds_main_powerinfo.getColumn(0, "deptnm");
  485. grp_sea.ipt_deptcd.enable = false;
  486. grp_sea.btn_deptcd.enable = false;
  487. }
  488. else if(powertp == "3")
  489. {
  490. if(sysf_getUserInfo("dutplceinstcd") == "031")
  491. {
  492. grp_sea.cmb_instcd.enable = true;
  493. }
  494. }
  495. else if(powertp == "4") {}
  496. }
  497. fGetEmpList();// 조회
  498. }
  499. function cf_TRRPD30305(sSvcId, nErrorCode, sErrorMsg)
  500. {
  501. arErrorCode.push(sSvcId, nErrorCode);
  502. if(nErrorCode < 0) return;
  503. }
  504. function fGetEmpList()
  505. {
  506. if(String(ds_main_condition.getColumn(0, "ym")).length != 6 )
  507. {
  508. sysf_messageBox("근무년월을 정확하게 입력하십시요. ", "E999", "");
  509. grp_sea.ipt_ym.setFocus();
  510. return;
  511. }
  512. ds_main_dutlist.clearData();
  513. if(sysf_getUserInfo("dutplceinstcd") == "032")
  514. {
  515. var sDeptcd = grp_sea.ipt_deptcd.value;
  516. if( sDeptcd == "2110500000" || sDeptcd == "2112300000" || sDeptcd == "2112400000" || sDeptcd == "2112500000" ||
  517. sDeptcd == "2112600000" || sDeptcd == "2112700000" || sDeptcd == "2112800000" || sDeptcd == "2112900000" )
  518. {
  519. ds_main_condition.setColumn(0, "deptcd", "2110000000");
  520. }
  521. }
  522. var oParam = {};
  523. oParam.id = "TRRPD30801";
  524. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  525. oParam.method = "reqGetDutyEmpListNew";
  526. oParam.inds = "req=ds_main_condition";
  527. oParam.outds = "ds_main_emplist=emplist";
  528. oParam.async = false;
  529. //oParam.callback = "cf_TRRPD30801";
  530. tranf_submit(oParam);
  531. ds_main_emplist.rowposition = -1;
  532. }
  533. function grd_emplist_oncellclick(obj:Grid, e:GridClickEventInfo)
  534. {
  535. if(ds_main_emplist.rowcount == 0) return;
  536. fGetDutList();
  537. }
  538. function fGetDutList()
  539. {
  540. if(ds_main_emplist.rowposition < 0)
  541. {
  542. misfGridInit(grd_dutlist);
  543. }
  544. else
  545. {
  546. ds_main_dutlist.clearData();
  547. ds_send.clearData();
  548. dsf_makeValue(ds_send, "instcd", "string", grp_sea.cmb_instcd.value, 0);
  549. dsf_makeValue(ds_send, "ym", "string", ds_main_condition.getColumn(0, "ym"), 0);
  550. dsf_makeValue(ds_send, "emplno", "string", ds_main_emplist.getColumn(ds_main_emplist.rowposition, "emplno"), 0);
  551. var oParam = {};
  552. oParam.id = "TRRPD30903";
  553. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  554. oParam.method = "reqGetDutyEmpListAll2";
  555. oParam.inds = "req=ds_send";
  556. oParam.outds = "ds_main_dutlist=dutlist";
  557. oParam.async = false;
  558. oParam.callback = "cf_TRRPD30903";
  559. tranf_submit(oParam);
  560. if(arErrorCode.pop("TRRPD30903") > -1)
  561. {
  562. var oParam = {};
  563. oParam.id = "TRRPD30902";
  564. oParam.service = "dligclaznsmngtapp.DutScheMngt";
  565. oParam.method = "reqGetMonDayList";
  566. oParam.inds = "req=ds_send";
  567. oParam.outds = "ds_main_daylist=daylist";
  568. oParam.async = false;
  569. oParam.callback = "cf_TRRPD30902";
  570. tranf_submit(oParam);
  571. if(arErrorCode.pop("TRRPD30902") > -1)
  572. {
  573. var iLength = ds_main_daylist.rowcount;
  574. for(var i = 1; i <= 31; i++)
  575. {
  576. grd_dutlist.setCellProperty("Head", parseInt(i+3), "text", "");
  577. for(var k = 0; k < iLength; k++)
  578. {
  579. if(ds_main_daylist.getColumn(k, "dd") == i)
  580. {
  581. grd_dutlist.setCellProperty("Head", parseInt(i+3), "text", ds_main_daylist.getColumn(k, "day"));
  582. if(ds_main_daylist.getColumn(k, "holiflag") != "8")
  583. {
  584. grd_dutlist.setCellProperty("Head", parseInt(i+3), "color", "red");
  585. grd_dutlist.setCellProperty("Head", parseInt(i+3), "font", "arial,9,bold");
  586. misfSetGridColor(grd_dutlist, "d"+i, "#faeefa", "B", "");
  587. }
  588. else
  589. {
  590. grd_dutlist.setCellProperty("Head", parseInt(i+3), "color", "balck");
  591. grd_dutlist.setCellProperty("Head", parseInt(i+3), "font", "");
  592. misfSetGridColor(grd_dutlist, "d"+i, "", "B", "");
  593. }
  594. }
  595. }
  596. }
  597. for(var i = 1; i <= 31; i++)
  598. {
  599. if(utlf_isNull(grd_dutlist.getCellProperty("Head", parseInt(i+3), "text")))
  600. {
  601. misfColHidden(grd_dutlist, "d"+i, true);
  602. }
  603. else
  604. {
  605. misfColHidden(grd_dutlist, "d"+i, false);
  606. }
  607. }
  608. }
  609. }
  610. }
  611. }
  612. function cf_TRRPD30903(sSvcId, nErrorCode, sErrorMsg)
  613. {
  614. arErrorCode.push(sSvcId, nErrorCode);
  615. if(nErrorCode < 0) return;
  616. }
  617. function cf_TRRPD30902(sSvcId, nErrorCode, sErrorMsg)
  618. {
  619. arErrorCode.push(sSvcId, nErrorCode);
  620. if(nErrorCode < 0) return;
  621. }
  622. function grd_dutlist_onheadclick(obj:Grid, e:GridClickEventInfo)
  623. {
  624. trace(e.cell)
  625. }
  626. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  627. {
  628. grdf_exportExcel(grd_dutlist, "excel", "Sheet1", "true", "", "open");
  629. }
  630. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  631. {
  632. for(var i = 1; i <= 31; i++)
  633. {
  634. dsf_makeValue(ds_print_daylist, "dy"+i, "string", grd_dutlist.getCellProperty("Head", parseInt(i+3), "text"), 0);
  635. }
  636. var iLength = ds_main_daylist.rowcount;
  637. for(var i = 1; i <= 31; i++)
  638. {
  639. dsf_makeValue(ds_print_holiflaglist, "h"+i, "string", "8", 0);
  640. for(var k = 0; k < iLength; k++)
  641. {
  642. if(ds_main_daylist.getColumn(k, "dd") == i)
  643. {
  644. ds_print_holiflaglist.setColumn(0, "h" + i, ds_main_daylist.getColumn(k, "holiflag"));
  645. }
  646. }
  647. }
  648. dsf_makeValue(ds_print, "emplno", "string", ds_main_emplist.getColumn(ds_main_emplist.rowposition, "emplno"), 0);
  649. dsf_makeValue(ds_print, "emplnm", "string", ds_main_emplist.getColumn(ds_main_emplist.rowposition, "emplnm"), 0);
  650. dsf_makeValue(ds_print, "deptnm", "string", ds_main_emplist.getColumn(ds_main_emplist.rowposition, "deptnm"), 0);
  651. dsf_makeValue(ds_print, "anual", "string", ds_main_emplist.getColumn(ds_main_emplist.rowposition, "anual"), 0);
  652. dsf_makeValue(ds_print, "ym", "string", ds_main_condition.getColumn(0, "ym"), 0);
  653. var objDOM = rptf_createDOM();
  654. rptf_setNodeListToDOM(objDOM, "/root/print", ds_print);
  655. rptf_setNodeListToDOM(objDOM, "/root/print/daylist", ds_print_daylist);
  656. rptf_setNodeListToDOM(objDOM, "/root/print/holiflaglist", ds_print_holiflaglist);
  657. rptf_setNodeListToDOM(objDOM, "/root/main/dutlist", ds_main_dutlist);
  658. var objParam = new Object();
  659. objParam.xml_data_XML1 = objDOM.documentElement.source;
  660. var option = "";
  661. rptf_exeReportPreview30(["RPRPD30901"],[objParam], option);
  662. }
  663. function grp_sea_cmb_instcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  664. {
  665. misfGridInit(grd_emplist);
  666. misfGridInit(grd_dutlist);
  667. }
  668. function grp_sea_ipt_ym_onchanged(obj:Calendar, e:ChangeEventInfo)
  669. {
  670. ds_main_condition.setColumn(0, "ym", String(obj.value).substr(0,6));
  671. ds_main_dutlist.clearData();
  672. ds_main_emplist.clearData();
  673. }
  674. function ds_main_condition_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  675. {
  676. if(e.columnid == "deptcd")
  677. {
  678. grp_sea.ipt_deptcd.value = e.newvalue;
  679. grp_sea.ipt_deptcd.setFocus();
  680. ds_main_emplist.clearData();
  681. ds_main_dutlist.clearData();
  682. grp_sea.opt_deptnm.value = "";
  683. misfValidationCheck("02", "", "deptcd,deptnm" );
  684. }
  685. if(e.columnid == "emplno")
  686. {
  687. grp_sea.ipt_emplnos.value = e.newvalue;
  688. grp_sea.ipt_emplnos.setFocus();
  689. var recv_list = "emplno,emplnm" ;
  690. rpbfValidationCheck("EMPLNO", recv_list);
  691. if (String(e.newvalue).length > 0)
  692. {
  693. grp_sea.btn_search.click();
  694. }
  695. }
  696. if(e.columnid == "emplnm")
  697. {
  698. grp_sea.ipt_emplnms.value = e.newvalue;
  699. grp_sea.ipt_emplnms.setFocus();
  700. var recv_list = "emplno,emplnm" ;
  701. rpbfValidationCheck("EMPLNM", recv_list);
  702. if (String(e.newvalue).length > 0)
  703. {
  704. grp_sea.btn_search.click();
  705. }
  706. }
  707. }
  708. function grp_sea_ipt_deptcd_onkeydown(obj:Edit, e:KeyEventInfo)
  709. {
  710. if(e.keycode == 13)
  711. {
  712. obj.updateToDataset();
  713. }
  714. }
  715. function grp_sea_btn_deptcd_onclick(obj:Button, e:ClickEventInfo)
  716. {
  717. var vOrigDeptcd = grp_sea.ipt_deptcd.value;
  718. var recv_list = "deptcd,deptnm";
  719. misfOpenPopUpList("02", grp_sea.ipt_deptcd,"", recv_list) ;
  720. if(vOrigDeptcd != grp_sea.ipt_deptcd.value)
  721. {
  722. ds_main_emplist.clearData();
  723. ds_main_dutlist.clearData();
  724. }
  725. }
  726. function grp_sea_ipt_emplnos_onkeyup(obj:Edit, e:KeyEventInfo)
  727. {
  728. if(e.keycode == 13)
  729. {
  730. obj.updateToDataset();
  731. grp_sea.btn_search.click();
  732. }
  733. }
  734. function grp_sea_ipt_emplnms_onkeyup(obj:Edit, e:KeyEventInfo)
  735. {
  736. if(e.keycode == 13)
  737. {
  738. obj.updateToDataset();
  739. grp_sea.btn_search.click();
  740. }
  741. }
  742. function grp_sea_btn_emplnos_onclick(obj:Button, e:ClickEventInfo)
  743. {
  744. var recv_list = "emplno,emplnm" ;
  745. rpbfOpenPopUpList("SPRPB00101", grp_sea.ipt_emplnos, recv_list,"1","N");
  746. if (String(grp_sea.ipt_emplnos.value).length > 0)
  747. {
  748. grp_sea.btn_search.click();
  749. }
  750. }
  751. function grp_sea_btn_search_onclick(obj:Button, e:ClickEventInfo)
  752. {
  753. fGetEmpList();
  754. }
  755. ]]></Script>
  756. </Form>
  757. </FDL>