SPMMI00300_세로누적결과조회.xrw 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SPLLP90100_세로누적결과조회.xrw
  4. * 설 명 : 환자의 특정 검사에 대한 검사 결과 내역을 세로형으로 보여준다.
  5. * 설 계 자 :
  6. * 작 성 자 : 김은지
  7. * 작 성 일 : 2008.06.25
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title>누적결과조회</xhtml:title>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root xmlns="">
  18. <main>
  19. <acmlrslt>
  20. <result/>
  21. <prcpdt/>
  22. <testdt/>
  23. <rsltunit/>
  24. <refh/>
  25. <refl/>
  26. <reflh/>
  27. <judgmark/>
  28. <orddrnm/>
  29. </acmlrslt>
  30. </main>
  31. <send>
  32. <pid/>
  33. <testcd/>
  34. <flag/>
  35. <listflag/>
  36. <startdd/>
  37. <enddd/>
  38. </send>
  39. <hidden>
  40. <acmlrslt>
  41. <flag/>
  42. <listflag/>
  43. <startdd/>
  44. <enddd/>
  45. </acmlrslt>
  46. </hidden>
  47. <init>
  48. <baseinfo>
  49. <hngnm/>
  50. <sex/>
  51. <age/>
  52. <pid/>
  53. <testcd/>
  54. <rrgstno/>
  55. <tclsnm/>
  56. <startdd/>
  57. <enddd/>
  58. </baseinfo>
  59. </init>
  60. <popupmenu>
  61. <grid03>
  62. <item>
  63. <name>복사하기</name>
  64. <func>astgrid_liscopy</func>
  65. </item>
  66. </grid03>
  67. </popupmenu>
  68. </root>
  69. </instance>
  70. <script type="javascript" ev:event="xforms-ready">
  71. <![CDATA[
  72. //--------------임시로 넣은 세팅(메인화면에서 넘겨받을 값들)-----------------
  73. /*
  74. model.setValue("/root/init/baseinfo/pid", "19732070"); //등록번호
  75. model.setValue("/root/init/baseinfo/hngnm", "유미"); //이름
  76. model.setValue("/root/init/baseinfo/sex", "여"); //성별
  77. model.setValue("/root/init/baseinfo/age", "33"); //나이
  78. model.setValue("/root/init/baseinfo/testcd", "LHR102"); //검사코드
  79. model.setValue("/root/hidden/acmlrslt/listflag", "Z"); //조회기간의 기준값(처방일, 검사일, 보고일)
  80. //model.setValue("/root/hidden/acmlrslt/startdd", "20090115"); //조회기간 시작일 설정
  81. //model.setValue("/root/hidden/acmlrslt/enddd", "20090415"); //조회기간 종료일 설정
  82. model.setValue("/root/init/baseinfo/startdd", "20070101"); //검사코드
  83. model.setValue("/root/init/baseinfo/enddd", "20090505"); //검사코드
  84. //-------------------------------------------------
  85. */
  86. //전체,외래,입원 라디오 박스 전체 기본값 셋팅
  87. rdo_alloutin.select(0);
  88. //세로누적결과조회
  89. fAcmlTestRslt();
  90. ]]>
  91. </script>
  92. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  93. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  94. <script type="javascript" src="../../../com/commonweb/js/tchartHelper.js"/>
  95. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  96. <submission id="TRLLP90101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acmlrslt"/>
  97. </model>
  98. <script type="javascript">
  99. <![CDATA[
  100. /* @group : 누적결과조회
  101. * @ver : 2008.06.25
  102. * @by : 김은지
  103. * @-----------------------------------
  104. * @type : function
  105. * @access : public
  106. * @desc : 환자 등록번호와 처방코드를 통해 해당 검사의 누적결과내역을 조회하는 function
  107. */
  108. function fAcmlTestRslt(){
  109. model.setValue("/root/send/pid" , model.getValue("/root/init/baseinfo/pid"));
  110. model.setValue("/root/send/testcd" , model.getValue("/root/init/baseinfo/testcd"));
  111. model.setValue("/root/send/startdd" , model.getValue("/root/init/baseinfo/startdd"));
  112. model.setValue("/root/send/enddd" , model.getValue("/root/init/baseinfo/enddd"));
  113. model.setValue("/root/send/flag" , model.getValue("/root/hidden/acmlrslt/flag"));
  114. if(model.getValue("/root/send/pid") != ""
  115. && model.getValue("root/send/testcd") != ""
  116. && model.getValue("root/send/flag") != "" ){
  117. submit("TRLLP90101");
  118. }
  119. model.makeValue("/root/init/baseinfo/rrgstno", model.getValue("/root/main/acmlrslt[1]/rrgstno"));
  120. model.makeValue("/root/init/baseinfo/tclsnm", model.getValue("/root/main/acmlrslt[1]/tclsnm"));
  121. model.refresh();
  122. }
  123. /* @group : 결과 케이스 토글
  124. * @ver : 2008.06.26
  125. * @by : 김은지
  126. * @-----------------------------------
  127. * @type : function
  128. * @access : public
  129. * @desc : 스위치 내용에 결과 그리드를 띄움
  130. */
  131. function fCaseRsltGrid(){
  132. model.toggle("case_rslt");
  133. }
  134. /* @group : 그래프 케이스 토글
  135. * @ver : 2008.06.26
  136. * @by : 김은지
  137. * @-----------------------------------
  138. * @type : function
  139. * @access : public
  140. * @desc : 스위치 내용에 결과 그래프를 띄움
  141. */
  142. function fCaseRsltGraph(){
  143. model.toggle("case_graph");
  144. //fHeightDrawLine(차트objectname, 결과그리드id, 그래프 타이틀, reflesh여부,);
  145. fHeightDrawLine(TChart1, grd_acmlrslt, "누적결과추이", true);
  146. }
  147. /* @group : 그래프 라인 생성
  148. * @ver : 2008.06.30
  149. * @by : 김은지
  150. * @-----------------------------------
  151. * @type : function
  152. * @access : public
  153. * @desc : 그래프에 결과치와 상하한치 라인을 그린다.
  154. */
  155. function fHeightDrawLine(tChartObj, gridObj, title, refresh) {
  156. try{
  157. // TChart 초기화
  158. if( refresh ) {
  159. tChartObj.RemoveAllSeries();
  160. tChartObj.Tools.clear();
  161. }
  162. // Title 설정
  163. if( title != null || title == "" ) {
  164. tChartObj.Header.Text(0) = title;
  165. }
  166. var cColor; //라인색 설정
  167. var x, y; //그래프의 정점
  168. var seriesIndex; //새로 생성될 라인의 번호
  169. tChartObj.Aspect.View3D = 0; // 모양 설정 :: 0 = 2D | 1 = 3D
  170. tChartObj.Legend.CheckBoxes = true; // Legend 체크박스 설정
  171. tChartObj.Legend.Alignment = 0; // Legend 위치 설정 :: 0 = left | 1 = right | 2 = top| 3 = bottom
  172. //--------------결과치 그래프 시작-------------//
  173. tChartObj.AddSeries(0); // 라인추가
  174. seriesIndex = tChartObj.SeriesCount - 1;
  175. tChartObj.Series(seriesIndex).asLine.Pointer.Visible = true; //Point 사용 여부
  176. tChartObj.Series(seriesIndex).asLine.Pointer.Style = 1; //PointStyle 설정 :: 0 - 8
  177. tChartObj.Series(seriesIndex).asLine.LinePen.Width = 3;
  178. tChartObj.Axis.Bottom.Labels.Angle = 270; //하단 날자표시 각도
  179. tChartObj.Series(seriesIndex).Color =window.rgb(0, 0 , 255); //결과 선의 색 설정. (파란색)
  180. tChartObj.Series(seriesIndex).Title = "결과값"; //Legend 명칭
  181. for(j = 1;j<gridObj.rows;j++){
  182. x = model.getvalue("/root/main/acmlrslt["+j+"]/testdt" ); //x = 처방날짜
  183. y = model.getvalue("/root/main/acmlrslt["+j+"]/inptrslt" ); //y = 결과치
  184. if(y != "" && !isNaN(y)){
  185. x = x.substring(0,4) + "-" + x.substring(4,6) + "-" +x.substring(6,8) + " " + x.substring(8,10) + ":" + x.substring(10,12) + " ";
  186. //x,y 좌표값과 라인의 칼라 값을 받아 라인을 생성한다.
  187. tChartObj.Series(seriesIndex).Add (y, x, tChartObj.Series(seriesIndex).Color);
  188. }
  189. }
  190. //--------------결과치 그래프 끝-------------//
  191. //--------------상한치 그래프 시작-------------//
  192. tChartObj.AddSeries(0); // 라인추가
  193. seriesIndex = tChartObj.SeriesCount - 1;
  194. tChartObj.Series(seriesIndex).Color=window.rgb(255, 0 , 0);
  195. tChartObj.Series(seriesIndex).Title = "상한치";
  196. for(j = 1;j<gridObj.rows;j++){
  197. x = model.getvalue("/root/main/acmlrslt["+j+"]/testdt" );
  198. y = model.getValue("/root/main/acmlrslt["+j+"]/refh" );
  199. if(y != "" && !isNaN(y)){
  200. x = x.substring(0,4) + "-" + x.substring(4,6) + "-" +x.substring(6,8) + " " + x.substring(8,10) + ":" + x.substring(10,12) + " ";
  201. tChartObj.Series(seriesIndex).Add (y, x, tChartObj.Series(seriesIndex).Color);
  202. }
  203. }
  204. //--------------상한치 그래프 끝-------------//
  205. //--------------하한치 그래프 시작-------------//
  206. tChartObj.AddSeries(0); // 라인추가
  207. seriesIndex = tChartObj.SeriesCount - 1;
  208. tChartObj.Series(seriesIndex).Color=window.rgb(255, 0 , 0);
  209. tChartObj.Series(seriesIndex).Title = "하한치";
  210. for(j = 1;j<gridObj.rows;j++){
  211. x = model.getvalue("/root/main/acmlrslt["+j+"]/testdt" );
  212. y = model.getValue("/root/main/acmlrslt["+j+"]/refl" );
  213. if(y != "" && !isNaN(y)){
  214. x = x.substring(0,4) + "-" + x.substring(4,6) + "-" +x.substring(6,8) + " " + x.substring(8,10) + ":" + x.substring(10,12) + " ";
  215. tChartObj.Series(seriesIndex).Add (y, x, tChartObj.Series(seriesIndex).Color);
  216. }
  217. }
  218. //--------------하한치 그래프 끝-------------//
  219. }catch(ee){
  220. messageBox("결과값에 문자열이 있습니다." , "I","");
  221. return;
  222. }
  223. }
  224. /* @group : 엑셀로 저장
  225. * @ver : 2008.06.30
  226. * @by : 김은지
  227. * @-----------------------------------
  228. * @type : function
  229. * @access : public
  230. * @desc : 그리드의 내용을 엑셀로 저장한다.
  231. */
  232. function fSaveExcel(){
  233. var indexRow = grd_acmlrslt.rows;
  234. grd_acmlrslt.addRow(false);
  235. grd_acmlrslt.addRow(false);
  236. grd_acmlrslt.addRow(false);
  237. model.setValue("/root/main/acmlrslt["+indexRow+"]/testdt", "등록번호");
  238. model.setValue("/root/main/acmlrslt["+(indexRow+1)+"]/testdt", "환자명");
  239. model.setValue("/root/main/acmlrslt["+(indexRow+2)+"]/testdt", "성별/나이");
  240. model.setValue("/root/main/acmlrslt["+indexRow+"]/reflh", model.getValue("/root/init/baseinfo/pid"));
  241. model.setValue("/root/main/acmlrslt["+(indexRow+1)+"]/reflh", model.getValue("/root/init/baseinfo/hngnm"));
  242. model.setValue("/root/main/acmlrslt["+(indexRow+2)+"]/reflh", model.getValue("/root/init/baseinfo/sex") + "/" + model.getValue("/root/init/baseinfo/age"));
  243. //model.refresh();
  244. var fileName = window.fileDialog("save", "," , false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  245. if (fileName != ""){
  246. grd_acmlrslt.saveExcel(fileName);
  247. }
  248. grd_acmlrslt.deleteItem(indexRow+2);
  249. grd_acmlrslt.deleteItem(indexRow+1);
  250. grd_acmlrslt.deleteItem(indexRow);
  251. model.refresh();
  252. }
  253. function fReportPrint(){
  254. exeReportPreview("RPLLP90100", "XMLSTR", "", "");
  255. }
  256. // 엔터키 이벤트
  257. function fKeyEvent(){
  258. if(event.keyCode == "13"){
  259. if(event.target=="ipt_bcno"){
  260. model.setvalue("/root/init/baseinfo/testcd", ipt_bcno.currentText);
  261. fAcmlTestRslt();
  262. }
  263. }
  264. }
  265. /* @group : 결과조회
  266. * @ver : 2007.06.14
  267. * @by : 장준원
  268. * @-----------------------------------
  269. * @type : function
  270. * @access : public
  271. * @desc : 그리드의 내용을 엑셀로 Copy하기 위한 Function
  272. */
  273. function astgrid_oncopy() {
  274. var trgObj = document.all.item(event.target);
  275. if( trgObj.elementName == "xforms:datagrid" ) { // event.target이 datagrid > input일 경우 return
  276. gridObj = trgObj;
  277. } else {
  278. return;
  279. }
  280. var cellValue = "";
  281. var rClipBoardValue = "";
  282. //선택된 셀의 스타일을 바꾼다
  283. var cells = grd_acmlrslt.selectedCells;
  284. var row = -1;
  285. var col = 0;
  286. var selrow = 0;
  287. var cnt =1;
  288. for (var i=0;i<cells.length;i++) {
  289. row = cells.item(i).row;
  290. col = cells.item(i).col;
  291. cellValue = gridObj.valueMatrix(row, col);
  292. model.makeNode("/root/hidden/tmp");
  293. model.makeValue("/root/hidden/tmp[" + cnt + "]/row", row);
  294. model.makeValue("/root/hidden/tmp[" + cnt + "]/col", col);
  295. model.makeValue("/root/hidden/tmp[" + cnt + "]/value", cellValue);
  296. cnt++;
  297. }
  298. datagrid6.rebuild();
  299. var setcol = datagrid6.colRef("row");
  300. datagrid6.colSort(datagrid6.colRef("row")) = "asc";
  301. datagrid6.colSort(datagrid6.colRef("col")) = "asc";
  302. datagrid6.sort(1, setcol, datagrid6.rows-1, datagrid6.cols-1) = "usersort";
  303. datagrid6.gridToInstance();
  304. row = -1;
  305. rClipBoardValue = model.getValue("/root/init/baseinfo/tclsnm");
  306. for (var i=1;i<datagrid6.rows;i++) {
  307. selrow = datagrid6.valueMatrix(i, datagrid6.colRef("row"));
  308. cellValue = datagrid6.valueMatrix(i, datagrid6.colRef("value"));
  309. if (row != selrow) {
  310. rClipBoardValue += "\r\n";
  311. rClipBoardValue += cellValue;
  312. row = selrow;
  313. } else {
  314. rClipBoardValue += "\t";
  315. rClipBoardValue += cellValue;
  316. }
  317. }
  318. if( rClipBoardValue != "" ) {
  319. window.clipBoardData = rClipBoardValue;
  320. }
  321. model.removeNodeset("/root/hidden/tmp");
  322. }
  323. function astgrid_liscopy() {
  324. // var trgObj = document.all.item(event.target);
  325. var cellValue;
  326. var rClipBoardValue = "";
  327. //선택된 셀의 스타일을 바꾼다
  328. var cells = grd_acmlrslt.selectedCells;
  329. var row = -1;
  330. var col = 0;
  331. var selrow = 0;
  332. var cnt =1;
  333. model.removeNodeset("/root/hidden/tmp");
  334. for (var i=0;i<cells.length;i++) {
  335. row = cells.item(i).row;
  336. col = cells.item(i).col;
  337. cellValue = grd_acmlrslt.valueMatrix(row, col);
  338. model.makeNode("/root/hidden/tmp");
  339. model.makeValue("/root/hidden/tmp[" + cnt + "]/row", row);
  340. model.makeValue("/root/hidden/tmp[" + cnt + "]/col", col);
  341. model.makeValue("/root/hidden/tmp[" + cnt + "]/value", cellValue);
  342. cnt++;
  343. }
  344. datagrid6.rebuild();
  345. var setcol = datagrid6.colRef("row");
  346. datagrid6.colSort(datagrid6.colRef("row")) = "asc";
  347. datagrid6.colSort(datagrid6.colRef("col")) = "asc";
  348. datagrid6.sort(1, setcol, datagrid6.rows-1, datagrid6.cols-1) = "usersort";
  349. datagrid6.gridToInstance();
  350. row = -1;
  351. rClipBoardValue = model.getValue("/root/init/baseinfo/tclsnm");
  352. for (var i=1;i<datagrid6.rows;i++) {
  353. selrow = datagrid6.valueMatrix(i, datagrid6.colRef("row"));
  354. cellValue = datagrid6.valueMatrix(i, datagrid6.colRef("value"));
  355. if (row != selrow) {
  356. rClipBoardValue += "\r\n";
  357. rClipBoardValue += cellValue;
  358. row = selrow;
  359. } else {
  360. rClipBoardValue += "\t";
  361. rClipBoardValue += cellValue;
  362. }
  363. }
  364. if( rClipBoardValue != "" ) {
  365. window.clipBoardData = rClipBoardValue;
  366. }
  367. model.removeNodeset("/root/hidden/tmp");
  368. }
  369. ]]>
  370. </script>
  371. </xhtml:head>
  372. <xhtml:body pagewidth="900" pageheight="715" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  373. <group id="grp_tle" style="left:0px; top:0px; width:880px; height:20px; ">
  374. <caption id="cpt_lgtitle" class="tit_1" style="left:0px; top:0px; width:199px; height:14px; ">누적결과조회</caption>
  375. </group>
  376. <group id="grp_ref" style="left:0px; top:26px; width:880px; height:35px; ">
  377. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:0px; top:0px; width:880px; height:35px; "/>
  378. <input id="input1" ref="/root/init/baseinfo/startdd" class="input_s_essential" inputtype="date" style="left:107px; top:8px; width:100px; height:19px; "/>
  379. <button id="btn_sea" class="btn1_letter2" style="left:815px; top:7px; width:56px; height:22px; ">
  380. <caption>조회</caption>
  381. <script type="javascript" ev:event="DOMActivate">
  382. <![CDATA[
  383. fAcmlTestRslt();
  384. ]]>
  385. </script>
  386. </button>
  387. <input id="ipt_bcno" ref="/root/init/baseinfo/testcd" class="input_button" navindex="4" imemode="disabled" inputtype="button" _chartype="upper" style="left:435px; top:8px; width:135px; height:19px; ">
  388. <script type="javascript" ev:event="onbuttonclick">
  389. <![CDATA[
  390. fKeyEvent();
  391. ]]>
  392. </script>
  393. <script type="javascript" ev:event="onkeypress">
  394. <![CDATA[
  395. fKeyEvent();
  396. ]]>
  397. </script>
  398. </input>
  399. <caption id="caption2" class="search_name" style="left:15px; top:9px; width:86px; height:17px; ">시행일자 :</caption>
  400. <caption id="caption1" class="search_name" style="left:345px; top:9px; width:90px; height:17px; ">수가코드 :</caption>
  401. <line id="line13" class="line_4" style="x1:806px; y1:5px; x2:806px; y2:27px; "/>
  402. <input id="input2" ref="/root/init/baseinfo/enddd" class="input_s_essential" inputtype="date" style="left:225px; top:8px; width:100px; height:19px; "/>
  403. <caption id="caption4" class="search_no_b" style="left:209px; top:9px; width:15px; height:17px; ">~</caption>
  404. </group>
  405. <group id="grp_patinfo" style="left:0px; top:68px; width:880px; height:35px; ">
  406. <line id="lin_6" class="line_1" style="x1:0px; y1:1px; x2:874px; y2:1px; "/>
  407. <output id="out_pid" ref="/root/init/baseinfo/pid" class="output_fix" style="left:75px; top:9px; width:90px; height:19px; "/>
  408. <caption id="cpt_ patnm" class="cell_1" style="left:167px; top:6px; width:70px; height:23px; text-align:center; vertical-align:middle; ">성 명</caption>
  409. <output id="out_sex" ref="/root/init/baseinfo/sex" class="output_fix" navindex="3" style="left:417px; top:9px; width:40px; height:19px; "/>
  410. <caption id="cpt_pid" class="cell_1" style="left:2px; top:6px; width:70px; height:23px; text-align:center; vertical-align:middle; ">등록번호</caption>
  411. <output id="opt_patnm" ref="/root/init/baseinfo/hngnm" class="output_fix" style="left:241px; top:9px; width:100px; height:19px; "/>
  412. <caption id="cpt_sexage" class="cell_1" style="left:344px; top:6px; width:70px; height:23px; text-align:center; vertical-align:middle; ">성별/나이</caption>
  413. <output id="opt_age" ref="/root/init/baseinfo/age" class="output_fix" navindex="3" style="left:458px; top:9px; width:40px; height:19px; "/>
  414. <line id="lin_7" class="line_2" style="x1:1px; y1:30px; x2:875px; y2:30px; "/>
  415. <output id="output1" ref="/root/init/baseinfo/rrgstno" class="output_fix" navindex="3" style="left:501px; top:9px; width:95px; height:19px; "/>
  416. <caption id="caption3" class="cell_1" style="left:599px; top:6px; width:70px; height:23px; text-align:center; vertical-align:middle; ">검사명</caption>
  417. <output id="output2" ref="/root/init/baseinfo/tclsnm" class="output_fix" navindex="3" style="left:671px; top:9px; width:202px; height:19px; "/>
  418. </group>
  419. <group id="grd_contents" scroll="none" style="left:0px; top:105px; width:880px; height:605px; ">
  420. <group id="grp_biz" style="left:165px; top:0px; width:220px; height:30px; ">
  421. <select1 id="rdo_alloutin" ref="/root/hidden/acmlrslt/flag" class="radio_search" appearance="full" cols="3" overflow="visible" style="left:10px; top:3px; width:160px; height:16px; border-style:none; ">
  422. <choices>
  423. <item>
  424. <label>전체</label>
  425. <value>A</value>
  426. </item>
  427. <item>
  428. <label>외래</label>
  429. <value>O</value>
  430. </item>
  431. <item>
  432. <label>입원</label>
  433. <value>I</value>
  434. </item>
  435. </choices>
  436. <script type="javascript" ev:event="onclick">
  437. <![CDATA[
  438. fAcmlTestRslt();
  439. if(swt_acmlrslt.selectedIndex == "1"){ //스위치의 그래프 케이스가 선택된 상태일 때만 그래프를 재구성
  440. fCaseRsltGraph();
  441. }
  442. ]]>
  443. </script>
  444. </select1>
  445. </group>
  446. <button id="btn_excel" class="btn2_letter2" style="left:831px; top:1px; width:42px; height:19px; ">
  447. <caption>엑셀</caption>
  448. <script type="javascript" ev:event="DOMActivate">
  449. <![CDATA[
  450. fSaveExcel(); //그리드의 데이터를 엑셀로 저장.
  451. ]]>
  452. </script>
  453. </button>
  454. <button id="button11" class="btn6_letter2" style="left:775px; top:0px; width:56px; height:22px; ">
  455. <caption>출력</caption>
  456. <script type="javascript" ev:event="DOMActivate">
  457. <![CDATA[
  458. fReportPrint();
  459. ]]>
  460. </script>
  461. </button>
  462. <button id="btn_graph" class="btn_sw" group="tab" selected="false" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:75px; top:0px; width:75px; height:22px; ">
  463. <caption>그 래 프</caption>
  464. <script type="javascript" ev:event="DOMActivate">
  465. <![CDATA[
  466. //그래프 케이스 토글
  467. fCaseRsltGraph();
  468. ]]>
  469. </script>
  470. </button>
  471. <button id="btn_testinfo" class="btn_sw" group="tab" selected="true" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:0px; top:0px; width:75px; height:22px; ">
  472. <caption>결 과</caption>
  473. <script type="javascript" ev:event="DOMActivate">
  474. <![CDATA[
  475. //결과 케이스 토글
  476. fCaseRsltGrid();
  477. ]]>
  478. </script>
  479. </button>
  480. <switch id="swt_acmlrslt" border="0" style="left:0px; top:20px; width:880px; height:580px; ">
  481. <case id="case_rslt" selected="true">
  482. <line id="lin_2" class="line_1" style="x1:0px; y1:0px; x2:874px; y2:0px; "/>
  483. <datagrid id="grd_acmlrslt" nodeset="/root/main/acmlrslt" backcoloralternate="transparent" caption="검사결과^판정^처방의^처방일자^검사일자^참고치^단위^소견^caption1^coombs^접수번호^성분제제" colsep="^" colwidth="120, 30, 70, 120, 120, 100, 80, 300" dataheight="23" defaultrows="1" ellipsis="true" explorerbar="sort" fixedcols="0" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" selectionmode="free" tooltip="true" style="left:0px; top:5px; width:874px; height:565px; text-align:center; ">
  484. <col ref="result" style="text-align:right; "/>
  485. <col ref="judgmark"/>
  486. <col ref="orddrnm"/>
  487. <col ref="prcpdt" format="yyyy-mm-dd hh:nn:ss"/>
  488. <col ref="testdt" format="yyyy-mm-dd hh:nn:ss"/>
  489. <col ref="reflh"/>
  490. <col ref="rsltunit"/>
  491. <col ref="cont" style="text-align:left; "/>
  492. <script type="javascript" ev:event="oncopy">
  493. <![CDATA[
  494. astgrid_oncopy();
  495. ]]>
  496. </script>
  497. <script type="javascript" ev:event="onmousedown">
  498. <![CDATA[
  499. //if (isDataCell() == true && (datagrid2.isCell(event.target)) && (event.ctrlKey != true) ) {
  500. setPopupMenu("grd_acmlrslt", false, "/root/popupmenu/grid03/item", "name", "func");
  501. //}
  502. ]]>
  503. </script>
  504. <script type="javascript" ev:event="DOMFocusOut">
  505. <![CDATA[
  506. initPopupMenu();
  507. ]]>
  508. </script>
  509. <script type="javascript" ev:event="onaftersort">
  510. <![CDATA[
  511. grd_acmlrslt.gridToInstance(); //그리드의 인스턴스 재구성
  512. ]]>
  513. </script>
  514. </datagrid>
  515. <group id="grp_searchset" visibility="hidden" style="left:170px; top:90px; width:285px; height:170px; ">
  516. <datagrid id="datagrid6" nodeset="/root/hidden/tmp" caption="진료과^구분^SET명" colsep="^" colwidth="67, 54, 94" mergecellsfixedrows="bycolrec" rowsep="|" style="left:1px; top:53px; width:229px; height:97px; ">
  517. <col ref="row"/>
  518. <col ref="col"/>
  519. <col ref="value"/>
  520. </datagrid>
  521. <caption id="caption8" class="tit_1" style="left:25px; top:10px; width:106px; height:13px; ">SET 조회</caption>
  522. <shape id="roundrect2" class="roundrect_search" appearance="roundrect" style="left:3px; top:20px; width:267px; height:30px; "/>
  523. <select1 id="combo5" class="combo_search" appearance="minimal" style="left:80px; top:26px; width:113px; height:19px; ">
  524. <choices>
  525. <item>
  526. <label>combo1</label>
  527. <value>combo1</value>
  528. </item>
  529. </choices>
  530. </select1>
  531. <caption id="caption5" class="search_name" style="left:10px; top:26px; width:70px; height:17px; ">진료과</caption>
  532. <button id="button15" class="btn2_letter2" style="left:210px; top:25px; width:42px; height:19px; ">
  533. <caption>닫기</caption>
  534. <script type="javascript" ev:event="DOMActivate">
  535. <![CDATA[
  536. grp_searchset.visible = false;
  537. ]]>
  538. </script>
  539. </button>
  540. </group>
  541. </case>
  542. <case id="case_graph">
  543. <line id="lin_3" class="line_1" style="x1:0px; y1:0px; x2:878px; y2:0px; "/>
  544. <object id="TChart1" clsid="{fab9b41c-87d6-474d-ab7e-f07d78f2422e}" style="left:3px; top:5px; width:870px; height:570px; "/>
  545. </case>
  546. </switch>
  547. </group>
  548. </xhtml:body>
  549. </xhtml:html>