SMRPS01000_교육이수자등록.xrw 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>교육이수자등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <yyeducprcslist/>
  11. <emplist/>
  12. <yyeducprcslist1/>
  13. </main>
  14. <send>
  15. <req>
  16. <appyy/>
  17. <mainbdunit/>
  18. <instcd/>
  19. <educflag/>
  20. <educfromdd/>
  21. <eductodd/>
  22. <instnm/>
  23. </req>
  24. <save>
  25. <instcd/>
  26. <appyy/>
  27. <educcd/>
  28. <cmpltcursstdyyn/>
  29. <educdg/>
  30. </save>
  31. <emplist/>
  32. </send>
  33. <init>
  34. <itemset>
  35. <set1>
  36. <value/>
  37. <label/>
  38. </set1>
  39. </itemset>
  40. </init>
  41. <temp/>
  42. <hidden>
  43. <item>
  44. <value>M</value>
  45. <label>남</label>
  46. </item>
  47. <item>
  48. <value>F</value>
  49. <label>여</label>
  50. </item>
  51. <item1>
  52. <value>Y</value>
  53. <label>이수</label>
  54. </item1>
  55. <item1>
  56. <value>N</value>
  57. <label>미이수</label>
  58. </item1>
  59. </hidden>
  60. </root>
  61. </instance>
  62. <submission id="TRRPS01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/req" resultref="/root/main/yyeducprcslist"/>
  63. <submission id="TRRPS01002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/main/emplist"/>
  64. <submission id="TXRPS01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  65. </model>
  66. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  67. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  68. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  69. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  70. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  71. <script type="javascript" src="../../../mis/educationmngtweb/js/RPS001.js"/>
  72. <script type="javascript" ev:event="xforms-ready">
  73. <![CDATA[
  74. //사용자 권한
  75. fCheckAuth();
  76. fInit();
  77. ]]>
  78. </script>
  79. <script type="javascript">
  80. <![CDATA[
  81. function fInit() {
  82. // 그리드 초기화
  83. misfGridInit(grd_yyeducprcslist);
  84. misfGridInit(grd_yyeducprcslist1);
  85. misfGridInit(grd_emplist);
  86. misfMsterDetailSet(grd_yyeducprcslist, null, "TRRPS01001", "Y");
  87. misfMsterDetailSet(grd_emplist, grd_yyeducprcslist, "TRRPS01002", "Y");
  88. var curDate = getCurrentDate().substr(0,4);
  89. model.setValue("/root/send/req/appyy", getCurrentDate().substr(0,4));
  90. rpsEducSetComboList("M01-002", "cmb_educflag","Y");
  91. grd_emplist.fixedcellcheckbox(0,1) = true;
  92. model.setValue("/root/send/req/instcd", getUserInfo("dutplceinstcd"));
  93. model.setValue("/root/send/req/instnm", getUserInfo("dutplceinstnm"));
  94. model.refresh();
  95. }
  96. //========================================================================================
  97. //버튼에 대한 화면 권한 체크(R : 읽기, X : 입력/수정/삭제, P : 출력)
  98. //========================================================================================
  99. function fCheckAuth() {
  100. btn_search.disabled = !checkAuth("R") ;
  101. btn_save.disabled = !checkAuth("X") ;
  102. var userinstcd = getUserInfo("dutplceinstcd");
  103. var userdeptcd = getUserInfo("dutplcecd");
  104. misfGetUserAuth();
  105. if( DUTY_EDU_YN == 'Y' || getUserInfo("dutplcecd") == "4020503000" ) {
  106. ipt_instnm.disabled = false;
  107. ipt_instcd.disabled = false;
  108. btn_instcd.disabled = false;
  109. }
  110. else {
  111. ipt_instnm.disabled = true;
  112. ipt_instcd.disabled = true;
  113. btn_instcd.disabled = true;
  114. }
  115. }
  116. // 미이수자가 있는 교육에 색깔 넣기
  117. function fSetEducColor() {
  118. for(i=grd_yyeducprcslist.fixedRows; i < grd_yyeducprcslist.rows;i++) {
  119. var cmpltyncnt = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("cmpltyncnt"));
  120. if(cmpltyncnt == 0){
  121. grd_yyeducprcslist.rowStyle(i, "all", "background-color") ="white";
  122. }else{
  123. grd_yyeducprcslist.rowStyle(i, "all", "background-color") ="#99ccff";
  124. }
  125. }
  126. model.refresh();
  127. }
  128. // 미이수자 색깔 넣기
  129. function fSetColor() {
  130. for(i=grd_emplist.fixedRows; i < grd_emplist.rows;i++)
  131. {
  132. var cmpltcursstdyyn = grd_emplist.valueMatrix(i,grd_emplist.colRef("cmpltcursstdyyn"));
  133. if(cmpltcursstdyyn =='Y'){
  134. grd_emplist.rowStyle(i, "all", "background-color") ="white";
  135. }else{
  136. grd_emplist.rowStyle(i, "all", "background-color") ="#ffff99";
  137. }
  138. grd_emplist.valueMatrix(i,grd_emplist.colRef("chk")) = 'N';
  139. }
  140. model.refresh();
  141. }
  142. function fEducListRetrieve()
  143. {
  144. var iRowIdx = grd_yyeducprcslist1.row;
  145. model.removeNodeset("/root/main/yyeducprcslist");
  146. model.removeNodeset("/root/main/yyeducprcslist1");
  147. model.refresh();
  148. submit("TRRPS01001");
  149. fListAddCombo() ;
  150. if(grd_yyeducprcslist1.rows > 1) {
  151. if(iRowIdx == -1) iRowIdx = 1;
  152. else
  153. if(iRowIdx > grd_yyeducprcslist1.rows) iRowIdx = grd_yyeducprcslist1.rows - 1;
  154. grd_yyeducprcslist1.row = iRowIdx;
  155. grd_yyeducprcslist1.select(iRowIdx, 1, iRowIdx, 10) = true;
  156. grd_yyeducprcslist1.dispatch("ondblclick");
  157. }
  158. else {
  159. model.removeNodeset("/root/main/yyeducprcslist1");
  160. model.refresh();
  161. }
  162. }
  163. function fListAddCombo() {
  164. // 교육명 세팅
  165. for(var i = grd_yyeducprcslist.fixedRows, j = grd_yyeducprcslist1.rows; i < grd_yyeducprcslist.rows; i++ ) {
  166. if( j == "1" ) { // grd_yyeducprcslist1에 아무내용도 없을때는 무조건 addrow
  167. grd_yyeducprcslist1.addRow(false);
  168. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("appyy")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("appyy"));
  169. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("instcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("instcd"));
  170. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd"));
  171. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcdnm")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcdnm"));
  172. /*
  173. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educfromdd"));
  174. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("eductodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductodd"));
  175. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educappfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educappfromdd"));
  176. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educapptodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educapptodd"));
  177. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educplce")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educplce"));
  178. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcnts")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcnts"));
  179. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("eductm")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductm"));
  180. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("apppsnno")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("apppsnno"));
  181. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcapa")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcapa"));
  182. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("cmpltyncnt")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("cmpltyncnt"));
  183. */
  184. j++;
  185. }
  186. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) == grd_yyeducprcslist1.valueMatrix(1,grd_yyeducprcslist1.colRef("educcd")) ) {
  187. continue;
  188. }
  189. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) == grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("educcd")) ) {
  190. continue;
  191. }
  192. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) != grd_yyeducprcslist1.valueMatrix(j-1,grd_yyeducprcslist1.colRef("educcd")) ) {
  193. // educcd가 다른경우
  194. grd_yyeducprcslist1.addRow(false);
  195. grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("appyy")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("appyy"));
  196. grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("instcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("instcd"));
  197. grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("educcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd"));
  198. grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("educcdnm")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcdnm"));
  199. /*
  200. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educfromdd"));
  201. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("eductodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductodd"));
  202. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educappfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educappfromdd"));
  203. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educapptodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educapptodd"));
  204. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educplce")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educplce"));
  205. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcnts")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcnts"));
  206. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("eductm")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductm"));
  207. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("apppsnno")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("apppsnno"));
  208. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("educcapa")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcapa"));
  209. grd_yyeducprcslist1.valueMatrix(i,grd_yyeducprcslist1.colRef("cmpltyncnt")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("cmpltyncnt"));
  210. */
  211. j++;
  212. }
  213. }
  214. // 차수 콤보 세팅
  215. var dg = 1;
  216. for(var i = grd_yyeducprcslist.fixedRows, j = grd_yyeducprcslist1.fixedRows; i < grd_yyeducprcslist.rows; i++ ) {
  217. if( i == grd_yyeducprcslist.fixedRows && j == grd_yyeducprcslist1.fixedRows) { // 맨첫번째 row일때
  218. model.makeNode("/root/init/itemset/set"+i+"["+dg+"]/value");
  219. model.makeNode("/root/init/itemset/set"+i+"["+dg+"]/label");
  220. model.setValue("/root/init/itemset/set"+i+"["+dg+"]/value","");
  221. model.setValue("/root/init/itemset/set"+i+"["+dg+"]/label","전체");
  222. dg++;
  223. model.makeNode("/root/init/itemset/set"+i+"["+dg+"]/value");
  224. model.makeNode("/root/init/itemset/set"+i+"["+dg+"]/label");
  225. model.setValue("/root/init/itemset/set"+i+"["+dg+"]/value",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  226. model.setValue("/root/init/itemset/set"+i+"["+dg+"]/label",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  227. }
  228. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) == grd_yyeducprcslist1.valueMatrix(1,grd_yyeducprcslist1.colRef("educcd")) ) {
  229. // 첫번째 row의 educcd와 현재진행중인row의 educcd가 같으면 차수만 추가
  230. dg++;
  231. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/value");
  232. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/label");
  233. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/value",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  234. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/label",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  235. }
  236. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) == grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("educcd")) ) {
  237. dg++;
  238. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/value");
  239. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/label");
  240. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/value",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  241. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/label",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  242. }
  243. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) != grd_yyeducprcslist1.valueMatrix(j,grd_yyeducprcslist1.colRef("educcd")) ) {
  244. // educcd가 다른경우
  245. dg = 1;
  246. j++
  247. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/value");
  248. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/label");
  249. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/value","");
  250. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/label","전체");
  251. dg++;
  252. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/value");
  253. model.makeNode("/root/init/itemset/set"+j+"["+dg+"]/label");
  254. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/value",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  255. model.setValue("/root/init/itemset/set"+j+"["+dg+"]/label",grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")));
  256. }
  257. }
  258. // itemset을 row별로 설정..
  259. for(var i = grd_yyeducprcslist1.fixedRows; i < grd_yyeducprcslist1.rows; i++ ) {
  260. grd_yyeducprcslist1.cellComboNodeset(i, 2) = "/root/init/itemset/set"+i;
  261. }
  262. grd_yyeducprcslist1.row = 1; // grd_yyeducprcslist1그리드의 1번 row를 선택한것과 같음.
  263. model.refresh();
  264. }
  265. function fEducDtListRetrieve() {
  266. model.setValue("/root/send/save/instcd", grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row, grd_yyeducprcslist1.colRef("instcd")));
  267. model.setValue("/root/send/save/educdg", grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row, grd_yyeducprcslist1.colRef("educdg")));
  268. model.setValue("/root/send/save/appyy", grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row, grd_yyeducprcslist1.colRef("appyy")));
  269. model.setValue("/root/send/save/educcd", grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row, grd_yyeducprcslist1.colRef("educcd")));
  270. submit("TRRPS01002");
  271. }
  272. ]]>
  273. </script>
  274. </xhtml:head>
  275. <xhtml:body style="margin-left:8; margin-right:8; ">
  276. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  277. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">교육이수자 등록 및 조회</caption>
  278. </group>
  279. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  280. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:5px; width:1195px; height:63px; background-color:#fffbf2; border-color:#ffd799; "/>
  281. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:27px; width:56px; height:22px; ">
  282. <caption>조회</caption>
  283. <script type="javascript" ev:event="DOMActivate">
  284. <![CDATA[
  285. if(!isRequiredControls("cmb_appyy")) return;
  286. fEducListRetrieve();
  287. ]]>
  288. </script>
  289. </button>
  290. <line id="line13" class="line_4" style="x1:1110px; y1:9px; x2:1110px; y2:64px; "/>
  291. <line id="line8" class="line_1" style="x1:0px; y1:90px; x2:1194px; y2:89px; "/>
  292. <caption id="caption20" class="tit_2" style="left:5px; top:74px; width:175px; height:13px; ">연간 교육과정 차수별 내역</caption>
  293. <select1 id="cmb_educflag" ref="/root/send/req/educflag" class="combo_search" appearance="minimal" style="left:150px; top:40px; width:95px; height:19px; ">
  294. <choices>
  295. <itemset>
  296. <label/>
  297. <value/>
  298. </itemset>
  299. </choices>
  300. </select1>
  301. <caption id="cap_appyy" class="search_name" style="left:64px; top:15px; width:90px; height:17px; ">년 도 :</caption>
  302. <input id="ipt_appyy" ref="/root/send/req/appyy" class="input_s_essential" inputtype="date" format="yyyy" style="left:150px; top:15px; width:95px; height:19px; "/>
  303. <caption id="cap_educflag" class="search_name" style="left:64px; top:40px; width:86px; height:17px; ">교육구분 :</caption>
  304. <caption id="cap_educmdlcd" class="search_name" style="left:406px; top:40px; width:91px; height:17px; ">이수구분 :</caption>
  305. <caption id="cap_instcd" class="search_name" style="left:406px; top:15px; width:90px; height:17px; ">기 관 :</caption>
  306. <line id="line1" class="line_1" style="x1:0px; y1:350px; x2:1194px; y2:350px; "/>
  307. <caption id="caption7" class="tit_2" style="left:0px; top:314px; width:162px; height:13px; ">교육대상자 및 이수 내역</caption>
  308. <input id="input1" ref="/root/send/save/instcd" visibility="hidden" style="left:430px; top:65px; width:45px; height:19px; "/>
  309. <input id="input2" ref="/root/send/save/appyy" visibility="hidden" style="left:480px; top:65px; width:35px; height:19px; "/>
  310. <input id="input3" ref="/root/send/save/educcd" visibility="hidden" style="left:520px; top:65px; width:30px; height:19px; "/>
  311. <input id="input4" ref="/root/send/save/educdg" visibility="hidden" style="left:555px; top:65px; width:35px; height:19px; "/>
  312. <button id="button1" class="btn2_letter4" style="left:64px; top:330px; width:64px; height:19px; ">
  313. <caption>전체선택</caption>
  314. <script type="javascript" ev:event="DOMActivate">
  315. <![CDATA[
  316. var rownum = grd_emplist.rows - grd_emplist.fixedRows;
  317. for(var i= grd_emplist.fixedRows ; i < grd_emplist.rows ; i++) {
  318. if(grd_emplist.valueMatrix(i, grd_emplist.colRef("cmpltcursstdyyn")) == "N"){
  319. grd_emplist.valueMatrix(i, grd_emplist.colRef("chk")) = "Y";
  320. grd_emplist.rowStatus(i) = 2;
  321. }
  322. }
  323. model.refresh();
  324. ]]>
  325. </script>
  326. </button>
  327. <button id="btn_excel" class="btn5_letter4" style="left:1130px; top:330px; width:64px; height:19px; ">
  328. <caption>엑셀저장</caption>
  329. <script type="javascript" ev:event="DOMActivate">
  330. <![CDATA[
  331. var fileName = window.fileDialog ("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  332. if (fileName != "") {
  333. grd_emplist.saveExcel(fileName);
  334. }
  335. ]]>
  336. </script>
  337. </button>
  338. <caption id="cap_educfromdd" class="search_name" style="left:785px; top:40px; width:87px; height:17px; ">교육년월 :</caption>
  339. <input id="ipt_educfromdd" ref="/root/send/req/educfromdd" class="input_search" inputtype="date" format="yyyy-mm" style="left:874px; top:40px; width:80px; height:19px; text-align:center; "/>
  340. <caption id="caption3" style="left:958px; top:40px; width:15px; height:20px; text-align:center; ">~</caption>
  341. <input id="ipt_eductodd" ref="/root/send/req/eductodd" class="input_search" inputtype="date" format="yyyy-mm" style="left:976px; top:40px; width:80px; height:19px; text-align:center; "/>
  342. <select1 id="radio2" ref="/root/send/save/cmpltcursstdyyn" appearance="full" cols="3" overflow="visible" style="left:495px; top:40px; width:171px; height:20px; border-style:none; ">
  343. <choices>
  344. <item>
  345. <label>전체</label>
  346. <value/>
  347. </item>
  348. <item>
  349. <label>이수자</label>
  350. <value>Y</value>
  351. </item>
  352. <item>
  353. <label>미이수자</label>
  354. <value>N</value>
  355. </item>
  356. </choices>
  357. <script type="javascript" ev:event="xforms-value-changed">
  358. <![CDATA[
  359. submit("TRRPS01002");
  360. fSetColor() ;
  361. model.refresh();
  362. ]]>
  363. </script>
  364. </select1>
  365. <datagrid id="grd_emplist" nodeset="/root/main/emplist" autoresize="true" caption="^차수^사원번호^성명^이수구분^시험점수^비고^교육일자^교육일자^교육시간일정^교육총시간^교직구분코드^교직구분^근무기관코드^소속기관^근무부서코드^소속부서^성직구분코드^성직구분^직군코드^직군^신직급코드^신직급^년차^직종코드^직종^직책코드^직책^성별^입사일자^기관^적용년도^교육코드" colsep="^" colwidth="25, 39, 70, 70, 70, 60, 90, 80, 80, 90, 75, 35, 60, 33, 106, 31, 117, 28, 70, 22, 92, 25, 66, 43, 39, 80, 34, 94, 53, 89, 78, 57, 68" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:355px; width:1195px; height:387px; text-align:center; ">
  366. <col checkvalue="Y,N" ref="chk" type="checkbox"/>
  367. <col ref="educdg" style="text-align:center; "/>
  368. <col ref="emplno" style="text-align:center; "/>
  369. <col ref="emplnm" style="text-align:center; "/>
  370. <col ref="cmpltcursstdyyn" type="combo">
  371. <choices>
  372. <itemset nodeset="/root/hidden/item1">
  373. <label ref="label"/>
  374. <value ref="value"/>
  375. </itemset>
  376. </choices>
  377. </col>
  378. <col ref="testscor" type="input" maxlength="5"/>
  379. <col ref="cmt" type="input" maxlength="100"/>
  380. <col ref="educfromdd" format="yyyy-mm-dd"/>
  381. <col ref="eductodd" format="yyyy-mm-dd"/>
  382. <col ref="eductmplan" format="99:99-99:99"/>
  383. <col ref="eductm" maxbyte="3"/>
  384. <col ref="prfshipflag" visibility="hidden"/>
  385. <col ref="prfshipnm"/>
  386. <col ref="dutinstcd" visibility="hidden"/>
  387. <col ref="dutinstnm"/>
  388. <col ref="dutdeptcd" visibility="hidden"/>
  389. <col ref="dutdeptnm"/>
  390. <col ref="holyordflag" visibility="hidden"/>
  391. <col ref="holyordnm"/>
  392. <col ref="grupjoblncd" visibility="hidden"/>
  393. <col ref="grupjoblnnm"/>
  394. <col ref="njobgradcd" visibility="hidden"/>
  395. <col ref="njobgradnm"/>
  396. <col ref="anual" style="text-align:center; "/>
  397. <col ref="jobkindcd" visibility="hidden"/>
  398. <col ref="jobkindnm"/>
  399. <col ref="jobrespcd" visibility="hidden"/>
  400. <col ref="jobrespnm"/>
  401. <col disabled="true" ref="gender" type="combo">
  402. <choices>
  403. <itemset nodeset="/root/hidden/item">
  404. <label ref="label"/>
  405. <value ref="value"/>
  406. </itemset>
  407. </choices>
  408. </col>
  409. <col ref="entcodd" format="yyyy-mm-dd" style="text-align:center; "/>
  410. <col ref="instcd" visibility="hidden"/>
  411. <col ref="appyy" visibility="hidden"/>
  412. <col ref="educcd" visibility="hidden"/>
  413. <script type="javascript" ev:event="xforms-value-changed">
  414. <![CDATA[
  415. var col = grd_emplist.col;
  416. ]]>
  417. </script>
  418. </datagrid>
  419. <button id="button2" class="btn2_letter2" style="left:132px; top:330px; width:42px; height:19px; ">
  420. <caption>이수</caption>
  421. <script type="javascript" ev:event="DOMActivate">
  422. <![CDATA[
  423. var rownum = grd_emplist.rows - grd_emplist.fixedRows;
  424. for(var i= grd_emplist.fixedRows ; i < grd_emplist.rows ; i++) {
  425. if( grd_emplist.valueMatrix(i, grd_emplist.colRef("chk")) == "Y" ) {
  426. grd_emplist.valueMatrix(i, grd_emplist.colRef("cmpltcursstdyyn")) = "Y";
  427. grd_emplist.addStatus(i,"update");
  428. }
  429. }
  430. model.refresh();
  431. ]]>
  432. </script>
  433. </button>
  434. <button id="button3" class="btn2_letter3" style="left:175px; top:330px; width:53px; height:19px; ">
  435. <caption>미이수</caption>
  436. <script type="javascript" ev:event="DOMActivate">
  437. <![CDATA[
  438. var rownum = grd_emplist.rows - grd_emplist.fixedRows;
  439. for(var i= grd_emplist.fixedRows ; i < grd_emplist.rows ; i++) {
  440. if( grd_emplist.valueMatrix(i,grd_emplist.colRef("chk")) == "Y" ){
  441. grd_emplist.valueMatrix(i, grd_emplist.colRef("cmpltcursstdyyn")) ="N";
  442. grd_emplist.addStatus(i,"update");
  443. }
  444. }
  445. model.refresh();
  446. ]]>
  447. </script>
  448. </button>
  449. <datagrid id="grd_yyeducprcslist1" nodeset="/root/main/yyeducprcslist1" caption="교육명^차수^교육일자^교육일자^교육신청일^교육신청일^교육 장소^교육 내용^교육&#xA;시간^신청인원/ 정원^신청인원/ 정원^미이수인원^기관^적용년도^교육코드^비고|교육명^차수^From^To^From^To^교육 장소^교육 내용^교육&#xA;시간^신청인원/ 정원^신청인원/ 정원^미이수인원^기관^적용년도^교육코드^비고" colsep="^" colwidth="337, 52, 75, 90, 75, 75, 197, 130, 42, 32, 32, 49, 54, 58, 55, 236" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" frozencols="6" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:0px; top:93px; width:1195px; height:217px; ">
  450. <col ref="educcdnm"/>
  451. <col ref="educdg" type="combo" style="text-align:center; ">
  452. <choices>
  453. <itemset nodeset="/root/init/itemset/set1">
  454. <label ref="label"/>
  455. <value ref="value"/>
  456. </itemset>
  457. </choices>
  458. </col>
  459. <col ref="educfromdd" format="yyyy-mm-dd" style="text-align:center; "/>
  460. <col ref="eductodd" format="yyyy-mm-dd" style="text-align:center; "/>
  461. <col ref="educappfromdd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  462. <col ref="educapptodd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  463. <col ref="educplce" style="text-align:left; "/>
  464. <col ref="educcnts" style="text-align:left; "/>
  465. <col ref="eductm" style="text-align:center; "/>
  466. <col ref="apppsnno" style="text-align:center; "/>
  467. <col ref="educcapa" style="text-align:center; "/>
  468. <col ref="cmpltyncnt" visibility="hidden" style="text-align:right; "/>
  469. <col ref="instcd" visibility="hidden"/>
  470. <col ref="appyy" visibility="hidden" style="text-align:right; "/>
  471. <col ref="educcd" visibility="hidden"/>
  472. <col ref="cmt"/>
  473. <script type="javascript" ev:event="ondblclick">
  474. <![CDATA[
  475. grd_yyeducprcslist1.dispatch("xforms-value-changed");
  476. ]]>
  477. </script>
  478. <script type="javascript" ev:event="xforms-value-changed">
  479. <![CDATA[
  480. // 콤보박스의 내용이 변경되었을때...
  481. for(var i = grd_yyeducprcslist.fixedRows; i < grd_yyeducprcslist.rows; i++ ) {
  482. if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) == grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcd")) ) {
  483. if(grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educdg")) == grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educdg")) ) {
  484. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educfromdd"));
  485. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("eductodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductodd"));
  486. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educappfromdd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educappfromdd"));
  487. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educapptodd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educapptodd"));
  488. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educplce")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educplce"));
  489. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcnts")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcnts"));
  490. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("eductm")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("eductm"));
  491. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("apppsnno")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("apppsnno"));
  492. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcapa")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcapa"));
  493. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("cmpltyncnt")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("cmpltyncnt"));
  494. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("instcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("instcd"));
  495. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("appyy")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("appyy"));
  496. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd"));
  497. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("cmt")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("cmt"));
  498. }
  499. else if( grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educdg")) == "" ) {
  500. // 전체를 선택하면 신청인원/정원을 공백으로 설정한다.
  501. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educfromdd")) = "";
  502. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("eductodd")) = "";
  503. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educappfromdd"))= "";
  504. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educapptodd")) = "";
  505. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educplce")) = "";
  506. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcnts")) = "";
  507. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("eductm")) = "";
  508. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("apppsnno")) = "";
  509. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcapa")) = "";
  510. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("cmpltyncnt")) = "";
  511. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("instcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("instcd"));
  512. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("appyy")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("appyy"));
  513. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcd")) = grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd"));
  514. grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("cmt")) = "";
  515. }
  516. }
  517. else if( grd_yyeducprcslist.valueMatrix(i,grd_yyeducprcslist.colRef("educcd")) != grd_yyeducprcslist1.valueMatrix(grd_yyeducprcslist1.row,grd_yyeducprcslist1.colRef("educcd")) ) {
  518. // educcd가 다른경우
  519. continue;
  520. }
  521. }
  522. fEducDtListRetrieve() ;
  523. fSetColor() ;
  524. ]]>
  525. </script>
  526. </datagrid>
  527. <datagrid id="grd_yyeducprcslist" nodeset="/root/main/yyeducprcslist" visibility="hidden" autoresize="true" caption="교육명^차수^교육일자^교육일자^교육신청일^교육신청일^교육 장소^교육 내용^교육&#xA;시간^신청인원/ 정원^신청인원/ 정원^미이수인원^기관^적용년도^교육코드^비고|교육명^차수^From^To^From^To^교육 장소^교육 내용^교육&#xA;시간^신청인원/ 정원^신청인원/ 정원^미이수인원^기관^적용년도^교육코드^비고" colsep="^" colwidth="313, 52, 75, 90, 75, 75, 197, 30, 42, 32, 32, 49, 54, 58, 55, 236" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" frozencols="6" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:385px; top:210px; width:790px; height:112px; ">
  528. <col ref="educcdnm"/>
  529. <col ref="educdg" style="text-align:right; "/>
  530. <col ref="educfromdd" format="yyyy-mm-dd" style="text-align:center; "/>
  531. <col ref="eductodd" format="yyyy-mm-dd" style="text-align:center; "/>
  532. <col ref="educappfromdd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  533. <col ref="educapptodd" visibility="hidden" format="yyyy-mm-dd" style="text-align:center; "/>
  534. <col ref="educplce" style="text-align:left; "/>
  535. <col ref="educcnts" visibility="hidden" style="text-align:left; "/>
  536. <col ref="eductm" style="text-align:right; "/>
  537. <col ref="apppsnno" style="text-align:center; "/>
  538. <col ref="educcapa" style="text-align:center; "/>
  539. <col ref="cmpltyncnt" visibility="hidden" style="text-align:right; "/>
  540. <col ref="instcd" visibility="hidden"/>
  541. <col ref="appyy" visibility="hidden" style="text-align:right; "/>
  542. <col ref="educcd" visibility="hidden"/>
  543. <col ref="cmt"/>
  544. </datagrid>
  545. <button id="btn_instcd" class="icon_search" style="left:655px; top:15px; width:16px; height:16px; ">
  546. <caption/>
  547. <script type="javascript" ev:event="DOMActivate">
  548. <![CDATA[
  549. var recv_list = "instcd,instnm";
  550. misfOpenPopUpList("03", ipt_instnm,"Z0007", recv_list, "", "") ;
  551. model.refresh();
  552. ]]>
  553. </script>
  554. </button>
  555. <input id="ipt_instnm" ref="/root/send/req/instnm" class="input_search" appearance="input" style="left:495px; top:15px; width:158px; height:19px; ">
  556. <script type="javascript" ev:event="xforms-value-changed">
  557. <![CDATA[
  558. if( ipt_instnm.value.getByteLength() == '0' ) {
  559. ipt_instcd.value = "" ;
  560. }
  561. model.refresh();
  562. ]]>
  563. </script>
  564. </input>
  565. <input id="ipt_instcd" ref="/root/send/req/instcd" disabled="true" visibility="hidden" style="left:676px; top:15px; width:50px; height:19px; "/>
  566. <button id="btn_save" class="btn4_letter2" style="left:0px; top:328px; width:56px; height:22px; ">
  567. <caption>저장</caption>
  568. <script type="javascript" ev:event="DOMActivate">
  569. <![CDATA[
  570. if( misfSave("TXRPS01001") ) {
  571. messageBox("","I001");
  572. grd_emplist.fixedcellischeck(0,1) = false;
  573. }
  574. submit("TRRPS01002");
  575. fSetColor();
  576. ]]>
  577. </script>
  578. </button>
  579. </group>
  580. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; "/>
  581. </xhtml:body>
  582. </xhtml:html>