SPMMD01600_항생제처방관리시스템.xrw 43 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081
  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>CDSS 항생제</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <cond>
  11. <resnflagno>11</resnflagno>
  12. <lrgno/>
  13. <mdlno/>
  14. <smlno/>
  15. </cond>
  16. <antibiodetaillist>
  17. <info>
  18. <comcd/>
  19. <histseq/>
  20. <drugmthdspccd/>
  21. <prcpcd/>
  22. <prcpnm/>
  23. <prcpvol/>
  24. <prcpqty/>
  25. <prcptims/>
  26. <prcpdayno/>
  27. <drugmthdspccdnm/>
  28. </info>
  29. </antibiodetaillist>
  30. <prcp>
  31. </prcp>
  32. <antibiorecommlist/>
  33. <paramlist/>
  34. <paminfo/>
  35. <senddata/>
  36. <antibiotics>
  37. <antibioticslist>
  38. <anticlscd>20</anticlscd>
  39. <addyn/>
  40. <resncd/>
  41. <resnetc/>
  42. </antibioticslist>
  43. </antibiotics>
  44. <codedata>
  45. <popupmenu>
  46. <grid>
  47. <item>
  48. <name>삭제</name>
  49. <func>fDeleteRow</func>
  50. </item>
  51. </grid>
  52. </popupmenu>
  53. </codedata>
  54. <cdssdruglist/>
  55. </main>
  56. <drugcalc>
  57. <prcpvol/>
  58. <prcpqty/>
  59. <prcptims/>
  60. </drugcalc>
  61. <send>
  62. <cond1/>
  63. <cond2/>
  64. <cond3/>
  65. <cond4/>
  66. <cond5/>
  67. <cond6/>
  68. <cond99/>
  69. <reqdata/>
  70. <condition>
  71. <srchflag>S</srchflag>
  72. <srchnm/>
  73. </condition>
  74. <reqdata/>
  75. </send>
  76. <prcpsrch>
  77. <prcplist>
  78. </prcplist>
  79. </prcpsrch>
  80. <hidden>
  81. <icomment/>
  82. <smlcomment/>
  83. <addflag/>
  84. </hidden>
  85. <init>
  86. <M0342list/>
  87. <hardcode/>
  88. <hard/>
  89. </init>
  90. <prcpsrch/>
  91. <prcptemp/>
  92. <prcpdel/>
  93. <tmedmthd>
  94. <tmedmthdlist>
  95. <status/>
  96. <abbrnm/>
  97. <mthdcnts/>
  98. <mthdcd/>
  99. <basecnt/>
  100. <adminpath/>
  101. <mealflag/>
  102. <drdirecyn/>
  103. </tmedmthdlist>
  104. </tmedmthd>
  105. </root>
  106. </instance>
  107. <submission id="TRMMD01608" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/antibiorecommlist"/>
  108. <submission id="TRMMD01605" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/prcp"/>
  109. <submission id="submission1" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/antibiodetaillist"/>
  110. <submission id="TRMMO00100" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/prcpsrch"/>
  111. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" replace="instance"/>
  112. <submission id="TRMMD01607" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/cdssdruglist"/>
  113. <submission id="TRMMO01901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/tmedmthd"/>
  114. <submission id="TRMMB04103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/init/hard/hardcd" resultref="/root/init/hardcode"/>
  115. <submission id="TRMMD01702" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/reqdata" resultref="/root/main/antibiorecommlist"/>
  116. <script type="javascript" ev:event="xforms-model-construct">
  117. <![CDATA[
  118. model.removeNodeset ( "/root/main/prcp/prcplist" );
  119. ]]>
  120. </script>
  121. <script type="javascript" ev:event="xforms-ready">
  122. <![CDATA[
  123. reqHardCodeInfo("/root/init/hard","/root/init/hardcode","86");
  124. if(model.getValue("/root/init/hardcode/hardcd/hardcd")=="N"){
  125. button26.visible = false;
  126. }
  127. else if(model.getValue("/root/init/hardcode/hardcd/hardcd")=="Y"){
  128. button26.visible = true;
  129. }
  130. body.disabled = false;
  131. zbcfGetCodeList(new Array("M0342"),
  132. new Array("/root/init/M0342list"));
  133. button3.selected = true;
  134. if(getUserId() != "EMR"){ // 'EMR'로 로긴시에는 처방되도록 처리
  135. // 버튼 권한 처리 20080319 정연우 , 권한체크시 문제가 발생 공통팀 조치 후 풀 예정 20080819 임우성
  136. //if(checkAuth("R")) { // 읽기 권한이 있을때 로드시 데이터 세팅.
  137. // 2008.09.12 초기는 아무것도 선택되지 않도록 처리
  138. fSetData();
  139. //}
  140. /* 권한체크시 문제가 발생 공통팀 조치 후 풀 예정 20080819 임우성
  141. button1.disabled = !checkAuth("R"); // Prophylaxis
  142. button8.disabled = !checkAuth("R"); // Empirical
  143. button3.disabled = !checkAuth("R"); // Targeted therapy
  144. btn_srchanti.disabled= !checkAuth("R"); // 검색
  145. button26.disabled = !checkAuth("X"); // 항생제추가
  146. button2.disabled = !checkAuth("R"); // 항생제사용력
  147. */
  148. //if(opener.model.getValue ( "/root/usge" ) == "") { // 메뉴에서 항생제처방관리시스템 선택으로 팝업시 확인버튼 disable(처방에서 팝업시 /root/usge 값 "prcp")
  149. //button92.disabled = true;
  150. //}
  151. } else {
  152. // 2008.09.12 초기는 아무것도 선택되지 않도록 처리
  153. fSetData(); // 'EMR'로 로긴시에는 데이터 보이도록
  154. //if(opener.model.getValue ( "/root/usge" ) == "") { // 메뉴에서 항생제처방관리시스템 선택으로 팝업시 확인버튼 disable(처방에서 팝업시 /root/usge 값 "prcp")
  155. //button92.disabled = true;
  156. //}
  157. }
  158. ]]>
  159. </script>
  160. </model>
  161. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  162. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  163. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  164. <script type="javascript" src="../../../emr/prcpmngtweb/js/MMO001.js"/>
  165. <script type="javascript" src="../../../emr/prcpmngtweb/js/SMMMO00100.js"/>
  166. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  167. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  168. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  169. <script type="javascript">
  170. <![CDATA[
  171. function fInit(){
  172. if(button1.selected == true || button8.selected == true || button3.selected == true) {
  173. //if(button1.selected == true || button8.selected == true ) {
  174. //button26.visible = true;
  175. button26.disabled = false;
  176. //button26.refresh();
  177. }
  178. grp_comcd.visible = false;
  179. model.removeNodeset("/root/send/reqdata");
  180. model.removeNodeset("/root/main/antibiorecommlist");
  181. model.setValue("/root/hidden/icomment", "");
  182. txt_comment.refresh();
  183. model.setValue("/root/hidden/smlcomment", "");
  184. txt_smlcomment.refresh();
  185. model.removeNodeset("/root/main/antibiodetaillist");
  186. model.setFocus("input17");
  187. input17.disabled = false;
  188. model.setValue("/root/send/condition/srchflag","S");
  189. // model.removeNodeset("/root/main/prcp");
  190. // model.makeNode("/root/main/prcp");
  191. model.refresh();
  192. return;
  193. }
  194. function fDeleteRow() {
  195. var selectedRows = grd_prcplist.selectedRows;
  196. //selectedRows = grd_prcplist.row;
  197. //alert(selectedRows);
  198. //alert(grd_prcplist.row);
  199. var node = instance1.selectSingleNode("/root/main/prcp");
  200. var cnt=0;
  201. var prcpNode = "/root/main/prcp/prcplist";
  202. if (grd_prcplist.row<0){
  203. return;
  204. }
  205. for (i= selectedRows-1; i >= 0; i--){
  206. //삭제시 되살리기를 위해 버퍼에 저장한다.
  207. //alert("grd_prcplist.selectedrow(i) : "+grd_prcplist.selectedrow(i));
  208. fPrcpBuffer( ++cnt, grd_prcplist.selectedrow(i), "/root/prcpdel", prcpNode );
  209. // removeNode 이다.
  210. model.removeNode ( prcpNode + "[" + grd_prcplist.selectedrow(i) + "]" );
  211. }
  212. grd_prcplist.rebuild();
  213. }
  214. function fRecommendedList(resnFlag, smlNo, drugkind){
  215. var gridRow = ivw_prophylaxis.grd_smlno.selectedRow(0);
  216. model.removeNodeset("/root/send/reqdata");
  217. model.removeNodeset("/root/main/antibiodetaillist");
  218. model.setValue("/root/hidden/icomment", "");
  219. txt_comment.refresh();
  220. model.makeValue("/root/hidden/smlcomment", ivw_prophylaxis.model.getValue("/root/main/antibiosmlnolist/info["+ gridRow + "]/smlcomment"));
  221. txt_smlcomment.refresh();
  222. model.makeValue("/root/send/reqdata/smlno", smlNo);
  223. model.makeValue("/root/send/reqdata/resnflag", resnFlag);
  224. model.makeValue("/root/send/reqdata/drugkind", drugkind);
  225. submit("TRMMD01608");
  226. //2008.09.18 pymi
  227. grd_antibiorecommlist.allStyle("all", "background-color") = "#ffffff";
  228. //grd_antibiorecommlist.select(1,1) = true;
  229. // grd_antibiorecommlist.mergecol(0)=false;
  230. // grd_antibiorecommlist.mergecol(2)=false;
  231. grd_antibiorecommlist.mergeCellsFixedCols="bycol";
  232. //fDetailList(1);
  233. return;
  234. }
  235. function fDetailList(gridRow){
  236. //alert(gridRow);
  237. if(grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows >= 1 ){
  238. model.makeValue("/root/hidden/icomment", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/icomment"));
  239. if( ivw_prophylaxis.model.getValue("/root/hidden/resnflagno") == "12" ){
  240. model.makeValue("/root/hidden/smlcomment", model.getValue("/root/main/antibiorecommlist/info["+ gridRow + "]/smlcomment"));
  241. txt_smlcomment.refresh();
  242. }
  243. model.refresh();
  244. }
  245. return;
  246. }
  247. //destRow 선택된 아이템에 copy할 행
  248. //srcRow 추천항생제그리드에서 선택한 행
  249. function fAntibioDetailCopy(srcRow, destRow){
  250. //var selCurRow = grd_prcplist.rows - grd_prcplist.fixedRows;
  251. //처방 검색 성공시 처리
  252. if( !isNull(model.getValue("/root/prcpsrch/prcplist/prcpcd" ))){
  253. if( destRow > 0 ){
  254. if( !isNull(model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpvol" ))){
  255. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/prcpvol" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpvol" ));
  256. }
  257. if( !isNull(model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpqty" ))){
  258. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/prcpqty" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpqty" ));
  259. }
  260. if( !isNull(model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcptims" ))){
  261. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/prcptims" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcptims" ));
  262. }
  263. if( !isNull(model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpdayno" ))){
  264. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/prcpdayno" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/prcpdayno" ));
  265. }
  266. if( !isNull(model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/drugmthdspccd" ))){
  267. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/drugmthdspccd" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/drugmthdspccd" ));
  268. model.setValue("/root/main/prcp/prcplist[" + destRow + "]/drugmthdspccdnm" , model.getValue("/root/main/antibiorecommlist/info[" + srcRow + "]/drugmthdspccdnm" ));
  269. }
  270. }
  271. }
  272. }
  273. function fAddPrcpList(prcpcd, srcRow){
  274. var prcpdd = "";
  275. if ( isPopup() && !isNull(opener.model.getValue ( "/root/init/prcpdd" ))) {
  276. prcpdd = opener.model.getValue ( "/root/init/prcpdd" );
  277. } else {
  278. prcpdd = getCurrentDate();
  279. }
  280. if(!isPopup()){
  281. fPrcpSrchCom ( prcpcd, prcpdd, "00", "TRMMO00100", "-", false, "getPrcpCdSrchInfo" );
  282. }else{
  283. fPrcpSrchCom ( prcpcd, prcpdd, opener.model.getValue ( "/root/paminfo/list/insukind"), "TRMMO00100", "-", false, "getPrcpCdSrchInfo" );
  284. }
  285. appendChildPrcp ( "/root/prcpsrch/prcplist" , "/root/main/prcp", "main", "I" );
  286. model.refresh();
  287. if( srcRow > 0 ){
  288. fAntibioDetailCopy(srcRow, grd_prcplist.rows- grd_prcplist.fixedRows);
  289. model.refresh();
  290. }
  291. }
  292. function fSetAntibioAdd(){
  293. model.removeNodeset("/root/main/paramlist");
  294. model.makeNode("/root/main/paramlist");
  295. var strCSV = getParameter("saveparam");
  296. setCSVToNode("/root/main/paramlist", strCSV, "info");
  297. //var rowBfr = grd_prcplist.rows- grd_prcplist.fixedRows;
  298. if( fSetRemAdd()){// 추가사항입력받는부분
  299. var node = instance1.selectNodes("/root/main/paramlist/info");
  300. for( rownum=1 ; rownum <= node.length ; rownum++ ){
  301. var prcpcd = model.getValue ( "/root/main/paramlist/info[" + rownum + "]/prcpcd" );
  302. var nodeListPrcp = instance1.selectNodes("/root/main/prcp/prcplist[prcpcd = '"+prcpcd+"']");
  303. if ( nodeListPrcp != null && nodeListPrcp.length > 0 ){
  304. continue;
  305. }
  306. //model.setValue("/root/hidden/addflag", "Y");
  307. fAddPrcpList(prcpcd, 0); //항생제추천에 있는항목이 아니므로 항생제추천 그리드의 항목copy가 불필요하므로 srcRow : 0
  308. //rowBfr = rowBfr + 1;
  309. if( !isNull(model.getValue("/root/prcpsrch/prcplist/prcpcd" ))){
  310. fMakeRemNode("Y");//추가사항 넘겨주는 노드생성
  311. }
  312. grd_prcplist.rebuild();
  313. }
  314. setParameter("saveparam", "");
  315. // 항생제 추가화면에서 계속 추가할수 있도록 modal유지
  316. body.disabled = true;
  317. return true;
  318. }else {
  319. return false;
  320. }
  321. }
  322. function fSetRemAdd(prcpcd){
  323. var saveFlagInfoNodeList = instance1.selectNodes( "/root/main/antibiotics/antibioticslist[addyn='Y']" );
  324. if( saveFlagInfoNodeList == null || saveFlagInfoNodeList.length <= 0 ){
  325. modal("SPMMD03100", "", "", "", "popup", "", "");
  326. //modal("SPMMD03100");
  327. if(getParameter("SPMMD01600_useyn") != "Y"){
  328. setParameter("SPMMD01600_useyn",""); //clear
  329. return false;
  330. }
  331. }
  332. setParameter("SPMMD01600_useyn",""); //clear
  333. return true;
  334. }
  335. /*
  336. 선택 항생제에 항생제사용여부저장을 위한 컬럼 생성
  337. /root/main/prcp/prcplist/tempcol8: antibiotics|~
  338. */
  339. function fMakeRemNode(pAddYn){
  340. var rowCur = grd_prcplist.rows - grd_prcplist.fixedRows;
  341. var lrgno = "";
  342. var mdlno = "";
  343. var smlno = "";
  344. var resncd = "";
  345. var resnetc = "";
  346. var antibioflag = "";
  347. var gridRow = 0;
  348. var lrgno = 0;
  349. var mdlno = 0;
  350. var smlno = "";
  351. var limdayno = "";
  352. // for( idx = 1 ; idx <= grd_prcplist.rows - grd_prcplist.fixedRows ; idx++ ){
  353. // }
  354. // model.makeValue("/root/main/antibiotics/antibioticslist/anticlscd", "20");//20: 항생제, 10: 추천항생제
  355. // model.makeValue("/root/main/antibiotics/antibioticslist/antibioflag", model.getValue("/root/main/cond/resnflagno"));//Prophylaxis:11, Targeted therapy:12, Empirical:13
  356. //항생제 추가를 통해 추가될경우 대중소분류가 존재하지 않는다. pAddYn = "Y" 항생제 추가버튼을 통해 추가
  357. //항생제 추가사유는 추가버튼을 통해 추가될경우에만 입력된다.
  358. if( pAddYn != "Y"){
  359. antibioflag = model.getValue("/root/main/cond/resnflagno");//antibioflag Prophylaxis:11, Targeted therapy:12, Empirical:13
  360. if ( antibioflag == "12"){
  361. lrgno = 0;
  362. mdlno = 0;
  363. gridRow = grd_antibiorecommlist.selectedRow(0);
  364. smlno = model.getValue("/root/main/antibiorecommlist/info[" + gridRow + "]/smlno");
  365. } else {
  366. gridRow = ivw_prophylaxis.grd_lrgno.selectedRow(0);
  367. lrgno = ivw_prophylaxis.model.getValue("/root/main/antibiolrgnolist/info[" + gridRow + "]/lrgno");
  368. gridRow = ivw_prophylaxis.grd_mdlno.selectedRow(0);
  369. mdlno = ivw_prophylaxis.model.getValue("/root/main/antibiomdlnolist/info[" + gridRow + "]/mdlno");
  370. gridRow = ivw_prophylaxis.grd_smlno.selectedRow(0);
  371. smlno = ivw_prophylaxis.model.getValue("/root/main/antibiosmlnolist/info[" + gridRow + "]/smlno");
  372. }
  373. resncd = "";
  374. resnetc = "";
  375. }else {
  376. lrgno = "";
  377. mdlno = "";
  378. smlno = "";
  379. resncd = model.getValue("/root/main/antibiotics/antibioticslist/resncd");
  380. resnetc = model.getValue("/root/main/antibiotics/antibioticslist/resnetc");
  381. antibioflag = "";
  382. }
  383. //선택된 항생제의 제한처방일수
  384. gridRow = grd_antibiorecommlist.selectedRow(0);
  385. limdayno = model.getValue("/root/main/antibiorecommlist/info[" + gridRow + "]/limdayno");
  386. if (limdayno == "") {
  387. limdayno = "3";
  388. }
  389. var strParam = "antibiotics|" +
  390. "20" + "|"+ //anticlscd 20: 항생제, 10: 추천항생제
  391. antibioflag + "|"+
  392. lrgno + "|"+
  393. mdlno + "|"+
  394. smlno + "|"+
  395. pAddYn + "|"+
  396. resncd + "|"+
  397. resnetc + "|"+
  398. limdayno + "|"+
  399. ""; //LimAprvNo
  400. //copyNodesetType("/root/antibiotics","/root/main/antibiotics","replace",opener.model,model);
  401. //삭제 후 원내보유항생제 더블클릭시 오류 수정 by 손주연 2007-12-27
  402. if( rowCur < 1 ) {
  403. rowCur = 1;
  404. }
  405. model.makeNode("/root/main/prcp/prcplist["+rowCur+"]/tempcol8");
  406. model.setValue("/root/main/prcp/prcplist["+rowCur+"]/tempcol8", strParam);
  407. }
  408. function fShowSearchList() {
  409. grp_comcd.visible= true;
  410. }
  411. function fSearchNo(){
  412. //grp_comcd.visible= false;
  413. var sCondPath = "/root/send/reqdata";
  414. var sSrchNm = model.getValue("/root/send/condition/srchnm");
  415. if( sSrchNm.length == "" ) {
  416. messageBox("검색어를","C001");
  417. return ;
  418. }
  419. model.makeNode(sCondPath + "/srchflag" );
  420. model.setValue(sCondPath + "/srchflag" , model.getValue("/root/send/condition/srchflag"));
  421. model.makeNode(sCondPath + "/resnflagno" );
  422. if(button1.selected == true){
  423. model.setValue(sCondPath+ "/resnflagno" , 11);
  424. } else if(button8.selected == true){
  425. model.setValue(sCondPath+ "/resnflagno" , 13);
  426. }
  427. model.makeNode(sCondPath + "/srchnm" );
  428. model.setValue(sCondPath+ "/srchnm" , sSrchNm);
  429. //model.copyNode("/root/send/reqdata", "/root/send/condition");
  430. submit("TRMMD01607");
  431. grp_comcd.visible= true;
  432. }
  433. function fSetData(){
  434. fInit();
  435. if(button1.selected == true){
  436. model.setValue("/root/main/cond/resnflagno", 11);
  437. model.setValue("/root/main/cond/lrgno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/lrgno"));
  438. model.setValue("/root/main/cond/mdlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/mdlno"));
  439. model.setValue("/root/main/cond/smlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/smlno"));
  440. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01800_항생제Prophylaxis.xrw";
  441. button1.selected = true;
  442. } else if(button8.selected == true){
  443. model.setValue("/root/main/cond/resnflagno", 13);
  444. model.setValue("/root/main/cond/lrgno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/lrgno"));
  445. model.setValue("/root/main/cond/mdlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/mdlno"));
  446. model.setValue("/root/main/cond/smlno", model.getValue("/root/main/cdssdruglist/cdssinfo[" + grd_cdssdruglist.row + "]/smlno"));
  447. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02000_항생제Empirical.xrw";
  448. button8.selected = true;
  449. } else if(button3.selected == true) {
  450. // grd_antibiorecommlist.colhidden(0) = false;
  451. model.setValue("/root/main/cond/resnflagno", 12);
  452. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01900_항생제Targeted therapy.xrw";
  453. }
  454. grp_comcd.visible= false;
  455. }
  456. function fSearchInit() {
  457. model.setValue("/root/main/cond/lrgno", "");
  458. model.setValue("/root/main/cond/mdlno", "");
  459. model.setValue("/root/main/cond/smlno", "");
  460. // 검색창 데이터 삭제
  461. model.removeNodeset("/root/main/cdssdruglist/cdssinfo" );
  462. model.setValue("/root/send/condition/srchnm", "");
  463. }
  464. function fDelUndo_antibio () {
  465. // 복사할 소스노드를 선택한다.
  466. var srcNodeList = model.instances(0).selectNodes("/root/prcpdel/prcplist");
  467. //복사하기 위해 대상노드를 선택한다.
  468. var destNode = model.instances(0).selectSingleNode("/root/main/prcp");
  469. if ( srcNodeList.length == 0 ) { // srcNodeList.length : 선택된 행의 갯수
  470. messageBox ( "되살릴 삭제 데이터가", "I004" );
  471. return;
  472. }
  473. for (i= srcNodeList.length; i >= 1; i--) {
  474. //대상노드로 복사한다.
  475. //model.duplicate ( "/root/main/prcp", "/root/prcpdel/prcplist[" + i + "]", "*[" + insRow + "]" );
  476. destNode.appendChild(srcNodeList.item(i-1).cloneNode(true));
  477. }
  478. model.recalculate();
  479. grd_prcplist.refresh();
  480. fPrcpColor();
  481. //되살리기 한번만 해달라는 장효은 선생님 요청
  482. model.removeNodeset ( "/root/prcpdel/prcplist" );
  483. }
  484. ]]>
  485. </script>
  486. </xhtml:head>
  487. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  488. <group id="grp_tle" style="left:0px; top:0px; width:1175px; height:13px; ">
  489. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:162px; height:14px; ">CDSS 항생제</caption>
  490. </group>
  491. <group id="grp_btn" style="left:0px; top:757px; width:1175px; height:27px; ">
  492. <button id="button92" class="btn4_letter2" style="left:1057px; top:3px; width:56px; height:22px; ">
  493. <caption>확인</caption>
  494. <script type="javascript" ev:event="DOMActivate">
  495. <![CDATA[
  496. // var nodeList = instance1.selectNodes("/root/main/prcp/prcplist[prcpdelivefact='Y' and status = 'I']");
  497. //
  498. // if( grd_prcplist.rows- grd_prcplist.fixedRows > 0
  499. // && (no deList != null && nodeList.length > 0)){
  500. // if(fSetRemAdd()){// 추가사항입력받는부분 여기아니라 주석처리
  501. // fMakeRemNode("Y");//추가사항 넘겨주는 노드생성
  502. // for( idx = 1 ; idx <= grd_prcplist.rows- grd_prcplist.fixedRows ; idx++ ){
  503. // model.setValue("/root/main/prcp/prcplist["+idx+"]/prcpdelivefact", "");
  504. // }
  505. // }else {
  506. // return;
  507. // }
  508. // }else{
  509. // fMakeRemNode("");
  510. // }
  511. // 20080925 항생제 추가 후 그리드 editting을 위해 화면 정보 get by MoonSH
  512. setParameter( "SPMMD01600_flag", "Y" );
  513. if ( opener.model.getValue ( "/root/usge" ) == "prms" ) {
  514. var srcNodeList = model.instances(0).selectNodes("/root/main/prcp/prcplist");
  515. var destNode = opener.model.instances(0).selectSingleNode("/root/main/prcp");
  516. var cnt = 0;
  517. for ( i=0; i < srcNodeList.length; i++ ){
  518. cnt = i + 1;
  519. if ( model.getValue ( "/root/main/prcp/prcplist[" + cnt + "]/status") == "I" ) {
  520. destNode.appendChild(srcNodeList.item(i).cloneNode(true));
  521. }
  522. }
  523. } else {
  524. //opener. model.setValue( "/root/init/antibioticsyn", "Y" );
  525. addPrcp ( "child", "/root/main/prcp/prcplist", "/root/main/prcp", "Y", "status", "I", grd_prcplist, "N", "17");
  526. }
  527. var chkNodeList = model.instances(0).selectNodes("/root/main/prcp/prcplist");
  528. if(chkNodeList.length == 0) {
  529. messageBox("선택된 항생제가 ", "I004");
  530. }
  531. //opener.grd_prcplist.col = opener.grd_prcplist.colref("prcpnm");
  532. //opener.grd_prcplist.editCell();
  533. window.close();
  534. ]]>
  535. </script>
  536. </button>
  537. <button id="button4" class="btn4_letter2" style="left:1114px; top:3px; width:56px; height:22px; ">
  538. <caption>닫기</caption>
  539. <script type="javascript" ev:event="DOMActivate">
  540. <![CDATA[
  541. window.close();
  542. ]]>
  543. </script>
  544. </button>
  545. <button id="button26" class="btn3_letter5" disabled="true" visibility="hidden" style="left:110px; top:3px; width:92px; height:22px; ">
  546. <caption>항생제추가</caption>
  547. <script type="javascript" ev:event="DOMActivate">
  548. <![CDATA[
  549. modal("SPMMD02800");
  550. // fSetAntibioAdd();
  551. ]]>
  552. </script>
  553. </button>
  554. <button id="button2" class="btn3_letter6" style="left:4px; top:3px; width:104px; height:22px; ">
  555. <caption>항생제사용력</caption>
  556. <script type="javascript" ev:event="DOMActivate">
  557. <![CDATA[
  558. var strParam = "";
  559. var pamInfoCvs = getGlobalVariable("paminfo"); //상단정보가 있을 경우는 검색
  560. var pid = "";
  561. if(pamInfoCvs != ""){ //cvs가 ""이 아닌 경우에만 처리함.
  562. model.removeNodeSet("/root/main/paminfo/list");
  563. setCSVToNode("/root/main/paminfo", pamInfoCvs);
  564. var ioflag = model.getValue("/root/main/paminfo/list/ioflag");
  565. if(ioflag == "I" || ioflag == "E"){
  566. pid = model.getValue("/root/main/paminfo/list/pid");
  567. indd = model.getValue("/root/main/paminfo/list/indd");
  568. }else if(ioflag == "O"){
  569. pid = model.getValue("/root/main/paminfo/list/pid");
  570. indd = model.getValue("/root/main/paminfo/list/orddd");
  571. }else{
  572. var rtn = messageBox("상단의 정보와 ", "E004");
  573. return;
  574. }
  575. strParam = pid + "▩"+ //pid
  576. indd + "▩"+ //fromdd
  577. getCurrentDate() ;//todd
  578. }
  579. // strParam = "00046462" + "▩"+ //pid
  580. // "20060529" + "▩"+ //fromdd
  581. // getCurrentDate() ;//todd
  582. setParameter("SMMMO02400_cond", strParam);
  583. open("SPMMO02400");
  584. ]]>
  585. </script>
  586. </button>
  587. </group>
  588. <group id="grp_biz" scroll="auto" style="left:0px; top:15px; width:1175px; height:743px; ">
  589. <datagrid id="grd_antibiorecommlist" nodeset="/root/main/antibiorecommlist/info" autoresize="true" caption="Rank^코드^확장코드^추천 항생제^코드^원내보유 항생제^투여경로^caption1" colsep="^" colwidth="39, 68, 57, 110, 251, 234, 60, 15, 20, 12" extendlastcol="scroll" fixedcols="4" rowsep="|" mergeCellsFixedCols="bycol" style="left:360px; top:315px; width:810px; height:210px; ">
  590. <col ref="rank" visibility="hidden"/>
  591. <col ref="comcd" visibility="hidden"/>
  592. <col ref="comexcd" visibility="hidden"/>
  593. <col ref="comnm"/>
  594. <col ref="prcpcd"/>
  595. <col ref="prcpnm"/>
  596. <col disabled="true" ref="drugkind" type="combo" visibility="hidden">
  597. <choices>
  598. <itemset nodeset="/root/init/M0342list/M0342">
  599. <label ref="cdnm"/>
  600. <value ref="cdid"/>
  601. </itemset>
  602. </choices>
  603. </col>
  604. <col ref="histseq" visibility="hidden"/>
  605. <col ref="refseq" visibility="hidden"/>
  606. <col ref="icomment" visibility="hidden"/>
  607. <script type="javascript" ev:event="ondblclick">
  608. <![CDATA[
  609. if(grd_antibiorecommlist.col < 4) {
  610. return;
  611. }
  612. var srcRow = grd_antibiorecommlist.mouseRow;
  613. var lastRow = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  614. if( srcRow > 0 && srcRow <= lastRow ){
  615. var prcpcd = model.getValue ( "/root/main/antibiorecommlist/info[" + srcRow + "]/prcpcd" );
  616. for ( var idx = 1; idx <= lastRow ; idx++ ){
  617. var destRow = grd_prcplist.findRow(prcpcd, idx, grd_prcplist.colRef("prcpcd"), false, true);
  618. }
  619. if ( destRow > 0 ){
  620. fAntibioDetailCopy(srcRow, destRow);
  621. model.refresh();
  622. return;
  623. }
  624. fAddPrcpList(prcpcd, srcRow);
  625. if( !isNull(model.getValue("/root/prcpsrch/prcplist/prcpcd" ))){
  626. fMakeRemNode("");
  627. }
  628. // rowBfr = grd_prcplist.rows - grd_prcplist.fixedRows;
  629. // model.makeValue("/root/main/prcp/prcplist["+(rowBfr )+"]/tempcol8", "");
  630. grd_prcplist.rebuild();
  631. }
  632. ]]>
  633. </script>
  634. <script type="javascript" ev:event="onclick">
  635. <![CDATA[
  636. //코드입력이 완료되지 않았을 경우 원내보유 항생제 조회가 되지 않도록...2007-12-29 손주연 수정 시작
  637. if( grd_antibiorecommlist.row > 0 ) {
  638. if ( (grd_antibiorecommlist.rowstatus( grd_antibiorecommlist.row ) == 1 ) ||
  639. (grd_antibiorecommlist.rowstatus( grd_antibiorecommlist.row ) == 3 ) ){
  640. if( model.getValue(grd_antibiorecommlist.nodeset + "[" + grd_antibiorecommlist.row + "]/smlno" ) == "" ) {
  641. grd_antibiorecommlist.editCell();
  642. }
  643. return ;
  644. }
  645. }
  646. //.2007-12-29 손주연 수정 종료
  647. var curRow = grd_antibiorecommlist.mouseRow;
  648. var lastRow = grd_antibiorecommlist.rows - grd_antibiorecommlist.fixedRows;
  649. if( curRow > 0 && curRow <= lastRow ){
  650. if ( grd_antibiorecommlist.col == grd_antibiorecommlist.colref("prcpcd")
  651. || grd_antibiorecommlist.col == grd_antibiorecommlist.colref("prcpnm") ){
  652. fDetailList(grd_antibiorecommlist.row);
  653. }else if ( grd_antibiorecommlist.col == grd_antibiorecommlist.colref("rank")
  654. || grd_antibiorecommlist.col == grd_antibiorecommlist.colref("comnm")) {
  655. grd_antibiorecommlist.editCell();
  656. }
  657. }
  658. ]]>
  659. </script>
  660. </datagrid>
  661. <caption id="caption1" class="tit_2" style="left:366px; top:295px; width:350px; height:13px; ">Recommended Antibiotics and 원내보유항생제</caption>
  662. <caption id="caption2" class="tit_2" style="left:366px; top:60px; width:348px; height:13px; ">참고 정보</caption>
  663. <line id="line2" class="line_1" style="x1:360px; y1:75px; x2:1170px; y2:75px; "/>
  664. <line id="line5" class="line_1" style="x1:360px; y1:310px; x2:1170px; y2:310px; "/>
  665. <button id="button1" class="btn_sw" group="tab" style="left:0px; top:5px; width:89px; height:22px; ">
  666. <caption>Prophylaxis</caption>
  667. <script type="javascript" ev:event="DOMActivate">
  668. <![CDATA[
  669. fInit();
  670. // 탭 재선택시 조회 데이터 초기화
  671. fSearchInit();
  672. model.setValue("/root/main/cond/resnflagno", 11);
  673. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01800_항생제Prophylaxis.xrw";
  674. ]]>
  675. </script>
  676. </button>
  677. <button id="button3" class="btn_sw" group="tab" style="left:168px; top:5px; width:118px; height:22px; ">
  678. <caption>Targeted therapy</caption>
  679. <script type="javascript" ev:event="DOMActivate">
  680. <![CDATA[
  681. fInit();
  682. grd_antibiorecommlist.colhidden(0) = false;
  683. model.setValue("/root/main/cond/resnflagno", 12);
  684. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD01900_항생제Targeted therapy.xrw";
  685. ]]>
  686. </script>
  687. </button>
  688. <button id="button8" class="btn_sw" group="tab" style="left:89px; top:5px; width:79px; height:22px; ">
  689. <caption>Empirical</caption>
  690. <script type="javascript" ev:event="DOMActivate">
  691. <![CDATA[
  692. fInit();
  693. // 탭 재선택시 조회 데이터 초기화
  694. fSearchInit();
  695. model.setValue("/root/main/cond/resnflagno", 13);
  696. ivw_prophylaxis.src = "../../../emr/cpcdssweb/xrw/SPMMD02000_항생제Empirical.xrw";
  697. ]]>
  698. </script>
  699. </button>
  700. <line id="line8" class="line_1" style="x1:711px; y1:550px; x2:1170px; y2:550px; "/>
  701. <datagrid id="grd_prcplist" nodeset="/root/main/prcp/prcplist" autoresize="true" caption="코드^선택항생제^총용량^총용량^수량^수량^횟수^일수^용법/검체^caption1" colsep="^" colwidth="100, 47, 45, 24, 43, 24, 39, 40, 100, 100, 100, 100, 100, 100" mergecellsfixedrows="bycolrec" rowsep="|" style="left:711px; top:555px; width:459px; height:185px; ">
  702. <col ref="prcpcd"/>
  703. <col ref="prcpnm" visibility="hidden" style="left:21px; top:23px; width:260px; height:23px; text-align:left; focus-rect:visible; "/>
  704. <col ref="prcpvol" type="input" format="#.#" maxlength="5.3" style="text-align:center; focus-rect:visible; "/>
  705. <col ref="prcpvolunitnm" type="output" style="text-align:center; focus-rect:visible; "/>
  706. <col ref="prcpqty" type="input" format="#.#" maxlength="5.3" style="text-align:center; focus-rect:visible; "/>
  707. <col ref="prcpqtyunitnm" style="text-align:center; focus-rect:visible; "/>
  708. <col ref="prcptims" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
  709. <col ref="prcpdayno" type="input" format="#" style="text-align:center; focus-rect:visible; "/>
  710. <col ref="drugmthdspccdnm" type="output" style="focus-rect:visible; "/>
  711. <col ref="drugmthdspccd" visibility="hidden"/>
  712. <col ref="prcpvolunitflag" visibility="hidden"/>
  713. <col ref="prcpqtyunitflag" visibility="hidden"/>
  714. <col ref="prcpvolunitnm" visibility="hidden"/>
  715. <col ref="prcpqtyunitnm" visibility="hidden"/>
  716. <col ref="limdayno" visibility="hidden"/>
  717. <script type="javascript" ev:event="onendedit">
  718. <![CDATA[
  719. var currow = grd_prcplist.row;
  720. if ( grd_prcplist.col == grd_prcplist.colref("prcpdayno")) {
  721. fGridfBatIpt( "prcpdayno" );
  722. } else if ( grd_prcplist.col == grd_prcplist.colref("prcptims")) {
  723. fGridfBatIpt( "prcptims" );
  724. fBaseMthd(currow);
  725. if(event.keyCode == "13") {
  726. grd_prcplist.col = grd_prcplist.colref("prcpdayno");
  727. model.setfocus( "grd_prcplist" );
  728. grd_prcplist.editCell();
  729. }
  730. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpqty")) {
  731. DrugCalc ( "prcpqty" , grd_prcplist.row);
  732. fGridfBatIpt( "prcpqty" );
  733. if(event.keyCode == "13") {
  734. grd_prcplist.col = grd_prcplist.colref("prcptims");
  735. model.setfocus( "grd_prcplist" );
  736. grd_prcplist.editCell();
  737. }
  738. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpvol") ) {
  739. DrugCalc ("prcpvol" , grd_prcplist.row);
  740. if(event.keyCode == "13") {
  741. grd_prcplist.col = grd_prcplist.colref("prcpqty");
  742. model.setfocus( "grd_prcplist" );
  743. grd_prcplist.editCell();
  744. }
  745. }
  746. ]]>
  747. </script>
  748. <!--script type="javascript" ev:event="xforms-value-changed">
  749. <![CDATA[
  750. if ( grd_prcplist.col == grd_prcplist.colref("prcpvol")) {
  751. DrugCalc ("prcpvol" , grd_prcplist.row);
  752. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpqty")) {
  753. DrugCalc ( "prcpqty" , grd_prcplist.row);
  754. } else if ( grd_prcplist.col == grd_prcplist.colref("prcptims")) {
  755. if ( model.getValue ( prcpNode + "[" + grd_prcplist.row + "]/prcpclscd") == "A2" ) {
  756. fBaseMthd();
  757. }
  758. }
  759. ]]>
  760. </script-->
  761. <script type="javascript" ev:event="onstartedit">
  762. <![CDATA[
  763. if ( grd_prcplist.col == grd_prcplist.colref("prcpvol")) {
  764. bfDrugCalc ( "prcpvol", grd_prcplist.row );
  765. } else if ( grd_prcplist.col == grd_prcplist.colref("prcpqty")) {
  766. bfDrugCalc ( "prcpqty", grd_prcplist.row );
  767. }
  768. ]]>
  769. </script>
  770. <script type="javascript" ev:event="ondblclick">
  771. <![CDATA[
  772. // if( grd_prcplist.isCell(event.target) && grd_prcplist.row >= grd_prcplist.fixedRows ) {
  773. // addPrcp ( "child", "/root/main/prcp/prcplist", "/root/main/prcp", "N", "status", "I", grd_prcplist, "N", "00");
  774. // }
  775. var prcpclscd = model.getValue( "/root/main/prcp/prcplist[" + grd_prcplist.row + "]/prcpclscd");
  776. var status = model.getValue( "/root/main/prcp/prcplist[" + grd_prcplist.row + "]/status");
  777. if( grd_prcplist.isCell(event.target) && grd_prcplist.row >= grd_prcplist.fixedRows && grd_prcplist.row <= grd_prcplist.rows){
  778. if ( grd_prcplist.col == grd_prcplist.colref("drugmthdspccdnm") && status != "S" ) {
  779. if ( prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6") {
  780. fPrcpModal ("SPMMO01900", 500, 200);
  781. } else if ( prcpclscd == "B2" || prcpclscd == "B4" || prcpclscd == "B6" ) {
  782. fGetSpc ();
  783. }
  784. } else if ( grd_prcplist.col == "15" && status != "S" ) {
  785. fPrcpdelivefact( "M" );
  786. } else if ( status != "S" ) {
  787. fPrcpDetl();
  788. }
  789. }
  790. // window.close();
  791. ]]>
  792. </script>
  793. <script type="javascript" ev:event="onclick">
  794. <![CDATA[
  795. var ref = "/root/main/antibiodetaillist/info";
  796. var flag = true;
  797. var idx = 0;
  798. var curRow = grd_prcplist.mouseRow;
  799. var lastRow = grd_prcplist.rows - grd_prcplist.fixedRows;
  800. if( curRow > 0 && curRow <= lastRow ){
  801. if ( grd_prcplist.col == grd_prcplist.colref("prcpdayno")
  802. || grd_prcplist.col == grd_prcplist.colref("prcpvol")
  803. || grd_prcplist.col == grd_prcplist.colref("prcpqty")
  804. || grd_prcplist.col == grd_prcplist.colref("prcptims") ) {
  805. grd_prcplist.editCell();
  806. }
  807. //추가 사유입력은 항생제 버튼 클릭으로 인해 추가한경우에만 입력할수 있으므로
  808. //추천항생제에 있는 약품코드는 사유입력을 할수 없다.
  809. if( grd_prcplist.col == grd_prcplist.colref("tempcol8") ){
  810. var prcpcd = model.getValue ( "/root/main/prcp/prcplist["+ grd_prcplist.row +"]/prcpcd" );
  811. if( grd_antibiodetail.rows- grd_antibiodetail.fixedRows > 0 ){
  812. var node = instance1.selectSingleNode(ref + "[prcpcd = '" + prcpcd + "']/prcpnm");
  813. if( node != null && node.length > 0 ){
  814. flag = false;//추천항생제에서 선택된 항생제처방
  815. }
  816. }
  817. if( flag){
  818. grd_prcplist.colDisabled(grd_prcplist.col) = false;
  819. grd_prcplist.editCell();
  820. }else{
  821. grd_prcplist.colDisabled(grd_prcplist.col) = true;
  822. }
  823. }
  824. }
  825. ]]>
  826. </script>
  827. <script type="javascript" ev:event="onmousedown">
  828. <![CDATA[
  829. if(event.button == 3){
  830. if(grd_prcplist.isCell(event.target) && grd_prcplist.mouseRow >= grd_prcplist.fixedrows){
  831. window.setPopupMenu(true, "/root/main/codedata/popupmenu/grid/item", "name", "func", false);
  832. }else{
  833. window.setPopupMenu(false);
  834. }
  835. }
  836. ]]>
  837. </script>
  838. <script type="javascript" ev:event="DOMFocusOut">
  839. <![CDATA[
  840. window.setPopupMenu(false);
  841. ]]>
  842. </script>
  843. </datagrid>
  844. <caption id="caption5" class="tit_2" style="left:718px; top:535px; width:245px; height:13px; ">선택된 항생제</caption>
  845. <textarea id="txt_smlcomment" ref="/root/hidden/smlcomment" editable="false" style="left:360px; top:80px; width:815px; height:210px; "/>
  846. <!--iviewer id="ivw_prophylaxis" src="../../../emr/cpcdssweb/xrw/SPMMD01800_항생제Prophylaxis.xrw" style="left:0px; top:30px; width:355px; height:713px; "/-->
  847. <iviewer id="ivw_prophylaxis" style="left:0px; top:30px; width:355px; height:713px; "/>
  848. <caption id="caption4" class="tit_2" style="left:366px; top:535px; width:245px; height:13px; ">비고</caption>
  849. <textarea id="txt_comment" ref="/root/hidden/icomment" editable="false" style="left:360px; top:555px; width:348px; height:185px; "/>
  850. <line id="line1" class="line_1" style="x1:360px; y1:550px; x2:708px; y2:550px; "/>
  851. <button id="btn_undo" accesskey="ctrl+z" class="btn2_letter4" visibility="visible" style="left:1105px; top:530px; width:64px; height:19px; ">
  852. <caption>되살리기</caption>
  853. <script type="javascript" ev:event="DOMActivate">
  854. <![CDATA[
  855. fDelUndo_antibio(); // SMMMO00100.js fDelUndo() 수정해서 사용.(기존 fDelUndo는 데이터를 모두 삭제하였을때 되살리기 안됨)
  856. model.removeNodeset("/root/prcpdel/prcplist");
  857. model.refresh();
  858. ]]>
  859. </script>
  860. <!--hint>
  861. <![CDATA[단축키는 ctrl+z 입니다.]]>
  862. </hint-->
  863. </button>
  864. <button id="btn_prcpdel" accesskey="f2" class="btn2_letter2" visibility="visible" style="left:1060px; top:530px; width:42px; height:19px; ">
  865. <caption>삭제</caption>
  866. <script type="javascript" ev:event="DOMActivate">
  867. <![CDATA[
  868. if( grd_prcplist.row < 1) return ;
  869. fDeleteRow();
  870. // deleteSelectedRows (grd_prcplist);//.deleteItem(grd_prcplist.row);
  871. //grd_prcplist.rebuild();
  872. ]]>
  873. </script>
  874. <!--hint>
  875. <![CDATA[단축키는 ctrl+z 입니다.]]>
  876. </hint-->
  877. </button>
  878. <button id="btn_srchanti" class="btn2_letter4" style="left:291px; top:7px; width:64px; height:19px; ">
  879. <caption>분류검색</caption>
  880. <script type="javascript" ev:event="DOMActivate">
  881. <![CDATA[
  882. if(button3.selected == true) {
  883. messageBox("Targeted therapy 는 검색기능이","I004");
  884. return;
  885. }
  886. fShowSearchList();
  887. ]]>
  888. </script>
  889. </button>
  890. <group id="grp_comcd" visibility="hidden" style="left:475px; top:245px; width:640px; height:235px; vertical-align:top; border-color:#c0c0c0; border-width:2px; ">
  891. <datagrid id="grd_cdssdruglist" nodeset="/root/main/cdssdruglist/cdssinfo" allowselection="true" autoresize="true" caption="대분류^중분류^소분류" colsep="^" colwidth="174, 181, 174" dataheight="23" explorerbar="sortshow" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="23" rowsep="|" selectionmode="byrow" style="left:7px; top:43px; width:623px; height:155px; ">
  892. <col ref="lrgnm"/>
  893. <col ref="mdlnm"/>
  894. <col ref="smlnm"/>
  895. <script type="javascript" ev:event="ondblclick">
  896. <![CDATA[
  897. if( grd_cdssdruglist.row < 1 ) return ;
  898. fSetData();
  899. ]]>
  900. </script>
  901. </datagrid>
  902. <button id="btn_comcfm" class="btn4_letter2" style="left:517px; top:200px; width:56px; height:22px; ">
  903. <caption>확인</caption>
  904. <script type="javascript" ev:event="DOMActivate">
  905. <![CDATA[
  906. fSetData();
  907. ]]>
  908. </script>
  909. </button>
  910. <button id="btn_comclose" class="btn4_letter2" style="left:575px; top:200px; width:56px; height:22px; ">
  911. <caption>닫기</caption>
  912. <script type="javascript" ev:event="DOMActivate">
  913. <![CDATA[
  914. grp_comcd.visible = false;
  915. grd_antibiorecommlist.editCell();
  916. ]]>
  917. </script>
  918. </button>
  919. <caption id="caption15" class="search_name" style="left:5px; top:15px; width:115px; height:17px; ">분류(질병)명:</caption>
  920. <button id="button5" class="btn1_letter2" style="left:574px; top:15px; width:56px; height:22px; ">
  921. <caption>조회</caption>
  922. <script type="javascript" ev:event="DOMActivate">
  923. <![CDATA[
  924. fSearchNo();
  925. ]]>
  926. </script>
  927. </button>
  928. <shape id="rectangle1" appearance="rectangle" style="left:2px; top:5px; width:633px; height:225px; color:transparent; border-color:#c0c0c0; "/>
  929. <select1 id="rdo_srchflag" ref="/root/send/condition/srchflag" visibility="hidden" appearance="full" cols="3" overflow="visible" style="left:135px; top:15px; width:15px; height:20px; border-style:none; ">
  930. <choices>
  931. <item>
  932. <label>분류(질병)명</label>
  933. <value>S</value>
  934. </item>
  935. </choices>
  936. <script type="javascript" ev:event="xforms-value-changed">
  937. <![CDATA[
  938. model.setFocus("input17");
  939. input17.disabled = false;
  940. model.refresh();
  941. ]]>
  942. </script>
  943. </select1>
  944. <input id="input17" ref="/root/send/condition/srchnm" class="input_search" disabled="true" style="left:112px; top:15px; width:151px; height:19px; ">
  945. <script type="javascript" ev:event="onkeyup">
  946. <![CDATA[
  947. inputEnterKey("button5", "DOMActivate");
  948. ]]>
  949. </script>
  950. </input>
  951. </group>
  952. <caption id="caption3" visibility="visible" style="left:495px; top:5px; width:585px; height:60px; ">
  953. <![CDATA[ 1. 처방목적에 따라 예방적(prophylaxis), 경험적(empirical), 균 동정후 표적(targeted)치료 중 한가지 선택
  954. (균코드가 매칭(일부)될 시에는 Targeted therapy에 보여집니다.)
  955. 2. 질병 분류에 따라 대, 중, 소분류 선택 혹은 '분류검색' 버튼으로 확인
  956. 3. 원내보유 항생제 중 한가지 선택 후 확인]]>
  957. </caption>
  958. <caption id="caption7" class="hand" visibility="visible" style="left:366px; top:5px; width:155px; height:20px; ">항생제 처방순서</caption>
  959. </group>
  960. </xhtml:body>
  961. </xhtml:html>