SMRPS04000_부서교육등록.xrw 59 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159
  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>SMRPS04000_부서교육등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <grid>
  11. <educlist/>
  12. </grid>
  13. <list2>
  14. <eductrgtmanlist/>
  15. </list2>
  16. <list3>
  17. <emplist/>
  18. </list3>
  19. <list4>
  20. <excellist/>
  21. </list4>
  22. </main>
  23. <send>
  24. <search>
  25. <appyy/>
  26. <educflag/>
  27. <dutinstcd/>
  28. <chrgdeptnm/>
  29. <chrgdeptcd/>
  30. <chrgteamnm/>
  31. <chrgteamcd/>
  32. <chrgunitnm/>
  33. <chrgunitcd/>
  34. <emplno/>
  35. <grdunitcd/>
  36. <deptcd/>
  37. <instcd/>
  38. <posinstcd/>
  39. </search>
  40. <emplsearch>
  41. <instcd/>
  42. <dutunitcd/>
  43. <dutunitnm/>
  44. <frentcodd/>
  45. <toentcodd/>
  46. <emplnm/>
  47. <emplno/>
  48. <appyy/>
  49. <depteduccd/>
  50. <cmcfromdd/>
  51. <cmctodd/>
  52. <dutteamcd/>
  53. <dutteamnm/>
  54. <dutdeptcd/>
  55. <dutdeptnm/>
  56. <eduinstcd/>
  57. </emplsearch>
  58. <save>
  59. </save>
  60. </send>
  61. <init>
  62. </init>
  63. <temp>
  64. </temp>
  65. </root>
  66. </instance>
  67. <script type="javascript" ev:event="xforms-ready">
  68. <![CDATA[
  69. misfGetUserAuth();
  70. fCheckAuth();
  71. // user정보조회
  72. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  73. submit("TRRPS04000");
  74. var curdate = getCurrentDate();
  75. model.setValue(ipt_appyy.attribute("ref") , curdate.substr(0, 4));
  76. model.setValue(ipt_dutinstcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutplceinst"));
  77. model.setValue("/root/send/search/posinstcd",model.getValue("/root/init/emplinfo/dutplceinst"));
  78. model.setValue(ipt_chrgdeptnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutdeptnm"));
  79. model.setValue(ipt_chrgdeptcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutdeptcd"));
  80. model.setValue(ipt_chrgteamnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamnm"));
  81. model.setValue(ipt_chrgteamcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamcd"));
  82. model.setValue(ipt_chrgunitnm.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitnm"));
  83. model.setValue(ipt_chrgunitcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitcd"));
  84. model.setValue(ipt_dutdeptnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutdeptnm"));
  85. model.setValue(ipt_dutdeptcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutdeptcd"));
  86. model.setValue(ipt_dutteamnm.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamnm"));
  87. model.setValue(ipt_dutteamcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutteamcd"));
  88. model.setValue(ipt_dutunitnm.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitnm"));
  89. model.setValue(ipt_dutunitcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitcd"));
  90. model.refresh();
  91. if ( DUTY_EDU_YN == "Y" || DUTY_RESP_YN == "Y" || DUTY_PART_YN == "Y" ){
  92. ipt_chrgdeptnm.disabled = false;
  93. ipt_chrgteamnm.disabled = false;
  94. ipt_chrgunitnm.disabled = false;
  95. btn_dept.disabled = false;
  96. btn_team.disabled = false;
  97. btn_unit.disabled = false;
  98. ipt_dutdeptnm.disabled = false;
  99. ipt_dutteamnm.disabled = false;
  100. ipt_dutunitnm.disabled = false;
  101. btn_dutdept.disabled = false;
  102. btn_dutteam.disabled = false;
  103. btn_dutunit.disabled = false;
  104. }
  105. else {
  106. fCheckDisabled(); // 관리자인지 체크하여 기본 조회부분의 활성화/비활성화를 결정한다.
  107. }
  108. misfGridInit(grd_educlist);
  109. grd_educlist.rowHeight(0) = 40;
  110. misfMsterDetailSet(grd_educlist,null, "TRRPS04001" ,"Y");
  111. rpsEducSetComboList("M01-007,M01-005,M01-007", "cmb_educflag,grd_educlist.medinstvalucd,grd_educlist.educflag", "Y");
  112. misfComboComCdListMulti("Z0007", "cmb_dutinstcd", null, "Y");
  113. model.removenode("/root/main/grid/educlist");
  114. model.removenode("/root/main/list2/eductrgtmanlist");
  115. model.removenode("/root/main/list3/emplist");
  116. model.makeNode("/root/main/list3");
  117. model.setValue(cmb_dutinstcd.attribute("ref"),model.getValue("/root/init/emplinfo/dutplceinst"));
  118. model.setValue(ipt_dutunitnm.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitnm"));
  119. model.setValue(ipt_dutunitcd.attribute("ref"), model.getValue("/root/init/emplinfo/dutunitcd"));
  120. // cmb_educflag.select(1) ;
  121. grd_educlist.selectionMode = "byrow";
  122. model.refresh();
  123. ]]>
  124. </script>
  125. <script type="javascript" ev:event="xforms-model-construct-done">
  126. <![CDATA[
  127. grd_emplist.fixedcellcheckbox(0,grd_emplist.colRef("chk")) = true; // 그리드에 있는 전체선택 체크박스
  128. grd_eductrgtmanlist.fixedcellcheckbox(0,grd_eductrgtmanlist.colRef("chk")) = true;
  129. ]]>
  130. </script>
  131. <submission id="TRRPS04000" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/init/emplinfo"/>
  132. <submission id="TRRPS04999" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/init/deptadmin"/>
  133. <submission id="TRRPS04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/grid/educlist"/>
  134. <submission id="TXRPS04001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/grid/educlist" resultref="/root/temp"/>
  135. <submission id="TRRPS04102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/emplsearch" resultref="/root/main/list2"/>
  136. <submission id="TRRPS04103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/emplsearch" resultref="/root/main/list3"/>
  137. <submission id="TRRPS00304" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/emplsearch" resultref="/root/main/list3"/>
  138. <submission id="TXRPS04101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save/eductrgtmanlist" resultref="/root/temp"/>
  139. </model>
  140. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  141. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  142. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  143. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  144. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  145. <script type="javascript" src="../../../mis/miscommonweb/js/RSZ001.js"/>
  146. <script type="javascript" src="../../../mis/educationmngtweb/js/RPS001.js"/>
  147. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  148. <script type="javascript">
  149. <![CDATA[
  150. var ROW = 0; // 새로 조회되었을때 row를 선택하기 위해서..
  151. function fCheckAuth() {
  152. btn_save.disabled = !checkAuth("X") ;
  153. }
  154. function fCheckAdmin() {
  155. // 부서교육관리자로 등록된 사람인지 체크
  156. model.setValue("/root/send/search/instcd", model.getValue("/root/init/emplinfo/dutplceinst"));
  157. submit("TRRPS04999");
  158. if( model.getValue("/root/init/deptadmin/emplno") == ipt_emplno.value ) {
  159. btn_save.disabled = false;
  160. btn_search.disabled = false;
  161. }
  162. else {
  163. btn_save.disabled = true;
  164. btn_search.disabled = true;
  165. }
  166. model.refresh();
  167. }
  168. function fCheckDisabled () {
  169. fCheckAdmin();
  170. if( model.getValue("/root/init/deptadmin/teamyn") == "Y") {
  171. ipt_chrgteamnm.disabled = false;
  172. ipt_chrgunitnm.disabled = false;
  173. btn_team.disabled = false;
  174. btn_unit.disabled = false;
  175. ipt_dutteamnm.disabled = false;
  176. ipt_dutunitnm.disabled = false;
  177. btn_dutteam.disabled = false;
  178. btn_dutunit.disabled = false;
  179. }
  180. else if (model.getValue("/root/init/deptadmin/unityn") == "Y") {
  181. ipt_chrgunitnm.disabled = false;
  182. btn_unit.disabled = false;
  183. ipt_dutunitnm.disabled = false;
  184. btn_dutunit.disabled = false;
  185. }
  186. else {
  187. ipt_chrgteamnm.disabled = true;
  188. ipt_chrgunitnm.disabled = true;
  189. btn_team.disabled = true;
  190. btn_unit.disabled = true;
  191. ipt_dutteamnm.disabled = true;
  192. ipt_dutunitnm.disabled = true;
  193. btn_dutteam.disabled = true;
  194. btn_dutunit.disabled = true;
  195. }
  196. model.refresh();
  197. }
  198. function fEmpListRetrieve() {
  199. model.setValue("/root/send/emplsearch/appyy", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("appyy")));
  200. model.setValue("/root/send/emplsearch/depteduccd", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("depteduccd")));
  201. model.removeNodeset("/root/main/list3/emplist");
  202. submit("TRRPS04103");
  203. }
  204. function fCheckEmplno( emplno ) {
  205. for ( var idx = grd_eductrgtmanlist.fixedRows; idx <= grd_eductrgtmanlist.rows; idx++ ) {
  206. if( grd_eductrgtmanlist.valueMatrix(idx, grd_eductrgtmanlist.colRef("emplno")) == emplno ) {
  207. messageBox("이미 이수자로 등록되어 있습니다.","I999");
  208. return true;
  209. }
  210. }
  211. return false;
  212. }
  213. function fRgstTrgtManList() {
  214. if(grd_educlist.rows == 1) {
  215. messageBox("교육내용을", "C002");
  216. return;
  217. }
  218. var cnt = 0;
  219. for(var i=0; i<=grd_emplist.rows; i++) {
  220. var sChk = grd_emplist.valueMatrix(i, grd_emplist.colRef("chk"));
  221. if(sChk == "Y") {
  222. cnt++;
  223. var sEmplno = model.getValue(grd_emplist.nodeset + "[" + i + "]/emplno");
  224. var iRowIdx = grd_eductrgtmanlist.findRow(sEmplno, 0, grd_eductrgtmanlist.colRef("emplno"));
  225. if(iRowIdx != -1) continue;
  226. grd_eductrgtmanlist.addRow(false);
  227. grd_eductrgtmanlist.addStatus(iRowIdx, "insert");
  228. fSetTrgtManInfo(grd_eductrgtmanlist.row, i);
  229. }
  230. }
  231. }
  232. function fSetTrgtManInfo(iTrgtManRowIdx, iEmpListRowIdx) {
  233. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/depteduccd", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("depteduccd")) );
  234. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/eduinstcd", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("dutinstcd")) );
  235. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/appyy", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("appyy")) );
  236. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/emplno", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/emplno"));
  237. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/emplnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/emplnm"));
  238. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/prfshipflag", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/prfshipflag"));
  239. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/prfshipnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/prfshipnm"));
  240. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/dutinstcd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/dutinstcd"));
  241. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/dutinstnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/dutinstnm"));
  242. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/dutdeptcd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/dutdeptcd"));
  243. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/dutdeptnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/dutdeptnm"));
  244. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/holyordflag", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/holyordflag"));
  245. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/holyordnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/holyordnm"));
  246. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/grupjoblncd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/grupjoblncd"));
  247. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/grupjoblnnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/grupjoblnnm"));
  248. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/njobgradcd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/njobgradcd"));
  249. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/njobgradnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/njobgradnm"));
  250. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/anual", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/anual"));
  251. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/jobkindcd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/jobkindcd"));
  252. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/jobkindnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/jobkindnm"));
  253. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/jobrespcd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/jobrespcd"));
  254. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/jobrespnm", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/jobrespnm"));
  255. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/gender", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/gender"));
  256. model.setValue(grd_eductrgtmanlist.nodeset + "[" + iTrgtManRowIdx + "]/entcodd", model.getValue(grd_emplist.nodeset + "[" + iEmpListRowIdx + "]/entcodd"));
  257. }
  258. function fLoadExcel() {
  259. if(grd_educlist.rows == 1) {
  260. messageBox("교육내용을", "C002");
  261. return;
  262. }
  263. var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  264. grd_loadexcel.loadExcel(fileName);
  265. grd_loadexcel.rebuild();
  266. var sEmplno = "";
  267. var iRowIdx = -1;
  268. for(var i=1; i<grd_loadexcel.rows; i++) {
  269. sEmplno = grd_loadexcel.valueMatrix(i, grd_loadexcel.colRef("emplno"));
  270. if(sEmplno == "") continue;
  271. iRowIdx = grd_eductrgtmanlist.findRow(sEmplno, 0, grd_eductrgtmanlist.colRef("emplno"));
  272. if(iRowIdx != -1) {
  273. continue;
  274. }
  275. else {
  276. grd_eductrgtmanlist.addRow(false);
  277. model.setValue(grd_eductrgtmanlist.nodeset + "[" + grd_eductrgtmanlist.row + "]/depteduccd", model.getValue(grd_educlist.nodeset + "[" + grd_educlist.row + "]/depteduccd"));
  278. model.setValue(grd_eductrgtmanlist.nodeset + "[" + grd_eductrgtmanlist.row + "]/appyy", model.getValue(grd_educlist.nodeset + "[" + grd_educlist.row + "]/appyy"));
  279. model.setValue(grd_eductrgtmanlist.nodeset + "[" + grd_eductrgtmanlist.row + "]/eduinstcd", model.getValue(grd_educlist.nodeset + "[" + grd_educlist.row + "]/dutinstcd"));
  280. model.setValue(grd_eductrgtmanlist.nodeset + "[" + grd_eductrgtmanlist.row + "]/emplno", model.getValue(grd_loadexcel.nodeset + "[" + i + "]/emplno"));
  281. }
  282. }
  283. model.refresh();
  284. }
  285. function fSave() {
  286. model.removenode("/root/send/save");
  287. model.makeNode("/root/send/save/eductrgtmanlist");
  288. model.setValue("/root/send/save/eductrgtmanlist",grd_eductrgtmanlist.getUpdateData() );
  289. model.refresh();
  290. if( submit("TXRPS04101") ){
  291. messageBox("","I001");
  292. fEducTrgtManListRetrieve();
  293. }
  294. for(var idx = grd_emplist.fixedRows; idx <= grd_emplist.rows; idx++ ) {
  295. if(grd_emplist.valueMatrix(idx,grd_emplist.colRef("chk")) == 'Y' ) {
  296. grd_emplist.deleteRow(idx,false);
  297. idx--;
  298. }
  299. }
  300. model.refresh();
  301. }
  302. function fEducTrgtManListRetrieve() {
  303. model.setValue("/root/send/emplsearch/appyy", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("appyy")));
  304. model.setValue("/root/send/emplsearch/depteduccd", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("depteduccd")));
  305. model.setValue("/root/send/emplsearch/eduinstcd", grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("dutinstcd")));
  306. submit("TRRPS04102");
  307. model.refresh();
  308. }
  309. // 저장하기전에 필수입력값중 빈컬럼이 있는지 체크
  310. function fCheckColumn() {
  311. for(var idx = grd_educlist.fixedrows; idx <= grd_educlist.rows; idx++ )
  312. {
  313. if( grd_educlist.rowStatus(idx) == '1' || grd_educlist.rowStatus(idx) == '3' ||grd_educlist.rowStatus(idx) == '2' ) {
  314. // if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("chrgunitnm")) == '' ) {
  315. // messageBox("부서명은","I003");
  316. // return false;
  317. // }
  318. // else
  319. if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("educflag")) == '' ) {
  320. messageBox("교육구분은","I003");
  321. return false;
  322. }
  323. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("educnm")) == '' ) {
  324. messageBox("교육명은","I003");
  325. return false;
  326. }
  327. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("educfromdd")) == '' ) {
  328. messageBox("교육기간(from)은","I003");
  329. return false;
  330. }
  331. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("eductodd")) == '' ) {
  332. messageBox("교육기간(to)은","I003");
  333. return false;
  334. }
  335. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("eductime")) == '' ) {
  336. messageBox("교육시간일정은","I003");
  337. return false;
  338. }
  339. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("eductm")) == '' ) {
  340. messageBox("교육총시간은","I003");
  341. return false;
  342. }
  343. else if( grd_educlist.valueMatrix(idx,grd_educlist.colRef("educplce")) == '' ) {
  344. messageBox("교육장소는","I003");
  345. return false;
  346. }
  347. return true;
  348. }
  349. }
  350. }
  351. ]]>
  352. </script>
  353. </xhtml:head>
  354. <xhtml:body style="margin-left:8; margin-right:8; ">
  355. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  356. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">부서교육등록</caption>
  357. </group>
  358. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  359. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  360. <button id="btn_search" class="btn1_letter2" style="left:1118px; top:17px; width:56px; height:22px; ">
  361. <caption>조회</caption>
  362. <script type="javascript" ev:event="DOMActivate">
  363. <![CDATA[
  364. if(!isRequiredControls("ipt_appyy")) return;
  365. submit("TRRPS04001");
  366. ]]>
  367. </script>
  368. </button>
  369. <line id="line13" class="line_4" style="x1:1100px; y1:16px; x2:1100px; y2:38px; "/>
  370. <line id="line8" class="line_1" style="x1:0px; y1:73px; x2:1195px; y2:73px; "/>
  371. <caption id="caption20" class="tit_2" style="left:5px; top:59px; width:169px; height:14px; ">부서교육목록</caption>
  372. <caption id="cap_appyy" class="search_name" style="left:16px; top:18px; width:101px; height:17px; ">년 도 :</caption>
  373. <input id="ipt_appyy" ref="/root/send/search/appyy" class="input_s_essential" inputtype="date" format="yyyy" style="left:80px; top:18px; width:86px; height:19px; text-align:center; "/>
  374. <caption id="cap_educflag" class="search_name" style="left:890px; top:18px; width:101px; height:17px; ">교육구분 :</caption>
  375. <select1 id="cmb_educflag" ref="/root/send/search/educflag" class="combo_search" appearance="minimal" style="left:975px; top:18px; width:100px; height:19px; text-align:center; ">
  376. <choices>
  377. <itemset>
  378. <label/>
  379. <value/>
  380. </itemset>
  381. </choices>
  382. </select1>
  383. <datagrid id="grd_educlist" nodeset="/root/main/grid/educlist" autoresize="true" caption="부서교육코드^연도^주체단위^주체기관코드^부(실)^부서코드^과(팀)^팀코드^부서^유닛코드^교육구분&#xA;(부서교육/부서신입교육)^의료기관평가코드^교육명&#xA;(직무관련명칭위주)^차수^교육기간&#xA;(ex, 2009-01-01~2009-01-01)^교육기간&#xA;(ex, 2009-01-01~2009-01-01)^교육시간일정&#xA;(ex, 08:00~18:00)^교육총시간&#xA;(단위:시간, ex 1.5)^교육장소^신입&#xA;인원^재직원&#xA;인원^총인원^이수자&#xA;인원^강사^예산(단위:원)^교육평가(간략하게 주요사항 기술)^실시기관코드" colsep="^" colwidth="40, 50, 50, 62, 120, 40, 110, 40, 100, 40, 150, 120, 200, 40, 95, 95, 102, 113, 140, 50, 50, 50, 56, 100, 110, 419" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" selectionmode="byrow" style="left:0px; top:78px; width:1194px; height:218px; ">
  384. <col class="input_search" ref="depteduccd" visibility="hidden"/>
  385. <col class="input_s_essential" ref="appyy" _key="true" style="text-align:center; "/>
  386. <col class="combo_s_essential" ref="mainbdunit" visibility="hidden"/>
  387. <col class="input_search" ref="dutinstcd" visibility="hidden"/>
  388. <col class="input_search" ref="chrgdeptnm" type="output" visibility="visible" style="text-align:center; "/>
  389. <col class="input_search" ref="chrgdeptcd" visibility="hidden"/>
  390. <col class="input_search" ref="chrgteamnm" type="output" visibility="visible" style="text-align:center; "/>
  391. <col class="input_search" ref="chrgteamcd" visibility="hidden"/>
  392. <col class="input_s_essential" ref="chrgunitnm" type="output" style="text-align:center; "/>
  393. <col class="input_s_essential" ref="chrgunitcd" visibility="hidden"/>
  394. <col class="input_s_essential" ref="educflag" type="combo" style="text-align:center; ">
  395. <choices>
  396. <itemset>
  397. <label/>
  398. <value/>
  399. </itemset>
  400. </choices>
  401. </col>
  402. <col ref="medinstvalucd" type="combo" visibility="hidden" style="text-align:center; ">
  403. <choices>
  404. <itemset>
  405. <label/>
  406. <value/>
  407. </itemset>
  408. </choices>
  409. </col>
  410. <col class="input_s_essential" ref="educnm" type="input" maxlength="300"/>
  411. <col class="combo_s_essential" ref="educdg" type="input" visibility="hidden" format="###" maxlength="3" style="text-align:center; "/>
  412. <col class="input_s_essential" ref="educfromdd" type="inputdate" maxlength="100" _key="true" style="text-align:center; "/>
  413. <col class="input_s_essential" ref="eductodd" type="inputdate" _key="true" style="text-align:center; "/>
  414. <col class="input_s_essential" ref="eductime" type="input" format="99:99-99:99" maxlength="20" style="text-align:center; "/>
  415. <col class="input_s_essential" imemode="disabled" ref="eductm" type="input" maxlength="5" style="text-align:center; "/>
  416. <col class="combo_s_essential" ref="educplce" type="input" style="text-align:left; "/>
  417. <col class="input_s_essential" ref="newpsn" type="input" format="####" maxlength="4" style="text-align:center; "/>
  418. <col class="input_s_essential" ref="oldpsn" type="input" format="####" maxlength="4" style="text-align:center; "/>
  419. <col class="input_search" ref="totalpsn" format="####" maxlength="4" style="text-align:center; "/>
  420. <col class="input_search" ref="cmpltcurspsnno" format="####" maxlength="4" style="color:#ff0000; text-align:center; "/>
  421. <col class="input_search" ref="lactr" type="input" maxlength="30" style="text-align:left; "/>
  422. <col class="input_search" ref="bugt" type="input" format="#,###" maxlength="10" style="text-align:right; "/>
  423. <col ref="educvalu" type="input" maxlength="300"/>
  424. <script type="javascript" ev:event="onbuttonclick">
  425. <![CDATA[
  426. // if(grd_educlist.col == grd_educlist.colRef("chrgunitnm")) {
  427. // var recv_list = "chrgunitcd,chrgunitnm";
  428. // misfOpenPopUpList("02", grd_educlist,"", recv_list, grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("posinstcd")), "instcd") ;
  429. //
  430. // // unit이 달라지면 상위 부서도 가져온다..
  431. // model.setValue("/root/send/search/grdunitcd", grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("chrgunitcd")) );
  432. // model.setValue("/root/send/search/emplno", "" );
  433. // submit("TRRPS04000");
  434. //
  435. // grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("chrgdeptnm")) = model.getValue("/root/init/emplinfo/dutdeptnm");
  436. // grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("chrgdeptcd")) = model.getValue("/root/init/emplinfo/dutdeptcd");
  437. // grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("chrgteamnm")) = model.getValue("/root/init/emplinfo/dutteamnm");
  438. // grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("chrgteamcd")) = model.getValue("/root/init/emplinfo/dutteamcd");
  439. //
  440. // model.refresh();
  441. // }
  442. ]]>
  443. </script>
  444. <script type="javascript" ev:event="xforms-value-changed">
  445. <![CDATA[
  446. if( grd_educlist.col == grd_educlist.colRef("newpsn") || grd_educlist.col == grd_educlist.colRef("oldpsn") ) {
  447. grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("totalpsn"))
  448. = parseInt(grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("newpsn")))
  449. + parseInt(grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("oldpsn")));
  450. }
  451. // var fromdd = grd_educlist.valueMatrix(grd_educlist.row-1,grd_educlist.colRef("educnm")).substr(0,4) ;
  452. // var todd = grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("educnm")).substr(4,4);
  453. //
  454. // if( fromtm != '' && totm != '' ) {
  455. // var totalsec = getTimeInterval(fromtm,totm); // dateHelper.js 에 있는 함수. 시간차이를 초단위로 반환
  456. // grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("eductm")) = parseInt(totalsec / 60);
  457. // }
  458. model.refresh();
  459. ]]>
  460. </script>
  461. <script type="javascript" ev:event="ondblclick">
  462. <![CDATA[
  463. if( grd_educlist.rowStatus(grd_educlist.row) != "0" ) {
  464. return ;
  465. }
  466. fEducTrgtManListRetrieve();
  467. btn_search2.dispatch("DOMActivate");
  468. ]]>
  469. </script>
  470. </datagrid>
  471. <button id="btn_del" class="btn2_letter3" style="left:1071px; top:53px; width:53px; height:19px; ">
  472. <caption>행삭제</caption>
  473. <script type="javascript" ev:event="DOMActivate">
  474. <![CDATA[
  475. if(!isRequiredControls("ipt_appyy")) return;
  476. misfGridIUD(grd_educlist, "D");
  477. model.refresh();
  478. ]]>
  479. </script>
  480. </button>
  481. <button id="btn_add" class="btn2_letter3" style="left:1016px; top:53px; width:53px; height:19px; ">
  482. <caption>행추가</caption>
  483. <script type="javascript" ev:event="DOMActivate">
  484. <![CDATA[
  485. if(!isRequiredControls("ipt_appyy")) return;
  486. model.removenode("/root/main/list2");
  487. model.removenode("/root/main/list3");
  488. model.removenode("/root/save");
  489. if( grd_educlist.fixedRows == grd_educlist.rows) {
  490. misfGridIUD(grd_educlist, "A");
  491. }
  492. else {
  493. grd_educlist.insertRow(grd_educlist.fixedRows,"above");
  494. }
  495. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("appyy")) = ipt_appyy.value;
  496. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("mainbdunit")) = "3";
  497. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("dutinstcd")) = ipt_dutinstcd.value;
  498. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgdeptnm")) = ipt_chrgdeptnm.value;
  499. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgdeptcd")) = ipt_chrgdeptcd.value;
  500. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgteamnm")) = ipt_chrgteamnm.value;
  501. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgteamcd")) = ipt_chrgteamcd.value;
  502. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgunitnm")) = ipt_chrgunitnm.value;
  503. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("chrgunitcd")) = ipt_chrgunitcd.value;
  504. // grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("educflag")) = cmb_educflag.value;
  505. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("newpsn")) = "0";
  506. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("oldpsn")) = "0";
  507. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("totalpsn")) = "0";
  508. grd_educlist.valueMatrix(grd_educlist.row, grd_educlist.colRef("cmpltcurspsnno")) = "0";
  509. model.refresh();
  510. ]]>
  511. </script>
  512. </button>
  513. <button id="btn_init" class="btn2_letter4" style="left:1130px; top:53px; width:64px; height:19px; ">
  514. <caption>엑셀저장</caption>
  515. <script type="javascript" ev:event="DOMActivate">
  516. <![CDATA[
  517. var fileName = window.fileDialog ("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  518. if (fileName != "") {
  519. grd_educlist.saveExcel(fileName,"부서교육내역",false);
  520. }
  521. ]]>
  522. </script>
  523. </button>
  524. <input id="ipt_chrgdeptnm" ref="/root/send/search/chrgdeptnm" class="input_search" disabled="true" visibility="visible" appearance="input" style="left:274px; top:18px; width:104px; height:19px; ">
  525. <script type="javascript" ev:event="xforms-value-changed">
  526. <![CDATA[
  527. if( ipt_chrgdeptnm.value.getByteLength() == '0' ) {
  528. ipt_chrgdeptcd.value = "" ;
  529. }
  530. model.refresh();
  531. ]]>
  532. </script>
  533. </input>
  534. <input id="ipt_chrgdeptcd" ref="/root/send/search/chrgdeptcd" disabled="true" visibility="hidden" style="left:310px; top:25px; width:50px; height:19px; "/>
  535. <input id="ipt_dutinstcd" ref="/root/send/search/dutinstcd" visibility="hidden" style="left:680px; top:50px; width:50px; height:19px; "/>
  536. <input id="ipt_chrgteamnm" ref="/root/send/search/chrgteamnm" class="input_search" disabled="true" visibility="visible" appearance="input" style="left:500px; top:18px; width:113px; height:19px; ">
  537. <script type="javascript" ev:event="xforms-value-changed">
  538. <![CDATA[
  539. if( ipt_chrgteamnm.value.getByteLength() == '0' ) {
  540. ipt_chrgteamcd.value = "" ;
  541. }
  542. model.refresh();
  543. ]]>
  544. </script>
  545. </input>
  546. <input id="ipt_chrgteamcd" ref="/root/send/search/chrgteamcd" disabled="true" visibility="hidden" style="left:535px; top:30px; width:50px; height:19px; "/>
  547. <button id="btn_unit" class="icon_search" disabled="true" style="left:840px; top:19px; width:16px; height:16px; ">
  548. <caption/>
  549. <script type="javascript" ev:event="DOMActivate">
  550. <![CDATA[
  551. var unitcd = ipt_chrgunitcd.value;
  552. var unitnm = ipt_chrgunitnm.value;
  553. rpsfEducOpenPopUpList("07", ipt_chrgunitnm, "", "chrgunitcd,chrgunitnm", ipt_dutinstcd.value, "instcd");
  554. if( ipt_chrgunitnm.value != "" ) {
  555. if ( DUTY_EDU_YN == "Y" || DUTY_RESP_YN == "Y" || DUTY_PART_YN == "Y" ){
  556. // unit이 달라지면 상위 부서도 가져온다..
  557. model.setValue("/root/send/search/grdunitcd", ipt_chrgunitcd.value);
  558. model.setValue("/root/send/search/emplno", "" );
  559. submit("TRRPS04000");
  560. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  561. model.setValue("/root/send/search/chrgdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  562. model.setValue("/root/send/search/chrgdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  563. model.setValue("/root/send/search/chrgteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  564. model.setValue("/root/send/search/chrgteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  565. model.refresh();
  566. }
  567. else {
  568. fCheckAdmin(); // 관리자인지 체크한다.
  569. // unit이 달라지면 상위 부서도 가져온다..
  570. model.setValue("/root/send/search/grdunitcd", ipt_chrgunitcd.value);
  571. model.setValue("/root/send/search/emplno", "" );
  572. submit("TRRPS04000");
  573. // if( !btn_search.disabled &&
  574. // model.getValue("/root/send/search/chrgdeptcd") == model.getValue("/root/init/emplinfo/dutdeptcd") &&
  575. // model.getValue("/root/send/search/chrgteamcd") == model.getValue("/root/init/emplinfo/dutteamcd") ) {
  576. model.setValue(ipt_emplno.attribute("ref"),getUserInfo("userid"));
  577. model.setValue("/root/send/search/chrgdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  578. model.setValue("/root/send/search/chrgdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  579. model.setValue("/root/send/search/chrgteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  580. model.setValue("/root/send/search/chrgteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  581. // }
  582. /* else {
  583. messageBox("당신의 관리부서가 아닙니다. 확인바랍니다.","I999");
  584. ipt_chrgunitcd.value = unitcd;
  585. ipt_chrgunitnm.value = unitnm;
  586. }
  587. */
  588. }
  589. }
  590. model.refresh();
  591. ]]>
  592. </script>
  593. </button>
  594. <caption id="caption3" class="search_name" style="left:655px; top:18px; width:86px; height:17px; ">부 서 :</caption>
  595. <input id="ipt_chrgunitnm" ref="/root/send/search/chrgunitnm" class="input_search" disabled="true" appearance="input" style="left:720px; top:18px; width:118px; height:19px; ">
  596. <script type="javascript" ev:event="xforms-value-changed">
  597. <![CDATA[
  598. if( ipt_chrgunitnm.value.getByteLength() == '0' ) {
  599. ipt_chrgunitcd.value = "" ;
  600. }
  601. model.refresh();
  602. ]]>
  603. </script>
  604. </input>
  605. <input id="ipt_chrgunitcd" ref="/root/send/search/chrgunitcd" disabled="true" visibility="hidden" style="left:745px; top:30px; width:85px; height:19px; text-align:center; "/>
  606. <input id="ipt_emplno" ref="/root/send/search/emplno" visibility="hidden" style="left:845px; top:50px; width:90px; height:19px; "/>
  607. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:300px; width:1195px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  608. <button id="btn_dutunit" class="icon_search" disabled="true" style="left:801px; top:334px; width:16px; height:16px; ">
  609. <caption/>
  610. <script type="javascript" ev:event="DOMActivate">
  611. <![CDATA[
  612. rpsfEducOpenPopUpList("07", ipt_dutunitnm, "", "dutunitcd,dutunitnm", cmb_dutinstcd.value, "instcd");
  613. if( ipt_dutunitnm.value != "" ) {
  614. if ( DUTY_EDU_YN == "Y" || DUTY_RESP_YN == "Y" || DUTY_PART_YN == "Y" ){
  615. // unit이 달라지면 상위 부서도 가져온다..
  616. model.setValue("/root/send/search/grdunitcd", ipt_dutunitcd.value);
  617. model.setValue("/root/send/search/emplno", "" );
  618. submit("TRRPS04000");
  619. model.setValue("/root/send/emplsearch/dutdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  620. model.setValue("/root/send/emplsearch/dutdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  621. model.setValue("/root/send/emplsearch/dutteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  622. model.setValue("/root/send/emplsearch/dutteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  623. model.refresh();
  624. }
  625. else {
  626. fCheckAdmin(); // 관리자인지 체크한다.
  627. // unit이 달라지면 상위 부서도 가져온다..
  628. model.setValue("/root/send/search/grdunitcd", ipt_dutunitcd.value);
  629. model.setValue("/root/send/search/emplno", "" );
  630. submit("TRRPS04000");
  631. // if( !btn_search2.disabled &&
  632. // model.getValue("/root/send/emplsearch/dutdeptcd") == model.getValue("/root/init/emplinfo/dutdeptcd") &&
  633. // model.getValue("/root/send/emplsearch/dutteamcd") == model.getValue("/root/init/emplinfo/dutteamcd") ) {
  634. model.setValue("/root/send/emplsearch/dutdeptnm", model.getValue("/root/init/emplinfo/dutdeptnm"));
  635. model.setValue("/root/send/emplsearch/dutdeptcd", model.getValue("/root/init/emplinfo/dutdeptcd"));
  636. model.setValue("/root/send/emplsearch/dutteamnm", model.getValue("/root/init/emplinfo/dutteamnm"));
  637. model.setValue("/root/send/emplsearch/dutteamcd", model.getValue("/root/init/emplinfo/dutteamcd"));
  638. // }
  639. /* else {
  640. messageBox("당신의 관리부서가 아닙니다. 확인바랍니다.","I999");
  641. ipt_dutunitcd.value = unitcd;
  642. ipt_dutunitnm.value = unitnm;
  643. }
  644. */
  645. }
  646. }
  647. model.refresh();
  648. ]]>
  649. </script>
  650. </button>
  651. <button id="button1" class="icon_search" style="left:989px; top:334px; width:16px; height:16px; ">
  652. <caption/>
  653. <script type="javascript" ev:event="DOMActivate">
  654. <![CDATA[
  655. rpbfOpenPopUpList("SPRPB00101", ipt_emplno1, "emplno,emplnm", "", "N");
  656. if( fCheckEmplno(ipt_emplno1.value) ) ;
  657. else {
  658. btn_search2.dispatch("DOMActivate");
  659. }
  660. model.refresh();
  661. ]]>
  662. </script>
  663. </button>
  664. <button id="btn_search2" class="btn1_letter2" style="left:1118px; top:321px; width:56px; height:22px; ">
  665. <caption>조회</caption>
  666. <script type="javascript" ev:event="DOMActivate">
  667. <![CDATA[
  668. for(var idx = grd_educlist.fixedRows; idx <= grd_educlist.rows; idx++) {
  669. if( grd_educlist.rowStatus(idx) == 0 ) continue;
  670. else {
  671. if(messageBox("변경된 교육이 있습니다. 저장하시겠습니까?","Q999") == '6') {
  672. if( fCheckColumn() ) {
  673. var row = grd_educlist.row;
  674. misfSave("TXRPS04001");
  675. submit("TRRPS04001");
  676. grd_educlist.row = row;
  677. model.refresh();
  678. }
  679. }
  680. else {
  681. return;
  682. }
  683. }
  684. }
  685. if( grd_educlist.rows == 1 ) {
  686. messageBox("교육먼저 선택해 주세요.","C999");
  687. return;
  688. // model.setValue("/root/send/emplsearch/appyy", ipt_appyy.value);
  689. // model.removeNodeset("/root/main/list3/emplist");
  690. // submit("TRRPS00304");
  691. }
  692. else {
  693. fEmpListRetrieve();
  694. }
  695. ]]>
  696. </script>
  697. </button>
  698. <input id="ipt_frentcodd" ref="/root/send/emplsearch/frentcodd" class="input_s_essential" inputtype="date" style="left:353px; top:308px; width:88px; height:19px; "/>
  699. <input id="ipt_toentcodd" ref="/root/send/emplsearch/toentcodd" class="input_s_essential" inputtype="date" style="left:455px; top:308px; width:88px; height:19px; "/>
  700. <caption id="caption21" class="search_name" style="left:268px; top:310px; width:95px; height:17px; ">입사일자 :</caption>
  701. <input id="ipt_dutunitnm" ref="/root/send/emplsearch/dutunitnm" class="input_search" disabled="true" navindex="3" style="left:643px; top:333px; width:156px; height:19px; ">
  702. <script type="javascript" ev:event="xforms-value-changed">
  703. <![CDATA[
  704. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_dutinstcd.value, "instcd");
  705. model.refresh();
  706. ]]>
  707. </script>
  708. </input>
  709. <caption id="caption22" style="left:443px; top:308px; width:11px; height:20px; ">~</caption>
  710. <input id="ipt_dutunitcd" ref="/root/send/emplsearch/dutunitcd" class="input_search" navindex="2" visibility="hidden" maxlength="10" style="left:739px; top:343px; width:58px; height:19px; text-align:center; ">
  711. <script type="javascript" ev:event="xforms-value-changed">
  712. <![CDATA[
  713. misfValidationCheck("02", "", "dutunitcd,dutunitnm", cmb_dutinstcd.value, "instcd");
  714. model.refresh();
  715. ]]>
  716. </script>
  717. </input>
  718. <caption id="caption4" class="search_name" style="left:838px; top:333px; width:110px; height:17px; ">성 명 :</caption>
  719. <input id="ipt_emplnm" ref="/root/send/emplsearch/emplnm" class="input_search" navindex="3" style="left:914px; top:333px; width:73px; height:19px; ">
  720. <script type="javascript" ev:event="xforms-value-changed">
  721. <![CDATA[
  722. var recv_list = "emplno,emplnm";
  723. rpbfValidationCheck("emplno", recv_list);
  724. model.refresh();
  725. ]]>
  726. </script>
  727. </input>
  728. <line id="line1" class="line_4" style="x1:1100px; y1:305px; x2:1100px; y2:357px; "/>
  729. <input id="ipt_emplno1" ref="/root/send/emplsearch/emplno" class="input_search" navindex="2" visibility="visible" maxlength="10" style="left:1008px; top:333px; width:73px; height:19px; text-align:center; ">
  730. <script type="javascript" ev:event="xforms-value-changed">
  731. <![CDATA[
  732. var recv_list = "emplno,emplnm";
  733. rpbfValidationCheck("emplnm", recv_list);
  734. model.refresh();
  735. ]]>
  736. </script>
  737. </input>
  738. <select1 id="cmb_dutinstcd" ref="/root/send/emplsearch/instcd" class="combo_s_essential" appearance="minimal" style="left:88px; top:308px; width:160px; height:19px; ">
  739. <choices>
  740. <itemset>
  741. <label/>
  742. <value/>
  743. </itemset>
  744. </choices>
  745. </select1>
  746. <caption id="caption17" class="search_name" style="left:570px; top:333px; width:115px; height:17px; ">부 서 :</caption>
  747. <caption id="caption8" class="search_name" style="left:13px; top:310px; width:85px; height:17px; ">기 관 :</caption>
  748. <datagrid id="grd_emplist" nodeset="/root/main/list3/emplist" autoresize="true" caption="^사원번호^성명^교직구분코드^직원분류^근무기관코드^근무기관^근무부서코드^근무부서^성직구분코드^직원구분^직군코드^직군^신직급코드^신직급^년차^직종코드^직종^직책코드^직책^성별^입사일자^cmc입사일" colsep="^" colwidth="25, 65, 60, 0, 60, 0, 110, 0, 100, 0, 55, 0, 70, 0, 53, 35, 0, 68, 0, 38, 42, 66, 70" dataheight="25" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="byrow" style="left:0px; top:389px; width:581px; height:344px; ">
  749. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  750. <col ref="emplno" style="text-align:center; "/>
  751. <col ref="emplnm" style="text-align:center; "/>
  752. <col ref="prfshipflag" visibility="hidden"/>
  753. <col ref="prfshipnm"/>
  754. <col ref="dutinstcd" visibility="hidden"/>
  755. <col ref="dutinstnm"/>
  756. <col ref="dutdeptcd" visibility="hidden"/>
  757. <col ref="dutdeptnm"/>
  758. <col ref="holyordflag" visibility="hidden"/>
  759. <col ref="holyordnm"/>
  760. <col ref="grupjoblncd" visibility="hidden"/>
  761. <col ref="grupjoblnnm" visibility="hidden"/>
  762. <col ref="njobgradcd" visibility="hidden"/>
  763. <col ref="njobgradnm"/>
  764. <col ref="anual" style="text-align:right; "/>
  765. <col ref="jobkindcd" visibility="hidden"/>
  766. <col ref="jobkindnm"/>
  767. <col ref="jobrespcd" visibility="hidden"/>
  768. <col ref="jobrespnm"/>
  769. <col disabled="true" ref="gender" type="combo" style="text-align:center; ">
  770. <choices>
  771. <item>
  772. <label>남</label>
  773. <value>M</value>
  774. </item>
  775. <item>
  776. <label>여</label>
  777. <value>F</value>
  778. </item>
  779. </choices>
  780. </col>
  781. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  782. <col ref="cmcentcodd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  783. <script type="javascript" ev:event="onaftersort">
  784. <![CDATA[
  785. grd_emplist.gridToInstance();
  786. ]]>
  787. </script>
  788. <script type="javascript" ev:event="ondblclick">
  789. <![CDATA[
  790. if( grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("depteduccd")) == "" ) {
  791. messageBox("교육을","C002");
  792. return;
  793. }
  794. var sEmplno = model.getValue(grd_emplist.nodeset + "[" + grd_emplist.row + "]/emplno");
  795. var iRowIdx = grd_eductrgtmanlist.findRow(sEmplno, 0, grd_eductrgtmanlist.colRef("emplno"));
  796. if(iRowIdx != -1) {
  797. messageBox("이미 대상자로 등록되어 있습니다.","I999");
  798. return;
  799. }
  800. // 직원을 이수자로 등록한다.
  801. grd_eductrgtmanlist.addRow(false);
  802. fSetTrgtManInfo(grd_eductrgtmanlist.row, grd_emplist.row);
  803. model.refresh();
  804. ]]>
  805. </script>
  806. </datagrid>
  807. <button id="btn_remove" class="btn2_letter3" style="left:528px; top:364px; width:53px; height:19px; ">
  808. <caption>초기화</caption>
  809. <script type="javascript" ev:event="DOMActivate">
  810. <![CDATA[
  811. model.removenode("/root/main/list3");
  812. grd_emplist.refresh();
  813. ]]>
  814. </script>
  815. </button>
  816. <caption id="caption16" class="tit_2" style="left:0px; top:369px; width:144px; height:13px; ">직원목록</caption>
  817. <button id="btn_saveexcel" class="btn2_letter4" style="left:1005px; top:364px; width:64px; height:19px; ">
  818. <caption>엑셀저장</caption>
  819. <script type="javascript" ev:event="DOMActivate">
  820. <![CDATA[
  821. misfSaveExcel(grd_eductrgtmanlist);
  822. ]]>
  823. </script>
  824. </button>
  825. <button id="btn_delrow" class="btn2_letter3" style="left:1138px; top:364px; width:53px; height:19px; ">
  826. <caption>행삭제</caption>
  827. <script type="javascript" ev:event="DOMActivate">
  828. <![CDATA[
  829. /*
  830. var rowcnt = grd_eductrgtmanlist.rows;
  831. for( var i = 1; i < rowcnt; i++ ) {
  832. if( grd_eductrgtmanlist.valueMatrix(i, grd_eductrgtmanlist.colRef("chk")) == "Y" ) {
  833. grd_eductrgtmanlist.removeStatus(i, "insert");
  834. grd_eductrgtmanlist.addStatus(i, "delete");
  835. }
  836. }
  837. */
  838. grd_eductrgtmanlist.addStatus(grd_eductrgtmanlist.row, "delete");
  839. grd_eductrgtmanlist.refresh();
  840. ]]>
  841. </script>
  842. </button>
  843. <caption id="caption13" class="tit_2" style="left:615px; top:369px; width:169px; height:13px; ">이수자 목록</caption>
  844. <button id="btn_loadexcel" class="btn2_letter4" style="left:1070px; top:364px; width:64px; height:19px; ">
  845. <caption>엑셀입력</caption>
  846. <script type="javascript" ev:event="DOMActivate">
  847. <![CDATA[
  848. fLoadExcel();
  849. ]]>
  850. </script>
  851. </button>
  852. <datagrid id="grd_loadexcel" nodeset="/root/main/list4/excellist" visibility="hidden" caption="사번" colsep="^" colwidth="80" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:1065px; top:620px; width:120px; height:96px; ">
  853. <col ref="emplno" style="text-align:center; "/>
  854. </datagrid>
  855. <line id="line3" class="line_1" style="x1:615px; y1:385px; x2:1195px; y2:386px; "/>
  856. <line id="line2" class="line_1" style="x1:0px; y1:385px; x2:581px; y2:386px; "/>
  857. <img id="btn_addtrgtman" class="icon_right" style="left:584px; top:550px; width:26px; height:19px; background-stretch:stretch; ">
  858. <script type="javascript" ev:event="onclick">
  859. <![CDATA[
  860. for(var idx = grd_educlist.fixedRows; idx <= grd_educlist.rows; idx++) {
  861. if( grd_educlist.rowStatus(idx) == 0 ) continue;
  862. else {
  863. if(messageBox("변경된 교육이 있습니다. 저장하시겠습니까?","Q999") == '6') {
  864. var row = grd_educlist.row;
  865. misfSave("TXRPS04001");
  866. submit("TRRPS04001");
  867. grd_educlist.row = row;
  868. model.refresh();
  869. }
  870. else {
  871. return;
  872. }
  873. }
  874. }
  875. if( grd_educlist.valueMatrix(grd_educlist.row,grd_educlist.colRef("depteduccd")) == "" ) {
  876. messageBox("교육을","C002");
  877. return;
  878. }
  879. var sEmplno = model.getValue(grd_emplist.nodeset + "[" + grd_emplist.row + "]/emplno");
  880. var iRowIdx = grd_eductrgtmanlist.findRow(sEmplno, 0, grd_eductrgtmanlist.colRef("emplno"));
  881. if(iRowIdx != -1) {
  882. messageBox("이미 대상자로 등록되어 있습니다.","I999");
  883. return;
  884. }
  885. fRgstTrgtManList();
  886. model.refresh();
  887. ]]>
  888. </script>
  889. </img>
  890. <datagrid id="grd_eductrgtmanlist" nodeset="/root/main/list2/eductrgtmanlist" autoresize="true" caption="교육코드^적용년월^^사원번호^성명^교직구분코드^직원분류^근무기관코드^근무기관^근무부서코드^근무부서^성직구분코드^직원구분^직군코드^직군^신직급코드^신직급^현직급발령일^년차^직종코드^직종^직책코드^직책^직책발령일자^성별^입사일자^cmc입사일^교육기관코드" colsep="^" colwidth="72, 72, 25, 65, 60, 0, 60, 0, 110, 0, 100, 0, 54, 0, 70, 0, 53, 91, 35, 0, 67, 0, 40, 89, 41, 66, 69, 100" dataheight="25" explorerbar="sortshow" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" selectionmode="byrow" style="left:613px; top:389px; width:581px; height:344px; ">
  891. <col ref="depteduccd" visibility="hidden"/>
  892. <col ref="appyy" visibility="hidden"/>
  893. <col checkvalue="Y,N" ref="chk" type="checkbox" visibility="hidden"/>
  894. <col ref="emplno" style="text-align:center; "/>
  895. <col ref="emplnm" style="text-align:center; "/>
  896. <col ref="prfshipflag" visibility="hidden"/>
  897. <col ref="prfshipnm"/>
  898. <col ref="dutinstcd" visibility="hidden"/>
  899. <col ref="dutinstnm"/>
  900. <col ref="dutdeptcd" visibility="hidden"/>
  901. <col ref="dutdeptnm"/>
  902. <col ref="holyordflag" visibility="hidden"/>
  903. <col ref="holyordnm"/>
  904. <col ref="grupjoblncd" visibility="hidden"/>
  905. <col ref="grupjoblnnm" visibility="hidden"/>
  906. <col ref="njobgradcd" visibility="hidden"/>
  907. <col ref="njobgradnm"/>
  908. <col ref="jobgradorddd" format="yyyy-mm-dd" style="text-align:center; "/>
  909. <col ref="anual" style="text-align:right; "/>
  910. <col ref="jobkindcd" visibility="hidden"/>
  911. <col ref="jobkindnm"/>
  912. <col ref="jobrespcd" visibility="hidden"/>
  913. <col ref="jobrespnm"/>
  914. <col ref="jobresporddd" format="yyyy-mm-dd" style="text-align:center; "/>
  915. <col disabled="true" ref="gender" type="combo" style="text-align:center; ">
  916. <choices>
  917. <itemset nodeset="/root/init/item">
  918. <label ref="label"/>
  919. <value ref="value"/>
  920. </itemset>
  921. </choices>
  922. </col>
  923. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  924. <col ref="cmcentcodd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  925. <col ref="eduinstcd" visibility="hidden"/>
  926. <script type="javascript" ev:event="onaftersort">
  927. <![CDATA[
  928. grd_eductrgtmanlist.gridToInstance();
  929. ]]>
  930. </script>
  931. </datagrid>
  932. <input id="ipt_cmctodd" ref="/root/send/emplsearch/cmctodd" class="input_search" visibility="hidden" inputtype="date" style="left:786px; top:308px; width:88px; height:19px; "/>
  933. <input id="ipt_cmcfromdd" ref="/root/send/emplsearch/cmcfromdd" class="input_search" visibility="hidden" inputtype="date" style="left:683px; top:308px; width:88px; height:19px; "/>
  934. <caption id="caption28" class="search_name" visibility="hidden" style="left:570px; top:310px; width:118px; height:17px; ">CMC 입사일 :</caption>
  935. <caption id="caption29" visibility="hidden" style="left:773px; top:310px; width:16px; height:16px; ">~</caption>
  936. <button id="btn_dept" class="icon_search" disabled="true" style="left:380px; top:19px; width:16px; height:16px; ">
  937. <caption/>
  938. <script type="javascript" ev:event="DOMActivate">
  939. <![CDATA[
  940. rpsfEducOpenPopUpList("05", ipt_chrgdeptnm, "", "chrgdeptcd,chrgdeptnm", ipt_dutinstcd.value, "instcd");
  941. // 부(실)을 변경하면 과(팀), 부서는 모두 공백으로 변경한다.
  942. model.setValue("/root/send/search/chrgteamnm", "");
  943. model.setValue("/root/send/search/chrgteamcd", "");
  944. model.setValue("/root/send/search/chrgunitnm", "");
  945. model.setValue("/root/send/search/chrgunitcd", "");
  946. model.refresh();
  947. ]]>
  948. </script>
  949. </button>
  950. <caption id="caption1" class="search_name" style="left:425px; top:18px; width:86px; height:17px; ">과(팀) :</caption>
  951. <caption id="caption2" class="search_name" style="left:200px; top:18px; width:86px; height:17px; ">부(실) :</caption>
  952. <button id="btn_team" class="icon_search" disabled="true" style="left:615px; top:19px; width:16px; height:16px; ">
  953. <caption/>
  954. <script type="javascript" ev:event="DOMActivate">
  955. <![CDATA[
  956. rpsfEducOpenPopUpList("06", ipt_chrgteamnm, "", "chrgteamcd,chrgteamnm", ipt_dutinstcd.value, "instcd");
  957. // 과(팀)을 변경하면 부서는 모두 공백으로 변경한다.
  958. model.setValue("/root/send/search/chrgunitnm", "");
  959. model.setValue("/root/send/search/chrgunitcd", "");
  960. model.refresh();
  961. ]]>
  962. </script>
  963. </button>
  964. <button id="btn_rowcopy" class="btn2_letter3" style="left:960px; top:53px; width:53px; height:19px; ">
  965. <caption>행복사</caption>
  966. <script type="javascript" ev:event="DOMActivate">
  967. <![CDATA[
  968. var row = grd_educlist.row;
  969. if( grd_educlist.fixedRows == grd_educlist.rows) {
  970. messageBox("복사할 행이","I004");
  971. return;
  972. }
  973. else {
  974. grd_educlist.insertRow(grd_educlist.fixedRows,"above");
  975. row = row+1;
  976. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/appyy" ,model.getValue("/root/main/grid/educlist[" + row + "]/appyy"));
  977. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/mainbdunit" ,model.getValue("/root/main/grid/educlist[" + row + "]/mainbdunit"));
  978. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/dutinstcd" ,model.getValue("/root/main/grid/educlist[" + row + "]/dutinstcd"));
  979. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgdeptnm" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgdeptnm"));
  980. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgdeptcd" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgdeptcd"));
  981. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgteamnm" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgteamnm"));
  982. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgteamcd" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgteamcd"));
  983. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgunitnm" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgunitnm"));
  984. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/chrgunitcd" ,model.getValue("/root/main/grid/educlist[" + row + "]/chrgunitcd"));
  985. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educflag" ,model.getValue("/root/main/grid/educlist[" + row + "]/educflag"));
  986. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/medinstvalucd" ,model.getValue("/root/main/grid/educlist[" + row + "]/medinstvalucd"));
  987. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educnm" ,model.getValue("/root/main/grid/educlist[" + row + "]/educnm"));
  988. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educdg" ,model.getValue("/root/main/grid/educlist[" + row + "]/educdg"));
  989. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educfromdd" ,model.getValue("/root/main/grid/educlist[" + row + "]/educfromdd"));
  990. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/eductodd" ,model.getValue("/root/main/grid/educlist[" + row + "]/eductodd"));
  991. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/eductime" ,model.getValue("/root/main/grid/educlist[" + row + "]/eductime"));
  992. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/eductm" ,model.getValue("/root/main/grid/educlist[" + row + "]/eductm"));
  993. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educplce" ,model.getValue("/root/main/grid/educlist[" + row + "]/educplce"));
  994. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/newpsn" ,model.getValue("/root/main/grid/educlist[" + row + "]/newpsn"));
  995. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/oldpsn" ,model.getValue("/root/main/grid/educlist[" + row + "]/oldpsn"));
  996. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/totalpsn" ,model.getValue("/root/main/grid/educlist[" + row + "]/totalpsn"));
  997. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/cmpltcurspsnno" ,model.getValue("/root/main/grid/educlist[" + row + "]/cmpltcurspsnno"));
  998. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/lactr" ,model.getValue("/root/main/grid/educlist[" + row + "]/lactr"));
  999. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/bugt" ,model.getValue("/root/main/grid/educlist[" + row + "]/bugt"));
  1000. model.setValue("/root/main/grid/educlist[" + grd_educlist.row + "]/educvalu" ,model.getValue("/root/main/grid/educlist[" + row + "]/educvalu"));
  1001. }
  1002. model.refresh();
  1003. ]]>
  1004. </script>
  1005. </button>
  1006. <button id="btn_dutdept" class="icon_search" disabled="true" style="left:230px; top:334px; width:16px; height:16px; ">
  1007. <caption/>
  1008. <script type="javascript" ev:event="DOMActivate">
  1009. <![CDATA[
  1010. rpsfEducOpenPopUpList("05", ipt_dutdeptnm, "", "dutdeptcd,dutdeptnm", cmb_dutinstcd.value, "instcd");
  1011. // 부(실)을 변경하면 과(팀), 부서는 모두 공백으로 변경한다.
  1012. model.setValue("/root/send/emplsearch/dutteamnm", "");
  1013. model.setValue("/root/send/emplsearch/dutteamcd", "");
  1014. model.setValue("/root/send/emplsearch/dutunitnm", "");
  1015. model.setValue("/root/send/emplsearch/dutunitcd", "");
  1016. model.refresh();
  1017. ]]>
  1018. </script>
  1019. </button>
  1020. <input id="ipt_dutdeptnm" ref="/root/send/emplsearch/dutdeptnm" class="input_search" disabled="true" visibility="visible" appearance="input" style="left:88px; top:333px; width:140px; height:19px; ">
  1021. <script type="javascript" ev:event="xforms-value-changed">
  1022. <![CDATA[
  1023. if( ipt_dutdeptnm.value.getByteLength() == '0' ) {
  1024. ipt_dutdeptcd.value = "" ;
  1025. }
  1026. model.refresh();
  1027. ]]>
  1028. </script>
  1029. </input>
  1030. <caption id="caption5" class="search_name" style="left:268px; top:333px; width:87px; height:17px; ">과 (팀) :</caption>
  1031. <caption id="caption7" class="search_name" style="left:13px; top:333px; width:86px; height:17px; ">부(실) :</caption>
  1032. <input id="ipt_dutdeptcd" ref="/root/send/emplsearch/dutdeptcd" disabled="true" visibility="hidden" style="left:124px; top:340px; width:50px; height:19px; "/>
  1033. <button id="btn_dutteam" class="icon_search" disabled="true" style="left:523px; top:334px; width:16px; height:16px; ">
  1034. <caption/>
  1035. <script type="javascript" ev:event="DOMActivate">
  1036. <![CDATA[
  1037. rpsfEducOpenPopUpList("06", ipt_dutteamnm, "", "dutteamcd,dutteamnm", cmb_dutinstcd.value, "instcd");
  1038. // 과(팀)을 변경하면 부서는 모두 공백으로 변경한다.
  1039. model.setValue("/root/send/emplsearch/dutunitnm", "");
  1040. model.setValue("/root/send/emplsearch/dutunitcd", "");
  1041. model.refresh();
  1042. ]]>
  1043. </script>
  1044. </button>
  1045. <input id="ipt_dutteamnm" ref="/root/send/emplsearch/dutteamnm" class="input_search" disabled="true" visibility="visible" appearance="input" style="left:353px; top:333px; width:168px; height:19px; ">
  1046. <script type="javascript" ev:event="xforms-value-changed">
  1047. <![CDATA[
  1048. if( ipt_dutteamnm.value.getByteLength() == '0' ) {
  1049. ipt_dutteamcd.value = "" ;
  1050. }
  1051. model.refresh();
  1052. ]]>
  1053. </script>
  1054. </input>
  1055. <input id="ipt_dutteamcd" ref="/root/send/emplsearch/dutteamcd" disabled="true" visibility="hidden" style="left:388px; top:345px; width:50px; height:19px; "/>
  1056. </group>
  1057. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  1058. <button id="btn_save" class="btn4_letter2" style="left:1139px; top:3px; width:56px; height:22px; ">
  1059. <caption>저장</caption>
  1060. <script type="javascript" ev:event="DOMActivate">
  1061. <![CDATA[
  1062. ROW = grd_educlist.row;
  1063. if( fCheckColumn() == false) return;
  1064. if(misfSave("TXRPS04001")) {
  1065. var rowcnt = grd_eductrgtmanlist.rows;
  1066. for( var i = 0; i < rowcnt; i++ ) {
  1067. grd_emplist.fixedcellischeck(0, grd_emplist.colRef("chk")) = false; // 전체 체크박스를 초기화
  1068. grd_eductrgtmanlist.fixedcellischeck(i, grd_eductrgtmanlist.colRef("chk")) = false;
  1069. }
  1070. grd_eductrgtmanlist.refresh();
  1071. fSave();
  1072. btn_search.dispatch("DOMActivate");
  1073. grd_educlist.row = ROW;
  1074. btn_search2.dispatch("DOMActivate");
  1075. }
  1076. model.refresh();
  1077. ]]>
  1078. </script>
  1079. </button>
  1080. </group>
  1081. </xhtml:body>
  1082. </xhtml:html>