SMRTR00500_면접실기일괄등록.xrw 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>면접 실기 일괄 등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <intvpracvolntlist/>
  11. </main>
  12. <send>
  13. <apntyy/>
  14. <supinfqurtyyflag>1</supinfqurtyyflag>
  15. <fstlattrmflag>1</fstlattrmflag>
  16. <trngflag>I</trngflag>
  17. <dentyn>1</dentyn>
  18. <scrngflag>2</scrngflag>
  19. <korname/>
  20. <rregno/>
  21. <examno/>
  22. <drlicnsno/>
  23. <name/>
  24. <scrngflagnm/>
  25. <valupsnid/>
  26. <intvpracvolntlist/>
  27. </send>
  28. <init/>
  29. <hidden>
  30. </hidden>
  31. <temp>
  32. </temp>
  33. </root>
  34. </instance>
  35. <submission id="TRRTR00501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/intvpracvolntlist"/>
  36. <submission id="TXRTR00501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  37. </model>
  38. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  39. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  40. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  41. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  42. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  43. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  44. <script type="javascript" ev:event="xforms-ready">
  45. <![CDATA[
  46. //사용자 권한
  47. fCheckAuth();
  48. // 그리드 초기화
  49. misfGridInit(grd_intvpracvolntlist);
  50. misfMsterDetailSet(grd_intvpracvolntlist, null, "TRRTR00501", "Y");
  51. misfComboComCdListMulti("R0237,R0238,R0151,R0239,R0240", "cmb_supinfqurtyyflag,cmb_fstlattrmflag,cmb_trngflag,cmb_dentyn,cmb_scrngflag");
  52. // 2007-11-16 년도 디폴트설정 acwon수정
  53. /*var sDate = getNewDate();
  54. model.setValue("/root/send/apntyy", sDate.getFullYear());
  55. model.refresh();*/
  56. var today = getCurrentDate();
  57. var cur_mm = parseInt(today.substring(4, 6));
  58. var cur_yy = parseInt(today.substring(0, 4));
  59. if (cur_mm >= 11)
  60. cur_yy++;
  61. model.setValue("/root/send/apntyy", cur_yy);
  62. grd_intvpracvolntlist.explorerbar = "sort";
  63. grd_intvpracvolntlist.selectionMode = "byrow"
  64. if (window.document.location.indexOf("C:/CMCProject/application") > -1)
  65. {
  66. model.setValue("/root/send/trngflag", "R");
  67. model.setValue("/root/send/valupsnid", "84015046");
  68. cap_valupsnid.refresh();
  69. btn_search.dispatch("DOMActivate");
  70. }
  71. model.refresh();
  72. //end
  73. ]]>
  74. </script>
  75. <script type="javascript">
  76. <![CDATA[
  77. //========================================================================================
  78. //버튼에 대한 화면 권한 체크(R : 읽기, X : 입력/수정/삭제, P : 출력)
  79. //========================================================================================
  80. function fCheckAuth() {
  81. btn_search.disabled = !checkAuth("R") ;
  82. btn_save.disabled = !checkAuth("X") ;
  83. }
  84. function fGetList() {
  85. misfMsterDetailRetrieve();
  86. }
  87. ]]>
  88. </script>
  89. </xhtml:head>
  90. <xhtml:body style="margin-left:8; margin-right:8; ">
  91. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  92. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">면접 실기 일괄 등록</caption>
  93. </group>
  94. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  95. <datagrid id="grd_intvpracvolntlist" nodeset="/root/main/intvpracvolntlist" caption="수험번호^주민등록번호^성명^지원과^결시^인성/품성^사회성^예의범절^윤리관^대화법^의직수행능력^판단력^이해력^표현력^응용력^채용정보번호^평가자ID^전형구분^전공의구분^채용년도^caption1^caption2" colsep="^" colwidth="70, 90, 70, 90, 38, 77, 77, 77, 77, 77, 85, 77, 77, 77, 77, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:105px; width:1185px; height:629px; ">
  96. <col ref="examno" type="output" style="text-align:center; "/>
  97. <col ref="rregno" type="output" style="text-align:center; "/>
  98. <col ref="korname" type="output" style="text-align:center; "/>
  99. <col ref="hopedeptnm" type="output" style="text-align:center; word-wrap:none; "/>
  100. <col checkvalue="Y,N" ref="absnexamyn" type="checkbox"/>
  101. <col autonext="false" imemode="disabled" ref="item0301" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  102. <col autonext="false" imemode="disabled" ref="item0302" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  103. <col autonext="false" imemode="disabled" ref="item0303" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  104. <col autonext="false" imemode="disabled" ref="item0304" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  105. <col autonext="false" imemode="disabled" ref="item0305" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  106. <col autonext="false" imemode="disabled" ref="item0401" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  107. <col autonext="false" imemode="disabled" ref="item0402" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  108. <col autonext="false" imemode="disabled" ref="item0403" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  109. <col autonext="false" imemode="disabled" ref="item0404" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  110. <col autonext="false" imemode="disabled" ref="item0405" type="input" maxlength="1" _chartype="upper" _required="true" style="text-align:center; "/>
  111. <col ref="apntinfono" visibility="hidden"/>
  112. <col ref="valupsnid" visibility="hidden"/>
  113. <col ref="scrngflag" visibility="hidden"/>
  114. <col ref="trngflag" visibility="hidden"/>
  115. <col ref="apntyy" visibility="hidden"/>
  116. <script type="javascript" ev:event="xforms-value-changed">
  117. <![CDATA[
  118. if (grd_intvpracvolntlist.col >= grd_intvpracvolntlist.colRef("item0301") && grd_intvpracvolntlist.col <= grd_intvpracvolntlist.colRef("item0405"))
  119. {
  120. var pattern =/^[ABC]/;
  121. var inputValue = grd_intvpracvolntlist.valueMatrix( grd_intvpracvolntlist.row, grd_intvpracvolntlist.col);
  122. if( pattern.exec(inputValue) == null ) {
  123. messageBox("점수는 'A', 'B', 'C' 만", "I006");
  124. grd_intvpracvolntlist.valueMatrix( grd_intvpracvolntlist.row, grd_intvpracvolntlist.col) = "";
  125. // 2007-11-12 A,B,C 이외 문자입력제한 acwon수정
  126. event.propagate = "stop";
  127. }
  128. else {
  129. if( grd_intvpracvolntlist.row == grd_intvpracvolntlist.rows) {
  130. grd_intvpracvolntlist.col = grd_intvpracvolntlist.col + 1;
  131. }
  132. else {
  133. if (grd_intvpracvolntlist.col >= grd_intvpracvolntlist.colRef("item0405"))
  134. {
  135. grd_intvpracvolntlist.row = grd_intvpracvolntlist.row + 1;
  136. grd_intvpracvolntlist.col = grd_intvpracvolntlist.colRef("item0301");
  137. }
  138. else
  139. {
  140. grd_intvpracvolntlist.col = grd_intvpracvolntlist.col + 1;
  141. }
  142. }
  143. }
  144. }
  145. ]]>
  146. </script>
  147. <script type="javascript" ev:event="onentercell">
  148. <![CDATA[
  149. if (grd_intvpracvolntlist.col == grd_intvpracvolntlist.colRef("examno"))
  150. {
  151. grd_intvpracvolntlist.col = grd_intvpracvolntlist.colRef("item0301");
  152. }
  153. ]]>
  154. </script>
  155. </datagrid>
  156. <line id="line3" class="line_1" style="x1:0px; y1:100px; x2:1185px; y2:100px; "/>
  157. <caption id="caption9" class="tit_2" style="left:10px; top:85px; width:117px; height:13px; ">지원자 리스트</caption>
  158. <group id="group4" style="left:0px; top:0px; width:1195px; height:65px; vertical-align:top; ">
  159. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1190px; height:63px; background-color:#fffbf2; border-color:#ffd799; "/>
  160. <button id="btn_search" class="btn1_letter2" navindex="10" style="left:1125px; top:22px; width:56px; height:22px; text-align:left; ">
  161. <caption>조회</caption>
  162. <script type="javascript" ev:event="DOMActivate">
  163. <![CDATA[
  164. //필수 입력 항목 체크(공통 ftHelper.js)
  165. if ( !isRequiredControls("ipt_apntyy", "cmb_supinfqurtyyflag", "cmb_fstlattrmflag", "cmb_trngflag", "cmb_dentyn", "cnb_scrngflag", "ipt_valupsnid") ) {
  166. return false;
  167. }
  168. fGetList();
  169. ]]>
  170. </script>
  171. </button>
  172. <line id="line1" class="line_4" style="x1:1110px; y1:6px; x2:1110px; y2:52px; border-color:#ffe4bb; border-left-style:solid; "/>
  173. <caption id="cap_scrngflag" class="search_name" style="left:15px; top:39px; width:86px; height:17px; ">전형구분 :</caption>
  174. <caption id="caption1" class="search_name" style="left:225px; top:39px; width:86px; height:17px; ">이 름 :</caption>
  175. <input id="ipt_korname" ref="/root/send/korname" class="input_search" navindex="7" style="left:310px; top:38px; width:100px; height:19px; "/>
  176. <caption id="caption3" class="search_name" style="left:435px; top:40px; width:86px; height:17px; ">수험번호 :</caption>
  177. <input id="ipt_examno" ref="/root/send/examno" class="input_search" navindex="9" style="left:525px; top:39px; width:100px; height:19px; "/>
  178. <select1 id="cmb_trngflag" ref="/root/send/trngflag" class="combo_s_essential" navindex="4" appearance="minimal" style="left:765px; top:10px; width:100px; height:19px; ">
  179. <choices>
  180. <itemset>
  181. <label/>
  182. <value/>
  183. </itemset>
  184. </choices>
  185. </select1>
  186. <caption id="cap_trngflag" class="search_name" style="left:650px; top:9px; width:110px; height:17px; ">전공의구분 :</caption>
  187. <caption id="cap_apntyy" class="search_name" style="left:15px; top:9px; width:86px; height:17px; ">년 도 :</caption>
  188. <caption id="cap_supinfqurtyyflag" class="search_name" style="left:225px; top:9px; width:86px; height:17px; ">상하반기 :</caption>
  189. <caption id="cap_fstlattrmflag" class="search_name" style="left:435px; top:9px; width:86px; height:17px; ">전후기 :</caption>
  190. <select1 id="cmb_dentyn" ref="/root/send/dentyn" class="combo_s_essential" navindex="5" appearance="minimal" style="left:970px; top:10px; width:100px; height:19px; ">
  191. <choices>
  192. <itemset>
  193. <label/>
  194. <value/>
  195. </itemset>
  196. </choices>
  197. </select1>
  198. <caption id="cap_dentyn" class="search_name" style="left:880px; top:9px; width:96px; height:17px; ">치과여부 :</caption>
  199. <select1 id="cmb_fstlattrmflag" ref="/root/send/fstlattrmflag" class="combo_s_essential" navindex="3" appearance="minimal" style="left:525px; top:10px; width:100px; height:19px; ">
  200. <choices>
  201. <itemset>
  202. <label/>
  203. <value/>
  204. </itemset>
  205. </choices>
  206. </select1>
  207. <select1 id="cmb_supinfqurtyyflag" ref="/root/send/supinfqurtyyflag" class="combo_s_essential" navindex="2" appearance="minimal" style="left:310px; top:10px; width:100px; height:19px; ">
  208. <choices>
  209. <itemset>
  210. <label/>
  211. <value/>
  212. </itemset>
  213. </choices>
  214. </select1>
  215. <caption id="caption12" class="search_name" style="left:650px; top:40px; width:115px; height:17px; ">주민등록번호 :</caption>
  216. <input id="ipt_rregno" ref="/root/send/rregno" class="input_search" navindex="8" style="left:765px; top:39px; width:100px; height:19px; "/>
  217. <input id="ipt_apntyy" ref="/root/send/apntyy" class="input_s_essential" navindex="1" style="left:100px; top:10px; width:100px; height:19px; "/>
  218. <select1 id="cmb_scrngflag" ref="/root/send/scrngflag" class="combo_s_essential" navindex="6" appearance="minimal" style="left:100px; top:35px; width:100px; height:19px; ">
  219. <choices>
  220. <itemset>
  221. <label/>
  222. <value/>
  223. </itemset>
  224. </choices>
  225. </select1>
  226. <input id="ipt_valupsnid" ref="/root/send/valupsnid" class="output_fix" appearance="minimal" style="left:970px; top:40; width:100px; height:19px; "/>
  227. <button id="btn_deptcdhelp" class="icon_search" style="left:1081px; top:41px; width:16px; height:16px; ">
  228. <caption/>
  229. <script type="javascript" ev:event="DOMActivate">
  230. <![CDATA[
  231. //필수 입력 항목 체크(공통 ftHelper.js)
  232. if ( !isRequiredControls("ipt_apntyy", "cmb_supinfqurtyyflag", "cmb_fstlattrmflag", "cmb_trngflag", "cmb_dentyn", "cnb_scrngflag") ) {
  233. return false;
  234. }
  235. /*
  236. pwindow_name : Open할 window명
  237. pcontrol_name : OPEN하는 Control명(Grid,Input.....)
  238. precv_list: 리턴받을 Instance명 (마지막 Element만 ','로 분리)
  239. pdefault_value : 부모 윈도우에서 넘어오는 값
  240. pcheck_yn : 선택형 팝업창인지 아닌지를 체크
  241. function rpbfOpenPopUpList(pwindow_name, pcontrol_name, precv_list, pdefault_value, pcheck_yn) {
  242. */
  243. rpbfOpenPopUpList("SPRTR00601", ipt_drlicnsno, "scrngflagnm,name,drlicnsno,valupsnid", "ipt_apntyy,cmb_supinfqurtyyflag,cmb_fstlattrmflag,cmb_trngflag,cmb_dentyn,cmb_scrngflag","N");
  244. model.refresh();
  245. ]]>
  246. </script>
  247. </button>
  248. <caption id="cap_valupsnid" class="search_name" style="left:880px; top:39px; width:75px; height:17px; ">평가자 :</caption>
  249. </group>
  250. <input id="ipt_scrngflagnm" ref="/root/send/scrngflagnm" class="combo_s_essential" visibility="hidden" appearance="minimal" style="left:1085px; top:70px; width:100px; height:19px; "/>
  251. <input id="ipt_name" ref="/root/send/name" class="combo_s_essential" visibility="hidden" appearance="minimal" style="left:975px; top:65px; width:100px; height:19px; "/>
  252. <input id="ipt_drlicnsno" ref="/root/send/drlicnsno" class="combo_s_essential" visibility="hidden" appearance="minimal" style="left:865px; top:70px; width:100px; height:19px; "/>
  253. <button id="btn_excel" class="btn2_letter4" style="left:1050px; top:80px; width:64px; height:19px; vertical-align:middle; ">
  254. <caption>엑셀저장</caption>
  255. <script type="javascript" ev:event="DOMActivate">
  256. <![CDATA[
  257. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  258. if (fileName != "") {;
  259. grd_intvpracvolntlist.saveExcel(fileName, "", false, true);
  260. }
  261. ]]>
  262. </script>
  263. </button>
  264. <button id="button5" class="btn2_letter4" style="left:1118px; top:80px; width:64px; height:19px; vertical-align:middle; ">
  265. <caption>엑셀입력</caption>
  266. <script type="javascript" ev:event="DOMActivate">
  267. <![CDATA[
  268. var fileName = window.fileDialog("open", ",", false, "", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  269. if (fileName != "") {
  270. grd_intvpracvolntlist.loadExcel(fileName, 1, false);
  271. grd_intvpracvolntlist.deleteRow(1);
  272. grd_intvpracvolntlist.refresh();
  273. var sCnt = grd_intvpracvolntlist.rows;
  274. grd_intvpracvolntlist.clearStatus();
  275. //grd_intvpracvolntlist.rowStatus(1) = 0;
  276. for ( var i = 1; i < sCnt; i++) {
  277. grd_intvpracvolntlist.rowStatus(i) = 2;
  278. }
  279. }
  280. ]]>
  281. </script>
  282. </button>
  283. </group>
  284. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  285. <line id="line75" class="line_6" style="x1:0; y1:25; x2:1195; y2:25; "/>
  286. <button id="btn_save" class="btn5_letter2" style="left:1139px; top:3; width:56px; height:22px; ">
  287. <caption>저장</caption>
  288. <script type="javascript" ev:event="DOMActivate">
  289. <![CDATA[
  290. var retMes = messageBox("저장 하시겠습니까?", "Q999");
  291. if ( retMes != 6) {
  292. return;
  293. }
  294. var frcolidx = grd_intvpracvolntlist.colRef("item0301");
  295. var tocolidx = grd_intvpracvolntlist.colRef("item0405");
  296. var totcnt = tocolidx - frcolidx + 1;
  297. var valucnt = 0;
  298. var inputValue;
  299. var pattern =/^[ABC]/;
  300. var emptyCellidx = -1;
  301. for (var i=1; i<=grd_intvpracvolntlist.rows; i++)
  302. {
  303. valucnt = 0;
  304. for (var j=frcolidx; j<=tocolidx; j++)
  305. {
  306. inputValue = grd_intvpracvolntlist.valueMatrix(i, j).replace(" ", "");
  307. if( inputValue != "")
  308. {
  309. valucnt++;
  310. if (pattern.exec(inputValue) == null)
  311. {
  312. var msg = grd_intvpracvolntlist.valueMatrix(0,j) + "\n\n"
  313. messageBox(msg + "점수는 'A', 'B', 'C' 만", "I006");
  314. model.setFocus("grd_intvpracvolntlist");
  315. grd_intvpracvolntlist.row = i;
  316. grd_intvpracvolntlist.col = j;
  317. return;
  318. }
  319. }
  320. else if (emptyCellidx == -1)
  321. {
  322. emptyCellidx = j;
  323. }
  324. }
  325. if (valucnt > 0 && valucnt != totcnt)
  326. {
  327. var msg = grd_intvpracvolntlist.valueMatrix(0,emptyCellidx) + "\n\n"
  328. messageBox(msg + "점수입력이 안 된 항목이 있습니다.", "I", "");
  329. model.setFocus("grd_intvpracvolntlist");
  330. grd_intvpracvolntlist.row = i;
  331. grd_intvpracvolntlist.col = emptyCellidx;
  332. return;
  333. }
  334. }
  335. var updtdata = getGridUpdateData(grd_intvpracvolntlist);
  336. if (updtdata == "") {
  337. messageBox("변경된 데이터가","I004");
  338. return;
  339. }
  340. misfSave("TXRTR00501");
  341. ]]>
  342. </script>
  343. </button>
  344. </group>
  345. </xhtml:body>
  346. </xhtml:html>