SMRPD10300_사용자별스케쥴관리부서등록.xrw 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  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. <userschemngtdeptlist/>
  11. </main>
  12. <send>
  13. <instcd/>
  14. <deptcd/>
  15. <deptnm/>
  16. <emplno/>
  17. <emplnm/>
  18. <userschemngtdeptlist/>
  19. </send>
  20. <init/>
  21. <hidden/>
  22. <temp/>
  23. </root>
  24. </instance>
  25. <submission id="TRRPD10301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/userschemngtdeptlist"/>
  26. <submission id="TXRPD10301" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  27. </model>
  28. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  29. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  30. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  31. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  32. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  33. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  34. <script type="javascript" ev:event="xforms-ready">
  35. <![CDATA[
  36. fInitialize();
  37. ]]>
  38. </script>
  39. <script type="javascript">
  40. <![CDATA[
  41. // 화면 open시와 초기화 버튼 클릭시 화면 초기화 기능을 수행한다.
  42. function fInitialize()
  43. {
  44. model.removeNodeset("/root/main/userschemngtdeptlist");
  45. model.resetInstanceNode("/root/send");
  46. misfGridInit(grd_userschemngtdeptlist);
  47. misfMsterDetailSet(grd_userschemngtdeptlist, null, "TRRPD10301", "Y");
  48. //misfComboComCdListMulti("Z0007","cmb_instcd");
  49. misfComboInstCdListMulti("cmb_instcd",getCurrentDate(),"","N");
  50. misfGetAndSetUserInfo();
  51. misfGetUserAuth();
  52. model.setValue("/root/send/instcd", getUserInfo("dutplceinstcd"));
  53. model.setValue("/root/send/deptcd", DUT_UNIT_CD);
  54. model.setValue("/root/send/deptnm", DUT_UNIT_NM);
  55. // model.setValue("/root/send/emplno", getUserInfo("userid"));
  56. // model.setValue("/root/send/emplnm", getUserInfo("usernm"));
  57. if(getUserInfo("dutplceinstcd") == "001" && DUTY_PART_YN == "Y")
  58. {
  59. cmb_instcd.disabled = false;
  60. }
  61. else
  62. {
  63. cmb_instcd.disabled = true;
  64. }
  65. btn_search.dispatch("DOMActivate");
  66. //화면 권한 설정
  67. btn_search.disabled = !(checkAuth("R"));
  68. btn_save.disabled = !(checkAuth("X"));
  69. model.refresh();
  70. }
  71. function fRetrieve()
  72. {
  73. }
  74. function fSave()
  75. {
  76. var updtdata = getGridUpdateData(grd_userschemngtdeptlist);
  77. if (updtdata == "") {
  78. messageBox("변경된 데이터가","I004");
  79. return;
  80. }
  81. var null_check1 = "";
  82. var null_chech2 = "";
  83. for(var i = 1 ; i < grd_userschemngtdeptlist.rows ; i++)
  84. {
  85. null_check1 = model.getValue(grd_userschemngtdeptlist.attribute("nodeset")+"[" + i + "]/emplno");
  86. null_check2 = model.getValue(grd_userschemngtdeptlist.attribute("nodeset")+"[" + i + "]/dutplcedeptcd");
  87. if(null_check1 =="") {
  88. messageBox("사원번호를","I003");
  89. return;
  90. } else if(null_check2 == "") {
  91. messageBox("관리부서를","I003");
  92. return;
  93. }
  94. }
  95. misfSave("TXRPD10301");
  96. }
  97. function fReset()
  98. {
  99. var updtdata = getGridUpdateData(grd_userschemngtdeptlist);
  100. if (updtdata != "")
  101. {
  102. var ret = messageBox("그리드에 작업 중인 내용이 있습니다. 초기화 작업을","Q003");
  103. if(ret != 6) // not OK
  104. {
  105. return;
  106. }
  107. }
  108. fInitialize();
  109. }
  110. ]]>
  111. </script>
  112. </xhtml:head>
  113. <xhtml:body pagewidth="1211" pageheight="784" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  114. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  115. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">사용자별 스케쥴 관리부서 등록</caption>
  116. </group>
  117. <group id="group2" scroll="auto" style="left:0px; top:38px; width:1195px; height:744px; ">
  118. <line id="line1" class="line_1" style="x1:0px; y1:70px; x2:1194px; y2:70px; "/>
  119. <group id="group4" style="left:0px; top:10px; width:1195px; height:36px; vertical-align:top; ">
  120. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1195px; height:36px; background-color:#fffbf2; border-color:#ffd799; "/>
  121. <caption id="caption5" class="search_name" style="left:285px; top:9px; width:86px; height:17px; ">관리부서 :</caption>
  122. <line id="line3" class="line_4" style="x1:1109px; y1:7px; x2:1109px; y2:29px; border-color:#ffe4bb; border-left-style:solid; "/>
  123. <input id="ipt_deptcd" ref="/root/send/deptcd" class="input_search" navindex="2" maxlength="10" style="left:370px; top:7px; width:81px; height:19px; ">
  124. <script type="javascript" ev:event="xforms-value-changed">
  125. <![CDATA[
  126. misfValidationCheck("02", "", "deptcd,deptnm", cmb_instcd.value, "instcd" );
  127. if(ipt_deptcd.value != "")
  128. {
  129. btn_search.dispatch("DOMActivate");
  130. }
  131. model.refresh();
  132. ]]>
  133. </script>
  134. </input>
  135. <input id="ipt_deptnm" ref="/root/send/deptnm" class="input_search" navindex="3" style="left:475px; top:7px; width:130px; height:19px; ">
  136. <script type="javascript" ev:event="xforms-value-changed">
  137. <![CDATA[
  138. misfValidationCheck("02", "", "deptcd,deptnm", cmb_instcd.value, "instcd");
  139. if(ipt_deptnm.value != "")
  140. {
  141. btn_search.dispatch("DOMActivate");
  142. }
  143. model.refresh();
  144. ]]>
  145. </script>
  146. </input>
  147. <button id="btn_search" class="btn1_letter2" navindex="4" style="left:1124px; top:7px; width:56px; height:22px; text-align:left; ">
  148. <caption>조회</caption>
  149. <script type="javascript" ev:event="DOMActivate">
  150. <![CDATA[
  151. misfMsterDetailRetrieve();
  152. ]]>
  153. </script>
  154. </button>
  155. <caption id="caption1" class="search_name" style="left:639px; top:9px; width:86px; height:17px; ">사원번호 :</caption>
  156. <input id="ipt_emplno" ref="/root/send/emplno" class="input_search" navindex="2" maxlength="10" style="left:724px; top:8px; width:81px; height:19px; ">
  157. <script type="javascript" ev:event="xforms-value-changed">
  158. <![CDATA[
  159. rpbfValidationCheck("EMPLNO", "emplno,emplnm");
  160. if(ipt_emplno.value != "")
  161. {
  162. btn_search.dispatch("DOMActivate");
  163. }
  164. model.refresh();
  165. ]]>
  166. </script>
  167. </input>
  168. <input id="ipt_emplnm" ref="/root/send/emplnm" class="input_search" navindex="3" style="left:830px; top:8px; width:140px; height:19px; ">
  169. <script type="javascript" ev:event="xforms-value-changed">
  170. <![CDATA[
  171. rpbfValidationCheck("EMPLNM", "emplno,emplnm");
  172. if(ipt_emplno.value != "")
  173. {
  174. btn_search.dispatch("DOMActivate");
  175. }
  176. model.refresh();
  177. ]]>
  178. </script>
  179. </input>
  180. <button id="btn_userhelp" class="icon_search" style="left:810px; top:10px; width:16px; height:16px; ">
  181. <caption/>
  182. <script type="javascript" ev:event="DOMActivate">
  183. <![CDATA[
  184. rpbfOpenPopUpList("SPRPB00101", ipt_emplno, "emplno,emplnm", "", "N");
  185. model.refresh();
  186. if(ipt_emplno.value != "")
  187. {
  188. btn_search.dispatch("DOMActivate");
  189. }
  190. model.refresh();
  191. ]]>
  192. </script>
  193. </button>
  194. <button id="btn_depthelp" class="icon_search" style="left:455px; top:10px; width:16px; height:16px; ">
  195. <caption/>
  196. <script type="javascript" ev:event="DOMActivate">
  197. <![CDATA[
  198. misfOpenPopUpList("02", ipt_emplno, "", "deptcd,deptnm", cmb_instcd.value, "instcd");
  199. if(ipt_emplno.value != "")
  200. {
  201. btn_search.dispatch("DOMActivate");
  202. }
  203. model.refresh();
  204. ]]>
  205. </script>
  206. </button>
  207. <select1 id="cmb_instcd" ref="/root/send/instcd" class="combo_search" navindex="1" appearance="minimal" style="left:102px; top:8px; width:153px; height:19px; ">
  208. <choices>
  209. <itemset>
  210. <label/>
  211. <value/>
  212. </itemset>
  213. </choices>
  214. </select1>
  215. <caption id="caption8" class="search_name" style="left:14px; top:9px; width:86px; height:17px; ">소속기관 :</caption>
  216. </group>
  217. <caption id="caption9" class="tit_2" style="left:5px; top:55px; width:170px; height:13px; ">사용자별 관리부서</caption>
  218. <button id="button4" class="btn2_letter3" style="left:1087px; top:49px; width:53px; height:19px; ">
  219. <caption>행추가</caption>
  220. <script type="javascript" ev:event="DOMActivate">
  221. <![CDATA[
  222. //행추가를 누를시 근무년월을 입력한다.
  223. misfGridIUD(grd_userschemngtdeptlist, "A");
  224. model.refresh();
  225. ]]>
  226. </script>
  227. </button>
  228. <button id="button5" class="btn2_letter3" style="left:1142px; top:49px; width:53px; height:19px; ">
  229. <caption>행삭제</caption>
  230. <script type="javascript" ev:event="DOMActivate">
  231. <![CDATA[
  232. misfGridIUD(grd_userschemngtdeptlist,"D");
  233. model.refresh();
  234. ]]>
  235. </script>
  236. </button>
  237. <datagrid id="grd_userschemngtdeptlist" nodeset="/root/main/userschemngtdeptlist" caption="기관코드^사원번호^성명^관리부서코드^관리부서명^정렬순서^비고^더미" colsep="^" colwidth="0, 120, 140, 120, 155, 100, 525, 100" explorerbar="sort" extendlastcol="scroll" frozencols="3" mergecellsfixedcols="never" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="23" rowsep="|" style="left:0px; top:70px; width:1194px; height:660px; ">
  238. <col ref="instcd"/>
  239. <col ref="emplno" type="inputbutton" _key="true"/>
  240. <col ref="emplnm" type="input" _key="true"/>
  241. <col ref="dutplcedeptcd" type="inputbutton" maxlength="10" _key="true"/>
  242. <col ref="dutplcedeptnm" type="input" _key="true"/>
  243. <col ref="prntseq" type="input"/>
  244. <col ref="cmt" type="input"/>
  245. <col ref="dummy" visibility="hidden"/>
  246. <script type="javascript" ev:event="onbuttonclick">
  247. <![CDATA[
  248. if(grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("emplno")) //사원번호 버튼을 눌렀을 때
  249. {
  250. rpbfOpenPopUpList("SPRPB00101", grd_userschemngtdeptlist, "emplno,emplnm", "", "N");
  251. }
  252. else if (grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("dutplcedeptcd")) //관리부서 버튼을 눌렀을 때
  253. {
  254. misfOpenPopUpList("08", grd_userschemngtdeptlist, "", "dummy,dutplcedeptcd,dutplcedeptnm", cmb_instcd.value, "instcd");
  255. if(ipt_emplno.value != "" && ipt_emplno.value != "")
  256. {
  257. for(var i=1; i<grd_userschemngtdeptlist.rows; i++)
  258. {
  259. if(grd_userschemngtdeptlist.rowStatus(i) == 1 || grd_userschemngtdeptlist.rowStatus(i) == 3)
  260. {
  261. grd_userschemngtdeptlist.valueMatrix(i, grd_userschemngtdeptlist.colRef("emplno")) = ipt_emplno.value;
  262. grd_userschemngtdeptlist.valueMatrix(i, grd_userschemngtdeptlist.colRef("emplnm")) = ipt_emplnm.value;
  263. }
  264. }
  265. }
  266. }
  267. model.refresh();
  268. ]]>
  269. </script>
  270. <script type="javascript" ev:event="xforms-value-changed">
  271. <![CDATA[
  272. if(grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("emplno"))
  273. {
  274. rpbfValidationCheck("EMPLNO", "emplno,emplnm");
  275. }
  276. else if(grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("emplnm"))
  277. {
  278. rpbfValidationCheck("EMPLNM", "emplno,emplnm");
  279. }
  280. else if (grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("dutplcedeptcd") ||
  281. grd_userschemngtdeptlist.col == grd_userschemngtdeptlist.colRef("dutplcedeptnm")) //관리부서코드 입력시
  282. {
  283. misfValidationCheck("02", "", "dutplcedeptcd,dutplcedeptnm" );
  284. }
  285. model.refresh();
  286. ]]>
  287. </script>
  288. <script type="javascript" ev:event="onaftersort">
  289. <![CDATA[
  290. grd_userschemngtdeptlist.gridToInstance();
  291. ]]>
  292. </script>
  293. </datagrid>
  294. <output id="opt_msg" style="left:0px; top:725px; width:1194px; height:24px; "/>
  295. </group>
  296. <group id="grp_btn" scroll="auto" style="left:0px; top:12px; width:1195px; height:27px; ">
  297. <line id="line4" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  298. <button id="btn_clear" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  299. <caption>초기화</caption>
  300. <script type="javascript" ev:event="DOMActivate">
  301. <![CDATA[
  302. fReset();
  303. ]]>
  304. </script>
  305. </button>
  306. <button id="btn_save" class="btn4_letter2" style="left:1070px; top:3px; width:56px; height:22px; ">
  307. <caption>저장</caption>
  308. <script type="javascript" ev:event="DOMActivate">
  309. <![CDATA[
  310. fSave();
  311. ]]>
  312. </script>
  313. </button>
  314. </group>
  315. </xhtml:body>
  316. </xhtml:html>