SMRPV05200_조직몰입도설문등록.xrw 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485
  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. <list>
  11. <orgImrsn>
  12. <orgImrsnlist/>
  13. </orgImrsn>
  14. </list>
  15. </main>
  16. <send>
  17. <orgImrsn>
  18. <valuyy/>
  19. <emplno/>
  20. <emplnm/>
  21. <valuclscd>01</valuclscd>
  22. <valumdlcd>001</valumdlcd>
  23. <valuclsdetlcd>003</valuclsdetlcd>
  24. </orgImrsn>
  25. <save>
  26. <orgImrsnlist/>
  27. </save>
  28. </send>
  29. <init/>
  30. <hidden/>
  31. <temp/>
  32. <target/>
  33. </root>
  34. </instance>
  35. <script type="javascript" ev:event="xforms-ready">
  36. <![CDATA[
  37. /* Grid 초기화 */
  38. misfGridInit(grd_orgImrsn);
  39. /* Submit의 ref에 참조 될 Node들은 꼭 Instance에 생성 해야 함.*/
  40. /* Grid의 Mater, Detail관계 설정
  41. misfMsterDetailSet(관계설정할 Grid, Mater가 될 Grid, submit ID, 저장여부) */
  42. misfMsterDetailSet(grd_orgImrsn,null, "TRRPV05201" ,"Y");
  43. var curdate = getCurrentDate();
  44. model.setValue(ipt_valuyy.attribute("ref") , curdate.substr(0, 4));
  45. model.setValue(ipt_emplnos.attribute("ref") , getUserInfo("userid"));
  46. model.setValue(ipt_emplnms.attribute("ref") , getUserInfo("usernm"));
  47. //현재화면이 팝업으로 Load 되었을 시.....
  48. if(instance1.selectNodes("/root/target/*").length > 0)
  49. {
  50. fPopupDataSet("valuyy,trgtemplno,trgtemplnm","ipt_valuyy,ipt_emplnos,ipt_emplnms");
  51. }
  52. finitialize();
  53. ]]>
  54. </script>
  55. <submission id="TRRPV05201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/orgImrsn" resultref="/root/main/list/orgImrsn"/>
  56. <submission id="TXRPV05201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/save" resultref="/root/hidden/temp"/>
  57. <script type="javascript" ev:event="xforms-model-destruct">
  58. <![CDATA[
  59. if (getGridUpdateData(grd_orgImrsn) != "" ) {
  60. var save_val = messageBox("변경된 자료가 존재 합니다. ", "Q002");
  61. if (save_val == "6") {
  62. btn_save.dispatch("DOMActivate");
  63. }
  64. }
  65. ]]>
  66. </script>
  67. </model>
  68. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  69. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  70. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  71. <script type="javascript" src="../../../mis/miscommonweb/js/MIS.js"/>
  72. <script type="javascript" src="../../../mis/valuationmngtweb/js/RPV001.js"/>
  73. <script type="javascript" src="../../../mis/humtrafactmngtweb/js/RPB001.js"/>
  74. <script type="javascript">
  75. <![CDATA[
  76. function finitialize() {
  77. rpvfComboValuCdList(model.getValue(ipt_valuyy.attribute("ref")),"VALUSCOR","grd_orgImrsn.valuscor");
  78. if(rpvfCheckManFlag(model.getValue(ipt_valuyy.attribute("ref")),getUserInfo("userid"), "G") != "Y"){
  79. messageBox("해당 화면의 ","E002");
  80. rpvfSetControlBy("btn_savedetl,btn_init,btn_save,btn_search","Y");
  81. }else{
  82. // 평가기간에 따른 권한 부여.
  83. //당분간 막음...2008-04-01
  84. if(model.getValue("/root/temp/trgtflag") != ""){
  85. rpvfCheckDayFlag(ipt_valuyy.value, getUserInfo("userid"), model.getValue("/root/temp/trgtflag"), model.getValue("/root/temp/program"),"btn_save,btn_savedetl,btn_init,btn_search");
  86. }else{
  87. rpvfCheckDayFlag(ipt_valuyy.value, getUserInfo("userid"), "03", "SMRPV05200", "btn_save,btn_savedetl,btn_init,btn_search");
  88. }
  89. // btn_save.disabled = false;
  90. // btn_savedetl.disabled = false;
  91. // btn_init.disabled = false;
  92. // btn_search.disabled = false;
  93. }
  94. var instcd = getUserInfo("dutplceinstcd");
  95. var emplno = getUserInfo("userid");
  96. rpvfGetUserAuth(instcd,emplno);
  97. if(DUTY_VALU_YN =='Y'){
  98. ipt_emplnos.disabled = false;
  99. ipt_emplnms.disabled = false;
  100. btn_emplno.disabled = false;
  101. //ipt_valuyy.disabled = false;
  102. btn_savedetlcan.visible = true;
  103. rpvfSetControlBy("btn_savedetl,btn_init,btn_save,btn_search","N");
  104. }else{
  105. ipt_emplnos.disabled = true;
  106. ipt_emplnms.disabled = true;
  107. btn_emplno.disabled = true;
  108. //ipt_valuyy.disabled = true;
  109. btn_savedetlcan.visible = false;
  110. }
  111. model.refresh();
  112. }
  113. //현재화면이 팝업화면으로 Loadding 될때 넘겨받은값을 설정.
  114. function fPopupDataSet()
  115. {
  116. var fgetValueNode = "/root/target/";
  117. var fNodeName = arguments[0].split(",");
  118. var fSetControl = arguments[1].split(",");
  119. for(var i = 0; i < fSetControl.length; i++)
  120. {
  121. document.controls(fSetControl[i]).value = model.getValue(fgetValueNode + fNodeName[i]);
  122. }
  123. }
  124. function fAllvaluecheck()
  125. {
  126. if(grd_orgImrsn.fixedRows == grd_orgImrsn.rows) return;
  127. var inputyn = "N";
  128. for(var i = grd_orgImrsn.fixedRows; i < grd_orgImrsn.rows; i++)
  129. {
  130. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("t5")) = "매우그렇다";
  131. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("t4")) = "그렇다";
  132. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("t3")) = "보통";
  133. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("t2")) = "그렇지않다";
  134. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("t1")) = "전혀그렇지않다";
  135. inputyn = "N";
  136. if(grd_orgImrsn.valueMatrix( i, grd_orgImrsn.colRef("valuscor")) != '')
  137. {
  138. grd_orgImrsn.valueMatrix( i, grd_orgImrsn.colRef("c" + grd_orgImrsn.valueMatrix( i, grd_orgImrsn.colRef("valuscor")))) = 'Y';
  139. inputyn = "Y";
  140. }
  141. if (inputyn == "N") {
  142. grd_orgImrsn.cellStyle("color",i,grd_orgImrsn.colRef("orgimrsncnts")) = "#ff0000";
  143. }
  144. else {
  145. grd_orgImrsn.cellStyle("color",i,grd_orgImrsn.colRef("orgimrsncnts")) = "transparent";
  146. }
  147. }
  148. }
  149. function fpointcheck(checkpoint)
  150. {
  151. for(var i = 1; i < 6; i++)
  152. {
  153. if( i != checkpoint)
  154. {
  155. grd_orgImrsn.valueMatrix(grd_orgImrsn.row, grd_orgImrsn.colRef("c"+ i)) = 'N';
  156. }
  157. }
  158. if( grd_orgImrsn.valueMatrix(grd_orgImrsn.row, grd_orgImrsn.col) == 'Y' )
  159. {
  160. grd_orgImrsn.valueMatrix(grd_orgImrsn.row, grd_orgImrsn.colRef("valuscor")) = checkpoint;
  161. }else{
  162. grd_orgImrsn.valueMatrix(grd_orgImrsn.row, grd_orgImrsn.colRef("valuscor")) = '';
  163. }
  164. model.refresh();
  165. }
  166. ]]>
  167. </script>
  168. </xhtml:head>
  169. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  170. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  171. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">조직 몰입도 설문 등록</caption>
  172. </group>
  173. <group id="group2" scroll="auto" style="left:0px; top:38; width:1195px; height:744; ">
  174. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:0; top:10; width:1195; height:35px; "/>
  175. <line id="line13" class="line_4" style="x1:1110px; y1:16px; x2:1110px; y2:38px; "/>
  176. <datagrid id="grd_orgImrsn" nodeset="/root/main/list/orgImrsn/orgImrsnlist" caption="설문내용^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^점수|설문내용^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^설문결과^점수" colsep="^" colwidth="664, 18, 77, 18, 77, 18, 77, 18, 77, 18, 92, 55, 100, 100, 100, 100, 100, 100, 100, 100, 100" ellipsis="true" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" tooltip="true" style="left:0px; top:75px; width:1195px; height:665px; ">
  177. <col ref="orgimrsncnts"/>
  178. <col checkvalue="Y,N" ref="c5" type="checkbox">
  179. <script type="javascript" ev:event="xforms-value-changed">
  180. <![CDATA[
  181. fpointcheck(5);
  182. ]]>
  183. </script>
  184. </col>
  185. <col ref="t5"/>
  186. <col checkvalue="Y,N" ref="c4" type="checkbox">
  187. <script type="javascript" ev:event="xforms-value-changed">
  188. <![CDATA[
  189. fpointcheck(4);
  190. ]]>
  191. </script>
  192. </col>
  193. <col ref="t4"/>
  194. <col checkvalue="Y,N" ref="c3" type="checkbox">
  195. <script type="javascript" ev:event="xforms-value-changed">
  196. <![CDATA[
  197. fpointcheck(3);
  198. ]]>
  199. </script>
  200. </col>
  201. <col ref="t3"/>
  202. <col checkvalue="Y,N" ref="c2" type="checkbox">
  203. <script type="javascript" ev:event="xforms-value-changed">
  204. <![CDATA[
  205. fpointcheck(2);
  206. ]]>
  207. </script>
  208. </col>
  209. <col ref="t2"/>
  210. <col checkvalue="Y,N" ref="c1" type="checkbox">
  211. <script type="javascript" ev:event="xforms-value-changed">
  212. <![CDATA[
  213. fpointcheck(1);
  214. ]]>
  215. </script>
  216. </col>
  217. <col ref="t1"/>
  218. <col class="gridcombo" ref="valuscor" type="combo" visibility="hidden">
  219. <choices>
  220. <itemset>
  221. <label/>
  222. <value/>
  223. </itemset>
  224. </choices>
  225. </col>
  226. <col ref="valuyy" type="output" visibility="hidden"/>
  227. <col ref="emplno" type="output" visibility="hidden"/>
  228. <col ref="valuclscd" visibility="hidden"/>
  229. <col ref="valumdlcd" visibility="hidden"/>
  230. <col ref="valuclsdetlcd" visibility="hidden"/>
  231. <col ref="orgimrsnflag" visibility="hidden"/>
  232. <col ref="orgimrsncd" visibility="hidden"/>
  233. <col ref="cmt" visibility="hidden"/>
  234. <col ref="procstat" visibility="hidden"/>
  235. <col ref="instcd" visibility="hidden"/>
  236. <col ref="deptcd" visibility="hidden"/>
  237. <col ref="teamcd" visibility="hidden"/>
  238. <col ref="unitcd" visibility="hidden"/>
  239. </datagrid>
  240. <caption id="caption1" class="tit_2" style="left:0px; top:54px; width:230px; height:14px; vertical-align:middle; ">조직 몰입도 설문 List</caption>
  241. <line id="line2" class="line_1" style="x1:0px; y1:69px; x2:1195px; y2:69px; "/>
  242. <caption id="cap_emplnos" class="search_name" style="left:230px; top:19px; width:57px; height:17px; font-weight:bold; ">사번:</caption>
  243. <caption id="cap_valuyy" class="search_name" style="left:15px; top:19px; width:100px; height:17px; vertical-align:middle; ">기준년도 :</caption>
  244. <input id="ipt_valuyy" ref="/root/send/orgImrsn/valuyy" class="input_s_essential" inputtype="date" format="yyyy" style="left:100; top:18; width:125px; height:19px; ">
  245. <script type="javascript" ev:event="xforms-value-changed">
  246. <![CDATA[
  247. finitialize();
  248. ]]>
  249. </script>
  250. </input>
  251. <input id="ipt_emplnos" ref="/root/send/orgImrsn/emplno" class="input_default" editable="true" style="left:285px; top:18px; width:87px; height:19px; ">
  252. <script type="javascript" ev:event="xforms-value-changed">
  253. <![CDATA[
  254. var recv_list = "emplno,emplnm" ;
  255. rpbfValidationCheck("EMPLNO", recv_list);
  256. model.refresh();
  257. ]]>
  258. </script>
  259. </input>
  260. <input id="ipt_emplnms" ref="/root/send/orgImrsn/emplnm" class="input_default" editable="false" style="left:393px; top:18px; width:141px; height:19px; ">
  261. <script type="javascript" ev:event="xforms-value-changed">
  262. <![CDATA[
  263. var recv_list = "emplno,emplnm" ;
  264. rpbfValidationCheck("EMPLNM", recv_list);
  265. model.refresh();
  266. if (model.getValue(ipt_emplnos.attribute("ref")).length > 0) {
  267. btn_search.dispatch("DOMActivate");
  268. }
  269. ]]>
  270. </script>
  271. </input>
  272. <button id="btn_search" class="btn1_letter2" style="left:1125px; top:16px; width:56px; height:22px; ">
  273. <caption>조회</caption>
  274. <script type="javascript" ev:event="DOMActivate">
  275. <![CDATA[
  276. if ( !isRequiredControls("ipt_valuyy" , "ipt_emplnos") ) {
  277. return false;
  278. }
  279. rpvfCheckManFlag(model.getValue(ipt_valuyy.attribute("ref")),ipt_emplnos.value, "T") ;
  280. misfGridInit(grd_orgImrsn);
  281. misfMsterDetailRetrieve();
  282. // 점수 컬럼에 있는 값을 체크박스에 설정.
  283. fAllvaluecheck();
  284. if (grd_orgImrsn.rows - grd_orgImrsn.fixedRows > 0 && grd_orgImrsn.valueMatrix(grd_orgImrsn.fixedRows, grd_orgImrsn.colRef("procstat")) == "01" ) {
  285. btn_save.disabled = true;
  286. btn_savedetl.disabled = true;
  287. }
  288. else {
  289. btn_save.disabled =false;
  290. btn_savedetl.disabled = false;
  291. }
  292. ]]>
  293. </script>
  294. </button>
  295. <caption id="caption2" class="search_name" style="left:15px; top:19px; width:100px; height:17px; vertical-align:middle; ">기준년도 :</caption>
  296. <button id="btn_emplno" class="icon_search" style="left:375px; top:20px; width:16px; height:16px; ">
  297. <caption/>
  298. <script type="javascript" ev:event="DOMActivate">
  299. <![CDATA[
  300. var recv_list = "emplno,emplnm" ;
  301. rpbfOpenPopUpList("SPRPB00101", ipt_emplnos, recv_list,"1","N");
  302. model.refresh();
  303. ]]>
  304. </script>
  305. </button>
  306. </group>
  307. <group id="grp_btn" scroll="auto" ref="/root/send/orgImrsn/valuyy" style="left:0px; top:12px; width:1195px; height:27px; ">
  308. <line id="line6" class="line_6" style="x1:0px; y1:25; x2:1195px; y2:25; "/>
  309. <button id="btn_init" class="btn4_letter3" style="left:1119px; top:3px; width:68px; height:22px; ">
  310. <caption>초기화</caption>
  311. <script type="javascript" ev:event="DOMActivate">
  312. <![CDATA[
  313. window.reload() ;
  314. ]]>
  315. </script>
  316. </button>
  317. <button id="btn_save" class="btn4_letter2" style="left:871px; top:3px; width:56px; height:22px; ">
  318. <caption>저장</caption>
  319. <script type="javascript" ev:event="DOMActivate">
  320. <![CDATA[
  321. if(!checkKeyColumn("grd_orgImrsn")) return;
  322. var instcd = model.getValue("/root/userinfo/dutinst");
  323. var deptcd = model.getValue("/root/userinfo/dutdeptcd");
  324. var teamcd = model.getValue("/root/userinfo/dutteamcd");
  325. var unitcd = model.getValue("/root/userinfo/dutunitcd");
  326. for (var i = grd_orgImrsn.fixedRows; i < grd_orgImrsn.rows; i++) {
  327. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("instcd")) = instcd;
  328. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("deptcd")) = deptcd;
  329. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("teamcd")) = teamcd;
  330. grd_orgImrsn.valueMatrix(i, grd_orgImrsn.colRef("unitcd")) = unitcd;
  331. grd_orgImrsn.rowStatus(i) = 2;
  332. }
  333. misfSave("TXRPV05201");
  334. if (model.getValue(gvErrorMsgPath + "/type") != "error")
  335. {
  336. var procstat = "";
  337. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  338. {
  339. procstat = grd_orgImrsn.valueMatrix(row, grd_orgImrsn.colRef("procstat"));
  340. if (procstat != "01") {
  341. messageBox("설문 완료버튼을 클릭해야지 점수에 반영 됩니다.", "I999");
  342. break;
  343. }
  344. }
  345. btn_search.dispatch("DOMActivate");
  346. }
  347. ]]>
  348. </script>
  349. </button>
  350. <button id="btn_savedetl" class="btn4_letter4" style="left:1035px; top:3px; width:80px; height:22px; ">
  351. <caption>설문완료</caption>
  352. <script type="javascript" ev:event="DOMActivate">
  353. <![CDATA[
  354. /*
  355. var chkvaluscor = true;
  356. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  357. {
  358. if(grd_orgImrsn.valueMatrix(row , grd_orgImrsn.colRef("valuscor")).length == 0)
  359. {
  360. chkvaluscor = false;
  361. break;
  362. }
  363. }
  364. if(!chkvaluscor)
  365. {
  366. var save_val = messageBox("입력되지 않은 점수가 존재합니다 그래도 전체 평가완료 ", "Q002");
  367. if (save_val != "6") {
  368. return;
  369. }
  370. }
  371. */
  372. if(DUTY_VALU_YN != "Y"){
  373. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  374. {
  375. if(grd_orgImrsn.valueMatrix(row , grd_orgImrsn.colRef("valuscor")).length == 0)
  376. {
  377. messageBox("입력되지 않은 점수가 존재하므로 평가완료 ", "E001");
  378. return;
  379. }
  380. }
  381. }
  382. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  383. {
  384. model.setValue(grd_orgImrsn.attribute("nodeset")+"["+ (row - grd_orgImrsn.fixedRows + 1) +"]/procstat","01");
  385. grd_orgImrsn.rowStatus(row) = "2";
  386. }
  387. btn_save.dispatch("DOMActivate");
  388. ]]>
  389. </script>
  390. </button>
  391. <button id="btn_savedetlcan" class="btn4_letter6" style="left:928px; top:3px; width:104px; height:22px; ">
  392. <caption>설문완료취소</caption>
  393. <script type="javascript" ev:event="DOMActivate">
  394. <![CDATA[
  395. /*
  396. var chkvaluscor = true;
  397. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  398. {
  399. if(grd_orgImrsn.valueMatrix(row , grd_orgImrsn.colRef("valuscor")).length == 0)
  400. {
  401. chkvaluscor = false;
  402. break;
  403. }
  404. }
  405. if(!chkvaluscor)
  406. {
  407. var save_val = messageBox("입력되지 않은 점수가 존재합니다 그래도 전체 평가완료 ", "Q002");
  408. if (save_val != "6") {
  409. return;
  410. }
  411. }
  412. */
  413. for(var row = grd_orgImrsn.fixedRows ; row < grd_orgImrsn.rows ; row++)
  414. {
  415. model.setValue(grd_orgImrsn.attribute("nodeset")+"["+ (row - grd_orgImrsn.fixedRows + 1) +"]/procstat","");
  416. grd_orgImrsn.rowStatus(row) = "2";
  417. }
  418. btn_save.dispatch("DOMActivate");
  419. ]]>
  420. </script>
  421. </button>
  422. </group>
  423. </xhtml:body>
  424. </xhtml:html>