SMRPD04302_(신)개인시간외신청.xfdl 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMRPD04302" position="absolute 0 0 1199 793" titletext="개인시간외확인(신)" oninit="SMRPD04302_oninit" onload="SMRPD04302_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="개인시간외확인(신)" class="tit_1" position="absolute 0 0 230 23"/>
  8. <Div id="group1" taborder="1" position="absolute 0 23 1195 36">
  9. <Layouts>
  10. <Layout>
  11. <Static id="caption4" class="patient_text_black"/>
  12. </Layout>
  13. </Layouts>
  14. </Div>
  15. <Grid id="grd_dutscheapplist" taborder="2" binddataset="ds_main_dutscheapp_dutscheapplist" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 0 132 1194 762" anchor="all" oncelldblclick="grd_dutscheapplist_oncelldblclick">
  16. <Formats>
  17. <Format id="default">
  18. <Columns>
  19. <Column size="23"/>
  20. <Column size="93"/>
  21. <Column size="120"/>
  22. <Column size="120"/>
  23. <Column size="60"/>
  24. <Column size="120"/>
  25. <Column size="120"/>
  26. <Column size="360"/>
  27. <Column size="80"/>
  28. <Column size="80"/>
  29. <Column size="0"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. </Columns>
  34. <Rows>
  35. <Row size="24" band="head"/>
  36. <Row size="24"/>
  37. </Rows>
  38. <Band id="head">
  39. <Cell/>
  40. <Cell col="1" text="근무코드"/>
  41. <Cell col="2" text="근무신청시작시간"/>
  42. <Cell col="3" text="근무신청종료시간"/>
  43. <Cell col="4" text="근무시간"/>
  44. <Cell col="5" text="근무확인시작시간"/>
  45. <Cell col="6" text="근무확인종료시간"/>
  46. <Cell col="7" text="신청사유"/>
  47. <Cell col="8" text="부서장승인"/>
  48. <Cell col="9" text="인사팀승인"/>
  49. <Cell col="10" text="caption1"/>
  50. <Cell col="11" text="caption2"/>
  51. <Cell col="12" text="caption3"/>
  52. <Cell col="13" text="caption4"/>
  53. </Band>
  54. <Band id="body">
  55. <Cell celltype="head"/>
  56. <Cell col="1" displaytype="combo" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:dutcd" combodataset="ds_cmb_dutcd" combocodecol="value" combodatacol="label" enable="false"/>
  57. <Cell col="2" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:appfrom" mask="####-##-## ##:##" maskchar=" " calendardisplaynulltype="nulltext" enable="false"/>
  58. <Cell col="3" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:appto" mask="####-##-## ##:##" maskchar=" " calendardisplaynulltype="nulltext"/>
  59. <Cell col="4" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:apptm" calendardisplaynulltype="nulltext"/>
  60. <Cell col="5" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:cnfrmfromdd" mask="####-##-## ##:##" maskchar=" " calendardisplaynulltype="nulltext"/>
  61. <Cell col="6" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:cnfrmtodd" mask="####-##-## ##:##" maskchar=" " calendardisplaynulltype="nulltext"/>
  62. <Cell col="7" displaytype="text" edittype="expr:deprtmangraprvyn == 'Y' ? 'none' : 'text'" style="align:left middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:appresn" editautoselect="true" enable="false"/>
  63. <Cell col="8" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:deprtmangraprvyn"/>
  64. <Cell col="9" style="align:center middle;background:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');background2:EXPR(deprtmangraprvyn == 'Y' ? '#DDDDDD' : '#FFFFFF');font:arial,9,bold;" text="bind:psnworkapryn"/>
  65. <Cell col="10" text="bind:emplno"/>
  66. <Cell col="11" text="bind:iudgb"/>
  67. <Cell col="12" text="bind:appdd"/>
  68. <Cell col="13" text="bind:dutymd"/>
  69. </Band>
  70. </Format>
  71. </Formats>
  72. </Grid>
  73. <Shape id="line2" class="line_10" position="absolute 0 127 1195 133" anchor="left top right"/>
  74. <Static id="caption8" text="개인신청내역" class="tit_2" position="absolute 0 101 165 122"/>
  75. <Button id="btn_grdadddutscheapplist" taborder="3" text="행추가" class="btn2" position="absolute 1141 108 1194 127" anchor="top right" onclick="btn_grdadddutscheapplist_onclick"/>
  76. <Button id="btn_grddeldutscheapplist" taborder="4" text="행삭제" class="btn2" visible="false" position="absolute 1087 108 1140 127" anchor="top right" onclick="btn_grddeldutscheapplist_onclick"/>
  77. <Static id="caption2" text="관리부서 :" class="search_name" visible="false" position="absolute 210 767 297 784" anchor="left bottom"/>
  78. <Combo id="cmb_dutplce" taborder="5" class="combo_search" visible="false" position="absolute 298 766 529 785" anchor="left bottom" onitemchanged="cmb_dutplce_onitemchanged"/>
  79. <Button id="btn_dutdept" taborder="6" class="icon_search" visible="false" position="absolute 650 768 666 784" anchor="left bottom" onclick="btn_dutdept_onclick"/>
  80. <Edit id="ipt_dutdeptnm" taborder="7" class="input_search" visible="false" position="absolute 670 766 797 785" anchor="left bottom"/>
  81. <Edit id="ipt_dutdeptcd" taborder="8" class="input_search" visible="false" position="absolute 566 766 646 785" anchor="left bottom" onkeyup="ipt_dutdeptcd_onkeyup"/>
  82. <Static id="caption3" text="* 이전에 입력된 근무확인시간은 개인시간외확인(출퇴근확인용)에서 조회하실 수 있습니다. [필수: 시간외신청 후에 시간외확인이 가능합니다.] &#13;&#10;* 개인시간외확인과 개인시간외확인(신) 어느 것을 사용하여도 됩니다." position="absolute 133 95 995 123" style="color:#ff0000ff;font:Dotum,9,bold;"/>
  83. <Div id="group4" taborder="9" class="div_SA2" position="absolute 0 52 1195 92" anchor="left top right">
  84. <Layouts>
  85. <Layout>
  86. <Button id="btn_search" taborder="12" text="조회" class="btn1" position="absolute 1125 9 1181 31" anchor="top right" onclick="group4_btn_search_onclick"/>
  87. <Static id="caption1" text="사원번호 :" class="search_name" position="absolute 730 10 816 27" anchor="default"/>
  88. <Button id="btn_emplno" taborder="13" class="icon_search" position="absolute 895 11 911 27" anchor="default" onclick="group4_btn_emplno_onclick"/>
  89. <Edit id="ipt_emplnm" taborder="14" class="input_search" position="absolute 915 10 1065 29" anchor="default"/>
  90. <Edit id="ipt_emplno" taborder="15" autoselect="true" autoskip="true" class="input_search" position="absolute 821 10 891 29" anchor="default" onkeyup="group4_ipt_emplno_onkeyup"/>
  91. <Combo id="cmb_instcd" taborder="16" class="combo_search" position="absolute 108 10 339 29" anchor="default"/>
  92. <Static id="caption7" text="소속기관 :" class="search_name" position="absolute 20 11 106 28" anchor="default"/>
  93. <Combo id="cmb_ymdflag" taborder="17" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_search" enable="false" position="absolute 399 10 484 29" anchor="default">
  94. <Dataset id="innerdataset">
  95. <ColumnInfo>
  96. <Column id="codecolumn"/>
  97. <Column id="datacolumn"/>
  98. </ColumnInfo>
  99. <Rows>
  100. <Row>
  101. <Col id="codecolumn">1</Col>
  102. <Col id="datacolumn">적용년월</Col>
  103. </Row>
  104. <Row>
  105. <Col id="codecolumn">2</Col>
  106. <Col id="datacolumn">신청년월</Col>
  107. </Row>
  108. </Rows>
  109. </Dataset>
  110. </Combo>
  111. <Calendar id="ipt_srvarmapfromdd" taborder="18" autoselect="true" autoskip="true" class="input_s_essential" position="absolute 489 10 589 29" mask="yyyy-mm-dd" anchor="default" onchanged="group4_ipt_srvarmapfromdd_onchanged"/>
  112. <Calendar id="ipt_srvarmaptodd" taborder="19" autoselect="true" autoskip="true" class="input_s_essential" position="absolute 605 10 705 29" mask="yyyy-mm-dd" anchor="default"/>
  113. <Static id="caption9" text="~" position="absolute 592 14 603 29" anchor="default"/>
  114. <Static id="caption10" class="search_name" position="absolute 379 11 394 28" anchor="default"/>
  115. </Layout>
  116. </Layouts>
  117. </Div>
  118. <Button id="btn_save" taborder="10" text="저장" onclick="btn_save_onclick" class="btn4" position="absolute 1139 29 1195 51" anchor="top right"/>
  119. </Layout>
  120. </Layouts>
  121. <Objects>
  122. <Dataset id="ds_send_dutscheapp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_dutscheapp_oncolumnchanged">
  123. <ColumnInfo>
  124. <Column id="instcd" type="STRING" size="256"/>
  125. <Column id="srvarmapdd" type="STRING" size="256"/>
  126. <Column id="emplno" type="STRING" size="256"/>
  127. <Column id="emplnm" type="STRING" size="256"/>
  128. <Column id="dutunitcd" type="STRING" size="256"/>
  129. <Column id="dutunitnm" type="STRING" size="256"/>
  130. <Column id="newElement" type="STRING" size="256"/>
  131. <Column id="srvarmapfromdd" type="STRING" size="256"/>
  132. <Column id="srvarmaptodd" type="STRING" size="256"/>
  133. <Column id="ymdflag" type="STRING" size="256"/>
  134. </ColumnInfo>
  135. <Rows>
  136. <Row>
  137. <Col id="instcd"/>
  138. <Col id="srvarmapdd"/>
  139. <Col id="emplno"/>
  140. <Col id="emplnm"/>
  141. <Col id="dutunitcd"/>
  142. <Col id="dutunitnm"/>
  143. <Col id="newElement"/>
  144. <Col id="srvarmapfromdd"/>
  145. <Col id="srvarmaptodd"/>
  146. <Col id="ymdflag">2</Col>
  147. </Row>
  148. </Rows>
  149. </Dataset>
  150. <Dataset id="ds_tempday_dutinfo_dutlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  151. <Dataset id="ds_send_dutcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  152. <ColumnInfo>
  153. <Column id="instcd" type="STRING" size="256"/>
  154. <Column id="dutunitcd" type="STRING" size="256"/>
  155. <Column id="dutunitnm" type="STRING" size="256"/>
  156. </ColumnInfo>
  157. <Rows>
  158. <Row>
  159. <Col id="instcd"/>
  160. <Col id="dutunitcd"/>
  161. <Col id="dutunitnm"/>
  162. </Row>
  163. </Rows>
  164. </Dataset>
  165. <Dataset id="ds_main_dutscheapp_dutscheapplist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_dutscheapp_dutscheapplist_oncolumnchanged">
  166. <ColumnInfo>
  167. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  168. <Column id="dutcd" type="STRING" size="256" sumtext="근무코드"/>
  169. <Column id="appfrom" type="STRING" size="256" sumtext="신청시작일자"/>
  170. <Column id="appto" type="STRING" size="256" sumtext="신청종료일자"/>
  171. <Column id="apptm" type="STRING" size="256" sumtext="근무시간"/>
  172. <Column id="appresn" type="STRING" size="256" sumtext="신청사유"/>
  173. <Column id="deprtmangraprvyn" type="STRING" size="256" sumtext="부서장승인여부"/>
  174. <Column id="psnworkapryn" type="STRING" size="256" sumtext="인사팀승인"/>
  175. <Column id="emplno" type="STRING" size="256" sumtext="사원번호"/>
  176. <Column id="appdd" type="STRING" size="256" sumtext="사원번호"/>
  177. <Column id="dutymd" type="STRING" size="256" sumtext="사원번호"/>
  178. <Column id="iudgb" type="STRING" size="256" sumtext="수정여부"/>
  179. <Column id="cnfrmfromdd" type="STRING" size="256" sumtext="확인시작일자"/>
  180. <Column id="cnfrmtodd" type="STRING" size="256" sumtext="확인종료일자"/>
  181. </ColumnInfo>
  182. </Dataset>
  183. <Dataset id="ds_cmb_dutcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="label" type="STRING" size="256"/>
  186. <Column id="value" type="STRING" size="256"/>
  187. </ColumnInfo>
  188. <Rows>
  189. <Row>
  190. <Col id="label">시간외</Col>
  191. <Col id="value">01</Col>
  192. </Row>
  193. <Row>
  194. <Col id="label">휴일</Col>
  195. <Col id="value">03</Col>
  196. </Row>
  197. <Row>
  198. <Col id="label">CALL</Col>
  199. <Col id="value">04</Col>
  200. </Row>
  201. <Row>
  202. <Col id="label">야간(영양실포함)</Col>
  203. <Col id="value">06</Col>
  204. </Row>
  205. </Rows>
  206. </Dataset>
  207. <Dataset id="ds_main_authlist_auth" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  208. <Dataset id="ds_init_combocd_combocdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  209. <Dataset id="ds_init_cmb_dutplce_combocodelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  210. <Dataset id="ds_temp_userinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  211. </Objects>
  212. <Bind>
  213. <BindItem id="item0" compid="group4.cmb_instcd" propid="value" datasetid="ds_send_dutscheapp" columnid="instcd"/>
  214. <BindItem id="item1" compid="group4.cmb_ymdflag" propid="value" datasetid="ds_send_dutscheapp" columnid="ymdflag"/>
  215. <BindItem id="item2" compid="group4.ipt_srvarmapfromdd" propid="value" datasetid="ds_send_dutscheapp" columnid="srvarmapfromdd"/>
  216. <BindItem id="item3" compid="group4.ipt_srvarmaptodd" propid="value" datasetid="ds_send_dutscheapp" columnid="srvarmaptodd"/>
  217. <BindItem id="item4" compid="group4.ipt_emplno" propid="value" datasetid="ds_send_dutscheapp" columnid="emplno"/>
  218. <BindItem id="item5" compid="group4.ipt_emplnm" propid="value" datasetid="ds_send_dutscheapp" columnid="emplnm"/>
  219. <BindItem id="item6" compid="cmb_dutplce" propid="value" datasetid="ds_send_dutscheapp" columnid="dutunitcd"/>
  220. <BindItem id="item7" compid="ipt_dutdeptcd" propid="value" datasetid="ds_send_dutscheapp" columnid="dutunitcd"/>
  221. <BindItem id="item8" compid="ipt_dutdeptnm" propid="value" datasetid="ds_send_dutscheapp" columnid="dutunitnm"/>
  222. </Bind>
  223. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  224. * System Name :
  225. * Job Name :
  226. * Creator :
  227. * Make Date : 2017-06-19
  228. * Description :
  229. *---------------------------------------------------------------------------------------
  230. * Modify Date Modifier Modify Description
  231. *---------------------------------------------------------------------------------------
  232. * 2017-06-19 Live Converter TF->XP
  233. *
  234. *---------------------------------------------------------------------------------------
  235. ****************************************************************************************/
  236. include "com_commonxp::comm_main.xjs";
  237. include "mis_miscommonxp::MIS.xjs";
  238. include "mis_humtrafactmngtxp::RPB001.xjs";
  239. include "mis_dligclaznsmngtxp::RPD001.xjs";
  240. var DUT_UNIT_CD = "";
  241. var DUT_UNIT_NM = "";
  242. function SMRPD04302_oninit(obj:Form, e:InitEventInfo)
  243. {
  244. frmf_initForm(obj);
  245. }
  246. function SMRPD04302_onload(obj:Form, e:LoadEventInfo)
  247. {
  248. grdf_initGrid(grd_dutscheapplist);
  249. grdf_setRowTypeIcon(grd_dutscheapplist, 0);
  250. fInit();
  251. }
  252. function fInit()
  253. {
  254. misfGridInit(grd_dutscheapplist);
  255. var dt = new Date(String(utlf_getCurrentDate()).substr(0, 4), String(utlf_getCurrentTime()).substr(4, 2), 0);
  256. var oParam = {};
  257. oParam.id = "TRRPD10102";
  258. oParam.service = "dligclaznsmngtapp.DutAppMngt";
  259. oParam.method = "reqGetDutymdInfo";
  260. oParam.inds = "req=ds_send_dutscheapp";
  261. oParam.outds = "ds_tempday_dutinfo_dutlist=dutlist";
  262. oParam.async = false;
  263. //oParam.callback = "cf_TRRPD10102";
  264. tranf_submit(oParam);
  265. group4.ipt_srvarmapfromdd.value = ds_tempday_dutinfo_dutlist.getColumn(0, "fromymd");
  266. group4.ipt_srvarmaptodd.value = ds_tempday_dutinfo_dutlist.getColumn(0, "toymd");
  267. misfComboInstCdListMulti("group4.cmb_instcd",group4.ipt_srvarmapfromdd.value,"","N");
  268. misfGetAndSetUserInfo();
  269. misfGetUserAuth();
  270. rpdfSetControlAuth();
  271. rpdfSetDutUnitCombo();
  272. cmb_dutplce.visible = false;
  273. ds_send_dutscheapp.setColumn(0, "instcd", sysf_getUserInfo("dutplceinstcd"));
  274. ds_send_dutscheapp.setColumn(0, "emplno", sysf_getUserInfo("userid"));
  275. ds_send_dutscheapp.setColumn(0, "emplnm", sysf_getUserInfo("usernm"));
  276. ds_send_dutscheapp.setColumn(0, "dutunitcd", DUT_UNIT_CD);
  277. ds_send_dutscheapp.setColumn(0, "dutunitnm", DUT_UNIT_NM);
  278. ds_send_dutcd.setColumn(0, "dutunitcd", DUT_UNIT_CD);
  279. ds_send_dutcd.setColumn(0, "dutunitnm", DUT_UNIT_NM);
  280. group4_btn_search_onclick();
  281. rpdfSetControlByJobRespCd("group4.ipt_emplno,group4.btn_emplno,group4.ipt_emplnm");
  282. group4.btn_search.enable = !(frmf_checkAuth("R"));
  283. group4.ipt_emplno.enable = false;
  284. group4.btn_emplno.enable = false;
  285. group4.ipt_emplnm.enable = false;
  286. if(sysf_getUserInfo("userid") == "MIS" || DUTY_PART_YN == "Y")
  287. {
  288. group4.ipt_emplno.enable = true;
  289. group4.btn_emplno.enable = true;
  290. group4.ipt_emplnm.enable = true;
  291. }
  292. }
  293. function group4_ipt_srvarmapfromdd_onchanged(obj:Calendar, e:ChangeEventInfo)
  294. {
  295. var instcd = group4.cmb_instcd.value;
  296. if( utlf_getStringLength(obj.value) == "8" )
  297. {
  298. ds_send_dutscheapp.setColumn(0, "instcd", "");
  299. misfComboInstCdListMulti("group4.cmb_instcd",obj.value,"","N");
  300. ds_send_dutscheapp.setColumn(0, "instcd", instcd);
  301. }
  302. }
  303. function group4_btn_search_onclick(obj:Button, e:ClickEventInfo)
  304. {
  305. fRetrieve();
  306. }
  307. function group4_ipt_emplno_onkeyup(obj:Edit, e:KeyEventInfo)
  308. {
  309. if(e.keycode == 13)
  310. {
  311. obj.updateToDataset();
  312. }
  313. }
  314. function group4_btn_emplno_onclick(obj:Button, e:ClickEventInfo)
  315. {
  316. rpbfOpenPopUpList("SPRPB00101", group4.ipt_emplno.value, "group4.emplno,group4.emplnm,group4.dutunitcd,group4.dutunitnm", "", "N");
  317. ds_send_dutcd.setColumn(0, "dutunitcd", ds_send_dutscheapp.getColumn(0, "dutunitcd"));
  318. ds_send_dutcd.setColumn(0, "dutunitnm", ds_send_dutscheapp.getColumn(0, "dutunitnm"));
  319. }
  320. function fRetrieve()
  321. {
  322. ds_send_dutcd.setColumn(0, "instcd", ds_send_dutscheapp.getColumn(0, "instcd"));
  323. var oParam = {};
  324. oParam.id = "TRRPD04304";
  325. oParam.service = "dligclaznsmngtapp.DutAppMngt";
  326. oParam.method = "reqGetDutOverAppNewList";
  327. oParam.inds = "req=ds_send_dutscheapp";
  328. oParam.outds = "ds_main_dutscheapp_dutscheapplist=dutscheapplist";
  329. oParam.async = false;
  330. //oParam.callback = "cf_TRRPD04304";
  331. tranf_submit(oParam);
  332. for(var i = 1; i < ds_main_dutscheapp_dutscheapplist.rowcount; i++)
  333. {
  334. var sCnfmYn = ds_main_dutscheapp_dutscheapplist.getColumn(i, "deprtmangraprvyn");
  335. if(sCnfmYn == "Y")
  336. {
  337. misfSetReadOnlyCol(grd_dutscheapplist, "dutcd,srvarmappdd,srvarmfromdd,srvarmtodd,appresn", true, i);
  338. }
  339. else
  340. {
  341. misfSetReadOnlyCol(grd_dutscheapplist, "dutcd,srvarmappdd,srvarmfromdd,srvarmtodd,appresn", false, i);
  342. }
  343. }
  344. }
  345. function ds_main_dutscheapp_dutscheapplist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  346. {
  347. // if(utlf_isNull(obj.getColumn(e.row, "dutcd")))
  348. // {
  349. // sysf_messageBox("근무코드를 선택한 후 진행하시기 바랍니다.", "E999", "");
  350. //
  351. // obj.setColumn(e.row, "cnfrmfromdd", "");
  352. // obj.setColumn(e.row, "cnfrmtodd", "");
  353. // return;
  354. // }
  355. //
  356. // var dutcd = obj.getColumn(e.row, "dutcd");
  357. // var cnfrmfromdd = obj.getColumn(e.row, "cnfrmfromdd");
  358. // var cnfrmtodd = obj.getColumn(e.row, "cnfrmtodd");
  359. //
  360. // if(dutcd == "02" || dutcd == "03" || dutcd == "04")
  361. // {
  362. // if(!utlf_isNull(cnfrmfromdd))
  363. // {
  364. // if(String(obj.getColumn(e.row, "cnfrmfromdd")).length != "12")
  365. // {
  366. // sysf_messageBox("시작시간이 잘못 입력되었습니다.", "E999", "");
  367. //
  368. // obj.setColumn(e.row, "cnfrmfromdd", "");
  369. // return;
  370. // }
  371. // obj.setColumn(e.row, "appfrom", cnfrmfromdd);
  372. // }
  373. //
  374. // if(!utlf_isNull(cnfrmtodd))
  375. // {
  376. // if(String(obj.getColumn(e.row, "cnfrmtodd")).length != "12")
  377. // {
  378. // sysf_messageBox("종료시간이 잘못 입력되었습니다.", "E999", "");
  379. // obj.setColumn(e.row, "cnfrmtodd", "");
  380. // return;
  381. // }
  382. // obj.setColumn(e.row, "appto", cnfrmfromdd);
  383. // }
  384. // }
  385. // else
  386. // {
  387. // sysf_messageBox("야간, Call, 휴일 이외의 근무는 등록할수 없습니다.", "E999", "");
  388. //
  389. // obj.setColumn(e.row, "cnfrmfromdd", "");
  390. // obj.setColumn(e.row, "cnfrmtodd", "");
  391. // obj.setColumn(e.row, "appfrom", "");
  392. // obj.setColumn(e.row, "appto", "");
  393. // return;
  394. // }
  395. if(e.columnid == "dutcd")
  396. {
  397. if(e.newvalue == "02" || e.newvalue == "03" || e.newvalue == "04")
  398. {
  399. }
  400. else
  401. {
  402. sysf_messageBox("야간, Call, 휴일 이외의 근무는 등록할수 없습니다.", "E999", "");
  403. obj.setColumn(e.row, "cnfrmfromdd", "");
  404. obj.setColumn(e.row, "cnfrmtodd", "");
  405. obj.setColumn(e.row, "appfrom", "");
  406. obj.setColumn(e.row, "appto", "");
  407. return;
  408. }
  409. }
  410. }
  411. function grd_dutscheapplist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  412. {
  413. var dutcd = ds_main_dutscheapp_dutscheapplist.getColumn(e.row, "dutcd");
  414. if(ds_main_dutscheapp_dutscheapplist.getRowType(e.row) == "2")
  415. {
  416. if(!(dutcd == "02" || dutcd == "03" || dutcd == "04"))
  417. {
  418. sysf_messageBox("야간, Call, 휴일 이외의 근무는 등록할수 없습니다.", "E999", "");
  419. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd", "");
  420. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd", "");
  421. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom", "");
  422. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto", "");
  423. return;
  424. }
  425. if (e.col == obj.getBindCellIndex("Body", "cnfrmfromdd"))
  426. {
  427. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  428. if(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd") > ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd") && !utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd")))
  429. {
  430. sysf_messageBox("시작시간이 종료시간보다 늦을수 없습니다.", "E999", "");
  431. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd", "");
  432. return;
  433. }
  434. var cnfrmfromdd = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd");
  435. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom", cnfrmfromdd);
  436. }
  437. if (e.col == obj.getBindCellIndex("Body", "cnfrmtodd"))
  438. {
  439. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom")))
  440. {
  441. sysf_messageBox("시작시간을 먼저 설정하시기 바랍니다.", "E999", "");
  442. return;
  443. }
  444. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  445. var cnfrmtodd = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd");
  446. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto", cnfrmtodd);
  447. var appfrom = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom");
  448. var appto = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"));
  449. var frDate = appfrom.substr(0, 8);
  450. var frTime = appfrom.substr(8, 4);
  451. var toDate = appto.substr(0, 8);
  452. var toTime = appto.substr(8, 4);
  453. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  454. var dutTime_v = parseInt(dutTime / 60);
  455. var dutMin_v = dutTime % 60;
  456. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "apptm", dutTime_v);
  457. }
  458. }
  459. else
  460. {
  461. if(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "iudgb") != "U")
  462. {
  463. var yoil = ds_tempday_dutinfo_dutlist.getColumn(0, "yoil");
  464. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "dutcd")))
  465. {
  466. sysf_messageBox("근무코드를 선택한 후 진행하시기 바랍니다.", "E999", "");
  467. return;
  468. }
  469. if (yoil == 8 && ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "dutcd") == "03")
  470. {
  471. if (DUT_PLCEDEPT_CD == "4060100000" || DUT_PLCEDEPT_CD == "3250100000")
  472. {
  473. }
  474. else
  475. {
  476. sysf_messageBox("평일은 휴일 근무를 선택할 수 없습니다.", "E999", "");
  477. return;
  478. }
  479. }
  480. if (e.col == obj.getBindCellIndex("Body","appfrom" ))
  481. {
  482. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom")))
  483. {
  484. if (yoil == "8")
  485. {
  486. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  487. }
  488. else
  489. {
  490. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  491. }
  492. }
  493. }
  494. if (e.col == obj.getBindCellIndex("Body", "appto"))
  495. {
  496. if (yoil != "8")
  497. {
  498. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom")))
  499. {
  500. sysf_messageBox("시작시간을 먼저 설정하시기 바랍니다.", "E999", "");
  501. return;
  502. }
  503. }
  504. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  505. var appfrom = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom");
  506. var appto = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"));
  507. var frDate = appfrom.substr(0, 8);
  508. var frTime = appfrom.substr(8, 4);
  509. var toDate = appto.substr(0, 8);
  510. var toTime = appto.substr(8, 4);
  511. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  512. var dutTime_v = parseInt(dutTime / 60);
  513. var dutMin_v = dutTime % 60;
  514. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "apptm", dutTime_v);
  515. }
  516. }
  517. else
  518. {
  519. if (e.col == obj.getBindCellIndex("Body", "appto"))
  520. {
  521. if (yoil != "8")
  522. {
  523. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom")))
  524. {
  525. sysf_messageBox("시작시간을 먼저 설정하시기 바랍니다.", "E999", "");
  526. return;
  527. }
  528. }
  529. if(utlf_isNull(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto")))
  530. {
  531. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto", utlf_getCurrentDate()+String(utlf_getCurrentTime()).substr(0,4));
  532. var appfrom = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom"));
  533. var appto = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"));
  534. var frDate = appfrom.substr(0, 8);
  535. var frTime = appfrom.substr(8, 4);
  536. var toDate = appto.substr(0, 8);
  537. var toTime = appto.substr(8, 4);
  538. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  539. var dutTime_v = parseInt(dutTime / 60);
  540. var dutMin_v = dutTime % 60;
  541. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "apptm", dutTime_v);
  542. }
  543. }
  544. }
  545. var curdate = utlf_getCurrentDate() + String(utlf_getCurrentTime()).substr(0,4);
  546. if(e.col == obj.getBindCellIndex("Body", "cnfrmfromdd"))
  547. {
  548. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmfromdd", curdate);
  549. if(ds_main_dutscheapp_dutscheapplist.getRowType(ds_main_dutscheapp_dutscheapplist.rowposition) != 2)
  550. {
  551. ds_main_dutscheapp_dutscheapplist.updatecontrol = false;
  552. ds_main_dutscheapp_dutscheapplist.setRowType(ds_main_dutscheapp_dutscheapplist.rowposition, "u")
  553. ds_main_dutscheapp_dutscheapplist.updatecontrol = true;
  554. }
  555. }
  556. if(e.col == obj.getBindCellIndex("Body", "cnfrmtodd"))
  557. {
  558. var curdatehalf = utlf_getCurrentDate() + String(utlf_getCurrentTime()).substr(0,3)+"0";
  559. if( curdate < ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"))
  560. {
  561. var req = sysf_messageBox("선택하신 행의 근무신청종료시간이 다릅니다. \n근무확인종료시간으로 변경", "S001");
  562. if( req == 6 )
  563. {
  564. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd", curdatehalf);
  565. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto", curdatehalf);
  566. if(ds_main_dutscheapp_dutscheapplist.getRowType(ds_main_dutscheapp_dutscheapplist.rowposition) != 2)
  567. {
  568. ds_main_dutscheapp_dutscheapplist.updatecontrol = false;
  569. ds_main_dutscheapp_dutscheapplist.setRowType(ds_main_dutscheapp_dutscheapplist.rowposition, "u")
  570. ds_main_dutscheapp_dutscheapplist.updatecontrol = true;
  571. }
  572. // grd_dutscheapplist.cellstyle("color", grd_dutscheapplist.row, 3, grd_dutscheapplist.row, 3) = "#FF0000";
  573. // grd_dutscheapplist.cellstyle("color", grd_dutscheapplist.row, 6, grd_dutscheapplist.row, 6) = "#FF0000";
  574. var appfrom = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom"));
  575. var appto = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"));
  576. var frDate = appfrom.substr(0, 8);
  577. var frTime = appfrom.substr(8, 4);
  578. var toDate = appto.substr(0, 8);
  579. var toTime = appto.substr(8, 4);
  580. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  581. var dutTime_v = parseInt(dutTime / 60);
  582. var dutMin_v = dutTime % 60;
  583. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "apptm", dutTime_v);
  584. }
  585. else
  586. {
  587. return;
  588. }
  589. }
  590. else
  591. {
  592. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "cnfrmtodd", curdatehalf);
  593. if(ds_main_dutscheapp_dutscheapplist.getRowType(ds_main_dutscheapp_dutscheapplist.rowposition) != 2)
  594. {
  595. ds_main_dutscheapp_dutscheapplist.updatecontrol = false;
  596. ds_main_dutscheapp_dutscheapplist.setRowType(ds_main_dutscheapp_dutscheapplist.rowposition, "u")
  597. ds_main_dutscheapp_dutscheapplist.updatecontrol = true;
  598. }
  599. var appfrom = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom"));
  600. var appto = String(ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto"));
  601. var frDate = appfrom.substr(0, 8);
  602. var frTime = appfrom.substr(8, 4);
  603. var toDate = appto.substr(0, 8);
  604. var toTime = appto.substr(8, 4);
  605. var dutTime = rpdfGetCalcDutyTime(frDate, frTime, toDate, toTime);
  606. var dutTime_v = parseInt(dutTime / 60);
  607. var dutMin_v = dutTime % 60;
  608. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "apptm", dutTime_v);
  609. }
  610. }
  611. }
  612. }
  613. function btn_grddeldutscheapplist_onclick(obj:Button, e:ClickEventInfo)
  614. {
  615. var iRowIdx = ds_main_dutscheapp_dutscheapplist.rowposition;
  616. var sCnfmYn = ds_main_dutscheapp_dutscheapplist.getColumn(iRowIdx, "deprtmangraprvyn");
  617. var sCnfm2Yn = ds_main_dutscheapp_dutscheapplist.getColumn(iRowIdx, "psnworkapryn");
  618. if(sCnfmYn == "Y" || sCnfm2Yn == "Y")
  619. {
  620. sysf_messageBox("부서장이나 인사팀 승인이 난 내역은 삭제 할 수 없습니다.", "I999");
  621. return;
  622. }
  623. else
  624. {
  625. ds_main_dutscheapp_dutscheapplist.updatecontrol = false;
  626. ds_main_dutscheapp_dutscheapplist.setRowType(iRowIdx, "d");
  627. ds_main_dutscheapp_dutscheapplist.updatecontrol = true;
  628. }
  629. }
  630. function btn_grdadddutscheapplist_onclick(obj:Button, e:ClickEventInfo)
  631. {
  632. if(utlf_isNull(group4.ipt_emplno.value)|| utlf_isNull(group4.ipt_emplnm.value))
  633. {
  634. sysf_messageBox("사원번호를", "C001");
  635. return;
  636. }
  637. var ymd = utlf_getCurrentDate() + utlf_getCurrentTime();
  638. var row = ds_main_dutscheapp_dutscheapplist.addRow();
  639. //misfGridIUD(grd_dutscheapplist,"A");
  640. dsf_makeValue(ds_main_dutscheapp_dutscheapplist, "deprtmangraprvyn", "string", "N", row);
  641. dsf_makeValue(ds_main_dutscheapp_dutscheapplist, "psnworkapryn", "string", "N", row);
  642. dsf_makeValue(ds_main_dutscheapp_dutscheapplist, "appdd", "string", utlf_getCurrentDate(), row);
  643. dsf_makeValue(ds_main_dutscheapp_dutscheapplist, "dutymd", "string", String(ymd).substr(0,12), row);
  644. dsf_makeValue(ds_main_dutscheapp_dutscheapplist, "emplno", "string", ds_send_dutscheapp.getColumn(0, "emplno"), row);
  645. ds_main_dutscheapp_dutscheapplist.setColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "emplno", ds_send_dutscheapp.getColumn(0, "emplno"));
  646. grd_dutscheapplist.setCellPos(grd_dutscheapplist.getBindCellIndex("Body", "dutcd"));
  647. grd_dutscheapplist.showEditor(true);
  648. }
  649. function cmb_dutplce_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  650. {
  651. ds_send_dutcd.setColumn(0, "dutunitcd", obj.value);
  652. group4_btn_search_onclick();
  653. }
  654. function ipt_dutdeptcd_onkeyup(obj:Edit, e:KeyEventInfo)
  655. {
  656. if(event.keyCode == 13)
  657. {
  658. obj.updateToDataset();
  659. misfValidationCheck("02", "", "dutunitcd,dutunitnm", group4.cmb_instcd.value, "instcd" );
  660. ds_send_dutcd.setColumn(0, "dutunitcd", ds_send_dutscheapp.getColumn(0, "dutunitcd"));
  661. }
  662. }
  663. function btn_dutdept_onclick(obj:Button, e:ClickEventInfo)
  664. {
  665. misfOpenPopUpList("02", ds_send_dutscheapp,"","dutunitcd,dutunitnm", group4.cmb_instcd.value + "," + group4.ipt_srvarmaptodd.value, "instcd,basedd");
  666. ds_send_dutcd.setColumn(0, "dutunitcd", ds_send_dutscheapp.getColumn(0, "dutunitcd"));
  667. }
  668. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  669. {
  670. fSave();
  671. fRetrieve();
  672. }
  673. function fSave()
  674. {
  675. fSetHoliLen();
  676. var yoil = ds_tempday_dutinfo_dutlist.getColumn(0, "yoil");
  677. for(var i = 0; i < ds_main_dutscheapp_dutscheapplist.rowcount; i++)
  678. {
  679. var iudgb = ds_main_dutscheapp_dutscheapplist.getColumn(i, "iudgb");
  680. if (iudgb != "U")
  681. {
  682. var sapptm = ds_main_dutscheapp_dutscheapplist.getColumn(i, "apptm");
  683. var sDutCd = ds_main_dutscheapp_dutscheapplist.getColumn(i, "dutcd");
  684. var sFromDD = ds_main_dutscheapp_dutscheapplist.getColumn(i, "appfrom");
  685. var sToDD = ds_main_dutscheapp_dutscheapplist.getColumn(i, "appto");
  686. var sAppResn = ds_main_dutscheapp_dutscheapplist.getColumn(i, "appresn");
  687. var sCnfmYn = ds_main_dutscheapp_dutscheapplist.getColumn(i, "deprtmangraprvyn");
  688. var sCnfm2Yn = ds_main_dutscheapp_dutscheapplist.getColumn(i, "psnworkapryn");
  689. if (sDutCd == "03")
  690. {
  691. if (yoil == "0" && parseInt(sapptm) < 9)
  692. {
  693. sysf_messageBox("휴일근무는 9시간이 넘어야 가능합니다. 시간외로 신청바랍니다.", "E999", "");
  694. return;
  695. }
  696. }
  697. }
  698. else
  699. {
  700. if (ds_main_dutscheapp_dutscheapplist.getRowType(i) == 8)
  701. {
  702. if(sCnfmYn == "Y" || sCnfm2Yn == "Y")
  703. {
  704. sysf_messageBox("부서장이나 인사팀 승인이 난 내역은 수정 할 수 없습니다.", "I999");
  705. return;
  706. }
  707. }
  708. }
  709. }
  710. var oParam = {};
  711. oParam.id = "TXRPD04303";
  712. oParam.service = "dligclaznsmngtapp.DutAppMngt";
  713. oParam.method = "reqExeSaveDutOverAppNewList";
  714. oParam.inds = "req=ds_main_dutscheapp_dutscheapplist:u";
  715. oParam.outds = "";
  716. oParam.async = false;
  717. oParam.callback = "cf_TXRPD04303";
  718. tranf_submit(oParam);
  719. }
  720. function cf_TXRPD04303(sSvcId, nErrorCode, sErrorMsg)
  721. {
  722. if(nErrorCode < 0)
  723. {
  724. return;
  725. }
  726. else
  727. {
  728. // for(var i = 1; i < grd_dutscheapplist.rows; i++){
  729. // grd_dutscheapplist.cellstyle("color", i, 3, i, 3) = "#000000";
  730. // grd_dutscheapplist.cellstyle("color", i, 6, i, 6) = "#000000";
  731. // }
  732. }
  733. }
  734. function fSetHoliLen()
  735. {
  736. var sFromDD = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appfrom");
  737. var sToDD = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "appto");
  738. var sDutCd = ds_main_dutscheapp_dutscheapplist.getColumn(ds_main_dutscheapp_dutscheapplist.rowposition, "dutcd");
  739. if (!utlf_isNull(sFromDD) && !utlf_isNull(sToDD))
  740. {
  741. if (sFromDD > sToDD)
  742. {
  743. sysf_messageBox("기간 설정이 잘못 입력되었습니다.", "E999", "");
  744. return;
  745. }
  746. }
  747. }
  748. function ds_send_dutscheapp_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  749. {
  750. if(e.columnid == "emplno"){
  751. var setFocus = this.getFocus();
  752. group4.ipt_emplno.setFocus();
  753. rpbfValidationCheck("EMPLNO", "emplno,emplnm,dutunitcd,dutunitnm");
  754. ds_send_dutcd.setColumn(0, "dutunitcd", ds_send_dutscheapp.getColumn(0, "dutunitcd"));
  755. ds_send_dutcd.setColumn(0, "dutunitnm", ds_send_dutscheapp.getColumn(0, "dutunitnm"));
  756. setFocus.setFocus();
  757. group4_btn_search_onclick();
  758. }
  759. }
  760. ]]></Script>
  761. </Form>
  762. </FDL>