SPZTP00800_프로젝트진척관리순위팝업.xrw 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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. <ranklist>
  11. <list>
  12. <rank>
  13. <reprdept/>
  14. <dept/>
  15. <total/>
  16. <devend/>
  17. <scrnveri/>
  18. <scrnrate/>
  19. <test/>
  20. <testrate/>
  21. <insuend/>
  22. <insurate/>
  23. </rank>
  24. </list>
  25. </ranklist>
  26. </main>
  27. <send>
  28. <search>
  29. <reprdept/>
  30. <insuimp/>
  31. <appdd/>
  32. </search>
  33. </send>
  34. <target/>
  35. <init>
  36. <insuimp>
  37. <item>
  38. <name>전체</name>
  39. <id>-</id>
  40. </item>
  41. <item>
  42. <name>A</name>
  43. <id>A</id>
  44. </item>
  45. <item>
  46. <name>B</name>
  47. <id>B</id>
  48. </item>
  49. <item>
  50. <name>C</name>
  51. <id>C</id>
  52. </item>
  53. <item>
  54. <name>미기입</name>
  55. <id>
  56. </id>
  57. </item>
  58. </insuimp>
  59. <reprdept>
  60. <item>
  61. <name>전체</name>
  62. <id>-</id>
  63. </item>
  64. <item>
  65. <name>진료/의료협력</name>
  66. <id>진료/의료협력</id>
  67. </item>
  68. <item>
  69. <name>보험</name>
  70. <id>보험</id>
  71. </item>
  72. <item>
  73. <name>의료정보</name>
  74. <id>의료정보</id>
  75. </item>
  76. <item>
  77. <name>진단검사외</name>
  78. <id>진단검사외</id>
  79. </item>
  80. <item>
  81. <name>영상외</name>
  82. <id>영상외</id>
  83. </item>
  84. <item>
  85. <name>외래간호외</name>
  86. <id>외래간호외</id>
  87. </item>
  88. <item>
  89. <name>입원간호외</name>
  90. <id>입원간호외</id>
  91. </item>
  92. <item>
  93. <name>응급의료</name>
  94. <id>응급의료</id>
  95. </item>
  96. <item>
  97. <name>약제</name>
  98. <id>약제</id>
  99. </item>
  100. <item>
  101. <name>건진</name>
  102. <id>건진</id>
  103. </item>
  104. <item>
  105. <name>원무/수납</name>
  106. <id>원무/수납</id>
  107. </item>
  108. <item>
  109. <name>MIS</name>
  110. <id>MIS</id>
  111. </item>
  112. <item>
  113. <name>총무</name>
  114. <id>총무</id>
  115. </item>
  116. <item>
  117. <name>QI</name>
  118. <id>QI</id>
  119. </item>
  120. <item>
  121. <name>원목외</name>
  122. <id>원목외</id>
  123. </item>
  124. <item>
  125. <name>부서전체</name>
  126. <id>d</id>
  127. </item>
  128. </reprdept>
  129. </init>
  130. <temp>
  131. <combo>
  132. <appdd/>
  133. <value/>
  134. </combo>
  135. </temp>
  136. </root>
  137. </instance>
  138. <script type="javascript">
  139. <![CDATA[
  140. function addComboItem( comboID, label, value, position ) {
  141. var comboObj = document.all.item(comboID);
  142. // Combo ItemSet 정보
  143. var comboItemNodeSet = comboObj.choices.itemset.attribute("nodeset");
  144. var comboLabelRef = comboObj.choices.itemset.label.attribute("ref");
  145. var comboValueRef = comboObj.choices.itemset.value.attribute("ref");
  146. var nodeNn = instance1.selectSingleNode(comboItemNodeSet);
  147. if (nodeNn == null) {
  148. model.makeNode(comboItemNodeSet);
  149. model.makeNode(comboItemNodeSet+"/"+comboLabelRef);
  150. model.makeNode(comboItemNodeSet+"/"+comboValueRef);
  151. position = "init";
  152. }
  153. // Item 노드 생성
  154. var itemNode = instance1.createNode("element", instance1.selectSingleNode(comboItemNodeSet).nodeName, "");
  155. var labelNode = instance1.createNode("element", comboLabelRef, "");
  156. var valueNode = instance1.createNode("element", comboValueRef, "");
  157. if( label == null || label == "" ) label = "- 전 체 -";
  158. labelNode.value = label;
  159. itemNode.appendChild(labelNode);
  160. if( value == null || value == "" ) value = "";
  161. valueNode.value = value;
  162. itemNode.appendChild(valueNode);
  163. if( position == null || position == "" )
  164. position = "above";
  165. var destNode = instance1.selectSingleNode(comboItemNodeSet);
  166. var pDestNode = destNode.parentNode;
  167. if( position == "above" ) {
  168. pDestNode.insertBefore(itemNode, destNode);
  169. } else if ( position == "init" ) {
  170. pDestNode.insertBefore(itemNode, destNode);
  171. pDestNode.removeChild(destNode);
  172. }
  173. else {
  174. pDestNode.appendChild(itemNode);
  175. }
  176. comboObj.refresh();
  177. }
  178. function fbtnSearch()
  179. {
  180. submit("TRZTP00801");
  181. grd_ranklist.subtotalposition= "below"
  182. var cur_row = grd_ranklist.rows;
  183. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("total"),"", "", 1, "Total");
  184. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("scrnveri"),"", "", 1, "Total");
  185. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("devend"),"", "", 1, "Total");
  186. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("test"),"", "", 1, "Total");
  187. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("insuend"),"", "", 1, "Total");
  188. grd_ranklist.valuematrix( cur_row, 6) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 5)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  189. grd_ranklist.valuematrix( cur_row, 8) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 7)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  190. grd_ranklist.valuematrix( cur_row, 10) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 9)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  191. for(var i=3; i<11; i++)
  192. {
  193. grd_ranklist.colstyle(i,"data","text-align") = "right";
  194. }
  195. }
  196. ]]>
  197. </script>
  198. <script type="javascript" ev:event="xforms-ready">
  199. <![CDATA[
  200. var gridObj = document.all("grd_ranklist");
  201. gridObj.cellStyle("background-image", 0, 5) = "";
  202. gridObj.cellStyle("background-color", 0, 5) = "#6FCC98";
  203. gridObj.cellStyle("background-image", 0, 6) = "";
  204. gridObj.cellStyle("background-color", 0, 6) = "#6FCC98";
  205. gridObj.cellStyle("background-image", 0, 9) = "";
  206. gridObj.cellStyle("background-color", 0, 9) = "#6FCC98";
  207. gridObj.cellStyle("background-image", 0, 10) = "";
  208. gridObj.cellStyle("background-color", 0, 10) = "#6FCC98";
  209. fbtnSearch();
  210. submit("TRZTP00802");
  211. addComboItem("combo3","전체");
  212. model.setValue("/root/temp/combo[1]/value","-");
  213. combo1.select(0);
  214. combo2.select(1);
  215. combo3.select(0);
  216. ]]>
  217. </script>
  218. <submission id="TRZTP00801" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/search" resultref="/root/main/ranklist/list"/>
  219. <submission id="TRZTP00802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/temp/combo/appdd" resultref="/root/temp"/>
  220. </model>
  221. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  222. <script type="javascript" src="../../commonweb/js/tfHelper.js"/>
  223. </xhtml:head>
  224. <xhtml:body pagewidth="700" pageheight="500">
  225. <group id="group6" style="left:5px; top:20px; width:684px; height:35px; vertical-align:top; ">
  226. <shape id="roundrect3" class="roundrect_search" appearance="roundrect" style="left:0px; top:0px; width:684px; height:34px; "/>
  227. <caption id="caption9" class="search_name" style="left:5px; top:10px; width:86px; height:17px; ">소위원회</caption>
  228. <button id="button5" class="btn1_letter2" style="left:620px; top:10px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  229. <caption>조회</caption>
  230. <script type="javascript" ev:event="DOMActivate">
  231. <![CDATA[
  232. var reprdept = model.getValue("/root/send/search/reprdept");
  233. fbtnSearch();
  234. for(var i=3; i<11; i++)
  235. {
  236. grd_ranklist.colstyle(i,"data","text-align") = "right";
  237. }
  238. if(reprdept == "-")
  239. {
  240. }
  241. /*else if(reprdept != "d")
  242. {
  243. for(var i=1; i<grd_ranklist.rows-1; i++){
  244. grd_ranklist.textmatrix(i,1) = reprdept;
  245. }
  246. }*/
  247. ]]>
  248. </script>
  249. </button>
  250. <select1 id="combo1" ref="/root/send/search/reprdept" class="combo_search" appearance="minimal" style="left:90px; top:10px; width:100px; height:19px; ">
  251. <choices>
  252. <itemset nodeset="/root/init/reprdept/item">
  253. <label ref="name"/>
  254. <value ref="id"/>
  255. </itemset>
  256. </choices>
  257. </select1>
  258. <select1 id="combo2" ref="/root/send/search/insuimp" class="combo_search" appearance="minimal" style="left:265px; top:10px; width:50px; height:19px; ">
  259. <choices>
  260. <itemset nodeset="/root/init/insuimp/item">
  261. <label ref="name"/>
  262. <value ref="id"/>
  263. </itemset>
  264. </choices>
  265. </select1>
  266. <caption id="caption1" class="search_name" style="left:195px; top:10px; width:86px; height:17px; ">중요도</caption>
  267. <button id="button3" class="btn2_letter4" disable.background-image="../../../com/commonweb/images/dis_btn2_letter4.gif" style="left:525px; top:10px; width:64px; height:19px; background-image:../../../com/commonweb/images/btn2_letter4.gif; ">
  268. <caption>엑셀저장</caption>
  269. <script type="javascript" ev:event="DOMActivate">
  270. <![CDATA[
  271. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  272. if (fileName != "")
  273. {
  274. grd_ranklist.saveExcel(fileName);
  275. }
  276. ]]>
  277. </script>
  278. </button>
  279. <caption id="caption2" class="search_name" style="left:330px; top:10px; width:92px; height:17px; ">기준적용일</caption>
  280. <select1 id="combo3" ref="/root/send/search/appdd" class="combo_search" appearance="minimal" style="left:420px; top:10px; width:100px; height:19px; ">
  281. <choices>
  282. <itemset nodeset="/root/temp/combo">
  283. <label ref="appdd"/>
  284. <value ref="value"/>
  285. </itemset>
  286. </choices>
  287. </select1>
  288. </group>
  289. <caption id="caption6" class="tit_1" style="left:0px; top:5px; width:110px; height:13px; ">진척률 순위</caption>
  290. <datagrid id="grd_ranklist" nodeset="/root/main/ranklist/list/rank" caption="소위원회^해당부서^총대상건수^개발완료건수^화면검증^비율^테스트^비율^공정TFT완료^비율" colsep="^" colwidth="85, 79, 68, 80, 70, 40, 70, 40, 75, 50" dataheight="25" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="25" rowsep="|" style="left:5px; top:55px; width:690px; height:435px; ">
  291. <col ref="reprdept"/>
  292. <col ref="dept"/>
  293. <col ref="total"/>
  294. <col ref="devend"/>
  295. <col ref="scrnveri"/>
  296. <col ref="scrnrate" format="###%"/>
  297. <col ref="test"/>
  298. <col ref="testrate" format="###%"/>
  299. <col ref="insuend"/>
  300. <col ref="insurate" format="###%"/>
  301. <script type="javascript" ev:event="onbeforesort">
  302. <![CDATA[
  303. grd_ranklist.deleteRow(grd_ranklist.rows-1);
  304. ]]>
  305. </script>
  306. <script type="javascript" ev:event="onaftersort">
  307. <![CDATA[
  308. grd_ranklist.subtotalposition= "below"
  309. var cur_row = grd_ranklist.rows;
  310. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("total"),"", "", 1, "Total");
  311. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("scrnveri"),"", "", 1, "Total");
  312. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("devend"),"", "", 1, "Total");
  313. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("test"),"", "", 1, "Total");
  314. grd_ranklist.subtotal("sum", -1, grd_ranklist.colRef("insuend"),"", "", 1, "Total");
  315. grd_ranklist.valuematrix( cur_row, 6) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 5)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  316. grd_ranklist.valuematrix( cur_row, 8) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 7)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  317. grd_ranklist.valuematrix( cur_row, 10) = parseInt(parseInt(grd_ranklist.textmatrix(cur_row, 9)) / parseInt(grd_ranklist.textmatrix(cur_row, 4))*100) + "%";
  318. for(var i=3; i<11; i++)
  319. {
  320. grd_ranklist.colstyle(i,"data","text-align") = "right";
  321. }
  322. ]]>
  323. </script>
  324. </datagrid>
  325. </xhtml:body>
  326. </xhtml:html>