SMRPS00100_교육코드관리.xrw 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>Untitle</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <educcodelist>
  11. <hosinhosoutflag/>
  12. <instnm/>
  13. <instcd/>
  14. <chrgdeptnm/>
  15. <chrgdeptcd/>
  16. <educfalgnm/>
  17. <educfalgcd/>
  18. <cmpltcursstdyflagnm/>
  19. <cmpltcursstdyflagcd/>
  20. <cmpltcursstdypnt/>
  21. <educcdnm/>
  22. <educcd/>
  23. <eductrgtnm/>
  24. <eductrgtcd/>
  25. <fstrgstdt/>
  26. <fstrgstrid/>
  27. <lastupdtrid/>
  28. <lastupdtdt/>
  29. <useyn/>
  30. <useyncd/>
  31. <cmt/>
  32. </educcodelist>
  33. </main>
  34. <init/>
  35. <send>
  36. <instcd_s/>
  37. <chrgdeptcd/>
  38. <chrgdeptnm/>
  39. <educfalg/>
  40. <educcd/>
  41. <educcdnm/>
  42. <cmpltcursstdyflag/>
  43. <educcodelist/>
  44. </send>
  45. <temp>
  46. <savelist>
  47. <hosinhosoutflag/>
  48. <instnm/>
  49. <instcd/>
  50. <chrgdeptnm/>
  51. <chrgdeptcd/>
  52. <educfalgnm/>
  53. <educfalgcd/>
  54. <cmpltcursstdyflagnm/>
  55. <cmpltcursstdyflagcd>E</cmpltcursstdyflagcd>
  56. <educcdnm/>
  57. <educcd/>
  58. <eductrgtnm/>
  59. <eductrgtcd/>
  60. <fstrgstrid/>
  61. <cmpltcursstdypnt/>
  62. <useyn>0</useyn>
  63. <fstrgstdt/>
  64. <cmt/>
  65. <useyncd/>
  66. <lastupdtrid/>
  67. <lastupdtdt/>
  68. </savelist>
  69. <count/>
  70. </temp>
  71. </root>
  72. </instance>
  73. <script type="javascript" ev:event="xforms-ready">
  74. <![CDATA[
  75. fInitialize();
  76. misfGridInit(grd_educlist);
  77. misfMsterDetailSet(grd_educlist,null,"TRRPS00101","Y");
  78. // 공통코드 바인딩 silver
  79. //misfComboComCdList('Z0007', cmb_instcd);
  80. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","Y");
  81. misfComboComCdList('Z0007', cmb_instcd_i);
  82. ]]>
  83. </script>
  84. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  85. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  86. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  87. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  88. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  89. <script type="javascript">
  90. <![CDATA[
  91. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  92. function fInitialize() {
  93. fEnableInsertButton();
  94. model.removeNodeset("/root/main/educcodelist");
  95. model.resetInstanceNode("/root/send");
  96. model.resetInstanceNode("/root/temp/savelist");
  97. model.refresh();
  98. }
  99. function fEnableInsertButton() {
  100. btn_insert.disabled = false;
  101. btn_update.disabled = true;
  102. }
  103. function fEnableUpdateButton() {
  104. btn_insert.disabled = true;
  105. btn_update.disabled = false;
  106. }
  107. function fDeleteSelectedRows(grd,markonly) {
  108. var rowIdx;
  109. if (grd.selectedRows > 0) {
  110. var selectedRows = Array(grd.selectedRows);
  111. for(i=0;i<grd.selectedRows;i++) {
  112. selectedRows[i] = grd.selectedRow(i);
  113. }
  114. if (markonly != null && markonly == true) { // mark delete
  115. for(i=selectedRows.length-1;i>=0;i--) {
  116. rowIdx = selectedRows[i];
  117. if(grd.rowstatus(rowIdx) == 1 ) { // just inserted row
  118. grd.deleterow(rowIdx,false);
  119. } else {
  120. grd.addStatus(rowIdx,"delete");
  121. }
  122. }
  123. } else {
  124. for(i=selectedRows.length-1;i>=0;i--) {
  125. rowIdx = selectedRows[i];
  126. grd.deleterow(rowIdx,false);
  127. }
  128. }
  129. }
  130. }
  131. function fChangeGridValue(cur_row) {
  132. if(rdo_hosinhosoutflag_i.value==""){
  133. model.setValue("/root/main/educcodelist[" + cur_row + "]/hosinhosoutflag","0"); //원내외구분
  134. }else{
  135. model.setValue("/root/main/educcodelist[" + cur_row + "]/hosinhosoutflag",rdo_hosinhosoutflag_i.value); //원내외구분
  136. }
  137. model.setValue("/root/main/educcodelist[" + cur_row + "]/instnm", cmb_instcd_i.label); //기관명
  138. model.setValue("/root/main/educcodelist[" + cur_row + "]/educfalgnm", cmb_educflagcd_i.label); //교육구분
  139. model.setValue("/root/main/educcodelist[" + cur_row + "]/eductrgtnm", cmb_eductrgt_i.label);//교육대상
  140. model.setValue("/root/main/educcodelist[" + cur_row + "]/cmpltcursstdyflagnm", rdo_cmpltcursstdyflag_i.label); // 이수구분
  141. if(rdo_useyn_i.value==""){
  142. model.setValue("/root/main/educcodelist[" + cur_row + "]/useyn", 'Y');
  143. }else{
  144. model.setValue("/root/main/educcodelist[" + cur_row + "]/useyn", rdo_useyn_i.value); // 사용여부
  145. }
  146. }
  147. // 사용빈도 : 중
  148. // 함수명: 실수,정수,금액 유효성 체크 및 허용하지 않는 문자는 경고 없이 자동 삭제
  149. // 인 자: 필수 : obj(입력 컨트롤명), cmd(숫자 유형)
  150. function mis_numberOnly(obj, cmd) {
  151. var objstr=obj.value;
  152. var cobjstr = "";
  153. var tempstr = "";
  154. if(cmd == "real") {
  155. cobjstr = "0123456789.-"; //실수
  156. } else if(cmd == "real2") {
  157. cobjstr = "0123456789."; //양의실수
  158. } else if(cmd=="int"){
  159. cobjstr="0123456789-"; //정수
  160. } else if(cmd=="money"){
  161. cobjstr="0123456789,"; //금액
  162. } else if(cmd == "real3"){
  163. cobjstr = "0123456789.-,"; //실수 : , 포함
  164. }else if(cmd=='numeric'){
  165. cobjstr = "0123456789"; //숫자
  166. }
  167. //거꾸로 돌려야 함
  168. if(objstr.length) {
  169. var leng = objstr.length;
  170. for(var i=leng-1; i>=0; i--) {
  171. if(cobjstr.lastIndexOf(objstr.charAt(i)) == -1) {
  172. objstr = objstr.substring(0, i)+ objstr.substring(i+1);
  173. obj.value = objstr;
  174. }
  175. }
  176. }
  177. }
  178. ]]>
  179. </script>
  180. <submission id="TRRPS00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/educcodelist"/>
  181. <submission id="TXRPS00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  182. </model>
  183. </xhtml:head>
  184. <xhtml:body style="margin-left:8; margin-right:8; ">
  185. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  186. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">교육코드관리</caption>
  187. </group>
  188. <group id="group2" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  189. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:10px; width:1195px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  190. <line id="line13" class="line_4" style="x1:1120px; y1:16px; x2:1120px; y2:38px; "/>
  191. <caption id="caption1" class="search_name" style="left:195px; top:19px; width:86px; height:17px; ">주관부서 :</caption>
  192. <line id="line8" class="line_1" style="x1:0px; y1:70px; x2:1195px; y2:70px; "/>
  193. <caption id="caption20" class="tit_2" style="left:5px; top:54px; width:169px; height:14px; ">교육코드관리</caption>
  194. <caption id="caption10" class="search_name" style="left:15px; top:19; width:90px; height:17px; ">기 관 :</caption>
  195. <caption id="caption3" class="search_name" style="left:450px; top:21px; width:91px; height:17px; ">교육구분 :</caption>
  196. <caption id="caption4" class="search_name" style="left:645px; top:21px; width:86px; height:17px; ">교육코드 :</caption>
  197. <caption id="caption28" class="search_name" style="left:929px; top:19px; width:86px; height:17px; ">이수구분 :</caption>
  198. <datagrid id="grd_educlist" nodeset="/root/main/educcodelist" caption="원내구분^기 관^기관코드^주관부서^주관부서코드^교육구분^교육구분코드^이수구분^이수구분코드^이수학점^교육코드명^교육코드^교육대상^교육대상코드^등록일자^등 록 자^수정자^수정일^사용여부^사용여부코드^비고사항" colsep="^" colwidth="8, 140, 24, 147, 23, 100, 17, 100, 21, 74, 93, 77, 100, 21, 56, 67, 14, 12, 78, 19, 118" dataheight="25" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:0px; top:73px; width:1194px; height:536px; ">
  199. <col ref="hosinhosoutflag" visibility="hidden"/>
  200. <col ref="instnm" type="output"/>
  201. <col ref="instcd" visibility="hidden"/>
  202. <col ref="chrgdeptnm" type="output"/>
  203. <col ref="chrgdeptcd" visibility="hidden"/>
  204. <col ref="educfalgnm" type="output"/>
  205. <col ref="educfalgcd" visibility="hidden"/>
  206. <col ref="cmpltcursstdyflagnm" type="hidden"/>
  207. <col ref="cmpltcursstdyflagcd" visibility="hidden"/>
  208. <col ref="cmpltcursstdypnt"/>
  209. <col ref="educcdnm" type="output"/>
  210. <col ref="educcd" visibility="output"/>
  211. <col ref="eductrgtnm" type="output"/>
  212. <col ref="eductrgtcd" visibility="hidden"/>
  213. <col ref="fstrgstdt" type="output"/>
  214. <col ref="fstrgstrid"/>
  215. <col ref="lastupdtrid" visibility="hidden"/>
  216. <col ref="lastupdtdt" visibility="hidden"/>
  217. <col checkvalue="Y,N" ref="useyn" type="checkbox"/>
  218. <col ref="useyncd" visibility="hidden"/>
  219. <col ref="cmt" type="output"/>
  220. <script type="javascript" ev:event="onrowchanged">
  221. <![CDATA[
  222. var cur_row = grd_educlist.row;
  223. if ( cur_row > 0 ) {
  224. fEnableUpdateButton();
  225. model.copyNode("/root/temp/savelist","/root/main/educcodelist["+cur_row+"]");
  226. model.refresh();
  227. }
  228. ]]>
  229. </script>
  230. </datagrid>
  231. <line id="line205" class="line_2" style="x1:0px; y1:685px; x2:840px; y2:685px; "/>
  232. <line id="line206" class="line_2" style="x1:0px; y1:709px; x2:805px; y2:710px; "/>
  233. <caption id="caption30" class="cell_1" style="left:425px; top:713px; width:85px; height:23px; vertical-align:middle; ">등록일</caption>
  234. <line id="line209" class="line_3" style="x1:0px; y1:733px; x2:1192px; y2:733px; "/>
  235. <caption id="caption5" class="cell_1" style="left:211px; top:638px; width:85px; height:23px; vertical-align:middle; ">교육구분</caption>
  236. <caption id="caption11" class="cell_1" style="left:425px; top:639px; width:85px; height:23px; vertical-align:middle; ">주관부서</caption>
  237. <caption id="caption7" class="cell_1" style="left:0px; top:687px; width:85px; height:23px; vertical-align:middle; ">이수구분</caption>
  238. <caption id="caption8" class="cell_1" style="left:0px; top:639px; width:85px; height:23px; vertical-align:middle; ">기관</caption>
  239. <caption id="caption26" class="cell_1" style="left:425px; top:663px; width:85px; height:23px; vertical-align:middle; ">교육대상</caption>
  240. <caption id="caption283" class="tit_2" style="left:0px; top:619px; width:144px; height:13px; ">등록 및 수정</caption>
  241. <caption id="caption9" class="cell_1" style="left:0px; top:663px; width:85px; height:23px; vertical-align:middle; ">교육코드명</caption>
  242. <caption id="caption12" class="cell_1" style="left:425px; top:688px; width:85px; height:23px; vertical-align:middle; ">등록자</caption>
  243. <line id="line203" class="line_1" style="x1:0px; y1:634px; x2:1192px; y2:634px; "/>
  244. <line id="line204" class="line_2" style="x1:0px; y1:661px; x2:855px; y2:660px; "/>
  245. <caption id="caption14" class="cell_1" style="left:210px; top:712px; width:85px; height:23px; vertical-align:middle; ">사용여부</caption>
  246. <caption id="caption13" class="cell_1" style="left:-2px; top:711px; width:85px; height:23px; vertical-align:middle; ">이수학점</caption>
  247. <caption id="caption15" class="cell_1" style="left:805px; top:640px; width:85px; height:85px; vertical-align:middle; ">비고사항</caption>
  248. <button id="button7" class="icon_search" style="left:796px; top:21px; width:16px; height:16px; ">
  249. <caption/>
  250. </button>
  251. <select1 id="cmb_instcd" ref="/root/send/instcd_s" class="combo_search" appearance="minimal" style="left:100px; top:19px; width:95px; height:19px; ">
  252. <choices>
  253. <itemset nodeset="/root/main/init">
  254. <label ref="instcd"/>
  255. <value ref="instnm"/>
  256. </itemset>
  257. </choices>
  258. </select1>
  259. <select1 id="cmb_educfalg" ref="/root/send/educfalg" class="combo_search" appearance="minimal" style="left:540px; top:19px; width:95px; height:19px; ">
  260. <choices>
  261. <item>
  262. <label>공통</label>
  263. <value>001</value>
  264. </item>
  265. <item>
  266. <label>보안교육</label>
  267. <value>002</value>
  268. </item>
  269. </choices>
  270. </select1>
  271. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:16px; width:56px; height:22px; ">
  272. <caption>조회</caption>
  273. <script type="javascript" ev:event="DOMActivate">
  274. <![CDATA[
  275. var updtdata = getGridUpdateData(grd_educlist);
  276. if ( updtdata != "" ) {
  277. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 조회 작업을","Q003");
  278. if (ret != 6) { // not OK
  279. return;
  280. }
  281. }
  282. submit("TRRPS00101");
  283. ]]>
  284. </script>
  285. </button>
  286. <select1 id="rdo_cmpltcursstdyflag" ref="/root/send/cmpltcursstdyflag" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:1017px; top:18px; width:90px; height:16px; text-align:center; border-style:none; ">
  287. <choices>
  288. <item>
  289. <label>필수</label>
  290. <value>E</value>
  291. </item>
  292. <item>
  293. <label>선택</label>
  294. <value>S</value>
  295. </item>
  296. </choices>
  297. </select1>
  298. <button id="button1" class="icon_search" style="left:600px; top:643px; width:16px; height:16px; ">
  299. <caption/>
  300. <script type="javascript" ev:event="onclick">
  301. <![CDATA[
  302. var precv_list = "chrgdeptcd" + "," + "chrgdeptnm";
  303. misfOpenPopUpList("02", ipt_chrgdeptcd_i, "", precv_list);
  304. model.refresh();
  305. ]]>
  306. </script>
  307. </button>
  308. <input id="ipt_chrgdeptcd_i" ref="/root/temp/savelist/chrgdeptcd" class="input_default" style="left:515px; top:640px; width:80px; height:19px; "/>
  309. <select1 id="cmb_instcd_i" ref="/root/temp/savelist/instcd" class="combo_s_essential" appearance="minimal" style="left:88px; top:640px; width:120px; height:19px; ">
  310. <choices>
  311. <itemset>
  312. <label ref="instnm"/>
  313. <value ref="instcd"/>
  314. </itemset>
  315. </choices>
  316. </select1>
  317. <select1 id="cmb_educflagcd_i" ref="/root/temp/savelist/educfalgcd" class="combo_search" appearance="minimal" style="left:299px; top:639px; width:120px; height:19px; ">
  318. <choices>
  319. <item>
  320. <label>공통</label>
  321. <value>001</value>
  322. </item>
  323. <item>
  324. <label>보안교육</label>
  325. <value>002</value>
  326. </item>
  327. </choices>
  328. </select1>
  329. <input id="ipt_chrgdeptnm_i" ref="/root/temp/savelist/chrgdeptnm" class="input_default" style="left:620px; top:640px; width:132px; height:19px; "/>
  330. <input id="ipt_educcdnm" ref="/root/send/educcd" class="input_default" style="left:739px; top:19px; width:55px; height:19px; "/>
  331. <input id="ipt_educcd" ref="/root/send/educcdnm" class="input_default" style="left:815px; top:19px; width:102px; height:19px; "/>
  332. <input id="ipt_educnm" ref="/root/temp/savelist/educcdnm" class="input_essential" style="left:88px; top:664px; width:117px; height:19px; "/>
  333. <input id="ipt_educcd_i" ref="/root/temp/savelist/educcd" class="input_essential" maxlength="5" style="left:300px; top:665px; width:115px; height:19px; "/>
  334. <select1 id="cmb_eductrgt_i" ref="/root/temp/savelist/eductrgtcd" class="combo_search" appearance="minimal" style="left:515px; top:665px; width:120px; height:19px; ">
  335. <choices>
  336. <item>
  337. <label>전체</label>
  338. <value>001</value>
  339. </item>
  340. <item>
  341. <label>교원</label>
  342. <value>002</value>
  343. </item>
  344. <item>
  345. <label>전공의</label>
  346. <value>003</value>
  347. </item>
  348. <item>
  349. <label>기타</label>
  350. <value>004</value>
  351. </item>
  352. </choices>
  353. </select1>
  354. <input id="ipt_fstrgstrid" ref="/root/temp/savelist/fstrgstrid" class="input_default" style="left:515px; top:690px; width:97px; height:19px; "/>
  355. <input id="ipt_cmpltcursstdypnt_i" ref="/root/temp/savelist/cmpltcursstdypnt" class="input_default" maxlength="3" style="left:88px; top:711px; width:115px; height:19px; ">
  356. <script type="javascript" ev:event="DOMFocusOut">
  357. <![CDATA[
  358. mis_numberOnly(ipt_cmpltcursstdypnt_i, 'real');
  359. ]]>
  360. </script>
  361. </input>
  362. <select1 id="rdo_useyn_i" ref="/root/temp/savelist/useyn" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:305px; top:715px; width:99px; height:16px; text-align:center; border-style:none; ">
  363. <choices>
  364. <item>
  365. <label>Yes</label>
  366. <value>Y</value>
  367. </item>
  368. <item>
  369. <label>No</label>
  370. <value>N</value>
  371. </item>
  372. </choices>
  373. </select1>
  374. <input id="ipt_fstrgstdt_i" ref="/root/temp/savelist/fstrgstdt" class="input_default" inputtype="date" style="left:515px; top:712px; width:97px; height:19px; "/>
  375. <textarea id="txt_cmt_i" ref="/root/temp/savelist/cmt" style="left:890px; top:640px; width:295px; height:85px; "/>
  376. <button id="btn_deptcdhelp" class="icon_search" style="left:340px; top:20px; width:16px; height:16px; ">
  377. <caption/>
  378. <script type="javascript" ev:event="onclick">
  379. <![CDATA[
  380. var precv_list = "chrgdeptcd" + "," + "chrgdeptnm";
  381. misfOpenPopUpList("02", ipt_chrgdeptcd, "", precv_list);
  382. model.refresh();
  383. ]]>
  384. </script>
  385. </button>
  386. <input id="ipt_chrgdeptcd" ref="/root/send/chrgdeptcd" class="input_default" style="left:280px; top:18px; width:55px; height:19px; "/>
  387. <input id="ipt_chrgdeptnm" ref="/root/send/chrgdeptnm" class="input_default" style="left:360px; top:18px; width:85px; height:19px; "/>
  388. <button id="btn_update" class="btn2_letter2" navindex="13" style="left:1047px; top:612px; width:42px; height:19px; ">
  389. <caption>수정</caption>
  390. <script type="javascript" ev:event="DOMActivate">
  391. <![CDATA[
  392. //if ( !fCheckMandatoryInput() ) return;
  393. var cur_row = grd_educlist.row; // 행 번호 가져오기
  394. if (cur_row > 0) {
  395. // 그리드에 추가
  396. model.copyNode("/root/main/educcodelist["+cur_row+"]","/root/temp/savelist");
  397. //messageBox(cmb_inst_i.label.elementName);
  398. //alert(cmb_inst_i.label);
  399. // 그리드의 레이블을 변경한다.
  400. fChangeGridValue(cur_row);
  401. //grd_educlist.cellStyle("background-image", cur_row, 1) = "../../../com/commonweb/images/icon_u.gif";
  402. grd_educlist.addStatus(cur_row,"update"); // 행을 업데이트 상태로 변경
  403. model.refresh();
  404. }
  405. ]]>
  406. </script>
  407. </button>
  408. <button id="button4" class="btn2_letter3" navindex="14" style="left:1092px; top:612px; width:53px; height:19px; ">
  409. <caption>지우기</caption>
  410. <script type="javascript" ev:event="onclick">
  411. <![CDATA[
  412. fEnableInsertButton();
  413. model.resetInstanceNode("/root/temp/savelist");
  414. model.refresh();
  415. ]]>
  416. </script>
  417. </button>
  418. <button id="btn_insert" class="btn2_letter2" navindex="12" style="left:1002px; top:612px; width:42px; height:19px; ">
  419. <caption>추가</caption>
  420. <script type="javascript" ev:event="DOMActivate">
  421. <![CDATA[
  422. function doubleCheck(){
  423. var double_check_cmp="";
  424. var double_check_instcd="";
  425. var double_check_educcd="";
  426. for(var i =1 ; i < grd_educlist.rows; i++)
  427. {
  428. double_check_cmp=model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/cmpltcursstdyflagcd");
  429. double_check_instcd=model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/instcd");
  430. double_check_educcd=model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/educcd");
  431. if( double_check_cmp== rdo_cmpltcursstdyflag_i.value
  432. && double_check_instcd == cmb_instcd_i.value
  433. && double_check_educcd== ipt_educcd_i.value){
  434. alert("중복된 코드가 존재합니다.");
  435. return false;
  436. }
  437. }
  438. return true;
  439. }
  440. function nullCheck(){
  441. var null_check1 = "";
  442. var null_check2 = "";
  443. var null_check3 = "";
  444. null_check1 =cmb_instcd_i.value;
  445. null_check2 =rdo_cmpltcursstdyflag_i.value;
  446. null_check3 =ipt_educcd_i.value;
  447. if(null_check1 =="") {
  448. messageBox("기관코드는","I003");
  449. return false;
  450. } else if(null_check2 == "") {
  451. messageBox("이수구분코드는","I003");
  452. return false;
  453. }else if(null_check3 == ""){
  454. messageBox("교육코드는","I003");
  455. return false;
  456. }
  457. return true;
  458. }
  459. if (!doubleCheck()) return;
  460. if (!nullCheck()) return;
  461. grd_educlist.addItem(); // 입력할 행 추가.
  462. var cur_row = grd_educlist.row; // 추가된 행 번호 가져오기
  463. // 그리드에 추가
  464. model.copyNode("/root/main/educcodelist["+cur_row+"]","/root/temp/savelist");
  465. fChangeGridValue(cur_row); // 그리드의 레이블을 변경한다.
  466. fEnableUpdateButton();
  467. model.refresh();
  468. ]]>
  469. </script>
  470. </button>
  471. <select1 id="rdo_cmpltcursstdyflag_i" ref="/root/temp/savelist/cmpltcursstdyflagcd" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:89px; top:690px; width:90px; height:16px; text-align:center; border-style:none; ">
  472. <choices>
  473. <item>
  474. <label>필수</label>
  475. <value>E</value>
  476. </item>
  477. <item>
  478. <label>선택</label>
  479. <value>S</value>
  480. </item>
  481. </choices>
  482. </select1>
  483. <caption id="caption2" class="cell_1" style="left:210px; top:687px; width:85px; height:23px; vertical-align:middle; ">원내/외구분</caption>
  484. <select1 id="rdo_hosinhosoutflag_i" ref="/root/temp/savelist/hosinhosoutflag" class="radio_search" appearance="full" cols="2" overflow="visible" style="left:305px; top:690px; width:99px; height:16px; text-align:center; border-style:none; ">
  485. <choices>
  486. <item>
  487. <label>원내</label>
  488. <value>0</value>
  489. </item>
  490. <item>
  491. <label>원외</label>
  492. <value>1</value>
  493. </item>
  494. </choices>
  495. </select1>
  496. <caption id="caption16" class="cell_1" style="left:211px; top:662px; width:85px; height:23px; vertical-align:middle; ">교육코드</caption>
  497. </group>
  498. <group id="grp_btn" scroll="auto" style="left:0px; top:15px; width:1195px; height:27px; ">
  499. <button id="button42" class="btn4_letter2" style="left:1060px; top:5px; width:56px; height:22px; ">
  500. <caption>저장</caption>
  501. <script type="javascript" ev:event="DOMActivate">
  502. <![CDATA[
  503. var updtdata = getGridUpdateData(grd_educlist);
  504. if (updtdata == "" ) {
  505. messageBox("변경된 데이터가","I004");
  506. return;
  507. }
  508. var null_check1 = "";
  509. var null_chech2 = "";
  510. var null_chech3 = "";
  511. for(var i=1;i<=grd_educlist.rows-1;i++)
  512. {
  513. null_check1 = model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/instcd");
  514. null_check2 = model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/cmpltcursstdyflagcd");
  515. null_check3 = model.getValue(grd_educlist.attribute("nodeset")+"["+i+"]/educcd");
  516. if(null_check1 =="") {
  517. messageBox("기관코드는","I003");
  518. return;
  519. } else if(null_check2 == "") {
  520. messageBox("이수구분코드는","I003");
  521. return;
  522. }else if(null_check3 == ""){
  523. messageBox("교육코드는","I003");
  524. return;
  525. }
  526. }
  527. misfSave("TXRPS00101");
  528. //rdo_hosinhosoutflag_i.value="0";
  529. //rdo_cmpltcursstdyflag_i.value="E";
  530. //rdo_useyn_i.value='Y';
  531. ]]>
  532. </script>
  533. </button>
  534. <button id="button2" class="btn4_letter3" style="left:1120px; top:5px; width:68px; height:22px; ">
  535. <caption>초기화</caption>
  536. <script type="javascript" ev:event="DOMActivate">
  537. <![CDATA[
  538. var updtdata = getGridUpdateData(grd_educlist);
  539. if (updtdata != "" ) {
  540. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 초기화 작업을","Q003");
  541. if (ret != 6) { // not OK
  542. return;
  543. }
  544. }
  545. fInitialize();
  546. ]]>
  547. </script>
  548. </button>
  549. <button id="button3" class="btn4_letter2" style="left:1000px; top:5px; width:56px; height:22px; ">
  550. <caption>삭제</caption>
  551. <script type="javascript" ev:event="DOMActivate">
  552. <![CDATA[
  553. misfGridIUD(grd_educlist,"D");
  554. model.refresh();
  555. ]]>
  556. </script>
  557. </button>
  558. </group>
  559. </xhtml:body>
  560. </xhtml:html>