SMSMK00200_KPI등록.xrw 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787
  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>KPI 등록</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <newform>
  11. <kpicd/>
  12. <kpinm/>
  13. <histstatcd/>
  14. <instcd/>
  15. <clsdeptnm/>
  16. <suggdeptcd/>
  17. <kpidefine/>
  18. <kpicalcrule/>
  19. <kpiunitcd/>
  20. <kpitypcd/>
  21. <kpirespspec/>
  22. <direcspec/>
  23. <maxcriticstatnm/>
  24. <mincriticstatnm/>
  25. <srcsyscd/>
  26. <stndagmtyn/>
  27. <compuappyn/>
  28. <rcogpnttm/>
  29. <endpnttm/>
  30. <cnfmpnttm/>
  31. <analypridcd/>
  32. <supkpicd/>
  33. <compuplanspec/>
  34. <usgecd/>
  35. <extrstatsreptnm/>
  36. <subjcd/>
  37. <rem/>
  38. <fstrgstrid/>
  39. <fstrgstdt/>
  40. <lastupdtrid/>
  41. <lastupdtdt/>
  42. <updtrtelno/>
  43. <rgstnm/>
  44. </newform>
  45. <divvar>
  46. <check/>
  47. <lastupdtrid/>
  48. <usernm/>
  49. <divvarcd/>
  50. <divvarnm/>
  51. <divvardefine/>
  52. <relcdnm/>
  53. <histstatcd/>
  54. <stndagmtyn/>
  55. <itemcnt/>
  56. <kpicnt/>
  57. <reportcnt/>
  58. </divvar>
  59. <rept>
  60. <checkyn/>
  61. <cretseq/>
  62. <statsreptcd/>
  63. <statsreptnm/>
  64. <statsspec/>
  65. <kpicd/>
  66. <lastupdtrid/>
  67. </rept>
  68. <bench>
  69. <mark01/>
  70. <mark02/>
  71. <mark03/>
  72. <mark04/>
  73. </bench>
  74. </main>
  75. <send>
  76. <kpicd/>
  77. <savedata>
  78. <newform/>
  79. </savedata>
  80. <data2>
  81. </data2>
  82. <onflag/>
  83. <sessuserid/>
  84. </send>
  85. <init>
  86. <usergrpcd/>
  87. <dutplceinstnm/>
  88. <usernm/>
  89. <dutplcenm/>
  90. <userid/>
  91. <S0001_list>
  92. <S0001>
  93. <cdid/>
  94. <cdnm/>
  95. </S0001>
  96. </S0001_list>
  97. <S0003_list>
  98. <S0003>
  99. <cdid/>
  100. <cdnm/>
  101. </S0003>
  102. </S0003_list>
  103. <S0004_list>
  104. <S0004>
  105. <cdid/>
  106. <cdnm/>
  107. </S0004>
  108. </S0004_list>
  109. <S0005_list>
  110. <S0005>
  111. <cdid/>
  112. <cdnm/>
  113. </S0005>
  114. </S0005_list>
  115. <S0006_list>
  116. <S0006>
  117. <cdid/>
  118. <cdnm/>
  119. </S0006>
  120. </S0006_list>
  121. <S0007_list>
  122. <S0007>
  123. <cdid/>
  124. <cdnm/>
  125. </S0007>
  126. </S0007_list>
  127. </init>
  128. <hidden>
  129. <session/>
  130. <prevdata/>
  131. <supkpinm/>
  132. <fwdata/>
  133. </hidden>
  134. <temp/>
  135. </root>
  136. </instance>
  137. <submission id="TRSMK00201" ref="root/send" method="post" mediatype="application/x-www-form-urlencoded" resultref="root/main"/>
  138. <submission id="TXSMK00203" ref="/root/send" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/temp"/>
  139. <submission id="TRZBC00101" method="post" mediatype="application/x-www-form-urlencoded" replace="instance"/>
  140. </model>
  141. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  142. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  143. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  144. <script type="javascript" src="../../../sts/stsmngtweb/js/sts.js"/>
  145. <script type="javascript" ev:event="xforms-ready">
  146. <![CDATA[
  147. var userGroup //사용자그룹 전역변수
  148. fGetUserSessionInfo(); //session 정보 세팅
  149. fUserBtnAuthCheck(); // 버튼에 대한 권한체크
  150. //콤보박스에 들어갈 공통코드 가져오기.
  151. zbcfGetCodeList(new Array("S0001", "S0003", "S0004", "S0005", "S0006", "S0007"), new Array("/root/init/S0001_list", "/root/init/S0003_list", "/root/init/S0004_list", "/root/init/S0005_list", "/root/init/S0006_list", "/root/init/S0007_list"));
  152. fNodeClearKpi(); //노드와 컨트롤을 초기화한다.
  153. fSetUserInfo() // 상단의 사용자 정보 세팅
  154. //신규버튼을 누르고 넘어온 화면(on) 인지, 상세조회로 온 화면(off)인지 구분하여 버튼권한처리
  155. if (model.getAttribute("iParam_new_on_off") == "on") {
  156. btn_save.disabled = false;
  157. btn_update.disabled = true;
  158. btn_delete.disabled = true;
  159. model.setvalue("/root/main/newform/compuappyn", "N");
  160. model.setvalue("/root/main/newform/stndagmtyn", "N");
  161. model.setvalue("/root/main/newform/histstatcd", "01");
  162. }else {
  163. btn_save.disabled = true;
  164. btn_update.disabled = false;
  165. model.setvalue("/root/send/kpicd", model.getValue("/root/hidden/prevdata/kpicd"));
  166. submit("TRSMK00201");
  167. }
  168. // alert(instance1.selectSingleNode("/root/main/newform/instcd") == null);
  169. // alert(instance1.selectSingleNode("/root/hidden/session/dutplceinstcd") == null);
  170. // alert(instance1.selectSingleNode("/root/main/newform/suggdeptcd") == null);
  171. // alert(instance1.selectSingleNode("/root/hidden/session/dutplcecd") == null);
  172. model.setValue("/root/main/newform/instcd", model.getValue("/root/hidden/session/dutplceinstcd")); //기관코드
  173. model.setValue("/root/main/newform/suggdeptcd", model.getValue("/root/hidden/session/dutplcecd")); //부서코드
  174. model.setValue("/root/init/usergrpcd", model.getValue("/root/hidden/prevdata/usergrpcd")); //사용자그룹
  175. model.refresh();
  176. ]]>
  177. </script>
  178. <script type="javascript">
  179. <![CDATA[
  180. var GridTab = "grd_divvar";
  181. //tab 세분변수 코드 중복체크
  182. function fDVCDDupCheck(){
  183. var rowcnt = grd_divvar.rows;
  184. var dv_back;
  185. var dv_divvarcd;
  186. for (i = 1; i <= rowcnt; i++){
  187. dv_back = model.getValue("/root/main/divvar["+ i +"]/divvarcd");
  188. for (j = 1; j <= rowcnt; j++){
  189. if (i != j){
  190. dv_divvarcd = model.getValue("/root/main/divvar["+ j +"]/divvarcd");
  191. if (dv_back == dv_divvarcd){
  192. alert("세분변수 코드가 중복됩니다! ");
  193. return false;
  194. }
  195. }
  196. }
  197. }
  198. }
  199. //빈값이 있는지 체크
  200. function fNullCheck() {
  201. if(model.getvalue("/root/main/newform/updtrtelno") =="") {
  202. alert("작성자 연락처를 입력하세요.");
  203. return false;
  204. }
  205. if(model.getvalue("/root/main/newform/kpinm") =="") {
  206. alert("KPI 명을 입력하세요.");
  207. return false;
  208. }
  209. if(model.getvalue("/root/main/newform/kpidefine") =="") {
  210. alert("KPI 정의를 입력하세요.");
  211. return false;
  212. }
  213. if(model.getvalue("/root/main/newform/subjcd") =="") {
  214. alert("subject 영역을 선택해 주세요.");
  215. return false;
  216. }
  217. }
  218. // 변경 가능한 상황인지 체크. (슈퍼관리자 2명은 제외 / 등록한 사람만 변경이 가능하다.)
  219. function fUpdateCheck() {
  220. if(userGroup != "S"){
  221. var rgst_userid = model.getValue("/root/main/newform/lastupdtrid");
  222. var sess_userid = model.getValue("/root/init/userid");
  223. if (rgst_userid != sess_userid){
  224. alert("등록한 사용자만 변경할 수 있습니다. ");
  225. return false;
  226. }
  227. } //관리자체크
  228. }
  229. // 삭제가 가능한 상황인지 체크
  230. function fDeleteCheck() {
  231. if( model.getValue("/root/main/newform/kpicd") == "" ||
  232. model.getValue("/root/main/newform/kpinm") == ""){
  233. alert("삭제할 내용이 없습니다.");
  234. return false;
  235. }
  236. }
  237. function fSetKeyValue() {
  238. for(var a = 1; a < grd_divvar.rows; a++){
  239. model.makeValue("/root/main/divvar[" + a + "]/kpicd", model.getvalue("/root/main/newform/kpicd"));
  240. }
  241. model.refresh();
  242. }
  243. ]]>
  244. </script>
  245. </xhtml:head>
  246. <xhtml:body guideline="1,1250;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  247. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  248. <caption id="caption20" class="tit_2" style="left:5px; top:9px; width:100px; height:14px; ">사용자정보</caption>
  249. <caption id="caption11" class="cell_1" style="left:0px; top:132px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI 정의</caption>
  250. <caption id="caption14" class="cell_1" style="left:0px; top:204px; width:130px; height:23px; text-align:center; vertical-align:middle; ">벤치마크</caption>
  251. <caption id="caption7" class="cell_1" style="left:0px; top:108px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI 명칭</caption>
  252. <input id="input7" ref="/root/main/newform/kpinm" class="input_essential" maxlength="25" style="left:132px; top:110px; width:465px; height:19px; "/>
  253. <input id="input13" ref="/root/main/newform/kpidefine" class="input_essential" maxlength="130" style="left:132px; top:134px; width:1060px; height:19px; "/>
  254. <caption id="caption3" class="cell_1" style="left:0px; top:228px; width:130px; height:23px; text-align:center; vertical-align:middle; ">임계치 상한</caption>
  255. <caption id="caption4" class="cell_1" style="left:0px; top:252px; width:130px; height:23px; text-align:center; vertical-align:middle; ">소스 시스템</caption>
  256. <input id="input1" ref="/root/main/newform/maxcriticstatnm" class="input_default" style="left:132px; top:230px; width:465px; height:19px; "/>
  257. <output id="output3" ref="/root/main/newform/kpicd" class="output_fix" appearance="output" style="left:732px; top:110px; width:165px; height:19px; "/>
  258. <caption id="caption5" class="cell_1" style="left:600px; top:228px; width:130px; height:23px; text-align:center; vertical-align:middle; ">임계치 하한</caption>
  259. <caption id="caption8" class="cell_1" style="left:300px; top:180px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI 유형</caption>
  260. <caption id="caption9" class="cell_1" style="left:900px; top:108px; width:130px; height:23px; text-align:center; vertical-align:middle; ">Subject 영역</caption>
  261. <select1 id="combo12" ref="/root/main/newform/kpitypcd" class="combo_default" appearance="minimal" style="left:432px; top:182px; width:165px; height:19px; ">
  262. <choices>
  263. <itemset nodeset="/root/init/S0004_list/S0004">
  264. <label ref="cdnm"/>
  265. <value ref="cdid"/>
  266. </itemset>
  267. </choices>
  268. </select1>
  269. <input id="input4" ref="/root/main/newform/kpirespspec" class="input_default" style="left:732px; top:207px; width:460px; height:19px; "/>
  270. <caption id="caption12" class="cell_1" style="left:0px; top:156px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI 산식</caption>
  271. <input id="input5" ref="/root/main/newform/kpicalcrule" class="input_default" style="left:132px; top:158px; width:1060px; height:19px; "/>
  272. <caption id="caption13" class="cell_1" style="left:0px; top:180px; width:130px; height:23px; text-align:center; vertical-align:middle; ">단 위</caption>
  273. <caption id="caption15" class="cell_1" style="left:600px; top:180px; width:130px; height:23px; text-align:center; vertical-align:middle; ">방 향 성</caption>
  274. <output id="opt_supkpinm" ref="/root/hidden/supkpinm" class="output_fix" appearance="output" style="left:732px; top:254px; width:460px; height:19px; "/>
  275. <caption id="caption16" class="cell_1" style="left:600px; top:204px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI 책임자</caption>
  276. <caption id="caption17" class="cell_1" style="left:0px; top:276px; width:130px; height:23px; text-align:center; vertical-align:middle; ">인식시점</caption>
  277. <input id="input6" ref="/root/main/newform/rcogpnttm" class="input_default" style="left:132px; top:278px; width:465px; height:19px; "/>
  278. <input id="input11" ref="/root/main/newform/endpnttm" class="input_default" style="left:732px; top:278px; width:165px; height:19px; "/>
  279. <caption id="caption18" class="cell_1" style="left:600px; top:276px; width:130px; height:23px; text-align:center; vertical-align:middle; ">마감시점</caption>
  280. <caption id="caption19" class="cell_1" style="left:900px; top:276px; width:130px; height:23px; text-align:center; vertical-align:middle; ">확정시점</caption>
  281. <caption id="caption21" class="cell_1" style="left:600px; top:252px; width:130px; height:23px; text-align:center; vertical-align:middle; ">상위 KPI 명</caption>
  282. <caption id="caption22" class="cell_1" style="left:600px; top:300px; width:130px; height:23px; text-align:center; vertical-align:middle; ">분석주기</caption>
  283. <input id="input12" ref="/root/main/newform/cnfmpnttm" class="input_default" style="left:1032px; top:278px; width:160px; height:19px; "/>
  284. <input id="input15" ref="/root/main/newform/mincriticstatnm" class="input_default" style="left:732px; top:230px; width:460px; height:19px; "/>
  285. <caption id="caption23" class="cell_1" style="left:600px; top:324px; width:130px; height:23px; text-align:center; vertical-align:middle; ">용 도</caption>
  286. <caption id="caption24" class="cell_1" style="left:0px; top:300px; width:130px; height:23px; text-align:center; vertical-align:middle; ">전산화 방안</caption>
  287. <caption id="caption25" class="cell_1" style="left:900px; top:324px; width:130px; height:23px; text-align:center; vertical-align:middle; ">전산 적용여부</caption>
  288. <caption id="caption26" class="cell_1" style="left:0px; top:324px; width:130px; height:23px; text-align:center; vertical-align:middle; ">추출통계 장표</caption>
  289. <input id="input19" ref="/root/main/newform/compuplanspec" class="input_default" style="left:132px; top:302px; width:465px; height:19px; "/>
  290. <input id="input20" ref="/root/main/newform/extrstatsreptnm" class="input_default" style="left:132px; top:326px; width:465px; height:19px; "/>
  291. <caption id="caption27" class="cell_1" style="left:900px; top:300px; width:130px; height:23px; text-align:center; vertical-align:middle; ">표준화 합의여부</caption>
  292. <select1 id="cbo_analypridcd" ref="/root/main/newform/analypridcd" class="combo_default" appearance="minimal" style="left:732px; top:302px; width:165px; height:19px; ">
  293. <choices>
  294. <itemset nodeset="/root/init/S0006_list/S0006">
  295. <label ref="cdnm"/>
  296. <value ref="cdid"/>
  297. </itemset>
  298. </choices>
  299. </select1>
  300. <select1 id="cbo_usgecd" ref="/root/main/newform/usgecd" class="combo_default" appearance="minimal" style="left:732px; top:326px; width:165px; height:19px; ">
  301. <choices>
  302. <itemset nodeset="/root/init/S0007_list/S0007">
  303. <label ref="cdnm"/>
  304. <value ref="cdid"/>
  305. </itemset>
  306. </choices>
  307. </select1>
  308. <select1 id="cbo_stndagmtyn" ref="/root/main/newform/stndagmtyn" class="combo_default" appearance="minimal" style="left:1032px; top:302px; width:160px; height:19px; ">
  309. <choices>
  310. <item>
  311. <label>Yes</label>
  312. <value>Y</value>
  313. </item>
  314. <item>
  315. <label>No</label>
  316. <value>N</value>
  317. </item>
  318. </choices>
  319. </select1>
  320. <caption id="caption28" class="cell_1" style="left:0px; top:348px; width:130px; height:23px; text-align:center; vertical-align:middle; ">비 고</caption>
  321. <input id="ipt_rem" ref="/root/main/newform/rem" class="input_default" style="left:132px; top:350px; width:1060px; height:19px; "/>
  322. <line id="line6" class="line_3" style="x1:0px; y1:371px; x2:1195px; y2:371px; "/>
  323. <line id="line2" class="line_1" style="x1:0px; y1:25px; x2:1195px; y2:25px; "/>
  324. <caption id="caption1" class="tit_2" style="left:5px; top:88px; width:100px; height:13px; ">개 요</caption>
  325. <caption id="caption29" class="cell_1" style="left:0px; top:30px; width:130px; height:23px; text-align:center; vertical-align:middle; ">기 관 명</caption>
  326. <caption id="caption30" class="cell_1" style="left:900px; top:30px; width:130px; height:23px; text-align:center; vertical-align:middle; ">등록자</caption>
  327. <line id="line1" class="line_1" style="x1:0px; y1:103px; x2:1195px; y2:103px; "/>
  328. <caption id="caption31" class="cell_1" style="left:300px; top:30px; width:130px; height:23px; text-align:center; vertical-align:middle; ">부 서 명</caption>
  329. <caption id="caption32" class="cell_1" style="left:0px; top:54px; width:130px; height:23px; text-align:center; vertical-align:middle; ">현재 사용자</caption>
  330. <caption id="caption33" class="cell_1" style="left:900px; top:54px; width:130px; height:23px; text-align:center; vertical-align:middle; ">등록자 연락처</caption>
  331. <line id="line3" class="line_3" style="x1:0px; y1:77px; x2:1195px; y2:77px; "/>
  332. <button id="button8" class="icon_search" style="left:580px; top:255px; width:16px; height:16px; ">
  333. <script type="javascript" ev:event="DOMActivate">
  334. <![CDATA[
  335. modal("SPSMK00400");
  336. // model.getAttribute("iParam_kpicd");
  337. opt_supkpicd.value = model.getAttribute("iParam_kpicd");
  338. opt_supkpinm.value = model.getAttribute("iParam_kpinm");
  339. model.refresh();
  340. ]]>
  341. </script>
  342. <caption/>
  343. </button>
  344. <select1 id="cbo_direct" ref="/root/main/newform/direcspec" class="combo_default" appearance="minimal" style="left:732px; top:182px; width:165px; height:19px; ">
  345. <choices>
  346. <item>
  347. <label>+</label>
  348. <value>+</value>
  349. </item>
  350. <item>
  351. <label>-</label>
  352. <value>-</value>
  353. </item>
  354. <item>
  355. <label>0</label>
  356. <value>0</value>
  357. </item>
  358. </choices>
  359. </select1>
  360. <output id="output6" ref="/root/main/newform/compuappyn" class="output_fix" appearance="output" style="left:1032px; top:326px; width:70px; height:19px; "/>
  361. <select1 id="cbo_kpiunitcd" ref="/root/main/newform/kpiunitcd" class="combo_default" appearance="minimal" style="left:132px; top:182px; width:132px; height:19px; ">
  362. <choices>
  363. <itemset nodeset="/root/init/S0003_list/S0003">
  364. <label ref="cdnm"/>
  365. <value ref="cdid"/>
  366. </itemset>
  367. </choices>
  368. </select1>
  369. <button id="btn_tab_rept" class="btn_sw" group="tab" style="left:90px; top:376px; width:84px; height:22px; ">
  370. <caption>Report</caption>
  371. <toggle case="Report" ev:event="onclick"/>
  372. <script type="javascript" ev:event="DOMActivate">
  373. <![CDATA[
  374. GridTab = "grd_report";
  375. btn_add.visible = false;
  376. btn_delete_row.visible = false;
  377. ]]>
  378. </script>
  379. </button>
  380. <button id="btn_tab_dvar" class="btn_sw" group="tab" selected="true" style="left:5px; top:376px; width:84px; height:22px; ">
  381. <caption>세분변수</caption>
  382. <toggle case="case1" ev:event="onclick"/>
  383. <script type="javascript" ev:event="DOMActivate">
  384. <![CDATA[
  385. GridTab = "grd_divvar";
  386. btn_add.visible = true;
  387. btn_delete_row.visible = true;
  388. ]]>
  389. </script>
  390. </button>
  391. <switch id="switch1" style="left:5px; top:398px; width:1185px; height:337px; border-color:#c7a3cf; border-style:solid; ">
  392. <case id="case1" selected="true">
  393. <datagrid id="grd_divvar" nodeset="/root/main/divvar" caption="^la^작성자^code^세분변수명^정 의^관련코드명^상태^표준화^항목 내용^KPI^Report" colwidth="29, 30, 60, 60, 130, 370, 90, 40, 60, 450, 55, 60" ellipsis="true" explorerbar="sort" mergecellsfixedrows="bycolrec" rowsep="|" colsep="^" tooltip="true" style="left:5px; top:29px; width:1175px; height:300px; ">
  394. <col ref="check" type="checkbox"/>
  395. <col ref="lastupdtrid" visibility="hidden"/>
  396. <col ref="usernm" visibility="hidden" style="text-align:center; "/>
  397. <col ref="divvarcd" visibility="hidden"/>
  398. <col ref="divvarnm"/>
  399. <col ref="divvardefine"/>
  400. <col ref="relcdnm"/>
  401. <col ref="histstatcd" visibility="hidden"/>
  402. <col ref="stndagmtyn" visibility="visible" style="text-align:center; "/>
  403. <col ref="itemcnt" visibility="visible"/>
  404. <col ref="kpicnt" visibility="hidden"/>
  405. <col ref="reportcnt" visibility="hidden"/>
  406. <script type="javascript" ev:event="ondblclick">
  407. <![CDATA[
  408. if( grd_divvar.isCell(event.target) && grd_divvar.row >= grd_divvar.fixedRows ){
  409. var cur_row = grd_divvar.row;
  410. model.makeValue("/root/hidden/fwdata/divvarcd", model.getvalue("/root/main/divvar["+cur_row+"]/divvarcd") );
  411. model.makeValue("/root/hidden/fwdata/divvarnm", model.getvalue("/root/main/divvar["+cur_row+"]/divvarnm") );
  412. model.makeValue("/root/hidden/fwdata/divvardefine", model.getvalue("/root/main/divvar["+cur_row+"]/divvardefine") );
  413. window.load ("SPSMV00300_세분변수항목조회.xrw","new", "", "", "/root/hidden/fwdata", "/root/hidden/prevdata");
  414. }
  415. ]]>
  416. </script>
  417. </datagrid>
  418. </case>
  419. <case id="Report">
  420. <datagrid id="grd_report" nodeset="/root/main/rept" caption="^생성순번^Report Code^통계 Report 명^통계 Report 설명 내역" colwidth="30, 60, 90, 210, 780" ellipsis="true" explorerbar="sort" mergecellsfixedrows="bycolrec" rowsep="|" colsep="^" tooltip="true" style="left:5px; top:29px; width:1175px; height:300px; ">
  421. <col ref="checkyn" type="checkbox"/>
  422. <col ref="cretseq" style="text-align:right; "/>
  423. <col ref="statsreptcd"/>
  424. <col ref="statsreptnm"/>
  425. <col ref="statsspec"/>
  426. </datagrid>
  427. </case>
  428. </switch>
  429. <button id="btn_delete_row" class="btn2_letter3" style="left:1132px; top:406px; width:53px; height:19px; ">
  430. <caption>행삭제</caption>
  431. <script type="javascript" ev:event="DOMActivate">
  432. <![CDATA[
  433. var sessionuserid = model.getValue("/root/hidden/session/userid");
  434. var cur_row;
  435. // 관리자를 제외하고는 등록한 사람만이 삭제할 수 있다.
  436. if (userGroup == "S"){
  437. if(GridTab == "grd_divvar"){
  438. cur_row = grd_divvar.row;
  439. var dv_lastupdtrid = model.getValue("/root/main/divvar["+cur_row+"]/lastupdtrid");
  440. if (sessionuserid != dv_lastupdtrid){
  441. alert("최종수정자와 로그인한 사용자가 다르므로 삭제할 수 없습니다!");
  442. return;
  443. }
  444. grd_divvar.deleteitem(cur_row);
  445. }
  446. } //관리자 체크로직 끝
  447. ]]>
  448. </script>
  449. </button>
  450. <button id="btn_add" class="btn2_letter4" style="left:1066px; top:406px; width:64px; height:19px; ">
  451. <caption>항목추가</caption>
  452. <script type="javascript" ev:event="xforms-activate">
  453. <![CDATA[
  454. if(GridTab == "grd_divvar"){
  455. modal("SPSMV00500");
  456. model.refresh();
  457. }
  458. ]]>
  459. </script>
  460. </button>
  461. <select id="checkbox1" ref="/root/main/bench/mark01" overflow="visible" appearance="full" style="left:132px; top:208px; width:45px; height:20px; border-style:none; ">
  462. <choices>
  463. <item>
  464. <label>목표</label>
  465. <value>01</value>
  466. </item>
  467. </choices>
  468. </select>
  469. <select id="checkbox2" ref="/root/main/bench/mark02" overflow="visible" appearance="full" style="left:182px; top:208px; width:45px; height:20px; border-style:none; ">
  470. <choices>
  471. <item>
  472. <label>전년</label>
  473. <value>02</value>
  474. </item>
  475. </choices>
  476. </select>
  477. <select id="checkbox3" ref="/root/main/bench/mark03" overflow="visible" appearance="full" style="left:232px; top:208px; width:45px; height:20px; border-style:none; ">
  478. <choices>
  479. <item>
  480. <label>전기</label>
  481. <value>03</value>
  482. </item>
  483. </choices>
  484. </select>
  485. <select id="checkbox4" ref="/root/main/bench/mark04" overflow="visible" appearance="full" style="left:282px; top:208px; width:45px; height:20px; border-style:none; ">
  486. <choices>
  487. <item>
  488. <label>전월</label>
  489. <value>04</value>
  490. </item>
  491. </choices>
  492. </select>
  493. <select1 id="combo1" ref="/root/main/newform/srcsyscd" class="combo_default" appearance="minimal" style="left:132px; top:254px; width:165px; height:19px; ">
  494. <choices>
  495. <itemset nodeset="/root/init/S0005_list/S0005">
  496. <label ref="cdnm"/>
  497. <value ref="cdid"/>
  498. </itemset>
  499. </choices>
  500. </select1>
  501. <output id="opt_supkpicd" ref="/root/main/newform/supkpicd" class="output_fix" appearance="output" style="left:432px; top:254px; width:140px; height:19px; "/>
  502. <output id="opt_deptnm" ref="/root/init/dutplcenm" class="output_default" style="left:432px; top:32px; width:115px; height:19px; text-align:left; "/>
  503. <output id="opt_instnm" ref="/root/init/dutplceinstnm" class="output_default" style="left:132px; top:32px; width:165px; height:19px; text-align:left; "/>
  504. <input id="ipt_fstrgstdt" ref="/root/main/newform/updtrtelno" class="input_essential" style="left:1032px; top:56px; width:160px; height:19px; text-align:left; "/>
  505. <output id="opt_userid" ref="/root/init/userid" visibility="hidden" style="left:133px; top:81px; width:90px; height:19px; text-align:left; "/>
  506. <output id="opt_clsdeptnm" ref="/root/main/newform/clsdeptnm" class="output_fix" appearance="output" style="left:732px; top:32px; width:165px; height:19px; text-align:left; "/>
  507. <output id="opt_deptcd" ref="/root/main/newform/suggdeptcd" style="left:553px; top:32px; width:45px; height:19px; "/>
  508. <output id="opt_instcd" ref="/root/main/newform/instcd" visibility="hidden" style="left:133px; top:4px; width:90px; height:19px; "/>
  509. <output id="opt_usernm" ref="/root/init/usernm" class="output_default" style="left:133px; top:55px; width:165px; height:19px; text-align:left; "/>
  510. <select1 id="cmb_subjcd" ref="/root/main/newform/subjcd" class="combo_essential" appearance="minimal" style="left:1032px; top:110px; width:160px; height:19px; ">
  511. <choices>
  512. <item>
  513. <label>환자수-외래</label>
  514. <value>S00008</value>
  515. </item>
  516. <item>
  517. <label>환자수-입원</label>
  518. <value>S00009</value>
  519. </item>
  520. <item>
  521. <label>환자수-응급</label>
  522. <value>S00010</value>
  523. </item>
  524. <item>
  525. <label>환자수-공통</label>
  526. <value>S00011</value>
  527. </item>
  528. <item>
  529. <label>건수-실적</label>
  530. <value>S00012</value>
  531. </item>
  532. <item>
  533. <label>건수-지표</label>
  534. <value>S00013</value>
  535. </item>
  536. <item>
  537. <label>건수-오류</label>
  538. <value>S00014</value>
  539. </item>
  540. <item>
  541. <label>건수-진료</label>
  542. <value>S00015</value>
  543. </item>
  544. <item>
  545. <label>건수-간호</label>
  546. <value>S00016</value>
  547. </item>
  548. <item>
  549. <label>건수-민원</label>
  550. <value>S00017</value>
  551. </item>
  552. <item>
  553. <label>수익-수익</label>
  554. <value>S00018</value>
  555. </item>
  556. <item>
  557. <label>수익-비용</label>
  558. <value>S00019</value>
  559. </item>
  560. <item>
  561. <label>수익-미수</label>
  562. <value>S00020</value>
  563. </item>
  564. <item>
  565. <label>시간-대기</label>
  566. <value>S00021</value>
  567. </item>
  568. <item>
  569. <label>시간-소요</label>
  570. <value>S00022</value>
  571. </item>
  572. <item>
  573. <label>시간-체류</label>
  574. <value>S00023</value>
  575. </item>
  576. <item>
  577. <label>공간-공간</label>
  578. <value>S00024</value>
  579. </item>
  580. <item>
  581. <label>교직원-교직원</label>
  582. <value>S00025</value>
  583. </item>
  584. <item>
  585. <label>청구-청구</label>
  586. <value>S00026</value>
  587. </item>
  588. </choices>
  589. </select1>
  590. <caption id="caption2" class="cell_1" style="left:600px; top:108px; width:130px; height:23px; text-align:center; vertical-align:middle; ">KPI Code</caption>
  591. <output id="output1" ref="/root/main/newform/lastupdtdt" class="output_default" format="yyyy-mm-dd hh:nn" style="left:732px; top:55px; width:165px; height:19px; text-align:left; "/>
  592. <caption id="caption35" class="cell_1" style="left:300px; top:252px; width:130px; height:23px; text-align:center; vertical-align:middle; ">상위 KPI코드</caption>
  593. <caption id="caption10" class="cell_1" style="left:900px; top:180px; width:130px; height:23px; text-align:center; vertical-align:middle; ">현재 상태</caption>
  594. <select1 id="cbo_statecd" ref="/root/main/newform/histstatcd" disabled="true" appearance="minimal" style="left:1032px; top:182px; width:160px; height:19px; ">
  595. <choices>
  596. <itemset nodeset="/root/init/S0001_list/S0001">
  597. <label ref="cdnm"/>
  598. <value ref="cdid"/>
  599. </itemset>
  600. </choices>
  601. </select1>
  602. <caption id="caption37" class="tit_2" style="left:10px; top:410px; width:100px; height:13px; ">관련 List</caption>
  603. <caption id="caption38" class="cell_1" style="left:600px; top:30px; width:130px; height:23px; text-align:center; vertical-align:middle; ">분 과</caption>
  604. <caption id="caption39" class="cell_1" style="left:600px; top:54px; width:130px; height:23px; text-align:center; vertical-align:middle; ">최종 등록시간</caption>
  605. <output id="output2" ref="/root/main/newform/rgstnm" class="output_default" style="left:1032px; top:32px; width:160px; height:19px; text-align:left; "/>
  606. <output id="output4" ref="/root/init/userid" visibility="hidden" style="left:1033px; top:4px; width:90px; height:19px; text-align:left; "/>
  607. <caption id="caption36" class="tit_2" style="left:610px; top:9px; width:100px; height:13px; ">등록자정보</caption>
  608. <caption id="caption40" class="cell_1" style="left:300px; top:54px; width:130px; height:23px; text-align:center; vertical-align:middle; ">사용자 그룹</caption>
  609. <select1 id="cbo_group" ref="/root/init/usergrpcd" disabled="true" appearance="minimal" style="left:432px; top:56px; width:162px; height:19px; ">
  610. <choices>
  611. <item>
  612. <label>관리자</label>
  613. <value>S</value>
  614. </item>
  615. <item>
  616. <label>ITC담당자</label>
  617. <value>T</value>
  618. </item>
  619. <item>
  620. <label>개발자</label>
  621. <value>D</value>
  622. </item>
  623. <item>
  624. <label>일반사용자</label>
  625. <value>R</value>
  626. </item>
  627. </choices>
  628. </select1>
  629. </group>
  630. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">KPI 정의</caption>
  631. <line id="line5" class="line_3" style="x1:230px; y1:774px; x2:1194px; y2:774px; "/>
  632. <group id="grp_btn" style="left:0px; top:13px; width:1195px; height:27px; ">
  633. <button id="btn_save" class="btn4_letter4" style="left:1032px; top:3px; width:80px; height:22px; ">
  634. <caption>신규저장</caption>
  635. <script type="javascript" ev:event="DOMActivate">
  636. <![CDATA[
  637. if (fDVCDDupCheck() == false) return;
  638. if (fNullCheck() == false) return; //빈값이 있는지 체크
  639. var rtn = window.alert("KPI를 저장하시겠습니까?", "선택", "4");
  640. if (rtn != 6) {
  641. return;
  642. }
  643. model.setValue("/root/send/onflag","N"); //신규저장
  644. model.setValue("/root/send/sessuserid",model.getValue("/root/hidden/session/userid"));
  645. model.copyNode("/root/send/savedata/newform", "/root/main/newform");
  646. model.setValue("/root/send/data2", grd_divvar.getUpdateData());
  647. var rslt = submit("TXSMK00203");
  648. if (rslt) {
  649. model.alert("성공적으로 저장되었습니다.");
  650. navigate("SMSMK00100");
  651. }else{
  652. model.alert("KPI 신규저장에 실패하였습니다.");
  653. }
  654. ]]>
  655. </script>
  656. </button>
  657. <line id="line14" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  658. <button id="btn_update" class="btn4_letter4" style="left:1113px; top:3px; width:80px; height:22px; ">
  659. <caption>변경요청</caption>
  660. <script type="javascript" ev:event="DOMActivate">
  661. <![CDATA[
  662. var rtn = window.alert("내역을 변경 또는 변경요청 하시겠습니까?", "선택", "4");
  663. if (rtn != 6) {
  664. return;
  665. }
  666. if (fDVCDDupCheck() == false) return; //TAB의 세분변수 등록시 중복체크
  667. if (fNullCheck() == false) return; //필수입력사항 중에 빈값이 있는지 체크
  668. if (fUpdateCheck() == false) return; //변경할 권한이 있는지 체크 (등록한 사람만 가능)
  669. model.setValue("/root/send/onflag","O"); //변경저장 플래그
  670. model.setValue("/root/send/sessuserid",model.getValue("/root/hidden/session/userid")); //로그인한 사번
  671. model.copyNode("/root/send/savedata/newform", "/root/main/newform");
  672. model.setValue("/root/send/data2", grd_divvar.getUpdateData());
  673. var rslt;
  674. // 관리자이냐 아니냐에 따로 저장방식이 다름.
  675. if(userGroup == "S"){
  676. rslt = submit("TXSMK00203"); //관리자일때는 해당값을 바로 수정한다.
  677. if (rslt) {
  678. model.alert("수정되었습니다. (관리자)");
  679. navigate("SMSMK00100");
  680. }else{
  681. model.alert("수정에 실패");
  682. }
  683. } else { // 관리자가 아닐때...
  684. if(model.getvalue("/root/main/newform/histstatcd") == "01") {
  685. rslt = submit("TXSMK00203"); //신규요청 상태일때는 바로 데이타를 저장할 수 있다.
  686. if (rslt) {
  687. model.alert("KPI가 수정되었습니다.");
  688. navigate("SMSMK00100");
  689. }else{
  690. model.alert("KPI 수정 실패");
  691. }
  692. } else { //신규요청 상태가 아닐 경우는.... 변경요청 팝업을 띄운다.
  693. model.property("iParam_itemflag") = "K";
  694. model.property("iParam_code") = model.getvalue("/root/main/newform/kpicd");
  695. model.property("iParam_desc") = model.getvalue("/root/main/newform/kpidefine");
  696. model.property("iParam_name") = model.getvalue("/root/main/newform/kpinm");
  697. model.property("iParam_instcd") = model.getvalue("/root/main/newform/instcd");
  698. model.property("iParam_deptcd") = model.getvalue("/root/main/newform/suggdeptcd");
  699. model.property("iParam_userid") = model.getvalue("/root/init/userid");
  700. model.property("iParam_usernm") = model.getvalue("/root/init/usernm");
  701. modal("SPSOC00401"); //아닐때는 변경요청 팝업을 띄우다.
  702. model.refresh();
  703. }
  704. } //관리자여부 체크 끝
  705. ]]>
  706. </script>
  707. </button>
  708. <button id="btn_delete" class="btn4_letter2" style="left:975px; top:3px; width:56px; height:22px; ">
  709. <caption>삭제</caption>
  710. <script type="javascript" ev:event="DOMActivate">
  711. <![CDATA[
  712. if (fDeleteCheck() == false) return; //삭제할수 있는 상황 체크
  713. // 일괄삭제기능.... 관리자만이 버튼이 보이고, 처리할수 있다. (2007.03.27)
  714. var rtn = window.alert("해당 KPI를 삭제하시겠습니까?", "선택", "4");
  715. if (rtn != 6) {
  716. return;
  717. }
  718. model.setValue("/root/send/onflag","D"); //삭제플래그
  719. model.copyNode("/root/send/savedata/newform", "/root/main/newform");
  720. model.setValue("/root/send/data2", grd_divvar.getUpdateData());
  721. var rslt = submit("TXSMK00203");
  722. if (rslt) {
  723. model.alert("성공적으로 삭제되었습니다.");
  724. navigate("SMSMK00100");
  725. }else{
  726. model.alert("KPI 삭제에 실패하였습니다.");
  727. }
  728. model.refresh();
  729. ]]>
  730. </script>
  731. </button>
  732. </group>
  733. <button id="btn_prev" class="btn3_letter2" style="left:0px; top:16px; width:56px; height:22px; ">
  734. <caption>이전</caption>
  735. <script type="javascript" ev:event="DOMActivate">
  736. <![CDATA[
  737. navigate("SMSMK00100");
  738. ]]>
  739. </script>
  740. </button>
  741. <caption id="caption34" style="left:973px; top:0px; width:217px; height:13px; vertical-align:middle; ">[ * 시스템 문의 : 박종택 (02-590-7891)]</caption>
  742. </xhtml:body>
  743. </xhtml:html>