SMMMI00400_회진용결과조회.xrw 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798
  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. <prmsprcpsetinfo>
  11. <prmsprcpsetlist>
  12. <levl/>
  13. <setno/>
  14. <supsetno/>
  15. <sortno/>
  16. <setkindcd/>
  17. <settrgtcd/>
  18. <setnm/>
  19. </prmsprcpsetlist>
  20. </prmsprcpsetinfo>
  21. <prmsprcppdsetinfo>
  22. <prmsprcpsetlist>
  23. <setkindnm/>
  24. <setnm/>
  25. <testcdnm/>
  26. <setkindcd/>
  27. <levl/>
  28. <setno/>
  29. <supsetno/>
  30. <sortno/>
  31. <settrgtcd/>
  32. </prmsprcpsetlist>
  33. </prmsprcppdsetinfo>
  34. <cond>
  35. <srchdd/>
  36. <orddeptcd/>
  37. <atdoctid/>
  38. <medispclid/>
  39. <wardcd/>
  40. <subdeptcd/>
  41. <roomcd/>
  42. <setno/>
  43. <dschyn/>
  44. </cond>
  45. <prmscond>
  46. <setkindcd/>
  47. <foldernm/>
  48. <deptsetcd/>
  49. <setdata>
  50. <setkindcd>D</setkindcd>
  51. <deptsetcd/>
  52. <deptcd/>
  53. <deptnm/>
  54. <foldernm/>
  55. <setno/>
  56. <startdd/>
  57. <enddd/>
  58. <pid/>
  59. <tclscdlist/>
  60. <workflag/>
  61. </setdata>
  62. </prmscond>
  63. <rsltinfo/>
  64. </main>
  65. <send>
  66. <reqdata/>
  67. <interqestcd/>
  68. </send>
  69. <init>
  70. <wardlist>
  71. </wardlist>
  72. <P0008/>
  73. <orddept/>
  74. <orddept2/>
  75. <userlist/>
  76. <userlist2/>
  77. <jobhardcdno/>
  78. <subdeptinfo/>
  79. <popupmenu>
  80. <menu>
  81. <item>
  82. <name>복사하기</name>
  83. <func>astgrid_liscopy</func>
  84. </item>
  85. </menu>
  86. </popupmenu>
  87. <envinfo>
  88. <interface>
  89. <answval/>
  90. <qestcd/>
  91. <baseanswvalflag/>
  92. <answvalnm/>
  93. </interface>
  94. </envinfo>
  95. <cmb_room>
  96. <initexecroom>
  97. <execroomcdid/>
  98. <execroomcdnm/>
  99. </initexecroom>
  100. </cmb_room>
  101. </init>
  102. <hidden>
  103. <rsltlist/>
  104. <tmp/>
  105. </hidden>
  106. <temp>
  107. <trvprmsprcpsetlist/>
  108. </temp>
  109. <paminfo/>
  110. </root>
  111. </instance>
  112. <script type="javascript" ev:event="xforms-ready">
  113. <![CDATA[
  114. document.title ="회진용 검사결과조회 - "+"[ "+getUserInfo("dutplcenm")+" "+getUserInfo("usernm")+" ]";
  115. fInitialize_SMMMI00400();
  116. //환경설정에 대한 답변을 조회한다.
  117. fGetIntefeAnswAll();
  118. //셋 수정 등록의 내용에 맞게끔 개인과 과 를 셋해준다.
  119. //
  120. fSetUserBaseInit() ;
  121. model.setValue("/root/main/prmscond/setdata/setkindcd", model.getValue("/root/main/prmscond/setkindcd") );
  122. if (model.getValue("/root/main/prmscond/setdata/setkindcd") == "P" || model.getValue("/root/main/prmscond/setdata/setkindcd") == "D"){
  123. model.setValue("/root/main/prmscond/setdata/deptsetcd", getUserInfo("dutplcecd")) ;
  124. readfunc();
  125. cmb_deptset.disabled = true;
  126. }else{
  127. cmb_deptset.disabled = false;
  128. //readfunc(); // 실제 조회 결과는 없음.
  129. }
  130. model.refresh();
  131. ipt_date.value = getCurrentDate();
  132. ]]>
  133. </script>
  134. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post"/>
  135. <submission id="TRAER00810" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data/singdata" replace="instance" add="bottom" resultref="/root/main/ordlist4"/>
  136. <submission id="TRMMB04101" mediatype="application/x-www-form-urlencoded" method="post"/>
  137. <submission id="TRMMB04102" mediatype="application/x-www-form-urlencoded" method="post"/>
  138. <submission id="TRMMB04106" mediatype="application/x-www-form-urlencoded" method="post"/>
  139. <submission id="TRMMI00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/envinfo/interface"/>
  140. <submission id="TRAER00815" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/cond/prmscond/" resultref="/root/init/deptlist"/>
  141. <submission id="TRAER00813" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/prmscond/setdata" resultref="/root/main/prmsprcpsetinfo"/>
  142. <submission id="TRAER00802" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/cond" replace="instance" resultref="/root/init/cmb_room"/>
  143. <submission id="TRMMI00401" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/main/cond" replace="instance" resultref="/root/hidden/rsltlist"/>
  144. </model>
  145. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  146. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  147. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  148. <script type="javascript" src="../../../emr/prcpinfoweb/js/SMMMI00100.js"/>
  149. <script type="javascript" src="../../../emr/prcpinfoweb/js/SMMMI00400.js"/>
  150. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  151. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  152. <script type="javascript" src="../../../com/pacsweb/js/ZEP001.js"/>
  153. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  154. <script type="javascript">
  155. <![CDATA[
  156. /**
  157. * @desc : 환경설정에 대한 값을 조회한다.
  158. * @id :
  159. * @event :
  160. * @return : void
  161. * @authur : 김영학
  162. */
  163. function fGetIntefeAnswAll() {
  164. // 조회 변수 조회
  165. model.setValue("/root/send/interqestcd", "ALL");
  166. submit("TRMMI00101");
  167. }
  168. /* @group : 결과조회
  169. * @ver : 2010.02.08
  170. * @by : 김영학
  171. * @-----------------------------------
  172. * @type : function
  173. * @access : public
  174. * @desc : 사용자 환경설정에 해당 질문에 대한 답변을 리턴한다.
  175. */
  176. function fGetIntefeAnsw(qestcd) {
  177. for (i = 1; i <= getNodesetCount("/root/init/envinfo/interface"); i++) {
  178. if ( qestcd == model.getValue("/root/init/envinfo/interface[" + i + "]/qestcd")) {
  179. return model.getValue("/root/init/envinfo/interface[" + i + "]/answcnt");
  180. }
  181. }
  182. return "";
  183. }
  184. /**
  185. * @desc : lt, gt 변환
  186. * @id :
  187. * @event :
  188. * @return : void
  189. * @authur : 박종훈
  190. */
  191. function doReplaceLtGt() {
  192. var nodelist = model.instances(0).selectNodes("/root/main/subordlist1/subresultdetail1[img = 'IMG']/reptrslt");
  193. var shape = "";
  194. for (var i = 0; i < nodelist.length; i++) {
  195. if (nodelist.item(i).text.indexOf("&lt;") == 0) {
  196. shape = nodelist.item(i).text.replace(/&lt;/gi, "<");
  197. nodelist.item(i).text = shape.replace(/&gt;/gi, ">");
  198. }
  199. }
  200. }
  201. function fClose(){
  202. window.close();
  203. }
  204. /* @group : 결과조회
  205. * @ver : 2010.02.08
  206. * @by : 김영학
  207. * @-----------------------------------
  208. * @type : function
  209. * @access : public
  210. * @desc : 사용자 환경설정 조회기준 세팅
  211. */
  212. function fSetUserBaseInit(){
  213. var AnswData = fGetIntefeAnsw("019");
  214. if(AnswData != "" ) {
  215. if( AnswData == "001" ){
  216. model.setValue("/root/main/prmscond/setkindcd", "P" );
  217. } else if( AnswData == "002" ){
  218. model.setValue("/root/main/prmscond/setkindcd", "D" );
  219. }
  220. }
  221. }
  222. /* @group : 결과조회
  223. * @ver : 2010.02.08
  224. * @by : 김영학
  225. * @-----------------------------------
  226. * @type : function
  227. * @access : public
  228. * @desc : 셋의 트리구조를 조회한다.
  229. */
  230. function readfunc(){
  231. var setkindcd = model.getValue("/root/main/prmscond/setdata/setkindcd");
  232. if (setkindcd == "P" || setkindcd == "D"){ // 개인이나 과 일 경우는 과를 선택할 수 있는 것을 Bolcking 한다.
  233. cmb_deptset.disabled = true;
  234. }
  235. if (setkindcd == "D") { // 과 일 경우는 진료과명과 진료과 코드에 로그인 한 부서의 코드명과 명으로 셋 해준다.
  236. model.makeValue("/root/main/prmscond/deptsetcd", getUserInfo("dutplcecd"));
  237. model.makeValue("/root/main/prmscond/deptnm", getUserInfo("dutplcenm"));
  238. }
  239. if(submit("TRAER00813") == true) {
  240. if(setkindcd =="T" && isNull(model.getValue("/root/main/prmscond/deptsetcd"))) {
  241. model.setValue("/root/main/prmscond/deptsetcd", "-");
  242. }
  243. model.setValue("/root/main/prmscond/foldernm", "");
  244. model.setValue(trv_prmsprcpsetlist.attribute("ref"), "");
  245. trv_prmsprcpsetlist.rebuild();
  246. }
  247. }
  248. /* @group : 결과조회
  249. * @ver : 2007.06.14
  250. * @by : 장준원
  251. * @-----------------------------------
  252. * @type : function
  253. * @access : public
  254. * @desc : 병실정보 조회를 위한 Function
  255. */
  256. function fChngSrchRoomCd() {
  257. if ( model.getValue("/root/main/cond/wardcd") == "" ) {
  258. model.resetInstanceNode("/root/init/cmb_room/initexecroom");
  259. } else {
  260. model.resetInstanceNode("/root/init/cmb_room/initexecroom");
  261. if (submit("TRAER00802") == true) {
  262. model.setValue("/root/main/cond/roomcd", "");
  263. }
  264. }
  265. model.refresh();
  266. }
  267. /* @group : 결과조회
  268. * @ver : 2010. 02. 07
  269. * @by : 김영학
  270. * @-----------------------------------
  271. * @type : function
  272. * @access : public
  273. * @desc : 결과를 조회한다.
  274. */
  275. function fGetRsltList(setno) {
  276. var orddeptcd = model.getValue("/root/main/cond/orddeptcd");
  277. var wardcd = model.getValue("/root/main/cond/wardcd");
  278. if (isNull(orddeptcd) && isNull(wardcd) || isNull(orddeptcd) && wardcd == "-"
  279. || orddeptcd == "-" && isNull(wardcd) || orddeptcd == "-" && wardcd == "-" ) {
  280. messageBox("진료과 또는 병동은 필수 입력입니다", "I");
  281. return;
  282. }
  283. // var cols = grd_rsltlist.cols-grd_rsltlist.fixedCols;
  284. var cols = grd_rsltlist.cols
  285. for( var i = cols; i > 1; i-- ) {
  286. grd_rsltlist.deleteColumn(i, false)
  287. }
  288. // 셋 번호에 따른 셋을 해준다.
  289. // 셋 번호가 1이나 없으면은 전체를 조회한다.
  290. // 트리를 클릭했을 경우 셋 번호를 셋 해주며 해당하는 것들만 조회한다.
  291. if (isNull(setno) || setno== "1") {
  292. model.setValue("/root/main/cond/setno", "")
  293. } else {
  294. model.setValue("/root/main/cond/setno", setno);
  295. }
  296. model.removeNodeset("/root/main/rsltinfo/rsltlist");
  297. model.makeNode("/root/main/rsltinfo/rsltlist")
  298. // grd_rsltlist.rebuild();
  299. grd_rsltlist.refresh();
  300. submit("TRMMI00401");
  301. var gridCaption = model.getValue("/root/hidden/rsltlist/headlist/caption");
  302. if(gridCaption == "") return;
  303. var gridColRef = model.getValue("/root/hidden/rsltlist/headlist/colref");
  304. var gridColRefArray = gridColRef.split("^");
  305. var gridColType = model.getValue("/root/hidden/rsltlist/headlist/type");
  306. var gridColTypeArray = gridColType.split("^");
  307. // 환자 수 + 기본값(검체코드, 검사항목, 검체명) 만큼 그리드를 생성한다.
  308. for( var i = 1; i < gridColRefArray.length; i++ ) {
  309. grd_rsltlist.addColumn("ref:" + gridColRefArray[i] + "; type:"+gridColTypeArray[i]+";savetype=text;", false);
  310. model.makeNode("/root/temp/rsltlist/" + gridColRefArray[i]);
  311. }
  312. // 그리드에 보여질 값들을 셋 해준다.
  313. grd_rsltlist.colWidth(0) = 0;
  314. grd_rsltlist.colWidth(grd_rsltlist.colRef("testcd")) = 80;
  315. grd_rsltlist.colWidth(grd_rsltlist.colRef("tclsscrnnm"))= 150;
  316. grd_rsltlist.colWidth(grd_rsltlist.colRef("spcnm")) = 100;
  317. for( i = 5; i < grd_rsltlist.cols; i++ ) {
  318. grd_rsltlist.colWidth(i) = 80;
  319. grd_rsltlist.colAttribute(i, "savetype")="text"
  320. }
  321. // 그리드의 캡션을 설정한다.
  322. grd_rsltlist.caption = gridCaption;
  323. grd_rsltlist.rebuild();
  324. // 보여줄 리스트의 갯수를 구한다.
  325. var cnts = getNodesetCount("/root/hidden/rsltlist/rsltlist");
  326. if(cnts >0 ) {
  327. for (j = 0; j < cnts ; j++ ) {
  328. var pid = model.getValue("/root/hidden/rsltlist/rsltlist[" + j + "]/pid");
  329. var testcd = model.getValue("/root/hidden/rsltlist/rsltlist[" + j + "]/testcd");
  330. var spcnm = model.getValue("/root/hidden/rsltlist/rsltlist[" + j + "]/spcnm");
  331. var tclsscrnnm = model.getValue("/root/hidden/rsltlist/rsltlist[" + j + "]/tclsscrnnm");
  332. var rstlist = model.getValue("/root/hidden/rsltlist/rsltlist[" + j + "]/rstlist");
  333. var rstListArray = rstlist.split("▦");
  334. var reptrslt = rstListArray[0];
  335. var judgmark = rstListArray[1];
  336. var judgmarkflag = "";
  337. if (judgmark =="L") {
  338. judgmarkflag = "▼"
  339. } else if (judgmark =="H"){
  340. judgmarkflag = "▲"
  341. }
  342. if (isNull(judgmarkflag)) {
  343. var rstvalue = reptrslt;
  344. } else {
  345. var rstvalue = judgmarkflag + " " + reptrslt;
  346. }
  347. var count = 0;
  348. // 현재 노드의 갯수를 조회한다.
  349. var nodeCnts = getNodesetCount("/root/main/rsltinfo/rsltlist");
  350. for (k = 0; k< nodeCnts; k++) {
  351. var grdTestcd = model.getValue("/root/main/rsltinfo/rsltlist[" + k + "]/testcd");
  352. if (testcd == grdTestcd) {
  353. for (m=5; m < grd_rsltlist.cols ; m++ ) {
  354. var grdPid = grd_rsltlist.valueMatrix(1, m)
  355. if (grdPid == pid) {
  356. model.setValue("/root/main/rsltinfo/rsltlist[" + k+ "]/rslt" + (parseInt(m)-5) , rstvalue);
  357. }
  358. }
  359. count ++
  360. }
  361. }
  362. if (count < 1) {
  363. copyNodesetType("/root/main/rsltinfo/rsltlist", "/root/temp/rsltlist", "after");
  364. model.setValue("/root/main/rsltinfo/rsltlist[" + (parseInt(nodeCnts)) + "]/testcd" , testcd);
  365. model.setValue("/root/main/rsltinfo/rsltlist[" + (parseInt(nodeCnts)) + "]/spcnm" , spcnm);
  366. model.setValue("/root/main/rsltinfo/rsltlist[" + (parseInt(nodeCnts)) + "]/tclsscrnnm" , tclsscrnnm);
  367. for (m=5; m < grd_rsltlist.cols ; m++ ) {
  368. var grdPid = grd_rsltlist.valueMatrix(1, m)
  369. if (grdPid == pid) {
  370. model.setValue("/root/main/rsltinfo/rsltlist[" + (parseInt(nodeCnts)) + "]/rslt" + (parseInt(m)-5) , rstvalue);
  371. }
  372. }
  373. }
  374. }
  375. grd_rsltlist.refresh();
  376. var rows = grd_rsltlist.rows
  377. for( var i = rows; i > 1; i-- ) {
  378. var chkTestcd = grd_rsltlist.valueMatrix(i, grd_rsltlist.colRef("tclsscrnnm"))
  379. if (isNull(chkTestcd) || chkTestcd == "" ) {
  380. grd_rsltlist.deleteRow(i, false)
  381. }
  382. for (var m = 5; m < grd_rsltlist.cols ; m++) {
  383. var judgValue = grd_rsltlist.valueMatrix(i, m);
  384. var judeflag = judgValue.charAt(0);
  385. if (judeflag == "▲") {
  386. grd_rsltlist.cellStyle("color", i, m) = "red"
  387. } else if (judeflag == "▼") {
  388. grd_rsltlist.cellStyle("color", i, m) = "blue"
  389. }
  390. grd_rsltlist.colAttribute(m, "text-align") = "right";
  391. }
  392. }
  393. }
  394. grd_rsltlist.refresh();
  395. }
  396. // 그리드의 내용을 복사한다.
  397. function astgrid_oncopy() {
  398. var trgObj = document.all.item(event.target);
  399. if( trgObj.elementName == "xforms:datagrid" ) // event.target이 datagrid > input일 경우 return
  400. gridObj = trgObj;
  401. else
  402. return;
  403. var cellValue;
  404. var rClipBoardValue = "";
  405. //선택된 셀의 스타일을 바꾼다
  406. var cells = gridObj.selectedCells;
  407. var row = -1;
  408. var col = 0;
  409. var selrow = 0;
  410. var cnt =1;
  411. for (var i=0;i<cells.length;i++) {
  412. row = cells.item(i).row;
  413. col = cells.item(i).col;
  414. cellValue = gridObj.valueMatrix(row, col);
  415. model.makeNode("/root/hidden/tmp");
  416. model.makeValue("/root/hidden/tmp[" + cnt + "]/row", row);
  417. model.makeValue("/root/hidden/tmp[" + cnt + "]/col", col);
  418. model.makeValue("/root/hidden/tmp[" + cnt + "]/value", cellValue);
  419. cnt++;
  420. }
  421. datagrid5.rebuild();
  422. var setcol = datagrid5.colRef("row");
  423. datagrid5.colSort(datagrid5.colRef("row")) = "asc";
  424. datagrid5.colSort(datagrid5.colRef("col")) = "asc";
  425. datagrid5.sort(1, setcol, datagrid5.rows-1, datagrid5.cols-1) = "usersort";
  426. datagrid5.gridToInstance();
  427. row = -1;
  428. for (var i=1;i<datagrid5.rows;i++) {
  429. selrow = datagrid5.valueMatrix(i, datagrid5.colRef("row"));
  430. cellValue = datagrid5.valueMatrix(i, datagrid5.colRef("value"));
  431. if (row != selrow) {
  432. rClipBoardValue += "\r\n";
  433. rClipBoardValue += cellValue;
  434. row = selrow;
  435. } else {
  436. rClipBoardValue += "\t";
  437. rClipBoardValue += cellValue;
  438. }
  439. }
  440. if( rClipBoardValue != "" ) {
  441. window.clipBoardData = rClipBoardValue;
  442. }
  443. }
  444. ]]>
  445. </script>
  446. </xhtml:head>
  447. <xhtml:body pagewidth="1270" pageheight="940" guideline="1,1249;1,763;" style="color:#ff0000; margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  448. <group id="group3" scroll="auto" style="left:0px; top:13px; width:1250px; height:922px; ">
  449. <shape id="roundrect4" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:5px; top:90px; width:295px; height:90px; background-color:#fffbf2; border-color:#ffd799; "/>
  450. <select1 id="rdo_setflag" ref="/root/main/prmscond/setkindcd" appearance="full" cellspacing="15" cols="3" rows="1" overflow="visible" style="left:56px; top:103px; width:179px; height:20px; font-weight:bold; color:#ff0000; border-style:none; ">
  451. <choices>
  452. <item>
  453. <label>개인</label>
  454. <value>P</value>
  455. </item>
  456. <item>
  457. <label>과</label>
  458. <value>D</value>
  459. </item>
  460. <item>
  461. <label>타과</label>
  462. <value>T</value>
  463. </item>
  464. </choices>
  465. <script type="javascript" ev:event="onclick">
  466. <![CDATA[
  467. model.setValue("/root/main/prmscond/setdata/setkindcd", model.getValue("/root/main/prmscond/setkindcd") );
  468. if (model.getValue("/root/main/prmscond/setdata/setkindcd") == "P" || model.getValue("/root/main/prmscond/setdata/setkindcd") == "D"){
  469. model.setValue("/root/main/prmscond/setdata/deptsetcd", getUserInfo("dutplcecd")) ;
  470. readfunc();
  471. cmb_deptset.disabled = true;
  472. }else{
  473. cmb_deptset.disabled = false;
  474. //readfunc(); // 실제 조회 결과는 없음.
  475. }
  476. model.refresh();
  477. ]]>
  478. </script>
  479. </select1>
  480. <treeview id="trv_prmsprcpsetlist" ref="/root/temp/trvprmsprcpsetlist" dragmode="true" dropmode="true" expanddepth="5" fullrowselect="false" itemsettype="depth" style="left:4px; top:182px; width:301px; height:738px; border-color:#c7a3cf; border-style:solid; ">
  481. <itemset nodeset="/root/main/prmsprcpsetinfo/prmsprcpsetlist">
  482. <label ref="setnm"/>
  483. <value ref="setno"/>
  484. <depth ref="levl"/>
  485. </itemset>
  486. <script type="javascript" ev:event="xforms-select">
  487. <![CDATA[
  488. if (trv_prmsprcpsetlist.selectedIndex < 0){
  489. messageBox("조회할 SET명을 선택한 후 조회하시기 바랍니다.", "E999", "");
  490. return;
  491. }
  492. var item = trv_prmsprcpsetlist.item(trv_prmsprcpsetlist.selectedIndex);
  493. var rowpos = item.index + 1;
  494. var setno = model.getValue("/root/main/prmsprcpsetinfo/prmsprcpsetlist[" + rowpos + "]/setno");
  495. fGetRsltList(setno);
  496. ]]>
  497. </script>
  498. </treeview>
  499. <group id="grp_sea" style="left:0px; top:10px; width:1249px; height:55px; vertical-align:top; ">
  500. <shape id="roundrect2" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1249px; height:53px; background-color:#fffbf2; border-color:#ffd799; "/>
  501. <input id="ipt_date" ref="/root/main/cond/srchdd" class="input_default" inputtype="date" style="left:100px; top:6px; width:90px; height:19px; "/>
  502. <caption id="caption3" class="search_name" style="left:474px; top:29px; width:70px; height:17px; color:#7F7F7F; ">병 실</caption>
  503. <line id="line2" class="line_4" style="x1:1105px; y1:7px; x2:1105px; y2:45px; "/>
  504. <button id="btn_srch" class="btn1_letter4" style="left:1145px; top:17px; width:80px; height:22px; ">
  505. <caption>결과조회</caption>
  506. <script type="javascript" ev:event="DOMActivate">
  507. <![CDATA[
  508. fGetRsltList();
  509. ]]>
  510. </script>
  511. </button>
  512. <caption id="caption1" class="search_name" style="left:730px; top:6px; width:67px; height:17px; color:#7F7F7F; ">주치의</caption>
  513. <caption id="caption4" class="search_name" style="left:474px; top:6px; width:70px; height:17px; color:#7F7F7F; ">세부과</caption>
  514. <select1 id="cmb_medispclid" ref="/root/main/cond/medispclid" class="combo_search" appearance="minimal" style="left:800px; top:5px; width:91px; height:19px; ">
  515. <choices>
  516. <itemset nodeset="/root/init/userlist/usercombo">
  517. <label ref="usernm"/>
  518. <value ref="userid"/>
  519. </itemset>
  520. </choices>
  521. </select1>
  522. <select1 id="cmb_subdept" ref="/root/main/cond/subdeptcd" class="combo_search" appearance="minimal" style="left:555px; top:5px; width:113px; height:19px; ">
  523. <choices>
  524. <itemset nodeset="/root/init/subdeptinfo/subdeptlist">
  525. <label ref="subdeptnm"/>
  526. <value ref="subdeptcd"/>
  527. </itemset>
  528. </choices>
  529. <script type="javascript" ev:event="xforms-value-changed">
  530. <![CDATA[
  531. // model.setValue("/root/send/data/singdata/deptcd", model.getValue("/root/send/data/cond/deptcd"));
  532. ]]>
  533. </script>
  534. </select1>
  535. <caption id="caption11" class="search_name" style="left:12px; top:6px; width:86px; height:17px; color:#7F7F7F; ">조회기간</caption>
  536. <caption id="caption2" class="search_name" style="left:269px; top:6px; width:70px; height:17px; color:#7F7F7F; ">진료과</caption>
  537. <select1 id="cmb_orddept" ref="/root/main/cond/orddeptcd" class="combo_search" appearance="minimal" style="left:350px; top:5px; width:113px; height:19px; ">
  538. <choices>
  539. <itemset nodeset="/root/init/orddept/dept">
  540. <label ref="depthngnm"/>
  541. <value ref="deptcd"/>
  542. </itemset>
  543. </choices>
  544. <script type="javascript" ev:event="xforms-value-changed">
  545. <![CDATA[
  546. model.removeNodeset("/root/init/userlist");
  547. model.removeNodeset("/root/init/userlist2");
  548. model.makeNode("/root/init/userlist/usercombo");
  549. model.makeNode("/root/init/userlist2/usercombo");
  550. mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist" , cmb_orddept.value, "0330", "", "M");
  551. mmbfGetUserComboList("/root/send/reqdata", "/root/init/userlist2", cmb_orddept.value, "0330", "", "A");
  552. if (model.getValue("/root/main/cond/orddeptcd") == "-") {
  553. model.makeValue("/root/init/userlist/usercombo/userid", "-");
  554. model.makeValue("/root/init/userlist/usercombo/usernm", "전체");
  555. model.makeValue("/root/init/userlist2/usercombo/userid", "-");
  556. model.makeValue("/root/init/userlist2/usercombo/usernm", "전체");
  557. } else {
  558. addComboInstance("/root/init/userlist", "userid^usernm", "-^전체", "usercombo"); //의사콤보 전체항목 추가
  559. addComboInstance("/root/init/userlist2", "userid^usernm", "-^전체", "usercombo");//의사콤보 전체항목 추가
  560. }
  561. model.setValue("/root/main/cond/medispclid", "-");
  562. model.setValue("/root/main/cond/atdoctid", "-");
  563. var orddeptcd = model.getValue("/root/main/cond/orddeptcd");
  564. var medispclid = model.getValue("/root/main/cond/medispclid");
  565. var atdoctid = model.getValue("/root/main/cond/atdoctid");
  566. var wardcd = model.getValue("/root/main/cond/wardcd");
  567. mmbfGetSubDeptComboList("/root/send/reqdata", "/root/init/subdeptinfo", orddeptcd);
  568. addComboInstance("/root/init/subdeptinfo", "subdeptnm^subdeptcd", "전체^-", "subdeptlist"); //의사콤보 전체항목 추가
  569. model.setValue("/root/main/cond/subdeptcd", "-");
  570. model.refresh();
  571. ]]>
  572. </script>
  573. </select1>
  574. <caption id="caption7" class="search_name" style="left:900px; top:6px; width:67px; height:17px; color:#7F7F7F; ">담당의</caption>
  575. <select1 id="cmb_atdoctid" ref="/root/main/cond/atdoctid" class="combo_search" appearance="minimal" style="left:970px; top:5px; width:91px; height:19px; ">
  576. <choices>
  577. <itemset nodeset="/root/init/userlist2/usercombo">
  578. <label ref="usernm"/>
  579. <value ref="userid"/>
  580. </itemset>
  581. </choices>
  582. </select1>
  583. <caption id="caption8" class="search_name" style="left:269px; top:30px; width:70px; height:17px; color:#7F7F7F; ">병 동</caption>
  584. <select1 id="cmb_wardcd" ref="/root/main/cond/wardcd" class="combo_search" appearance="minimal" style="left:350px; top:30px; width:113px; height:19px; ">
  585. <choices>
  586. <itemset nodeset="/root/init/orddept2/dept">
  587. <label ref="depthngnm"/>
  588. <value ref="deptcd"/>
  589. </itemset>
  590. </choices>
  591. <script type="javascript" ev:event="xforms-value-changed">
  592. <![CDATA[
  593. fChngSrchRoomCd();
  594. ]]>
  595. </script>
  596. </select1>
  597. <select1 id="combo1" ref="/root/main/cond/roomcd" class="combo_search" appearance="minimal" style="left:555px; top:30px; width:113px; height:19px; ">
  598. <choices>
  599. <itemset nodeset="/root/init/cmb_room/initexecroom">
  600. <label ref="execroomcdnm"/>
  601. <value ref="execroomcdid"/>
  602. </itemset>
  603. </choices>
  604. </select1>
  605. <bool id="bool1" checkvalue="Y,N" ref="/root/main/cond/dschyn" style="left:728px; top:30px; width:25px; height:20px; "/>
  606. <caption id="caption5" style="left:750px; top:30px; width:100px; height:20px; ">
  607. <![CDATA[퇴원환자 포함]]>
  608. <script type="javascript" ev:event="onclick">
  609. <![CDATA[
  610. var sDschyn = model.getValue("/root/main/cond/dschyn");
  611. if (sDschyn == "Y") {
  612. model.setValue("/root/main/cond/dschyn", "N");
  613. } else {
  614. model.setValue("/root/main/cond/dschyn", "Y");
  615. }
  616. model.refresh();
  617. ]]>
  618. </script>
  619. </caption>
  620. </group>
  621. <line id="line8" class="line_1" style="x1:311px; y1:85px; x2:1250px; y2:85px; "/>
  622. <!--과별 SET 누적조회-->
  623. <button id="button46" class="icon_left" style="left:310px; top:65px; width:26px; height:19px; ">
  624. <caption/>
  625. <script type="javascript" ev:event="onclick">
  626. <![CDATA[
  627. grd_rsltlist.attribute("left") = "7"
  628. grd_rsltlist.attribute("width") = "1240"
  629. ]]>
  630. </script>
  631. </button>
  632. <button id="button47" class="icon_right" style="left:337px; top:65px; width:26px; height:19px; ">
  633. <caption/>
  634. <script type="javascript" ev:event="onclick">
  635. <![CDATA[
  636. grd_rsltlist.attribute("left") = "311"
  637. grd_rsltlist.attribute("width") = "938"
  638. ]]>
  639. </script>
  640. </button>
  641. <button id="button2" class="btn2_letter2" style="left:219px; top:155px; width:42px; height:19px; ">
  642. <caption>검색</caption>
  643. <script type="javascript" ev:event="DOMActivate">
  644. <![CDATA[
  645. fSrchFolderNM();
  646. ]]>
  647. </script>
  648. </button>
  649. <button id="btn_makedset" class="btn2_letter7" style="left:5px; top:65px; width:97px; height:19px; ">
  650. <caption>SET수정/등록</caption>
  651. <script type="javascript" ev:event="DOMActivate">
  652. <![CDATA[
  653. var xpt = window.screenleft;
  654. var ypt = window.screentop;
  655. setParameter("SPAER00803_setkind", "400");
  656. modal("SPAER00803", 1, xpt + 15, ypt+33);
  657. rdo_setflag.dispatch("onclick");
  658. ]]>
  659. </script>
  660. </button>
  661. <input id="ipt_foldnm" ref="/root/main/prmscond/foldernm" style="left:90px; top:155px; width:125px; height:19px; ">
  662. <script type="javascript" ev:event="onkeypress">
  663. <![CDATA[
  664. inputEnterKey("btn_srch", "DOMActivate");
  665. ]]>
  666. </script>
  667. </input>
  668. <select1 id="cmb_deptset" ref="/root/main/prmscond/deptsetcd" disabled="true" appearance="minimal" style="left:46px; top:129px; width:194px; height:19px; ">
  669. <choices>
  670. <itemset nodeset="/root/init/orddept/dept">
  671. <label ref="depthngnm"/>
  672. <value ref="deptcd"/>
  673. </itemset>
  674. </choices>
  675. <script type="javascript" ev:event="xforms-value-changed">
  676. <![CDATA[
  677. model.setValue("/root/main/prmscond/setdata/deptsetcd", model.getValue("/root/main/prmscond/deptsetcd") );
  678. readfunc();
  679. ]]>
  680. </script>
  681. </select1>
  682. <caption id="caption12" class="search_name" style="left:15px; top:156px; width:86px; height:17px; ">폴더명 :</caption>
  683. <button id="btn_setsrch" class="btn2_letter8" visibility="hidden" style="left:103px; top:65px; width:108px; height:19px; ">
  684. <caption>SET전체항목조회</caption>
  685. <script type="javascript" ev:event="DOMActivate">
  686. <![CDATA[
  687. ]]>
  688. </script>
  689. </button>
  690. <datagrid id="grd_rsltlist" nodeset="/root/main/rsltinfo/rsltlist" caption="caption1|caption1|caption1" colsep="^" colwidth="0" frozencols="4" rowheader="seq" rowsep="|" selectionmode="free" style="left:308px; top:90px; width:940px; height:830px; ">
  691. <col/>
  692. <script type="javascript" ev:event="oncopy">
  693. <![CDATA[
  694. ]]>
  695. </script>
  696. </datagrid>
  697. <button id="button1" class="btn2_letter2" visibility="visible" style="left:1160px; top:65px; width:42px; height:19px; ">
  698. <caption>출력</caption>
  699. <script type="javascript" ev:event="DOMActivate">
  700. <![CDATA[
  701. model.makeValue("/root/main/cond/orddeptnm" , cmb_orddept.label);
  702. model.makeValue("/root/main/cond/subdeptnm" , cmb_subdept.label);
  703. model.makeValue("/root/main/cond/mdeispclnm" , cmb_medispclid.label);
  704. model.makeValue("/root/main/cond/atdoctnm" , cmb_atdoctid.label);
  705. model.makeValue("/root/main/cond/wardcdnm" , cmb_wardcd.label);
  706. //출력한다.
  707. exeReportPreview("RPMMI00401", "XMLSTR", "/root/main/rsltinfo/rsltlist");
  708. ]]>
  709. </script>
  710. </button>
  711. <button id="button3" class="btn2_letter2" style="left:1205px; top:65px; width:42px; height:19px; ">
  712. <caption>엑셀</caption>
  713. <script type="javascript" ev:event="DOMActivate">
  714. <![CDATA[
  715. var colValue = "";
  716. var cols = grd_rsltlist.cols;
  717. for (var i = 5; i < cols ; i++) {
  718. colValue= colValue + ", col_" + i + ":label";
  719. }
  720. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  721. if (fileName != ""){
  722. grd_rsltlist.saveExcel(fileName, "sheetname:sheet1;colhiddenextend:false;rowhiddenextend:false;;;" + colValue+ ";")
  723. // grd_rsltlist.saveExcel(fileName , "SheetName" , true, true, "", "", true);
  724. }
  725. ]]>
  726. </script>
  727. </button>
  728. <datagrid id="datagrid5" nodeset="/root/hidden/tmp" visibility="hidden" caption="caption1^caption3^caption2" colsep="^" colwidth="100, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:510px; top:480px; width:350px; height:150px; ">
  729. <col ref="row"/>
  730. <col ref="col"/>
  731. <col ref="value"/>
  732. </datagrid>
  733. </group>
  734. <group id="group1" style="left:0px; top:0px; width:1194px; height:13px; ">
  735. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:106px; height:14px; ">결과조회</caption>
  736. </group>
  737. </xhtml:body>
  738. </xhtml:html>