SMRWD10100_성과급지급등록.xrw 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>성과급 지급 내역 등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list>
  11. <dutsumlist>
  12. <emplno/>
  13. <emplnm/>
  14. <dutplcedeptnm/>
  15. <payclscd/>
  16. <payclsprfshipflag/>
  17. <jobposnm/>
  18. <njobgradcd/>
  19. <holyordflag/>
  20. <entcodd/>
  21. <grade/>
  22. <baseamt/>
  23. <payitemamt/>
  24. <payym/>
  25. <saldfrayflag/>
  26. <jobposcd/>
  27. <bnemplno/>
  28. </dutsumlist>
  29. </list>
  30. </main>
  31. <send>
  32. <retrparams>
  33. <instcd/>
  34. <frdutym/>
  35. <todutym/>
  36. <dutunitcd/>
  37. <dutunitnm/>
  38. <retrflag>T</retrflag>
  39. <emplno/>
  40. <emplnm/>
  41. <deptgb/>
  42. <gb1/>
  43. <gb2/>
  44. <gb3/>
  45. <gb4/>
  46. <amtper/>
  47. <amtper2/>
  48. <amtper3/>
  49. <amtper4/>
  50. <amtper5/>
  51. <saldfrayflag/>
  52. <yymm/>
  53. <nonper/>
  54. </retrparams>
  55. <save>
  56. <dutsumlist/>
  57. </save>
  58. </send>
  59. <init/>
  60. <temp/>
  61. </root>
  62. </instance>
  63. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  64. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  65. <submission id="TRRWD10101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/retrparams" resultref="/root/main/list"/>
  66. <submission id="TXRWD10101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hidden/temp"/>
  67. </model>
  68. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  69. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  70. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  71. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  72. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  73. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  74. <script type="javascript" src="../../../mis/dligclaznsmngtweb/js/RPD001.js"/>
  75. <script type="javascript" ev:event="xforms-ready">
  76. <![CDATA[
  77. fInitialize();
  78. ]]>
  79. </script>
  80. <script type="javascript">
  81. <![CDATA[
  82. // var DUT_UNIT_CD = "";
  83. // var DUT_UNIT_NM = "";
  84. // var DUTY_RESP_YN = ""; // 복무 책임자
  85. // var DUTY_PART_YN = ""; // 인사 복무 담당자
  86. function fInitialize()
  87. {
  88. model.removenode("/root/main/list/dutsumlist");
  89. // misfComboComCdListMulti("Z0007","cmb_instcd");
  90. model.setValue("/root/send/retrparams/frdutym", getCurrentDate().substr(0, 6));
  91. model.setValue("/root/send/retrparams/yymm", getCurrentDate().toDate().getAddDate(-1,"M").getDateFormat("YYYYMM"));
  92. //model.setValue("/root/send/retrparams/todutym", getCurrentDate().substr(0, 6));
  93. misfComboInstCdListMulti("cmb_instcd", ipt_dutym.value+getCurrentDate().substr(6, 2),"","N");
  94. misfGetAndSetUserInfo();
  95. model.setValue("/root/send/retrparams/instcd", getUserInfo("dutplceinstcd"));
  96. model.setValue("/root/send/retrparams/amtper", 0);
  97. model.setValue("/root/send/retrparams/amtper2", 0);
  98. model.setValue("/root/send/retrparams/amtper3", 0);
  99. model.setValue("/root/send/retrparams/amtper4", 0);
  100. model.setValue("/root/send/retrparams/amtper5", 0);
  101. //model.setValue("/root/send/retrparams/dutunitcd", DUT_UNIT_CD);
  102. //model.setValue("/root/send/retrparams/dutunitnm", DUT_UNIT_NM);
  103. cmb_instcd.disabled = true;
  104. //model.setValue("/root/send/retrparams/deptgb", "1");
  105. model.setValue("/root/send/retrparams/gb1", "Y");
  106. model.setValue("/root/send/retrparams/saldfrayflag", "3");
  107. //grd_dutsumlist.rowHeight(0) = 22;
  108. //grd_dutsumlist.rowHeight(1) = 22;
  109. //grd_dutsumlist.rowHeight(2) = 22;
  110. btn_search.dispatch("DOMActivate");
  111. model.refresh();
  112. }
  113. ]]>
  114. </script>
  115. </xhtml:head>
  116. <xhtml:body pagewidth="1211" pageheight="784" style="margin-left:8; margin-right:8; ">
  117. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  118. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">성과급 지급 내역 등록</caption>
  119. </group>
  120. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  121. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  122. <line id="line13" class="line_4" style="x1:1110px; y1:16px; x2:1110px; y2:38px; "/>
  123. <caption id="caption278" class="tit_2" style="left:5px; top:79px; width:122px; height:13px; ">근태집계목록</caption>
  124. <line id="line207" class="line_1" style="x1:0px; y1:94px; x2:1195px; y2:94px; "/>
  125. <datagrid id="grd_dutsumlist" nodeset="/root/main/list/dutsumlist" caption="사원번호^성명^부서^호봉^호봉구분^직위^직급^직원구분^입사일^등급^본봉(기본급)^성과급^caption1^caption4^caption2^caption3" colsep="^" colwidth="101, 96, 146, 80, 88, 100, 100, 85, 88, 63, 105, 103, 100, 100, 100, 100" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" frozencols="4" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" rowsep="|" style="left:0px; top:99px; width:1195px; height:645px; border-right-color:#3366ff; ">
  126. <col disabled="true" ref="emplno" type="inputbutton" style="text-align:center; "/>
  127. <col ref="emplnm"/>
  128. <col ref="dutplcedeptnm"/>
  129. <col ref="payclscd" format="999999-9999999" style="text-align:center; "/>
  130. <col ref="payclsprfshipflag"/>
  131. <col ref="jobposnm"/>
  132. <col ref="njobgradcd"/>
  133. <col ref="holyordflag"/>
  134. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  135. <col ref="grade" type="combo">
  136. <choices>
  137. <item>
  138. <label>A등급</label>
  139. <value>A</value>
  140. </item>
  141. <item>
  142. <label>B등급</label>
  143. <value>B</value>
  144. </item>
  145. <item>
  146. <label>C등급</label>
  147. <value>C</value>
  148. </item>
  149. <item>
  150. <label>D등급</label>
  151. <value>D</value>
  152. </item>
  153. <item>
  154. <label>E등급</label>
  155. <value>E</value>
  156. </item>
  157. </choices>
  158. </col>
  159. <col ref="baseamt" format="#,###" style="text-align:right; "/>
  160. <col ref="payitemamt" type="input" format="#,###" style="text-align:right; "/>
  161. <col ref="payym" visibility="hidden"/>
  162. <col ref="saldfrayflag" visibility="hidden"/>
  163. <col ref="jobposcd" visibility="hidden"/>
  164. <col ref="bnemplno" visibility="hidden"/>
  165. <script type="javascript" ev:event="onaftersort">
  166. <![CDATA[
  167. grd_dutsumlist.gridToInstance();
  168. ]]>
  169. </script>
  170. <script type="javascript" ev:event="onbuttonclick">
  171. <![CDATA[
  172. if (grd_dutsumlist.colAttribute(grd_dutsumlist.col,"ref") == "emplno" ) { //계산기준코드
  173. var recv_list = "emplno,emplnm";
  174. rpbfOpenPopUpList("SPRPB00101", grd_dutsumlist, recv_list,"","N");
  175. model.refresh();
  176. }
  177. ]]>
  178. </script>
  179. </datagrid>
  180. <caption id="caption5" class="search_name" style="left:10px; top:19px; width:86px; height:17px; ">소속기관 :</caption>
  181. <caption id="caption1" class="search_name" style="left:250px; top:19px; width:86px; height:17px; ">지급년월 :</caption>
  182. <input id="ipt_dutym" ref="/root/send/retrparams/frdutym" class="input_search" navindex="2" inputtype="date" format="yyyy-mm" style="left:340px; top:18px; width:85px; height:19px; text-align:center; ">
  183. <script type="javascript" ev:event="xforms-value-changed">
  184. <![CDATA[
  185. var instcd = cmb_instcd.value;
  186. if( getStringLength(ipt_dutym.value) == "6" ) {
  187. model.removeNodeset(cmb_instcd.attribute("ref"));
  188. model.makeNode("/root/send/retrparams/instcd");
  189. misfComboInstCdListMulti("cmb_instcd",ipt_dutym.value+"31","","N");
  190. cmb_instcd.value = instcd;
  191. model.refresh();
  192. }
  193. btn_search.dispatch("DOMActivate");
  194. ]]>
  195. </script>
  196. </input>
  197. <select1 id="cmb_instcd" ref="/root/send/retrparams/instcd" class="combo_search" navindex="1" appearance="minimal" style="left:100px; top:18px; width:140px; height:19px; ">
  198. <choices>
  199. <itemset>
  200. <label/>
  201. <value/>
  202. </itemset>
  203. </choices>
  204. <script type="javascript" ev:event="xforms-value-changed">
  205. <![CDATA[
  206. btn_search.dispatch("DOMActivate");
  207. ]]>
  208. </script>
  209. </select1>
  210. <button id="btn_dutdept" class="icon_search" navindex="5" style="left:693px; top:20px; width:16px; height:16px; ">
  211. <caption/>
  212. <script type="javascript" ev:event="DOMActivate">
  213. <![CDATA[
  214. misfOpenPopUpList("02", ipt_dutdeptcd, "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd");
  215. model.refresh();
  216. ]]>
  217. </script>
  218. </button>
  219. <caption id="caption2" class="search_name" style="left:437px; top:19px; width:88px; height:17px; ">근무부서 :</caption>
  220. <input id="ipt_dutdeptnm" ref="/root/send/retrparams/dutunitnm" class="input_search" navindex="6" style="left:711px; top:18px; width:114px; height:19px; ">
  221. <script type="javascript" ev:event="onkeypress">
  222. <![CDATA[
  223. if(event.keyCode == 13)
  224. {
  225. if(ipt_dutdeptnm.value == ipt_dutdeptnm.currentText) return;
  226. ipt_dutdeptnm.value = ipt_dutdeptnm.currentText;
  227. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  228. model.refresh();
  229. }
  230. ]]>
  231. </script>
  232. <script type="javascript" ev:event="xforms-value-changed">
  233. <![CDATA[
  234. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  235. model.refresh();
  236. ]]>
  237. </script>
  238. </input>
  239. <input id="ipt_dutdeptcd" ref="/root/send/retrparams/dutunitcd" class="input_search" navindex="4" maxlength="10" style="left:620px; top:18px; width:70px; height:19px; text-align:center; ">
  240. <script type="javascript" ev:event="onkeypress">
  241. <![CDATA[
  242. if(event.keyCode == 13)
  243. {
  244. if(ipt_dutdeptcd.value == ipt_dutdeptcd.currentText) return;
  245. ipt_dutdeptcd.value = ipt_dutdeptcd.currentText;
  246. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  247. model.refresh();
  248. }
  249. ]]>
  250. </script>
  251. <script type="javascript" ev:event="xforms-value-changed">
  252. <![CDATA[
  253. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_instcd.value, "instcd" );
  254. model.refresh();
  255. ]]>
  256. </script>
  257. </input>
  258. <button id="btn_search" class="btn1_letter2" navindex="10" style="left:1125px; top:17px; width:56px; height:22px; ">
  259. <caption>조회</caption>
  260. <script type="javascript" ev:event="DOMActivate">
  261. <![CDATA[
  262. if (submit("TRRWD10101")){
  263. for (var i = 1; i < grd_dutsumlist.rows; i++){
  264. var emplno = model.getValue("/root/main/list/dutsumlist[" + i + "]/bnemplno");
  265. if (emplno == ""){
  266. grd_dutsumlist.rowStatus(i) = 1;
  267. }
  268. }
  269. model.refresh();
  270. }
  271. ]]>
  272. </script>
  273. </button>
  274. <select1 id="rdo_retrflag" ref="/root/send/retrparams/retrflag" visibility="hidden" overflow="visible" appearance="full" cellspacing="20" cols="2" style="left:995px; top:20px; width:100px; height:15px; border-style:none; ">
  275. <choices>
  276. <item>
  277. <label>시간</label>
  278. <value>T</value>
  279. </item>
  280. <item>
  281. <label>횟수</label>
  282. <value>C</value>
  283. </item>
  284. </choices>
  285. </select1>
  286. <button id="btn_excsave" class="btn2_letter4" style="left:1127px; top:74px; width:64px; height:19px; ">
  287. <caption>엑셀저장</caption>
  288. <script type="javascript" ev:event="DOMActivate">
  289. <![CDATA[
  290. misfSaveExcel(grd_dutsumlist);
  291. ]]>
  292. </script>
  293. </button>
  294. <caption id="caption3" class="search_name" style="left:840px; top:19px; width:63px; height:17px; ">사번 :</caption>
  295. <button id="btn_emplno" class="icon_search" navindex="8" style="left:983px; top:18px; width:16px; height:16px; ">
  296. <caption/>
  297. <script type="javascript" ev:event="DOMActivate">
  298. <![CDATA[
  299. var recv_list = "emplno,emplnm" ;
  300. rpbfOpenPopUpList("SPRPB00101", ipt_emplnos, recv_list,"","N");
  301. model.refresh();
  302. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  303. //btn_search.dispatch("DOMActivate");
  304. ipt_emplnos.dispatch("xforms-value-changed");
  305. }
  306. ]]>
  307. </script>
  308. </button>
  309. <input id="ipt_emplnos" ref="/root/send/retrparams/emplno" class="input_default" navindex="7" style="left:901px; top:18px; width:77px; height:19px; ">
  310. <script type="javascript" ev:event="onkeyup">
  311. <![CDATA[
  312. if (ipt_emplnos.currentText != null && ipt_emplnos.currentText != "" ) {
  313. inputEnterKey("ipt_emplnos", "xforms-value-changed");
  314. }
  315. ]]>
  316. </script>
  317. <script type="javascript" ev:event="xforms-value-changed">
  318. <![CDATA[
  319. var recv_list = "emplno,emplnm" ;
  320. rpbfValidationCheck("EMPLNO", recv_list);
  321. model.refresh();
  322. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  323. btn_search.dispatch("DOMActivate");
  324. }
  325. ]]>
  326. </script>
  327. </input>
  328. <input id="ipt_emplnms" ref="/root/send/retrparams/emplnm" class="input_default" navindex="9" style="left:1002px; top:18px; width:96px; height:19px; ">
  329. <script type="javascript" ev:event="onkeyup">
  330. <![CDATA[
  331. if (ipt_emplnms.currentText != null && ipt_emplnms.currentText != "" ) {
  332. inputEnterKey("ipt_emplnms", "xforms-value-changed");
  333. }
  334. ]]>
  335. </script>
  336. <script type="javascript" ev:event="xforms-value-changed">
  337. <![CDATA[
  338. var recv_list = "emplno,emplnm" ;
  339. rpbfValidationCheck("EMPLNM", recv_list);
  340. model.refresh();
  341. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  342. btn_search.dispatch("DOMActivate");
  343. }
  344. ]]>
  345. </script>
  346. </input>
  347. <button id="btn_grddelpaydedulist" class="btn2_letter3" style="left:1071px; top:74px; width:53px; height:19px; ">
  348. <caption>행삭제</caption>
  349. <script type="javascript" ev:event="DOMActivate">
  350. <![CDATA[
  351. //grd_dutsumlist.deleteRow(grd_dutsumlist.row);
  352. deleteSelectedRows(grd_dutsumlist, true);
  353. ]]>
  354. </script>
  355. </button>
  356. <button id="btn_grdaddpaydedulist" class="btn2_letter3" style="left:1015px; top:74px; width:53px; height:19px; ">
  357. <caption>행추가</caption>
  358. <script type="javascript" ev:event="DOMActivate">
  359. <![CDATA[
  360. grd_dutsumlist.addRow();
  361. model.setValue("/root/main/list/dutsumlist[" + grd_dutsumlist.row + "]/dutym", model.getValue("/root/send/retrparams/frdutym"));
  362. model.setValue("/root/main/list/dutsumlist[" + grd_dutsumlist.row + "]/appscheexecflag", "3");
  363. model.refresh();
  364. ]]>
  365. </script>
  366. </button>
  367. <select1 id="combo1" ref="/root/send/retrparams/deptgb" navindex="3" appearance="minimal" style="left:525px; top:18px; width:90px; height:19px; ">
  368. <choices>
  369. <item>
  370. <label>전체</label>
  371. <value/>
  372. </item>
  373. <item>
  374. <label>근무지</label>
  375. <value>1</value>
  376. </item>
  377. <item>
  378. <label>소속부서</label>
  379. <value>2</value>
  380. </item>
  381. <item>
  382. <label>소속과(팀)</label>
  383. <value>3</value>
  384. </item>
  385. <item>
  386. <label>소속과(실)</label>
  387. <value>4</value>
  388. </item>
  389. </choices>
  390. </select1>
  391. <bool id="bool1" navindex="18" checkvalue="Y,N" ref="/root/send/retrparams/gb1" style="left:585px; top:73px; width:25px; height:20px; "/>
  392. <caption id="caption4" style="left:610px; top:74px; width:76px; height:20px; ">시간제 제외</caption>
  393. <bool id="bool2" navindex="19" checkvalue="Y,N" ref="/root/send/retrparams/gb2" style="left:685px; top:73px; width:25px; height:20px; "/>
  394. <caption id="caption7" style="left:710px; top:74px; width:76px; height:20px; ">계약직 제외</caption>
  395. <bool id="bool3" navindex="17" checkvalue="Y,N" ref="/root/send/retrparams/gb3" style="left:475px; top:73px; width:25px; height:20px; "/>
  396. <caption id="caption8" style="left:500px; top:74px; width:76px; height:20px; ">입사 1일 기준</caption>
  397. <caption id="caption9" style="left:115px; top:49px; width:55px; height:20px; ">A지급율 :</caption>
  398. <input id="input1" ref="/root/send/retrparams/amtper" navindex="11" format="#,###" style="left:170px; top:48px; width:80px; height:19px; text-align:right; "/>
  399. <button id="button1" class="btn2_letter3" navindex="21" style="left:885px; top:74px; width:53px; height:19px; ">
  400. <caption>적용</caption>
  401. <script type="javascript" ev:event="DOMActivate">
  402. <![CDATA[
  403. if (model.getValue("/root/send/retrparams/amtper") == "" || model.getValue("/root/send/retrparams/amtper") == 0){
  404. messageBox("지급율을 입력한 후 적용하시기 바랍니다.", "E999", "");
  405. return;
  406. }
  407. var gb1 = model.getValue("/root/send/retrparams/gb1");
  408. var gb2 = model.getValue("/root/send/retrparams/gb2");
  409. var gb3 = model.getValue("/root/send/retrparams/gb3");
  410. var gb4 = model.getValue("/root/send/retrparams/gb4");
  411. var nonper = model.getValue("/root/send/retrparams/nonper");
  412. var amtper1 = model.getValue("/root/send/retrparams/amtper");
  413. var amtper2 = model.getValue("/root/send/retrparams/amtper2");
  414. var amtper3 = model.getValue("/root/send/retrparams/amtper3");
  415. var amtper4 = model.getValue("/root/send/retrparams/amtper4");
  416. var amtper5 = model.getValue("/root/send/retrparams/amtper5");
  417. if (amtper1 == null || amtper1 == ""){
  418. amtper1 = 0;
  419. }
  420. if (amtper2 == null || amtper2 == ""){
  421. amtper2 = 0;
  422. }
  423. if (amtper3 == null || amtper3 == ""){
  424. amtper3 = 0;
  425. }
  426. if (amtper4 == null || amtper4 == ""){
  427. amtper4 = 0;
  428. }
  429. if (amtper5 == null || amtper5 == ""){
  430. amtper5 = 0;
  431. }
  432. var amtper = 0;
  433. var baseamt = 0;
  434. var entcddd = "";
  435. var jobposcd = "";
  436. var yymm = model.getValue("/root/send/retrparams/frdutym").substr(0, 4);
  437. var paycnt = parseInt(model.getValue("/root/send/retrparams/yymm").substr(4, 2));
  438. var paycnt1 = 0;
  439. var entyy = "";
  440. var entmm = "";
  441. var grade = "";
  442. for (var i = 1; i < grd_dutsumlist.rows; i++){
  443. baseamt = parseFloat(model.getValue("/root/main/list/dutsumlist[" + i + "]/baseamt"));
  444. entcodd = parseFloat(model.getValue("/root/main/list/dutsumlist[" + i + "]/entcodd"));
  445. jobposcd = parseFloat(model.getValue("/root/main/list/dutsumlist[" + i + "]/jobposcd"));
  446. entyy = model.getValue("/root/main/list/dutsumlist[" + i + "]/entcodd").substr(0, 4);
  447. entmm = model.getValue("/root/main/list/dutsumlist[" + i + "]/entcodd").substr(4, 2);
  448. grade = model.getValue("/root/main/list/dutsumlist[" + i + "]/grade");
  449. paycnt1 = paycnt;
  450. if (gb3 == "Y"){
  451. if (entyy == yymm){
  452. if (entcodd.substr(6, 2) == "01"){
  453. paycnt1 = paycnt - parseInt(entmm) + 1;
  454. }else{
  455. paycnt1 = paycnt - parseInt(entmm);
  456. }
  457. }else{
  458. paycnt1 = paycnt;
  459. }
  460. }else{
  461. if (entyy == yymm){
  462. paycnt1 = paycnt - parseInt(entmm) + 1;
  463. }else{
  464. paycnt1 = paycnt;
  465. }
  466. }
  467. /*
  468. if (model.getValue("/root/main/list/dutsumlist[" + i + "]/emplno") == "20100119"){
  469. alert(paycnt + "==" + paycnt1 + "==" + baseamt);
  470. }
  471. */
  472. if (gb4 == "Y"){
  473. paycnt1 = paycnt;
  474. }
  475. if (grade == "A"){
  476. amtper = amtper1;
  477. }else if (grade == "B"){
  478. amtper = amtper2;
  479. }else if (grade == "C"){
  480. amtper = amtper3;
  481. }else if (grade == "D"){
  482. amtper = amtper4;
  483. }else if (grade == "E"){
  484. amtper = amtper5;
  485. }else{
  486. amtper = 0;
  487. }
  488. if (nonper == "Y"){
  489. amtper = amtper1;
  490. }
  491. payitemamt = parseFloat(baseamt) * parseInt(paycnt1) / parseInt(paycnt) * (parseInt(amtper) / 100);
  492. payitemamt = Math.round(parseFloat(payitemamt) / 10);
  493. payitemamt = parseFloat(payitemamt) * 10;
  494. model.setValue("/root/main/list/dutsumlist[" + i + "]/payitemamt", payitemamt);
  495. if (gb1 == "Y" && jobposcd == "1776"){
  496. model.setValue("/root/main/list/dutsumlist[" + i + "]/payitemamt", "0");
  497. }
  498. if (gb2 == "Y" && jobposcd == "1665"){
  499. model.setValue("/root/main/list/dutsumlist[" + i + "]/payitemamt", "0");
  500. }
  501. }
  502. for (var i = 1; i < grd_dutsumlist.rows; i++){
  503. var emplno = model.getValue("/root/main/list/dutsumlist[" + i + "]/bnemplno");
  504. if (emplno == ""){
  505. grd_dutsumlist.rowStatus(i) = 1;
  506. }else{
  507. grd_dutsumlist.rowStatus(i) = 2;
  508. }
  509. }
  510. model.refresh();
  511. ]]>
  512. </script>
  513. </button>
  514. <caption id="caption10" style="left:290px; top:74px; width:58px; height:20px; ">기준년월 :</caption>
  515. <input id="input2" ref="/root/send/retrparams/yymm" class="input_search" navindex="16" inputtype="date" format="yyyy-mm" style="left:350px; top:73px; width:85px; height:19px; text-align:center; ">
  516. <script type="javascript" ev:event="xforms-value-changed">
  517. <![CDATA[
  518. var instcd = cmb_instcd.value;
  519. if( getStringLength(ipt_dutym.value) == "6" ) {
  520. model.removeNodeset(cmb_instcd.attribute("ref"));
  521. model.makeNode("/root/send/retrparams/instcd");
  522. misfComboInstCdListMulti("cmb_instcd",ipt_dutym.value+"31","","N");
  523. cmb_instcd.value = instcd;
  524. model.refresh();
  525. }
  526. btn_search.dispatch("DOMActivate");
  527. ]]>
  528. </script>
  529. </input>
  530. <bool id="bool4" navindex="20" checkvalue="Y,N" ref="/root/send/retrparams/gb4" style="left:775px; top:73px; width:25px; height:20px; "/>
  531. <caption id="caption11" style="left:805px; top:74px; width:76px; height:20px; ">입사일무시</caption>
  532. <input id="input3" ref="/root/send/retrparams/amtper2" navindex="12" format="#,###" style="left:315px; top:48px; width:80px; height:19px; text-align:right; "/>
  533. <caption id="caption12" style="left:260px; top:49px; width:55px; height:20px; ">B지급율 :</caption>
  534. <caption id="caption13" style="left:405px; top:49px; width:55px; height:20px; ">C지급율 :</caption>
  535. <input id="input4" ref="/root/send/retrparams/amtper3" navindex="13" format="#,###" style="left:460px; top:48px; width:80px; height:19px; text-align:right; "/>
  536. <caption id="caption14" style="left:555px; top:49px; width:55px; height:20px; ">D지급율 :</caption>
  537. <input id="input5" ref="/root/send/retrparams/amtper4" navindex="14" format="#,###" style="left:610px; top:48px; width:80px; height:19px; text-align:right; "/>
  538. <caption id="caption15" style="left:705px; top:49px; width:55px; height:20px; ">E지급율 :</caption>
  539. <input id="input6" ref="/root/send/retrparams/amtper5" navindex="15" format="#,###" style="left:760px; top:48px; width:80px; height:19px; text-align:right; "/>
  540. <caption id="caption16" style="left:900px; top:49px; width:76px; height:20px; ">등급미적용</caption>
  541. <bool id="bool5" navindex="20" checkvalue="Y,N" ref="/root/send/retrparams/nonper" style="left:870px; top:48px; width:25px; height:20px; "/>
  542. <caption id="caption17" style="left:975px; top:47px; width:190px; height:20px; color:#ff0000; ">등급미적용시는 A등급 반영</caption>
  543. </group>
  544. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  545. <line id="line4" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  546. <button id="button36" class="btn4_letter2" style="left:1139px; top:3; width:56px; height:22px; ">
  547. <caption>저장</caption>
  548. <script type="javascript" ev:event="DOMActivate">
  549. <![CDATA[
  550. for (var i = 1; i < grd_dutsumlist.rows; i ++){
  551. if (model.getValue("/root/main/list/dutsumlist[" + i + "]/emplno") == ""){
  552. messageBox(i + "번째의 사원번호는 필수 입력항목입니다.", "E999", "");
  553. return;
  554. }
  555. }
  556. var update = getGridUpdateData(grd_dutsumlist);
  557. if(update == ""){
  558. messageBox("업데이트 정보가 없습니다.", "E999", "");
  559. return 0;
  560. } else {
  561. model.setValue("/root/send/save/dutsumlist", update);
  562. if (submit("TXRWD10101")){
  563. messageBox("정상적으로 처리되었습니다.", "E999", "");
  564. btn_search.dispatch("DOMActivate");
  565. }
  566. }
  567. ]]>
  568. </script>
  569. </button>
  570. </group>
  571. </xhtml:body>
  572. </xhtml:html>