SMRPH00200_승진조서등록.xrw 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/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. <grd01>
  11. <instcd/>
  12. <deptnm/>
  13. <emplno/>
  14. <emplnm/>
  15. <jobrespnm/>
  16. <jobposnm/>
  17. <appjobkindnm/>
  18. <prestgradnm/>
  19. <promotnjobgradnm/>
  20. <anual/>
  21. <promotnflagnm/>
  22. <valuestartdd/>
  23. <promotngvnoffcorddd/>
  24. <trgtno/>
  25. <trgtpsncnfmyn/>
  26. <satpassyn/>
  27. <scrngvaluym/>
  28. <promotnflag/>
  29. <promotnjobgrad/>
  30. <promotnimpsiresncd/>
  31. <promotnimpsiresn/>
  32. <cmt/>
  33. <deptcd/>
  34. <teamcd/>
  35. <unitcd/>
  36. <appjobkindcd/>
  37. <jobposcd/>
  38. <jobrespcd/>
  39. <prestgradcd/>
  40. <payclscd/>
  41. <prestgradgvnoffcorddd/>
  42. <entcodd/>
  43. <grupjoblncd/>
  44. <joblncd/>
  45. <autpromotndd/>
  46. <spclpromotndd/>
  47. <preststatcd/>
  48. <brthdd/>
  49. <gndr/>
  50. <prestgradanualcnt/>
  51. <contanualcnt/>
  52. <lastvalupnt/>
  53. <lastpstpnt/>
  54. <lastprizrpmdpnt/>
  55. <lastetcpnt/>
  56. <lastpnt/>
  57. <lastrank/>
  58. <promotnyn/>
  59. <valuegrad1/>
  60. <valuegrad2/>
  61. <valuegrad3/>
  62. <valuegrad4/>
  63. <valuegrad5/>
  64. <valuepnt1/>
  65. <valuepnt2/>
  66. <valuepnt3/>
  67. <valuepnt4/>
  68. <valuepnt5/>
  69. <gvnoffcordtretyn/>
  70. </grd01>
  71. <listdetail>
  72. <instcd/>
  73. <deptnm/>
  74. <emplno/>
  75. <emplnm/>
  76. <jobrespnm/>
  77. <jobposnm/>
  78. <appjobkindnm/>
  79. <prestgradnm/>
  80. <anual/>
  81. <valuestartdd/>
  82. <promotngvnoffcorddd/>
  83. <trgtno/>
  84. <trgtpsncnfmyn/>
  85. <satpassyn/>
  86. <scrngvaluym/>
  87. <promotnflag/>
  88. <promotnjobgrad/>
  89. <promotnimpsiresncd/>
  90. <promotnimpsiresn/>
  91. <cmt/>
  92. <deptcd/>
  93. <teamcd/>
  94. <unitcd/>
  95. <appjobkindcd/>
  96. <jobposcd/>
  97. <jobrespcd/>
  98. <prestgradcd/>
  99. <jobkindcd/>
  100. <jobkindnm/>
  101. <njobgradcd/>
  102. <njobgradnm/>
  103. <payclscd/>
  104. <prestgradgvnoffcorddd/>
  105. <entcodd/>
  106. <grupjoblncd/>
  107. <joblncd/>
  108. <autpromotndd/>
  109. <spclpromotndd/>
  110. <preststatcd/>
  111. <brthdd/>
  112. <gndr/>
  113. <prestgradanualcnt/>
  114. <contanualcnt/>
  115. <lastvalupnt/>
  116. <lastpstpnt/>
  117. <lastprizrpmdpnt/>
  118. <lastetcpnt/>
  119. <lastpnt/>
  120. <lastrank/>
  121. <promotnyn/>
  122. <valuegrad1/>
  123. <valuegrad2/>
  124. <valuegrad3/>
  125. <valuegrad4/>
  126. <valuegrad5/>
  127. <valuepnt1/>
  128. <valuepnt2/>
  129. <valuepnt3/>
  130. <valuepnt4/>
  131. <valuepnt5/>
  132. <gvnoffcordtretyn/>
  133. </listdetail>
  134. </main>
  135. <send>
  136. <uptprom>
  137. <emplno/>
  138. <cmt/>
  139. <promrsn/>
  140. </uptprom>
  141. <searchcond>
  142. <scrngvaluym/>
  143. <instcd/>
  144. <promotnflag/>
  145. <prestgradcd/>
  146. <emplno/>
  147. <emplnm/>
  148. <trgtpsncnfmyn/>
  149. <promotnimpsiresncd/>
  150. <promotnyn/>
  151. <workgbn/>
  152. <grupjoblncd/>
  153. <iudflag/>
  154. </searchcond>
  155. <grd01/>
  156. <tempvalue>
  157. <promotnjobgrad/>
  158. <promotnjobgradnm/>
  159. <ojobgradcd/>
  160. <ojobgradnm/>
  161. <jobposcd/>
  162. <jobposnm/>
  163. </tempvalue>
  164. </send>
  165. <init>
  166. <promconf>
  167. <label>예</label>
  168. <value>Y</value>
  169. <label>아니오</label>
  170. <value>N</value>
  171. </promconf>
  172. <cnfmyn>
  173. <label>전체</label>
  174. <value/>
  175. <label>예</label>
  176. <value>Y</value>
  177. <label>아니오</label>
  178. <value>N</value>
  179. </cnfmyn>
  180. <totcount/>
  181. <promotnflag/>
  182. </init>
  183. <target>
  184. <promotnflag/>
  185. <scrngvaluym/>
  186. </target>
  187. <spreflist>
  188. <spref>
  189. <errormsg/>
  190. <errflag/>
  191. </spref>
  192. </spreflist>
  193. </root>
  194. </instance>
  195. <script type="javascript" ev:event="xforms-ready">
  196. <![CDATA[
  197. // grd_grd01.fixedcellcheckbox(0, grd_grd01.colRef("promotnyn")) = true;
  198. // grd_grd01.fixedcellcheckbox(1, grd_grd01.colRef("promotnyn")) = true;
  199. //grd_grd01.fixedcellcheckbox(0, grd_grd01.colRef("gvnoffcordtretyn")) = true;
  200. //grd_grd01.fixedcellcheckbox(1, grd_grd01.colRef("gvnoffcordtretyn")) = true;
  201. misfMsterDetailSet(grd_grd01,null,"TRRPH00100","Y");
  202. misfGridInit(grd_grd01);
  203. var curdate = getCurrentDate();
  204. var cvtdate = curdate.toDate("YYYYMM");
  205. model.setValue(ipt_scrngvaluym.attribute("ref") , cvtdate.getAddDate(0,"M").getDateFormat("YYYYMM"));
  206. misfComboComCdList('R0209', cmb_promotnimpsiresncd_s,'Y');
  207. misfComboComCdList('R0209', grd_grd01.promotnimpsiresncd,'');
  208. misfComboInstCdListMulti("cmb_instnm",getCurrentDate(),"","Y","N");
  209. misfComboCopyItemSet(cmb_instnm, "", grd_grd01, "instcd");
  210. // misfComboComCdList('Z0007', cmb_instnm,'Y');
  211. // misfComboComCdList('Z0007', grd_grd01.instcd,'');
  212. misfComboComCdList('R0059', cmb_grupjoblncd,'Y');
  213. rphComboMngtinstBase(cmb_promtype,model.getValue(ipt_scrngvaluym.attribute("ref")),"Y");
  214. rphComboMngtinstBase(cmb_promtype_h,model.getValue(ipt_scrngvaluym.attribute("ref")),"");
  215. misfComboCopyItemSet(cmb_promtype_h, "", grd_grd01, "promotnflag");
  216. rphComboJobGradBase(cmb_promlev,model.getValue(ipt_scrngvaluym.attribute("ref")),'',"Y");
  217. model.setValue(cmb_instnm.attribute("ref") , getUserInfo("dutplceinstcd"));
  218. btn_save.disabled = !(checkAuth("X"));
  219. rdo_trgtpsncnfmyn_s.value='Y';
  220. misfGetUserAuth();
  221. if(DUTY_RANK_YN =='Y'){
  222. btn_gnvoffcanbnt.disabled = false;
  223. btn_gnvoffentbnt.disabled = false;
  224. btn_computebnt.disabled = false;
  225. btn_save.disabled = false;
  226. if(getUserInfo("dutplceinstcd") =='001'){
  227. cmb_instnm.disabled = false;
  228. }else{
  229. cmb_instnm.disabled = true;
  230. }
  231. //misfSetReadOnlyCol(grd_grd01, "trgtpsncnfmyn", false);
  232. }else{
  233. btn_gnvoffcanbnt.disabled = true;
  234. btn_gnvoffentbnt.disabled = true;
  235. btn_computebnt.disabled = true;
  236. btn_save.disabled = true;
  237. cmb_instnm.disabled = true;
  238. //misfSetReadOnlyCol(grd_grd01, "trgtpsncnfmyn", true);
  239. }
  240. model.refresh();
  241. ]]>
  242. </script>
  243. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  244. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  245. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  246. <script type="javascript" src="../../../mis/promotnmngtweb/js/RPH001.js"/>
  247. <script type="javascript" src="../../../mis/purccommonweb/js/PURC.js"/>
  248. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  249. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  250. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  251. <script type="javascript">
  252. <![CDATA[
  253. function fEnableUpdateButton() {
  254. btn_insert.disabled = true;
  255. btn_update.disabled = false;
  256. }
  257. function fEnableInsertButton(){
  258. btn_insert.disabled = false;
  259. btn_update.disabled = true;
  260. ipt_emplno_d.disabled=false;
  261. ipt_emplnm_d.disabled=false;
  262. btn_emplno.disabled=false;
  263. ipt_scrngvaluym_d.disabled = false;
  264. }
  265. function fChangeGridValue(cur_row){
  266. grd_grd01.valueMatrix(cur_row,grd_grd01.colRef("promotnflagnm")) = cmb_promotnflag_d.label;
  267. grd_grd01.valueMatrix(cur_row,grd_grd01.colRef("promotnjobgradnm")) = cmb_prestgradcd_d.label;
  268. }
  269. ]]>
  270. </script>
  271. <submission id="TRRPH00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchcond" resultref="/root/main/grd01"/>
  272. <submission id="TRRPH00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/utprom" resultref="/root/main/grd01"/>
  273. <submission id="TXRPH00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/grd01"/>
  274. <submission id="TXRPH00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/searchcond" resultref="/root/spreflist"/>
  275. </model>
  276. </xhtml:head>
  277. <xhtml:body pagewidth="1211" pageheight="784" guideline="2,474;2,757;2,755;" style="margin-left:8; margin-right:8; ">
  278. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  279. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">승진조서등록</caption>
  280. </group>
  281. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:732px; ">
  282. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  283. <caption id="caption2" class="search_name" style="left:15px; top:19px; width:86px; height:17px; ">승진년월 :</caption>
  284. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:27px; width:56px; height:22px; ">
  285. <caption>조회</caption>
  286. <script type="javascript" ev:event="DOMActivate">
  287. <![CDATA[
  288. if ( !isRequiredControls("ipt_scrngvaluym") ) return;
  289. misfMsterDetailRetrieve();
  290. grd_grd01.subtotalposition = "above";
  291. grd_grd01.subtotal("clear", 0, 0);
  292. grd_grd01.subtotal("count",grd_grd01.colRef("prestgradnm") , grd_grd01.colRef("appjobkindnm"), "format:#,###; ", "background-color:#ffff99; font-weight:bold; ", 2, "직급별인원수");
  293. var totcount=0;
  294. for(var i = grd_grd01.fixedRows ; i < grd_grd01.rows ; i++ ){
  295. var calcresnnm =grd_grd01.valueMatrix(i,grd_grd01.colRef("instcd"));
  296. if(calcresnnm =='직급별인원수'){
  297. grd_grd01.valueMatrix(i,grd_grd01.colRef("grupjoblnnm"))=grd_grd01.valueMatrix(i+1,grd_grd01.colRef("prestgradnm")) + "->"+ grd_grd01.valueMatrix(i+1,grd_grd01.colRef("promotnjobgradnm"));
  298. }else{
  299. totcount=totcount+1;
  300. }
  301. }
  302. totcount= totcount;
  303. model.setValue("/root/init/totcount",totcount);
  304. model.refresh();
  305. ]]>
  306. </script>
  307. </button>
  308. <line id="line13" class="line_4" style="x1:1110px; y1:17px; x2:1110px; y2:61px; "/>
  309. <caption id="caption278" class="tit_2" style="left:5px; top:79px; width:113px; height:14px; ">승진대상자 목록</caption>
  310. <line id="line207" class="line_1" style="x1:0px; y1:98px; x2:1195px; y2:98px; "/>
  311. <!--datagrid id="grd01" nodeset="/root/main/grd01" caption="기관^부서" colwidth="60, 65" dataheight="25" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" colsep="^" style="left:0px; top:74px; width:1195px; height:433px; ">
  312. <col ref="instcd"/>
  313. <col ref="deptcd"/>
  314. </datagrid-->
  315. <caption id="caption5" class="search_name" style="left:580px; top:19px; width:86px; height:17px; ">승진구분 :</caption>
  316. <caption id="caption15" class="search_name" style="left:255px; top:19px; width:110px; height:17px; ">기 관 :</caption>
  317. <input id="ipt_scrngvaluym" ref="/root/send/searchcond/scrngvaluym" class="input_s_essential" inputtype="date" format="yyyy-mm" style="left:105px; top:18px; width:125px; height:19px; ">
  318. <script type="javascript" ev:event="xforms-value-changed">
  319. <![CDATA[
  320. var instcd = cmb_instnm.value;
  321. if( getStringLength(ipt_scrngvaluym.value) == "6" ) {
  322. // model.removeNodeset(cmb_instnm.attribute("ref"));
  323. // model.makeNode("/root/send/searchcond/instcd");
  324. misfComboInstCdListMulti("cmb_instnm",ipt_scrngvaluym.value+"31","","Y","N");
  325. cmb_instnm.value = instcd;
  326. model.refresh();
  327. }
  328. rphComboMngtinstBase(cmb_promtype,model.getValue(ipt_scrngvaluym.attribute("ref")),"Y");
  329. ]]>
  330. </script>
  331. </input>
  332. <button id="btn_emplnohelp" class="icon_search" style="left:964px; top:42px; width:16px; height:16px; ">
  333. <caption>
  334. <script type="javascript" ev:event="DOMActivate">
  335. <![CDATA[
  336. var precv_list = "emplno" + "," + "emplnm";
  337. //alert(precv_list);
  338. rpbfOpenPopUpList("SPRPB00101", ipt_emplno,precv_list,"ipt_systemflag",'Y');
  339. model.refresh();
  340. ]]>
  341. </script>
  342. </caption>
  343. </button>
  344. <caption id="caption16" class="search_name" style="left:820px; top:45px; width:86px; height:17px; ">사원번호 :</caption>
  345. <input id="ipt_emplno" ref="/root/send/searchcond/emplno" class="input_default" style="left:906px; top:43px; width:56px; height:19px; "/>
  346. <input id="ipt_emplnm" ref="/root/send/searchcond/emplnm" class="input_default" style="left:983px; top:43px; width:102px; height:19px; "/>
  347. <caption id="caption1" class="search_name" style="left:821px; top:20px; width:85px; height:17px; ">직 급 :</caption>
  348. <select1 id="cmb_instnm" ref="/root/send/searchcond/instcd" class="combo_default" appearance="minimal" itemcount="10" style="left:369px; top:18px; width:195px; height:19px; ">
  349. <choices>
  350. <itemset>
  351. <label/>
  352. <value/>
  353. </itemset>
  354. </choices>
  355. </select1>
  356. <select1 id="cmb_promtype" ref="/root/send/searchcond/promotnflag" class="combo_default" appearance="minimal" itemcount="10" style="left:666px; top:18px; width:126px; height:19px; ">
  357. <choices>
  358. <itemset>
  359. <label/>
  360. <value/>
  361. </itemset>
  362. </choices>
  363. <script type="javascript" ev:event="xforms-value-changed">
  364. <![CDATA[
  365. /* 발령구분 선택시 발령 세부구분 자료를 Setting,한다 */
  366. var promotnflag = model.getValue(cmb_promtype.attribute("ref"));
  367. rphComboJobGradBase(cmb_promlev,model.getValue(ipt_scrngvaluym.attribute("ref")),promotnflag,"Y");
  368. model.refresh();
  369. ]]>
  370. </script>
  371. </select1>
  372. <select1 id="cmb_promlev" ref="/root/send/searchcond/prestgradcd" class="combo_default" appearance="minimal" itemcount="10" style="left:906px; top:19px; width:179px; height:19px; ">
  373. <choices>
  374. <itemset>
  375. <label/>
  376. <value/>
  377. </itemset>
  378. </choices>
  379. </select1>
  380. <button id="button19" class="btn2_letter4" style="left:1120px; top:77px; width:64px; height:19px; ">
  381. <caption>엑셀저장</caption>
  382. <script type="javascript" ev:event="DOMActivate">
  383. <![CDATA[
  384. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  385. if (fileName != "")
  386. {
  387. grd_grd01.saveExcel(fileName, "SheetName", true, true, "", "");
  388. }
  389. ]]>
  390. </script>
  391. </button>
  392. <!--button id="button3" class="btn2_letter3" style="left:955px; top:48px; width:53px; height:19px; ">
  393. <caption>행추가</caption>
  394. <script type="javascript" ev:event="DOMActivate">
  395. <![CDATA[
  396. ]]>
  397. </script>
  398. </button>
  399. <button id="button4" class="btn2_letter3" style="left:1010px; top:48px; width:53px; height:19px; ">
  400. <caption>행삭제</caption>
  401. <script type="javascript" ev:event="DOMActivate">
  402. <![CDATA[
  403. ]]>
  404. </script>
  405. </button-->
  406. <datagrid id="grd_grd01" nodeset="/root/main/grd01" caption="승진년월^근무기관^직군^직종^근무부서^현직책^현직위^성명^현신직급^현년차^임용일^정기승진일^정기승진&#xA;년차^특별승진일^특별승진&#xA;년차^최종평가점수^최종평가점수^최종평가점수^최종평가점수^총점^순위^SAT점수1^SAT점수2^승진구분^특기사항^비고^승진&#xA;여부^발령&#xA;여부^현구직급^승진직위^승진신직급^승진구직급^승진년차^승진불가사유^승진제외기타^평가점수^평가점수^평가점수^평가점수^평가점수^평가등급^평가등급^평가등급^평가등급^평가등급^평가시작일^대상&#xA;횟수^대상자확정&#xA;여부^SAT합격&#xA;여부^사원번호^호봉^현직급승진일^직군^직렬^자동승진일^현근무상태^생일^성별^현직급년수^근속년수^승급직급코드^부서코드^팀코드^유닛코드^직종코드^직위코드^직책코드^현직급코드^caption39|승진년월^근무기관^직군^직종^근무부서^현직책^현직위^성명^현신직급^현년차^임용일^정기승진일^정기승진&#xA;년차^특별승진일^특별승진&#xA;년차^인사평가^제안서^포상징계^위원회^총점^순위^SAT점수1^SAT점수2^승진구분^특기사항^비고^승진&#xA;여부^발령&#xA;여부^현구직급^승진직위^승진신직급^승진구직급^승진년차^승진불가사유^승진제외기타^1^2^3^4^5^1^2^3^4^5^평가시작일^대상&#xA;횟수^대상자확정&#xA;여부^SAT합격&#xA;여부^사원번호^호봉^현직급승진일^직군^직렬^자동승진일^현근무상태^생일^성별^현직급년수^근속년수^승급직급코드^부서코드^팀코드^유닛코드^직종코드^직위코드^직책코드^현직급코드^caption39" colsep="^" colwidth="66, 110, 106, 72, 79, 67, 58, 62, 65, 61, 76, 74, 56, 71, 58, 63, 51, 62, 55, 46, 38, 62, 68, 100, 118, 110, 59, 40, 62, 80, 69, 71, 59, 100, 116, 32, 29, 29, 32, 28, 25, 26, 29, 29, 29, 76, 50, 40, 56, 63, 47, 80, 47, 48, 67, 74, 50, 30, 72, 64, 78, 100, 65, 57, 57, 67, 100, 72, 50, 100, 100, 100, 100, 100" explorerbar="sortshow" frozencols="8" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:103px; width:1190px; height:602px; ">
  407. <col ref="scrngvaluym" visibility="hidden" format="yyyy-mm"/>
  408. <col id="instcd" ref="instcd" type="combo">
  409. <choices>
  410. <itemset>
  411. <label/>
  412. <value/>
  413. </itemset>
  414. </choices>
  415. </col>
  416. <col ref="grupjoblnnm"/>
  417. <col ref="appjobkindnm"/>
  418. <col ref="deptnm"/>
  419. <col ref="jobrespnm"/>
  420. <col ref="prestjobposnm"/>
  421. <col ref="emplnm"/>
  422. <col ref="prestgradnm"/>
  423. <col ref="anual" style="text-align:center; "/>
  424. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  425. <col ref="promotngvnoffcorddd" format="yyyy-mm-dd" style="text-align:center; "/>
  426. <col ref="promotngvnoffcoranual" style="text-align:center; "/>
  427. <col ref="spclpromotndd" format="yyyy-mm-dd" style="text-align:center; "/>
  428. <col ref="spclpromotnanual" style="text-align:center; "/>
  429. <col ref="lastvalupnt" type="input" style="text-align:center; "/>
  430. <col ref="lastpstpnt" type="input" style="text-align:center; "/>
  431. <col ref="lastprizrpmdpnt" type="input" style="text-align:center; "/>
  432. <col ref="lastetcpnt" type="input" style="text-align:center; "/>
  433. <col ref="lastpnt" style="text-align:center; "/>
  434. <col ref="lastrank" style="text-align:center; "/>
  435. <col ref="satpnt1" type="input" style="text-align:center; "/>
  436. <col ref="satpnt2" type="input" style="text-align:center; "/>
  437. <col id="promotnflag" ref="promotnflag" type="combo">
  438. <choices>
  439. <itemset>
  440. <label/>
  441. <value/>
  442. </itemset>
  443. </choices>
  444. </col>
  445. <col ref="spclmentfact" type="input"/>
  446. <col ref="cmt" type="input"/>
  447. <col checkvalue="Y,N" ref="promotnyn" type="checkbox"/>
  448. <col checkvalue="Y,N" ref="gvnoffcordtretyn" type="output" style="text-align:center; "/>
  449. <col ref="prestojobgradnm"/>
  450. <col ref="jobposnm" type="inputbutton"/>
  451. <col ref="promotnjobgradnm" type="inputbutton"/>
  452. <col ref="gradojobgradnm" type="inputbutton"/>
  453. <col ref="gradanual" type="input"/>
  454. <col id="promotnimpsiresncd" ref="promotnimpsiresncd" type="combo">
  455. <choices>
  456. <itemset>
  457. <label/>
  458. <value/>
  459. </itemset>
  460. </choices>
  461. </col>
  462. <col ref="promotnimpsiresn" type="input"/>
  463. <col ref="valuepnt1"/>
  464. <col ref="valuepnt2"/>
  465. <col ref="valuepnt3"/>
  466. <col ref="valuepnt4"/>
  467. <col ref="valuepnt5"/>
  468. <col ref="valuegrad1"/>
  469. <col ref="valuegrad2"/>
  470. <col ref="valuegrad3"/>
  471. <col ref="valuegrad4"/>
  472. <col ref="valuegrad5"/>
  473. <col ref="valuestartdd" format="yyyy-mm-dd"/>
  474. <col ref="trgtno" visibility="hidden" style="text-align:center; "/>
  475. <col checkvalue="Y,N" ref="trgtpsncnfmyn" type="checkbox" visibility="hidden" style="text-align:center; "/>
  476. <col checkvalue="Y,N" ref="satpassyn" type="checkbox" visibility="hidden"/>
  477. <col ref="emplno"/>
  478. <col ref="payclscd" style="text-align:center; "/>
  479. <col ref="prestgradgvnoffcorddd" visibility="hidden" format="yyyy-mm-dd"/>
  480. <col ref="grupjoblncd" visibility="hidden"/>
  481. <col ref="joblncd" visibility="hidden"/>
  482. <col ref="autpromotndd"/>
  483. <col ref="preststatcd" visibility="hidden"/>
  484. <col ref="brthdd" visibility="hidden"/>
  485. <col ref="gndr" visibility="hidden"/>
  486. <col ref="prestgradanualcnt" style="text-align:center; "/>
  487. <col ref="contanualcnt" style="text-align:center; "/>
  488. <col ref="promotnjobgrad" visibility="hidden" _key="true"/>
  489. <col ref="deptcd" visibility="hidden"/>
  490. <col ref="teamcd" visibility="hidden"/>
  491. <col ref="unitcd" visibility="hidden"/>
  492. <col ref="appjobkindcd" visibility="hidden"/>
  493. <col ref="jobposcd" visibility="hidden"/>
  494. <col ref="jobrespcd" visibility="hidden"/>
  495. <col ref="prestgradcd" visibility="hidden"/>
  496. <col ref="oldpromotnyn" visibility="hidden"/>
  497. <col ref="oldgvnoffcordtretyn" visibility="hidden"/>
  498. <col ref="gradojobgradcd" visibility="hidden"/>
  499. <col ref="prestojobgradcd" visibility="hidden"/>
  500. <col ref="oldpromotnflag" visibility="hidden"/>
  501. <col ref="oldpromotnjobgrad" visibility="hidden"/>
  502. <col ref="prestjobrespcd" visibility="hidden"/>
  503. <col ref="prestjobposcd" visibility="hidden"/>
  504. <script type="javascript" ev:event="onbuttonclick">
  505. <![CDATA[
  506. //프로그램 팝업.
  507. if( grd_grd01.col == grd_grd01.colRef("promotnjobgradnm") )
  508. {
  509. if(grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag")) != "")
  510. {
  511. var recv_list = "promotnjobgrad,promotnjobgradnm";
  512. var promotnflag = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag"));
  513. var scrngvaluym = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("scrngvaluym"));
  514. model.setValue("/root/target/promotnflag",promotnflag);
  515. model.setValue("/root/target/scrngvaluym",scrngvaluym);
  516. misfOpenPopUpList("46", ipt_promotnjobgradtemp,"",recv_list);
  517. if(model.getValue("/root/send/tempvalue/promotnjobgrad") != "" || model.getValue("/root/send/tempvalue/promotnjobgradnm") != "")
  518. {
  519. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnjobgrad")) = model.getValue("/root/send/tempvalue/promotnjobgrad");
  520. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnjobgradnm")) = model.getValue("/root/send/tempvalue/promotnjobgradnm");
  521. grd_grd01.addStatus(grd_grd01.row, "update");
  522. model.setValue("/root/send/tempvalue/promotnjobgrad", "");
  523. model.setValue("/root/send/tempvalue/promotnjobgradnm", "");
  524. }
  525. model.refresh();
  526. }
  527. }
  528. if( grd_grd01.col == grd_grd01.colRef("gradojobgradnm") )
  529. {
  530. if(grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag")) != "")
  531. {
  532. var recv_list = "ojobgradcd,ojobgradnm";
  533. rpbfOpenComCdHelp(ipt_ojobgradcd,"R0064", recv_list);
  534. // var promotnflag = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag"));
  535. //var scrngvaluym = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("scrngvaluym"));
  536. //model.setValue("/root/target/promotnflag",promotnflag);
  537. //model.setValue("/root/target/scrngvaluym",scrngvaluym);
  538. //misfOpenPopUpList("46", ipt_gradojobgradnmtmp,"",recv_list);
  539. if(model.getValue("/root/send/tempvalue/ojobgradcd") != "" || model.getValue("/root/send/tempvalue/ojobgradnm") != "")
  540. {
  541. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("gradojobgradcd")) = model.getValue("/root/send/tempvalue/ojobgradcd");
  542. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("gradojobgradnm")) = model.getValue("/root/send/tempvalue/ojobgradnm");
  543. grd_grd01.addStatus(grd_grd01.row, "update");
  544. model.setValue("/root/send/tempvalue/ojobgradcd", "");
  545. model.setValue("/root/send/tempvalue/ojobgradnm", "");
  546. }
  547. model.refresh();
  548. }
  549. }
  550. if( grd_grd01.col == grd_grd01.colRef("jobposnm") )
  551. {
  552. if(grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag")) != "")
  553. {
  554. var recv_list = "jobposcd,jobposnm";
  555. rpbfOpenComCdHelp(ipt_jobposcd,"R0062", recv_list);
  556. // var promotnflag = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnflag"));
  557. //var scrngvaluym = grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("scrngvaluym"));
  558. //model.setValue("/root/target/promotnflag",promotnflag);
  559. //model.setValue("/root/target/scrngvaluym",scrngvaluym);
  560. //misfOpenPopUpList("46", ipt_gradojobgradnmtmp,"",recv_list);
  561. if(model.getValue("/root/send/tempvalue/jobposcd") != "" || model.getValue("/root/send/tempvalue/jobposnm") != "")
  562. {
  563. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("jobposcd")) = model.getValue("/root/send/tempvalue/jobposcd");
  564. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("jobposnm")) = model.getValue("/root/send/tempvalue/jobposnm");
  565. grd_grd01.addStatus(grd_grd01.row, "update");
  566. model.setValue("/root/send/tempvalue/jobposcd", "");
  567. model.setValue("/root/send/tempvalue/jobposnm", "");
  568. }
  569. model.refresh();
  570. }
  571. }
  572. ]]>
  573. </script>
  574. <script type="javascript" ev:event="onaftersort">
  575. <![CDATA[
  576. grd_grd01.gridToInstance();
  577. ]]>
  578. </script>
  579. <script type="javascript" ev:event="xforms-value-changed">
  580. <![CDATA[
  581. if( grd_grd01.col == grd_grd01.colRef("promotnflag") )
  582. {
  583. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnjobgradnm")) ="";
  584. grd_grd01.valueMatrix(grd_grd01.row, grd_grd01.colRef("promotnjobgrad")) ="";
  585. }
  586. ]]>
  587. </script>
  588. </datagrid>
  589. <caption id="caption8" class="search_name" style="left:15px; top:45px; width:105px; height:17px; ">승진여부 :</caption>
  590. <select1 id="rdo_trgtpsncnfmyn_s" ref="/root/send/searchcond/trgtpsncnfmyn" class="radio_search" visibility="hidden" appearance="full" cellspacing="5" cols="3" style="left:390px; top:75px; width:145px; height:16px; text-align:center; border-style:none; ">
  591. <choices>
  592. <itemset nodeset="/root/init/cnfmyn">
  593. <label ref="label"/>
  594. <value ref="value"/>
  595. </itemset>
  596. </choices>
  597. </select1>
  598. <caption id="caption12" class="search_name" style="left:255px; top:45px; width:135px; height:17px; ">승진불가사유 :</caption>
  599. <select1 id="cmb_promotnimpsiresncd_s" ref="/root/send/searchcond/promotnimpsiresncd" class="combo_default" appearance="minimal" style="left:369px; top:43px; width:195px; height:19px; ">
  600. <choices>
  601. <itemset>
  602. <label/>
  603. <value/>
  604. </itemset>
  605. </choices>
  606. </select1>
  607. <select1 id="rdo_promotnyn" ref="/root/send/searchcond/promotnyn" class="radio_search" appearance="full" cellspacing="5" cols="3" overflow="hidden" style="left:100px; top:45px; width:145px; height:16px; text-align:center; border-style:none; ">
  608. <choices>
  609. <itemset nodeset="/root/init/cnfmyn">
  610. <label ref="label"/>
  611. <value ref="value"/>
  612. </itemset>
  613. </choices>
  614. </select1>
  615. <button id="button1" class="btn2_letter4" style="left:1053px; top:77px; width:64px; height:19px; ">
  616. <caption>전체취소</caption>
  617. <script type="javascript" ev:event="DOMActivate">
  618. <![CDATA[
  619. var updtdata = getGridUpdateData(grd_grd01);
  620. if (updtdata != "") {
  621. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  622. return;
  623. }
  624. for (var i = grd_grd01.fixedRows; i < grd_grd01.rows; i++ )
  625. {
  626. if(grd_grd01.valueMatrix(i, grd_grd01.colRef("instcd")) !="직급별인원수"){
  627. grd_grd01.valueMatrix(i, grd_grd01.colRef("promotnyn")) = 'N';
  628. if(grd_grd01.valueMatrix(i, grd_grd01.colRef("oldpromotnyn"))!=grd_grd01.valueMatrix(i, grd_grd01.colRef("promotnyn"))){
  629. grd_grd01.addStatus(i,"update");
  630. }else{
  631. grd_grd01.rowStatus(i) =0;
  632. }
  633. }
  634. }
  635. ]]>
  636. </script>
  637. </button>
  638. <button id="button12" class="btn2_letter4" style="left:986px; top:77px; width:64px; height:19px; ">
  639. <caption>전체선택</caption>
  640. <script type="javascript" ev:event="DOMActivate">
  641. <![CDATA[
  642. var updtdata = getGridUpdateData(grd_grd01);
  643. if (updtdata != "") {
  644. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  645. return;
  646. }
  647. for (var i = grd_grd01.fixedRows; i < grd_grd01.rows; i++ ) {
  648. if(grd_grd01.valueMatrix(i, grd_grd01.colRef("instcd")) !="직급별인원수"){
  649. grd_grd01.valueMatrix(i, grd_grd01.colRef("promotnyn")) = 'Y';
  650. if(grd_grd01.valueMatrix(i, grd_grd01.colRef("oldpromotnyn"))!=grd_grd01.valueMatrix(i, grd_grd01.colRef("promotnyn"))){
  651. grd_grd01.addStatus(i,"update");
  652. }else if(grd_grd01.valueMatrix(i, grd_grd01.colRef("oldpromotnyn"))==grd_grd01.valueMatrix(i, grd_grd01.colRef("promotnyn"))){
  653. grd_grd01.rowStatus(i) =0;
  654. }
  655. }
  656. }
  657. ]]>
  658. </script>
  659. </button>
  660. <select1 id="cmb_grupjoblncd" ref="/root/send/searchcond/grupjoblncd" class="combo_default" appearance="minimal" itemcount="10" style="left:666px; top:43px; width:126px; height:19px; ">
  661. <choices>
  662. <itemset>
  663. <label/>
  664. <value/>
  665. </itemset>
  666. </choices>
  667. </select1>
  668. <caption id="caption3" class="search_name" style="left:580px; top:44px; width:85px; height:17px; ">직 군 :</caption>
  669. <input id="input1" ref="/root/target/promotnflag" visibility="hidden" style="left:540px; top:75px; width:125px; height:20px; "/>
  670. <input id="input2" ref="/root/target/scrngvaluym" visibility="hidden" style="left:675px; top:75px; width:125px; height:19px; "/>
  671. <output id="output1" ref="/root/init/totcount" style="left:255px; top:76px; width:110px; height:19px; font-weight:bold; color:#0000ff; "/>
  672. <caption id="caption4" style="left:170px; top:76px; width:95px; height:20px; font-weight:bold; color:#0000ff; ">* 조회인원수:</caption>
  673. <select1 id="cmb_promtype_h" ref="/root/init/promotnflag" class="combo_default" visibility="hidden" appearance="minimal" itemcount="10" style="left:805px; top:75px; width:126px; height:19px; ">
  674. <choices>
  675. <itemset>
  676. <label/>
  677. <value/>
  678. </itemset>
  679. </choices>
  680. <script type="javascript" ev:event="xforms-value-changed">
  681. <![CDATA[
  682. /* 발령구분 선택시 발령 세부구분 자료를 Setting,한다 */
  683. var promotnflag = model.getValue(cmb_promtype.attribute("ref"));
  684. rphComboJobGradBase(cmb_promlev,model.getValue(ipt_scrngvaluym.attribute("ref")),promotnflag,"Y");
  685. model.refresh();
  686. ]]>
  687. </script>
  688. </select1>
  689. </group>
  690. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:28px; ">
  691. <button id="button16" class="btn3_letter2" style="left:0px; top:3px; width:56px; height:22px; ">
  692. <caption>출력</caption>
  693. </button>
  694. <line id="line4" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  695. <button id="btn_computebnt" class="btn4_letter5" style="left:1036px; top:3px; width:92px; height:22px; ">
  696. <caption>Compute</caption>
  697. <script type="javascript" ev:event="DOMActivate">
  698. <![CDATA[
  699. if ( !isRequiredControls("ipt_scrngvaluym") ) return;
  700. var ret = messageBox("평가점수계산 작업을 ","Q004");
  701. if (ret != 6) { // not OK
  702. return;
  703. } else {
  704. model.setValue("/root/send/searchcond/workgbn","C");
  705. submit("TXRPH00101");
  706. }
  707. messageBox("평가점수계산 작업이 ","I002");
  708. btn_search.dispatch("DOMActivate");
  709. ]]>
  710. </script>
  711. </button>
  712. <button id="btn_gnvoffentbnt" class="btn4_letter6" style="left:930px; top:3px; width:104px; height:22px; ">
  713. <caption>일괄승진발령</caption>
  714. <script type="javascript" ev:event="DOMActivate">
  715. <![CDATA[
  716. var updtdata = getGridUpdateData(grd_grd01);
  717. if (updtdata != "") {
  718. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  719. return;
  720. }
  721. if ( !isRequiredControls("ipt_scrngvaluym") ) return;
  722. var ret = messageBox("승진발령 작업을 ","Q004");
  723. if (ret != 6) { // not OK
  724. return;
  725. } else {
  726. model.setValue("/root/send/searchcond/iudflag",'U');
  727. model.setValue("/root/send/searchcond/workgbn","B");
  728. submit("TXRPH00101");
  729. }
  730. var errormsg=model.getValue("/root/spreflist/spref/errormsg");
  731. var errflag=model.getValue("/root/spreflist/spref/errflag");
  732. if(errflag =='0'){
  733. messageBox(errormsg,"I004");
  734. return;
  735. }
  736. if (model.getValue(gvErrorMsgPath + "/type") != "error"){
  737. messageBox("승진발령 작업이 ","I002");
  738. btn_search.dispatch("DOMActivate");
  739. }
  740. ]]>
  741. </script>
  742. </button>
  743. <button id="btn_save" class="btn4_letter2" style="left:1130px; top:3px; width:56px; height:22px; ">
  744. <caption>저장</caption>
  745. <script type="javascript" ev:event="DOMActivate">
  746. <![CDATA[
  747. var updtdata = getGridUpdateData(grd_grd01);
  748. if (updtdata == "" ) {
  749. messageBox("변경된 데이터가","I004");
  750. return;
  751. }
  752. for(var i=grd_grd01.fixedRows; i < grd_grd01.rows;i++){
  753. var gvnoffcordtretyn=grd_grd01.valueMatrix(i,grd_grd01.colRef("gvnoffcordtretyn"));
  754. var promotnjobgradnm=grd_grd01.valueMatrix(i,grd_grd01.colRef("promotnjobgradnm"));
  755. var instcd=grd_grd01.valueMatrix(i,grd_grd01.colRef("instcd"));
  756. if(promotnjobgradnm =="" && instcd !="직급별인원수"){
  757. messageBox("직급은 ","I003");
  758. return;
  759. }
  760. if(gvnoffcordtretyn =='Y'){
  761. messageBox("발령처리가 완료되어 저장 ","E001");
  762. return;
  763. }
  764. }
  765. var ret = messageBox("저장합니다.","Q003");
  766. if (ret != 6) { // not OK
  767. return;
  768. } else {
  769. misfSave("TXRPH00100");
  770. }
  771. btn_search.dispatch("DOMActivate");
  772. model.refresh();
  773. ]]>
  774. </script>
  775. </button>
  776. <button id="btn_gnvoffcanbnt" class="btn4_letter6" style="left:825px; top:3px; width:104px; height:22px; ">
  777. <caption>일괄발령취소</caption>
  778. <script type="javascript" ev:event="DOMActivate">
  779. <![CDATA[
  780. var updtdata = getGridUpdateData(grd_grd01);
  781. if (updtdata != "") {
  782. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 저장후","C002");
  783. return;
  784. }
  785. if ( !isRequiredControls("ipt_scrngvaluym") ) return;
  786. var ret = messageBox("승진발령 작업을 ","Q004");
  787. if (ret != 6) { // not OK
  788. return;
  789. } else {
  790. model.setValue("/root/send/searchcond/iudflag",'C');
  791. model.setValue("/root/send/searchcond/workgbn","B");
  792. submit("TXRPH00101");
  793. }
  794. var errormsg=model.getValue("/root/spreflist/spref/errormsg");
  795. var errflag=model.getValue("/root/spreflist/spref/errflag");
  796. if(errflag =='0'){
  797. messageBox(errormsg,"I004");
  798. return;
  799. }
  800. messageBox("승진발령취소 작업이 ","I002");
  801. btn_search.dispatch("DOMActivate");
  802. ]]>
  803. </script>
  804. </button>
  805. <input id="input4" ref="/root/send/tempvalue/promotnjobgradnm" visibility="hidden" style="left:675px; top:5px; width:20px; height:19px; "/>
  806. <input id="ipt_promotnjobgradtemp" ref="/root/send/tempvalue/promotnjobgrad" visibility="hidden" style="left:655px; top:5px; width:20px; height:19px; "/>
  807. <input id="ipt_ojobgradcd" ref="/root/send/tempvalue/ojobgradcd" visibility="hidden" style="left:730px; top:5px; width:20px; height:19px; "/>
  808. <input id="ipt_ojobgradnm" ref="/root/send/tempvalue/ojobgradnm" visibility="hidden" style="left:750px; top:5px; width:20px; height:19px; "/>
  809. <input id="ipt_jobposcd" ref="/root/send/tempvalue/jobposnm" visibility="hidden" style="left:795px; top:5px; width:20px; height:19px; "/>
  810. <input id="ipt_jobposnm" ref="/root/send/tempvalue/jobposcd" visibility="hidden" style="left:775px; top:5px; width:20px; height:19px; "/>
  811. </group>
  812. </xhtml:body>
  813. </xhtml:html>