SPADT61100_원외처방전출력팝업.xfdl 99 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPADT61100" position="absolute 0 0 250 100" titletext="원외처방전출력" oninit="SPADT61100_oninit" onload="SPADT61100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="원외 처방전 출력 중" position="absolute 27 20 224 76" id="caption1" style="align:center middle;font:Dotum,14,bold;"/>
  8. <Div position="absolute 40 15 145 91" id="grp_pharmacy" visible="false"/>
  9. <Div position="absolute 35 10 225 70" id="grp_pat" visible="false"/>
  10. <Div position="absolute 40 15 145 91" id="grp_pharmacy2" visible="false"/>
  11. <Div position="absolute 35 10 225 70" id="grp_pat2" visible="false"/>
  12. </Layout>
  13. </Layouts>
  14. <Objects>
  15. <Dataset id="ds_main_prcpdata_patinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  16. <Dataset id="ds_send_prcpinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  17. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  18. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  19. <Dataset id="ds_main_prcpdata_diaginfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  20. <Dataset id="ds_main_prcpdata_sumlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  21. <Dataset id="ds_main_prcpdata_resn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  22. <Dataset id="ds_init_P0322list" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  23. </Objects>
  24. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  25. * System Name :
  26. * Job Name :
  27. * Creator :
  28. * Make Date : 2015-09-16
  29. * Description :
  30. *---------------------------------------------------------------------------------------
  31. * Modify Date Modifier Modify Description
  32. *---------------------------------------------------------------------------------------
  33. * 2015-09-16 Live Converter TF->XP
  34. *
  35. *---------------------------------------------------------------------------------------
  36. ****************************************************************************************/
  37. //=======================================================================================
  38. // Lib Include
  39. //---------------------------------------------------------------------------------------
  40. include "com_commonxp::comm_main.xjs"
  41. //=======================================================================================
  42. // Global Form Variable
  43. //---------------------------------------------------------------------------------------
  44. //=========================================XJS===========================================
  45. //=======================================================================================
  46. //=======================================================================================
  47. //=======================================================================================
  48. // Function
  49. //---------------------------------------------------------------------------------------
  50. /****************************************************************************************
  51. * Argument : N/A
  52. * Description : 프린터 설정
  53. ****************************************************************************************/
  54. //=======================================================================================
  55. //=======================================================================================
  56. //=========================================XJS===========================================
  57. /****************************************************************************************
  58. * Argument : N/A
  59. * Description : 초기화
  60. ****************************************************************************************/
  61. function fInit() {
  62. var opener_ID = opener.frmf_getParameter("opener_ID");
  63. //var sParam = model.getAttribute("params");
  64. var sParam = opener.frmf_getParameter("params");
  65. dsf_setCSVToDs("ds_send_prcpinfo",sParam);
  66. //sysf_trace(ds_send_prcpinfo.saveXML());
  67. dsf_makeValue(ds_send_prcpinfo,"ioflag" ,"string","O");
  68. dsf_makeValue(ds_send_prcpinfo,"prntflag" ,"string","Y");
  69. dsf_makeValue(ds_send_prcpinfo,"stocdeptcd" ,"string","Y");
  70. var arrParam = [{dsNm: "ds_init_P0322list", cdGrpId: "P0322"}] //처방전 QR바코드용으로 추가 과코드 EDI코드 변환용
  71. appf_getCodeList(arrParam);
  72. // model.makeValue("/root/send/prcpinfo/drugdd", astfMatrixData(sParam, 1, 0));
  73. // model.makeValue("/root/send/prcpinfo/drugno", astfMatrixData(sParam, 1, 1));
  74. // model.makeValue("/root/send/prcpinfo/ioflag", "O");
  75. // model.makeValue("/root/send/prcpinfo/pid", astfMatrixData(sParam, 1, 2));
  76. // model.makeValue("/root/send/prcpinfo/orddd", astfMatrixData(sParam, 1, 3));
  77. // model.makeValue("/root/send/prcpinfo/cretno", astfMatrixData(sParam, 1, 4));
  78. // model.makeValue("/root/send/prcpinfo/orddeptcd", astfMatrixData(sParam, 1, 5));
  79. // model.makeValue("/root/send/prcpinfo/prcpgenrflag", astfMatrixData(sParam, 1, 6));
  80. // model.makeValue("/root/send/prcpinfo/hosoutmpsflag", astfMatrixData(sParam, 1, 7));
  81. // model.makeValue("/root/send/prcpinfo/reprintyn", astfMatrixData(sParam, 1, 8));
  82. // model.makeValue("/root/send/prcpinfo/prntflag", "Y");
  83. // //model.makeValue("/root/send/prcpinfo/printer", astfMatrixData(sParam, 1, 10)); //2009-05-07 원무에서 원외처방전출력 추가 - 트레이번호 추가
  84. // model.makeValue("/root/send/prcpinfo/eprntype", astfMatrixData(sParam, 1, 10)); // 2009.09.09 pymi
  85. // model.makeValue("/root/send/prcpinfo/stocdeptcd", "Y"); // 20100310_laboru_실출고부서 원외 일때는 업데이트 안함. 실출고부서가 필요하면 astfMatrixData(sParam, 1, 10)
  86. // model.makeValue("/root/send/prcpinfo/engprntflag", astfMatrixData(sParam, 1, 13)); // 20130429
  87. var engprntflag = ds_send_prcpinfo.getColumn(0,"engprntflag");
  88. var printerno = astfMatrixData(sParam, 1, 13) ;
  89. var mdrugflag = astfMatrixData(sParam, 1, 12) ; // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
  90. // 20101103_laboru_경북대병원_세종병원에서 수정한 내용 추가
  91. var printer_name = "true";
  92. if(opener_ID == "SMADT01101_원외처방전출력(원무)"){ // 원무 프로그램 개발 후 프린터 선택 확인 필요.
  93. printer_name = opener.frmf_getParameter("opener_printer_name");
  94. printerno = opener.frmf_getParameter("opener_printer_tray");
  95. }
  96. var oParam = {};
  97. oParam.id = "TRADT61101";
  98. oParam.service = "pharmacyprescriptionapp.DrugPrint";
  99. oParam.method = "reqGetOutPrintData";
  100. oParam.inds = "req=ds_send_prcpinfo";
  101. oParam.outds = "ds_main_prcpdata_patinfo=patinfo ds_main_prcpdata_diaginfo=diaginfo ds_main_prcpdata_sumlist=sumlist ds_main_prcpdata_resn=resn";
  102. oParam.async = false;
  103. //oParam.callback = "cf_TRADT61101";
  104. tranf_submit(oParam);
  105. if(!utlf_isNull(ds_main_prcpdata_patinfo.getColumn(0,"pid"))) {
  106. var cnt = ds_main_prcpdata_sumlist.rowcount;
  107. if(cnt > 0){
  108. for(var a = 0; a < cnt; a++){
  109. ds_main_prcpdata_sumlist.setColumn(a,"totdrugqty",fChkFloat(ds_main_prcpdata_sumlist.getColumn(a,"totdrugqty")));
  110. }
  111. }
  112. //이선경 수정 2008-08-26 start (사용기간 메시지창)
  113. var usedate = ds_main_prcpdata_patinfo.getColumn(0,"usedate");
  114. var drugdd = ds_main_prcpdata_patinfo.getColumn(0,"drugdd");
  115. ///2018년 11월 9일 김치국 처방전 출력일자 관리 부분
  116. if (usedate == "" || usedate == null ){
  117. usedate = drugdd.toDate().getAddDate(7, "D").getDateFormat();
  118. }
  119. var curdate = utlf_getCurrentDate();
  120. var rtn = "";
  121. var date = usedate.substr(0,4) + "년 " + usedate.substr(4,2) + "월 " + usedate.substr(6,2) + "일";
  122. if(usedate < curdate) {
  123. rtn = sysf_messageBox("처방전 사용기간은 " + date + " 입니다. 출력을 ", "Q004");
  124. if(rtn != 6){
  125. // this.close();
  126. return;
  127. }
  128. }
  129. //QR바코드 생성 추가 (2017.10.11) pkc
  130. var barcodeyn = "";
  131. barcodeyn = lf_spacebarcode_create();
  132. if (barcodeyn == 'N') {
  133. sysf_message('원외처방전 바코드 생성 오류... 전산실로 연락바랍니다.!!!');
  134. return;
  135. }else{
  136. sleep(1000);
  137. }
  138. //이선경 수정 2008-08-26 end (사용기간 메시지창)
  139. // makeReportPreview(0,0,1195, 784, "grp_pharmacy");
  140. // makeReportPreview(0,0,1195, 784, "grp_pat");
  141. // // 20101124_laboru_경북대병원_원외 마약 처방전 위해 추가
  142. // makeReportPreview(0,0,1195, 784, "grp_pharmacy2");
  143. // makeReportPreview(0,0,1195, 784, "grp_pat2");
  144. //처방전에 DUR이 존재하면 RFADT61203 존재하지 않으면 RFADT61200 출력
  145. var resn = ds_main_prcpdata_resn.getColumn(0,"resnnm");
  146. //영문처방전의경우 DUR 사유를 출력하지 않음
  147. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  148. resn = "";
  149. }
  150. // 20101123_laboru_경북대병원_외래 원외 일반약 처방과 마약/향정 처방을 분리
  151. var list2cnt = 0; // 일반약 처방
  152. var list3cnt = 0; // 마약, 향정 처방
  153. var list4cnt = 0; // 이하 여백
  154. if(mdrugflag == "Y") {
  155. if(cnt > 0){
  156. if(utlf_isNull(this.objects["ds_main_prcpdata_sumlist3"])) {
  157. dsf_createDs("ds_main_prcpdata_sumlist3");
  158. dsf_copyColInfo(ds_main_prcpdata_sumlist3,ds_main_prcpdata_sumlist);
  159. }
  160. if(utlf_isNull(this.objects["ds_main_prcpdata_sumlist2"])) {
  161. dsf_createDs("ds_main_prcpdata_sumlist2");
  162. dsf_copyColInfo(ds_main_prcpdata_sumlist2,ds_main_prcpdata_sumlist);
  163. }
  164. if(utlf_isNull(this.objects["ds_main_prcpdata_sumlist4"])) {
  165. dsf_createDs("ds_main_prcpdata_sumlist4");
  166. dsf_copyColInfo(ds_main_prcpdata_sumlist4,ds_main_prcpdata_sumlist);
  167. }
  168. for(var a = 0; a < cnt; a++){
  169. if(!utlf_isNull(ds_main_prcpdata_sumlist.getColumn(a,"prcpcd"))) {
  170. if(ds_main_prcpdata_sumlist.getColumn(a,"spcldrug") == "M" ) { // 마약일때(조회는 내복, 외용만)
  171. ds_main_prcpdata_sumlist3.copyRow(ds_main_prcpdata_sumlist3.addRow(),ds_main_prcpdata_sumlist,a);
  172. list3cnt++;
  173. } else {
  174. ds_main_prcpdata_sumlist2.copyRow(ds_main_prcpdata_sumlist2.addRow(),ds_main_prcpdata_sumlist,a);
  175. list2cnt++;
  176. }
  177. } else {
  178. ds_main_prcpdata_sumlist4.copyRow(ds_main_prcpdata_sumlist4.addRow(),ds_main_prcpdata_sumlist,a);
  179. list4cnt++;
  180. }
  181. }
  182. }
  183. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  184. //ds_main_prcpdata_sumlist.copyRow(ds_main_prcpdata_sumlist2);
  185. dsf_copyDs(ds_main_prcpdata_sumlist,ds_main_prcpdata_sumlist2,"replace");
  186. dsf_copyDs(ds_main_prcpdata_sumlist,ds_main_prcpdata_sumlist4,"after");
  187. var cntmdrug = ds_main_prcpdata_sumlist.rowcount - 1;
  188. ds_main_prcpdata_sumlist.setColumn(cntmdrug,"hngnm", "- 마약처방이 있습니다 -");
  189. ////마약처방전 약국1곳에 사영 메세지 나타내기 //2015.7.7 김치국/
  190. ds_main_prcpdata_sumlist.setColumn(cntmdrug,"mthdnm", "마약처방전과 반드시 한곳(약국)");
  191. dsf_makeValue(ds_main_prcpdata_sumlist,"mthdnm","string","에서만 조제바랍니다.",(parseInt(cntmdrug) + 1));
  192. ////
  193. }
  194. } // (e) 20101123_laboru_경북대병원
  195. // 20130429_영문처방전 출력
  196. if(opener_ID == "SMADT01101_원외처방전출력(원무)" && engprntflag == "E") {
  197. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  198. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno",rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  199. // exeReportPreview("RFADT61105", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  200. var objDOM = rptf_createDOM(); // DOM 객체 설정
  201. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  202. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  203. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  204. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  205. var objParam = new Object();
  206. objParam.xml_data_XML1 = objDOM.documentElement.source;
  207. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  208. rptf_exeReportPreview30(["RFADT61105"],[objParam], option, "", "grp_pat");
  209. } else {
  210. if( (parseInt(list2cnt) > 0) || mdrugflag != "Y" ) { // 마약 처방만 존재할 때는 일반약 출력 X
  211. if( utlf_isNull(resn) ){
  212. if(parseInt(ds_main_prcpdata_patinfo.getColumn(0,"prnttims"), 10) > 0){
  213. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  214. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  215. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  216. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  217. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  218. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  219. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  220. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  221. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  222. } else {
  223. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  224. // 20101118_wify_외래처방전 주민번호 뒷자리 별표 처리 추가
  225. }
  226. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  227. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  228. var objCxtCommon = new ExtCommon();
  229. ds_main_prcpdata_patinfo.updatecontrol = false;
  230. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  231. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  232. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  233. }
  234. ds_main_prcpdata_patinfo.updatecontrol = true;
  235. var objDOM = rptf_createDOM(); // DOM 객체 설정
  236. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  237. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  238. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  239. //trace('1'+ds_main_prcpdata_patinfo.saveXML());
  240. var objParam = new Object();
  241. objParam.xml_data_XML1 = objDOM.documentElement.source;
  242. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  243. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  244. } else {
  245. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  246. }
  247. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy");
  248. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  249. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  250. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  251. if(astfMatrixData(sParam, 1, 9) == "Y") {
  252. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  253. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  254. }
  255. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  256. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  257. var objCxtCommon = new ExtCommon();
  258. ds_main_prcpdata_patinfo.updatecontrol = false;
  259. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  260. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  261. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  262. }
  263. ds_main_prcpdata_patinfo.updatecontrol = true;
  264. var objDOM = rptf_createDOM(); // DOM 객체 설정
  265. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  266. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  267. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  268. var objParam = new Object();
  269. objParam.xml_data_XML1 = objDOM.documentElement.source;
  270. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  271. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  272. } else {
  273. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  274. }
  275. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  276. } else {
  277. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  278. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  279. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  280. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  281. ds_main_prcpdata_patinfo.setColumn(0,"usedate" ,"");
  282. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  283. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  284. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  285. } else {
  286. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  287. }
  288. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  289. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  290. var objCxtCommon = new ExtCommon();
  291. ds_main_prcpdata_patinfo.updatecontrol = false;
  292. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  293. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  294. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  295. }
  296. ds_main_prcpdata_patinfo.updatecontrol = true;
  297. var objDOM = rptf_createDOM(); // DOM 객체 설정
  298. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  299. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  300. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  301. //trace('2'+ds_main_prcpdata_patinfo.saveXML());
  302. var objParam = new Object();
  303. objParam.xml_data_XML1 = objDOM.documentElement.source;
  304. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  305. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy");
  306. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  307. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  308. if(astfMatrixData(sParam, 1, 9) == "Y") {
  309. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  310. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  311. }
  312. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  313. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  314. var objCxtCommon = new ExtCommon();
  315. ds_main_prcpdata_patinfo.updatecontrol = false;
  316. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  317. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  318. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  319. }
  320. ds_main_prcpdata_patinfo.updatecontrol = true;
  321. //trace('222'+ds_main_prcpdata_patinfo.saveXML());
  322. var objDOM = rptf_createDOM(); // DOM 객체 설정
  323. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  324. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  325. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  326. var objParam = new Object();
  327. objParam.xml_data_XML1 = objDOM.documentElement.source;
  328. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  329. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  330. } else {
  331. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  332. }
  333. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  334. }
  335. } else {
  336. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  337. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  338. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  339. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  340. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  341. ds_main_prcpdata_patinfo.setColumn(0,"usedate" ,"");
  342. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  343. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  344. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  345. } else {
  346. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  347. }
  348. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  349. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  350. var objCxtCommon = new ExtCommon();
  351. ds_main_prcpdata_patinfo.updatecontrol = false;
  352. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  353. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  354. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  355. }
  356. ds_main_prcpdata_patinfo.updatecontrol = true;
  357. //trace('3'+ds_main_prcpdata_patinfo.saveXML());
  358. var objDOM = rptf_createDOM(); // DOM 객체 설정
  359. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  360. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  361. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  362. var objParam = new Object();
  363. objParam.xml_data_XML1 = objDOM.documentElement.source;
  364. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  365. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  366. } else {
  367. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  368. }
  369. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy");
  370. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  371. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  372. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  373. if(astfMatrixData(sParam, 1, 9) == "Y") {
  374. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  375. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  376. }
  377. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  378. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  379. var objCxtCommon = new ExtCommon();
  380. ds_main_prcpdata_patinfo.updatecontrol = false;
  381. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  382. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  383. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  384. }
  385. ds_main_prcpdata_patinfo.updatecontrol = true;
  386. var objDOM = rptf_createDOM(); // DOM 객체 설정
  387. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  388. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  389. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  390. var objParam = new Object();
  391. objParam.xml_data_XML1 = objDOM.documentElement.source;
  392. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  393. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  394. } else {
  395. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  396. }
  397. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  398. } else {
  399. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  400. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  401. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  402. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  403. ds_main_prcpdata_patinfo.setColumn(0,"usedate" ,"");
  404. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  405. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  406. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  407. } else {
  408. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  409. }
  410. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  411. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  412. var objCxtCommon = new ExtCommon();
  413. ds_main_prcpdata_patinfo.updatecontrol = false;
  414. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  415. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  416. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  417. }
  418. ds_main_prcpdata_patinfo.updatecontrol = true;
  419. //trace('4'+ds_main_prcpdata_patinfo.saveXML());
  420. var objDOM = rptf_createDOM(); // DOM 객체 설정
  421. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  422. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  423. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  424. var objParam = new Object();
  425. objParam.xml_data_XML1 = objDOM.documentElement.source;
  426. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  427. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy");
  428. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  429. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  430. if(astfMatrixData(sParam, 1, 9) == "Y") {
  431. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  432. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  433. }
  434. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  435. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  436. var objCxtCommon = new ExtCommon();
  437. ds_main_prcpdata_patinfo.updatecontrol = false;
  438. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  439. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  440. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  441. }
  442. ds_main_prcpdata_patinfo.updatecontrol = true;
  443. var objDOM = rptf_createDOM(); // DOM 객체 설정
  444. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  445. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  446. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  447. var objParam = new Object();
  448. objParam.xml_data_XML1 = objDOM.documentElement.source;
  449. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  450. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  451. } else {
  452. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  453. }
  454. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  455. }
  456. }
  457. }else{
  458. if(parseInt(ds_main_prcpdata_patinfo.getColumn(0,"prnttims"), 10) > 0){
  459. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  460. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  461. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  462. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  463. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  464. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  465. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  466. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  467. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  468. } else {
  469. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  470. }
  471. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  472. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  473. var objCxtCommon = new ExtCommon();
  474. ds_main_prcpdata_patinfo.updatecontrol = false;
  475. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  476. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  477. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  478. }
  479. ds_main_prcpdata_patinfo.updatecontrol = true;
  480. //trace('5'+ds_main_prcpdata_patinfo.saveXML());
  481. var objDOM = rptf_createDOM(); // DOM 객체 설정
  482. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  483. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  484. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  485. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  486. var objParam = new Object();
  487. objParam.xml_data_XML1 = objDOM.documentElement.source;
  488. objParam.xml_data_XML2 = objDOM.documentElement.source;
  489. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  490. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  491. } else {
  492. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  493. }
  494. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy");
  495. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  496. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  497. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  498. if(astfMatrixData(sParam, 1, 9) == "Y") {
  499. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  500. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  501. }
  502. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  503. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  504. var objCxtCommon = new ExtCommon();
  505. ds_main_prcpdata_patinfo.updatecontrol = false;
  506. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  507. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  508. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  509. }
  510. ds_main_prcpdata_patinfo.updatecontrol = true;
  511. var objDOM = rptf_createDOM(); // DOM 객체 설정
  512. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  513. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  514. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  515. var objParam = new Object();
  516. objParam.xml_data_XML1 = objDOM.documentElement.source;
  517. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  518. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  519. } else {
  520. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  521. }
  522. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  523. } else {
  524. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  525. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  526. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  527. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  528. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  529. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  530. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  531. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  532. } else {
  533. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  534. }
  535. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  536. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  537. var objCxtCommon = new ExtCommon();
  538. ds_main_prcpdata_patinfo.updatecontrol = false;
  539. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  540. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  541. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  542. }
  543. ds_main_prcpdata_patinfo.updatecontrol = true;
  544. //trace('6'+ds_main_prcpdata_patinfo.saveXML());
  545. var objDOM = rptf_createDOM(); // DOM 객체 설정
  546. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  547. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  548. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  549. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  550. var objParam = new Object();
  551. objParam.xml_data_XML1 = objDOM.documentElement.source;
  552. objParam.xml_data_XML2 = objDOM.documentElement.source;
  553. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  554. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy");
  555. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  556. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  557. if(astfMatrixData(sParam, 1, 9) == "Y") {
  558. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  559. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  560. }
  561. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  562. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  563. var objCxtCommon = new ExtCommon();
  564. ds_main_prcpdata_patinfo.updatecontrol = false;
  565. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  566. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  567. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  568. }
  569. ds_main_prcpdata_patinfo.updatecontrol = true;
  570. var objDOM = rptf_createDOM(); // DOM 객체 설정
  571. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  572. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  573. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  574. var objParam = new Object();
  575. objParam.xml_data_XML1 = objDOM.documentElement.source;
  576. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  577. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  578. } else {
  579. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  580. }
  581. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  582. }
  583. } else {
  584. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1") {
  585. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  586. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  587. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  588. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  589. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  590. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  591. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  592. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  593. } else {
  594. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  595. }
  596. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  597. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  598. var objCxtCommon = new ExtCommon();
  599. ds_main_prcpdata_patinfo.updatecontrol = false;
  600. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  601. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  602. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  603. }
  604. ds_main_prcpdata_patinfo.updatecontrol = true;
  605. //trace('7'+ds_main_prcpdata_patinfo.saveXML());
  606. var objDOM = rptf_createDOM(); // DOM 객체 설정
  607. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  608. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  609. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  610. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  611. var objParam = new Object();
  612. objParam.xml_data_XML1 = objDOM.documentElement.source;
  613. objParam.xml_data_XML2 = objDOM.documentElement.source;
  614. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  615. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  616. } else {
  617. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  618. }
  619. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy");
  620. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  621. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  622. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  623. if(astfMatrixData(sParam, 1, 9) == "Y") {
  624. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  625. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  626. }
  627. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  628. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  629. var objCxtCommon = new ExtCommon();
  630. ds_main_prcpdata_patinfo.updatecontrol = false;
  631. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  632. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  633. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  634. }
  635. ds_main_prcpdata_patinfo.updatecontrol = true;
  636. var objDOM = rptf_createDOM(); // DOM 객체 설정
  637. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  638. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  639. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  640. var objParam = new Object();
  641. objParam.xml_data_XML1 = objDOM.documentElement.source;
  642. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  643. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  644. } else {
  645. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  646. }
  647. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  648. } else {
  649. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  650. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  651. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  652. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  653. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  654. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  655. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  656. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  657. } else {
  658. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  659. }
  660. //trace('8'+ds_main_prcpdata_patinfo.saveXML());
  661. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  662. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy",printerno);
  663. var objCxtCommon = new ExtCommon();
  664. ds_main_prcpdata_patinfo.updatecontrol = false;
  665. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  666. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  667. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  668. }
  669. ds_main_prcpdata_patinfo.updatecontrol = true;
  670. var objDOM = rptf_createDOM(); // DOM 객체 설정
  671. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  672. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  673. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  674. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  675. var objParam = new Object();
  676. objParam.xml_data_XML1 = objDOM.documentElement.source;
  677. objParam.xml_data_XML2 = objDOM.documentElement.source;
  678. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  679. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy");
  680. dsf_makeValue(ds_main_prcpdata_patinfo,"prntkind","string","1");
  681. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  682. if(astfMatrixData(sParam, 1, 9) == "Y") {
  683. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  684. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  685. }
  686. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  687. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat",printerno);
  688. var objCxtCommon = new ExtCommon();
  689. ds_main_prcpdata_patinfo.updatecontrol = false;
  690. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  691. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  692. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  693. }
  694. ds_main_prcpdata_patinfo.updatecontrol = true;
  695. var objDOM = rptf_createDOM(); // DOM 객체 설정
  696. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  697. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  698. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  699. var objParam = new Object();
  700. objParam.xml_data_XML1 = objDOM.documentElement.source;
  701. if(parseInt(list3cnt) > 0) { // 마약 처방이 있다면
  702. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  703. } else {
  704. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  705. }
  706. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat");
  707. }
  708. }
  709. }
  710. } // (e) 마약 처방만 존재할 때는 일반약 출력 X
  711. }
  712. // 20101124_laboru_경북대병원_경북대병원_외래 환자 마약 원외 처방전 출력 할 때
  713. if(mdrugflag = "Y" && parseInt(list3cnt) > 0) {
  714. ds_main_prcpdata_sumlist.clear();
  715. dsf_copyDs(ds_main_prcpdata_sumlist,ds_main_prcpdata_sumlist3,"replace");
  716. dsf_copyDs(ds_main_prcpdata_sumlist,ds_main_prcpdata_sumlist4,"after");
  717. var cntmdrug = ds_main_prcpdata_sumlist3.rowcount;
  718. for(var a = 0 ; a < cntmdrug ; a++) {
  719. var tempt = "";
  720. var spcldrug = ds_main_prcpdata_sumlist.getColumn(a,"spcldrug");
  721. if(spcldrug == "M") {
  722. tempt = "(마약)";
  723. }
  724. ds_main_prcpdata_sumlist.setColumn(a,"hngnm", ds_main_prcpdata_sumlist.getColumn(a,"hngnm") + tempt);
  725. }
  726. // 마약 처방전에는 환자 주소 추가
  727. var cntaddr = ds_main_prcpdata_sumlist.rowcount;
  728. // dsf_makeValue(ds_main_prcpdata_sumlist,"hngnm","string",ds_main_prcpdata_patinfo.getColumn(0,"detladdr"),parseInt(cntaddr));
  729. ds_main_prcpdata_sumlist.setColumn(ds_main_prcpdata_sumlist.addRow(),"hngnm",ds_main_prcpdata_patinfo.getColumn(0,"detladdr"));
  730. ////마약처방전 약국1곳에 사영 메세지 나타내기 //2015.7.7 김치국/
  731. dsf_makeValue(ds_main_prcpdata_sumlist,"mthdnm","string","마약처방전입니다.",(parseInt(cntaddr) + 1 ));
  732. dsf_makeValue(ds_main_prcpdata_sumlist,"mthdnm","string","반드시 한곳(약국)에서만 조제바랍니다.",(parseInt(cntaddr) + 2 ));
  733. ////
  734. if(utlf_isNull(resn)) {
  735. if(parseInt(ds_main_prcpdata_patinfo.getColumn(0,"prnttims"), 10) > 0){
  736. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  737. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  738. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  739. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  740. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  741. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  742. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  743. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  744. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  745. } else {
  746. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  747. }
  748. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  749. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  750. var objCxtCommon = new ExtCommon();
  751. ds_main_prcpdata_patinfo.updatecontrol = false;
  752. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  753. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  754. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  755. }
  756. ds_main_prcpdata_patinfo.updatecontrol = true;
  757. var objDOM = rptf_createDOM(); // DOM 객체 설정
  758. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  759. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  760. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  761. var objParam = new Object();
  762. objParam.xml_data_XML1 = objDOM.documentElement.source;
  763. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  764. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy2");
  765. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  766. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  767. if(astfMatrixData(sParam, 1, 9) == "Y") {
  768. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  769. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  770. }
  771. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  772. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  773. var objCxtCommon = new ExtCommon();
  774. ds_main_prcpdata_patinfo.updatecontrol = false;
  775. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  776. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  777. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  778. }
  779. ds_main_prcpdata_patinfo.updatecontrol = true;
  780. var objDOM = rptf_createDOM(); // DOM 객체 설정
  781. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  782. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  783. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  784. var objParam = new Object();
  785. objParam.xml_data_XML1 = objDOM.documentElement.source;
  786. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  787. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  788. } else {
  789. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  790. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  791. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  792. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  793. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  794. } else {
  795. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  796. // 20101118_wify_외래처방전 주민번호 뒷자리 별표 처리 추가
  797. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  798. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  799. }
  800. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  801. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  802. var objCxtCommon = new ExtCommon();
  803. ds_main_prcpdata_patinfo.updatecontrol = false;
  804. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  805. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  806. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  807. }
  808. ds_main_prcpdata_patinfo.updatecontrol = true;
  809. var objDOM = rptf_createDOM(); // DOM 객체 설정
  810. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  811. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  812. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  813. var objParam = new Object();
  814. objParam.xml_data_XML1 = objDOM.documentElement.source;
  815. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  816. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy2");
  817. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  818. if(astfMatrixData(sParam, 1, 9) == "Y") {
  819. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  820. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  821. }
  822. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  823. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  824. var objCxtCommon = new ExtCommon();
  825. ds_main_prcpdata_patinfo.updatecontrol = false;
  826. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  827. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  828. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  829. }
  830. ds_main_prcpdata_patinfo.updatecontrol = true;
  831. var objDOM = rptf_createDOM(); // DOM 객체 설정
  832. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  833. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  834. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  835. var objParam = new Object();
  836. objParam.xml_data_XML1 = objDOM.documentElement.source;
  837. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  838. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  839. }
  840. } else {
  841. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1") {
  842. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  843. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  844. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  845. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  846. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  847. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  848. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  849. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  850. } else {
  851. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  852. }
  853. //2009-05-07 원무에서 원외처방전출력 추가 - 트레이번호 추가
  854. // exeReportPreview("RFADT61100", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  855. var objCxtCommon = new ExtCommon();
  856. ds_main_prcpdata_patinfo.updatecontrol = false;
  857. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  858. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  859. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  860. }
  861. ds_main_prcpdata_patinfo.updatecontrol = true;
  862. var objDOM = rptf_createDOM(); // DOM 객체 설정
  863. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  864. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  865. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  866. var objParam = new Object();
  867. objParam.xml_data_XML1 = objDOM.documentElement.source;
  868. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  869. rptf_exeReportPreview30(["RFADT61100"],[objParam], option, "", "grp_pharmacy2");
  870. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  871. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  872. if(astfMatrixData(sParam, 1, 9) == "Y") {
  873. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  874. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  875. }
  876. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  877. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  878. var objCxtCommon = new ExtCommon();
  879. ds_main_prcpdata_patinfo.updatecontrol = false;
  880. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  881. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  882. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  883. }
  884. ds_main_prcpdata_patinfo.updatecontrol = true;
  885. var objDOM = rptf_createDOM(); // DOM 객체 설정
  886. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/s9umlist" , ds_main_prcpdata_sumlist);
  887. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  888. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  889. var objParam = new Object();
  890. objParam.xml_data_XML1 = objDOM.documentElement.source;
  891. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  892. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  893. } else {
  894. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  895. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  896. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  897. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  898. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  899. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  900. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  901. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  902. } else {
  903. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  904. }
  905. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  906. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  907. var objCxtCommon = new ExtCommon();
  908. ds_main_prcpdata_patinfo.updatecontrol = false;
  909. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  910. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  911. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  912. }
  913. ds_main_prcpdata_patinfo.updatecontrol = true;
  914. var objDOM = rptf_createDOM(); // DOM 객체 설정
  915. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  916. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  917. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  918. var objParam = new Object();
  919. objParam.xml_data_XML1 = objDOM.documentElement.source;
  920. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  921. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pharmacy2");
  922. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  923. if(astfMatrixData(sParam, 1, 9) == "Y") {
  924. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  925. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  926. }
  927. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  928. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  929. var objCxtCommon = new ExtCommon();
  930. ds_main_prcpdata_patinfo.updatecontrol = false;
  931. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  932. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  933. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  934. }
  935. ds_main_prcpdata_patinfo.updatecontrol = true;
  936. var objDOM = rptf_createDOM(); // DOM 객체 설정
  937. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  938. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  939. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  940. var objParam = new Object();
  941. objParam.xml_data_XML1 = objDOM.documentElement.source;
  942. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  943. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  944. }
  945. }
  946. }else{
  947. if(parseInt(ds_main_prcpdata_patinfo.getColumn(0,"prnttims"), 10) > 0){
  948. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  949. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  950. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  951. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  952. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  953. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  954. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  955. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  956. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  957. } else {
  958. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  959. }
  960. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  961. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  962. var objCxtCommon = new ExtCommon();
  963. ds_main_prcpdata_patinfo.updatecontrol = false;
  964. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  965. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  966. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  967. }
  968. ds_main_prcpdata_patinfo.updatecontrol = true;
  969. var objDOM = rptf_createDOM(); // DOM 객체 설정
  970. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  971. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  972. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  973. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  974. var objParam = new Object();
  975. objParam.xml_data_XML1 = objDOM.documentElement.source;
  976. objParam.xml_data_XML2 = objDOM.documentElement.source;
  977. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  978. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy2");
  979. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  980. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  981. if(astfMatrixData(sParam, 1, 9) == "Y") {
  982. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  983. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  984. }
  985. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  986. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  987. var objCxtCommon = new ExtCommon();
  988. ds_main_prcpdata_patinfo.updatecontrol = false;
  989. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  990. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  991. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  992. }
  993. ds_main_prcpdata_patinfo.updatecontrol = true;
  994. var objDOM = rptf_createDOM(); // DOM 객체 설정
  995. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  996. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  997. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  998. var objParam = new Object();
  999. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1000. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  1001. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  1002. } else {
  1003. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  1004. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  1005. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  1006. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  1007. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  1008. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  1009. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1010. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1011. } else {
  1012. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용-재출력)-창구");
  1013. }
  1014. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1015. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  1016. var objCxtCommon = new ExtCommon();
  1017. ds_main_prcpdata_patinfo.updatecontrol = false;
  1018. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1019. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1020. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1021. }
  1022. ds_main_prcpdata_patinfo.updatecontrol = true;
  1023. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1024. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1025. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1026. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1027. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  1028. var objParam = new Object();
  1029. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1030. objParam.xml_data_XML2 = objDOM.documentElement.source;
  1031. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  1032. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy2");
  1033. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용-재출력)-창구");
  1034. if(astfMatrixData(sParam, 1, 9) == "Y") {
  1035. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1036. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1037. }
  1038. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1039. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  1040. var objCxtCommon = new ExtCommon();
  1041. ds_main_prcpdata_patinfo.updatecontrol = false;
  1042. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1043. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1044. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1045. }
  1046. ds_main_prcpdata_patinfo.updatecontrol = true;
  1047. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1048. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1049. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1050. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1051. var objParam = new Object();
  1052. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1053. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  1054. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  1055. }
  1056. } else {
  1057. if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "1"){
  1058. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  1059. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  1060. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  1061. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  1062. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  1063. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  1064. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1065. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1066. } else {
  1067. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  1068. }
  1069. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1070. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  1071. var objCxtCommon = new ExtCommon();
  1072. ds_main_prcpdata_patinfo.updatecontrol = false;
  1073. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1074. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1075. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1076. }
  1077. ds_main_prcpdata_patinfo.updatecontrol = true;
  1078. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1079. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1080. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1081. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1082. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  1083. var objParam = new Object();
  1084. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1085. objParam.xml_data_XML2 = objDOM.documentElement.source;
  1086. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  1087. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy2");
  1088. } else if(ds_send_prcpinfo.getColumn(0,"hosoutmpsflag") == "2"){
  1089. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  1090. if(astfMatrixData(sParam, 1, 9) == "Y") {
  1091. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1092. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1093. }
  1094. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1095. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  1096. var objCxtCommon = new ExtCommon();
  1097. ds_main_prcpdata_patinfo.updatecontrol = false;
  1098. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1099. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1100. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1101. }
  1102. ds_main_prcpdata_patinfo.updatecontrol = true;
  1103. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1104. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1105. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1106. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1107. var objParam = new Object();
  1108. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1109. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  1110. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  1111. } else {
  1112. if(ds_send_prcpinfo.getColumn(0,"eprntype") == "E") {
  1113. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(영문명처방)-창구");
  1114. // 20100219_laboru_영문처방전일 경우 사용기간 제거
  1115. ds_main_prcpdata_patinfo.setColumn(0,"usedayno","");
  1116. ds_main_prcpdata_patinfo.setColumn(0,"usedate","");
  1117. // 20100219_laboru_영문처방전일 경우 주민번호 뒷자리 별표 처리
  1118. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1119. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1120. } else {
  1121. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(약국제출용)-창구");
  1122. }
  1123. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1124. // exeReportPreview("RFADT61104", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pharmacy2",printerno);
  1125. var objCxtCommon = new ExtCommon();
  1126. ds_main_prcpdata_patinfo.updatecontrol = false;
  1127. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1128. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1129. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1130. }
  1131. ds_main_prcpdata_patinfo.updatecontrol = true;
  1132. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1133. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1134. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1135. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1136. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn" , ds_main_prcpdata_resn);
  1137. var objParam = new Object();
  1138. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1139. objParam.xml_data_XML2 = objDOM.documentElement.source;
  1140. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  1141. rptf_exeReportPreview30(["RFADT61104"],[objParam], option, "", "grp_pharmacy2");
  1142. dsf_makeValue(ds_main_prcpdata_patinfo,"hosoutmpsflagnm","string","(본인보관용)-창구");
  1143. if(astfMatrixData(sParam, 1, 9) == "Y") {
  1144. var rrgstno = ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").split("-");
  1145. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  1146. }
  1147. //2010-11-29_wify_경북대병원_전자서명이미지추가,약품명 영문명으로 변경
  1148. // exeReportPreview("RFADT61103", "XMLSTR", "", "", printer_name,"","","","","true", "", "grp_pat2",printerno);
  1149. var objCxtCommon = new ExtCommon();
  1150. ds_main_prcpdata_patinfo.updatecontrol = false;
  1151. ds_main_prcpdata_patinfo.addColumn("prt_signdata","string");
  1152. for(var i = 0 ; i < ds_main_prcpdata_patinfo.rowcount ; i++) {
  1153. ds_main_prcpdata_patinfo.setColumn(i,"prt_signdata",objCxtCommon.encodeBase64(ds_main_prcpdata_patinfo.getColumn(i, "signdata")));
  1154. }
  1155. ds_main_prcpdata_patinfo.updatecontrol = true;
  1156. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1157. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  1158. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  1159. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  1160. var objParam = new Object();
  1161. objParam.xml_data_XML1 = objDOM.documentElement.source;
  1162. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete";
  1163. rptf_exeReportPreview30(["RFADT61103"],[objParam], option, "", "grp_pat2");
  1164. }
  1165. }
  1166. }
  1167. }
  1168. } else {
  1169. this.close();
  1170. }
  1171. }
  1172. /****************************************************************************************
  1173. * Argument : N/A
  1174. * Description :
  1175. ****************************************************************************************/
  1176. function fChkFloat(qty) {
  1177. var fQty = parseFloat(qty);
  1178. var fRst = "";
  1179. if(fQty%1 == 0){
  1180. fRst = parseInt(qty);
  1181. } else {
  1182. fRst = qty;
  1183. }
  1184. return fRst;
  1185. }
  1186. /****************************************************************************************
  1187. * Argument : pData - 원 데이타
  1188. * : pRow(▩) - row 구분자
  1189. * : pCol(▦) - col 구분자
  1190. * Description : 구분자로 분리된 특정자료를 읽음
  1191. ****************************************************************************************/
  1192. function astfMatrixData(pData, pRow, pCol)
  1193. {
  1194. var rowSep = "▩";
  1195. var colSep = "▦";
  1196. var arrRow = pData.split(rowSep);
  1197. if(arrRow.length <= pRow) return "";
  1198. var arrCol = arrRow[pRow].split(colSep);
  1199. if(arrCol.length <= pCol) return "";
  1200. return arrCol[pCol];
  1201. }
  1202. function lf_complete() {
  1203. this.close();
  1204. }
  1205. //=======================================================================================
  1206. // Event
  1207. //---------------------------------------------------------------------------------------
  1208. /****************************************************************************************
  1209. * Components : Form
  1210. * Components ID : SPADT61100
  1211. * Event : oninit
  1212. * Argument : 01.obj : Object Event has occurred
  1213. * : 02.e : Event Object
  1214. * Description : 화면 처음 초기화시 폼초기화
  1215. ****************************************************************************************/
  1216. function SPADT61100_oninit(obj:Form, e:InitEventInfo)
  1217. {
  1218. frmf_initForm(obj);
  1219. }
  1220. /****************************************************************************************
  1221. * Components : Form
  1222. * Components ID : SPADT61100
  1223. * Event : onload
  1224. * Argument : 01.obj : Object Event has occurred
  1225. * : 02.e : Event Object
  1226. * Description : 화면 처음 초기화시 폼초기화
  1227. ****************************************************************************************/
  1228. function SPADT61100_onload(obj:Form, e:LoadEventInfo)
  1229. {
  1230. fInit();
  1231. }
  1232. function lf_spacebarcode_create()
  1233. {
  1234. var objExtCommon = new ExtCommon();
  1235. var fdir = "C:\\himed\\components\\SpaceQRLib\\module\\space\\";
  1236. //var curdate = utlf_getCurrentDateTime().replace(" ","");
  1237. var curdate = utlf_getCurrentDate();
  1238. for(var i=7; i<= 16; i++) {
  1239. var curddelate2 = curdate.toDate().getAddDate(-i, "D").getDateFormat();
  1240. //trace(curddelate2);
  1241. var fdir2 = "C:\\himed\\components\\SpaceQRLib\\module\\space\\";
  1242. fdir2 = fdir2 +curddelate2;
  1243. var bSucc2 = VirtualFile.deleteDirectory( fdir2, true )
  1244. }
  1245. fdir = fdir +curdate;
  1246. var bSucc = VirtualFile.createDirectory(fdir,false);
  1247. var fname = fdir+'\\'+ds_main_prcpdata_patinfo.getColumn(0,"pid")+"_"+curdate+"_"+ds_main_prcpdata_patinfo.getColumn(0,"drugno")+".jpg";
  1248. var bSucc3 = VirtualFile.delete( fname, true )
  1249. fdir = "C:\\himed\\components\\SpaceQRLib\\module\\space\\";
  1250. //trace("bSucc3 :"+bSucc3+"/"+fname+"/"+fdir);
  1251. //헤더부분
  1252. var v_header = '"'+'header'+'":'+'"'+'SPACE'+'",'; //헤더
  1253. var v_hosp_code = '"'+'hosp_code'+'":'+'"'+'77'+'",'; //병원코드
  1254. var v_version = '"'+'version'+'":'+ '"'+'2'+'",';//버전
  1255. var v_print_info = '"'+'print_info'+'":'+ '"'+'L'+'",';//프린터정보
  1256. var v_insure = '"'+'insure'+'":'; //보험구분
  1257. var v_insure_ex = '"'+'insure_ex'+'":'; //공상등구분
  1258. var v_protect = '"'+'protect'+'":'; //보호종별
  1259. var v_order_no = '"'+'order_no'+'":'; //교부번호
  1260. var v_medi_care_t = '"'+'medi_care_t'+'":"'+ds_main_prcpdata_patinfo.getColumn(0,"facilnumber")+'",'; //요양기관기호
  1261. var v_hosp_name = '"'+'hosp_name '+'":"'+ds_main_prcpdata_patinfo.getColumn(0,"hospnm1").replace(" ","")+'",'; // 의료기관 명칭
  1262. var v_hosp_tel = '"'+'hosp_tel '+'":"'+'053)200-5114'+'",'; // 의료기관 전화번호
  1263. var v_hosp_fax = '"'+'hosp_fax'+'":"'+'053)200-6044'+'",'; //의료기관 팩스번호
  1264. var v_hosp_email = '"'+'hosp_email'+'":'+'"",'; //의료기관 이메일
  1265. var v_doc_name = '"'+'doc_name'+'":'; //처방의 성명
  1266. var v_doc_license = '"'+'doc_license'+'":'; //처방의 면허종별
  1267. var v_doc_id = '"'+'doc_id'+'":'; //처방의 면허번호
  1268. var v_pat_name = '"'+'pat_name'+'":'; //수진자 이름
  1269. var v_pat_rrn = '"'+'pat_rrn'+'":'; //수진자 주민등록번호
  1270. var v_insured_relation = '"'+'insured_relation'+'":'; //피보험자와의 관계
  1271. var v_insurance_no = '"'+'insurance_no'+'":'; //증번호
  1272. var v_acc_hosp_no = '"'+'acc_hosp_no'+'":'; //산재요양기관기호
  1273. var v_company_name = '"'+'company_name'+'":'; //사업자 명칭
  1274. var v_vows_no = '"'+'vows_no'+'":'; //보훈번호
  1275. var v_order_date = '"'+'order_date'+'":'+'"'+ds_main_prcpdata_patinfo.getColumn(0,"prntdt").substr(0,8)+'",'; //발생일자
  1276. var v_medi_subject = ""//진료과목
  1277. var v_special_code = '"'+'special_code'+'":'+'"'+utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"spclcd")).substr(0,4)+'",';//특정기호
  1278. var v_period_date = '"'+'period_date'+'":'+'"'+ds_main_prcpdata_patinfo.getColumn(0,"usedayno")+'",';//사용기간
  1279. var v_extra_data = '"'+'extra_data'+'":'; //확장데이터
  1280. if (utlf_isNull(ds_main_prcpdata_patinfo.getColumn(0,"hospnm1"))) {
  1281. v_hosp_name = '"'+'hosp_name '+'":"'+ds_main_prcpdata_patinfo.getColumn(0,"hospnm").replace(" ","")+'",'; // 의료기관 명칭
  1282. }
  1283. if (ds_main_prcpdata_patinfo.getColumn(0,"instcd") == '032') { //칠곡
  1284. v_hosp_tel = '"'+'hosp_tel '+'":"'+'1566-2500'+'",'; // 의료기관 전화번호
  1285. v_hosp_fax = '"'+'hosp_fax'+'":"'+'053)200-2439'+'",'; //의료기관 팩스번호
  1286. }
  1287. if (utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"spclcd")).substr(0,1) == "V" ||
  1288. utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"spclcd")).substr(0,1) == "F" ) {
  1289. v_special_code = '"'+'special_code'+'":'+'"'+utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"spclcd")).substr(0,4)+'",';//특정기호
  1290. }else {
  1291. v_special_code = '"'+'special_code'+'":'+'"'+'",';//특정기호
  1292. }
  1293. //trace("v_special_code :"+v_special_code);
  1294. var deptcdnm = ds_main_prcpdata_patinfo.getColumn(0,"orddeptnm");
  1295. if (deptcdnm == "내분비대사내과") {
  1296. deptcdnm = "내분비.대사내과";
  1297. }
  1298. if (deptcdnm == "정신건강의학과") {
  1299. deptcdnm = "정신과";
  1300. }
  1301. if (deptcdnm == "마취통증의학과") {
  1302. deptcdnm = "마취과";
  1303. }
  1304. if (deptcdnm == "외과") {
  1305. deptcdnm = "일반외과";
  1306. }
  1307. if (deptcdnm == "비뇨의학과") {
  1308. deptcdnm = "비뇨기과";
  1309. }
  1310. if (deptcdnm == "소아청소년과") {
  1311. deptcdnm = "소아과";
  1312. }
  1313. if (deptcdnm == "핵의학과") {
  1314. deptcdnm = "핵의학";
  1315. }
  1316. if (deptcdnm == "가정의학과") {
  1317. deptcdnm = "가정의학";
  1318. }
  1319. if (deptcdnm == "대장항문소아외과") {
  1320. deptcdnm = "일반외과";
  1321. }
  1322. if (deptcdnm == "유방갑상선외과") {
  1323. deptcdnm = "일반외과";
  1324. }
  1325. if (deptcdnm == "알레르기감염내과") {
  1326. deptcdnm = "감염내과";
  1327. }
  1328. if (deptcdnm == "재활의학과") {
  1329. deptcdnm = "재활의학";
  1330. }
  1331. if (deptcdnm == "이식혈관외과") {
  1332. deptcdnm = "일반외과";
  1333. }
  1334. if (deptcdnm == "모발이식센터") {
  1335. deptcdnm = "피부과";
  1336. }
  1337. if (deptcdnm == "흉부외과") {
  1338. deptcdnm = "흉곽외과";
  1339. }
  1340. if (deptcdnm == "방사선종양학과") {
  1341. deptcdnm = "치료방사";
  1342. }
  1343. if (deptcdnm == "치과") {
  1344. deptcdnm = "치주과";
  1345. }
  1346. if (deptcdnm == "대장항문외과") {
  1347. deptcdnm = "일반외과";
  1348. }
  1349. if (deptcdnm == "방사선종양학과") {
  1350. deptcdnm = "치료방사";
  1351. }
  1352. if (deptcdnm == "소아알레르기호흡기" || deptcdnm == "소아청소년감염" || deptcdnm == "소아청소년과" || deptcdnm == "소아청소년내분비" || deptcdnm == "소아청소년소화기영양" || deptcdnm == "소아청소년신경" || deptcdnm == "소아청소년신장" || deptcdnm == "소아청소년심장" || deptcdnm == "소아청소년혈액종양" ) {
  1353. deptcdnm = "소아과";
  1354. }
  1355. if (deptcdnm == "신생아") {
  1356. deptcdnm = "소아과";
  1357. }
  1358. if (deptcdnm == "응급의학과") {
  1359. deptcdnm = "응급의학";
  1360. }
  1361. var nRow = ds_init_P0322list.findRow( "cdnm", deptcdnm );
  1362. var deptcd = "";
  1363. if (nRow > - 1 ) {
  1364. deptcd = ds_init_P0322list.getColumn(nRow,"cdid");
  1365. }else{
  1366. deptcd = deptcdnm.substr(0,4);
  1367. }
  1368. v_medi_subject = '"'+'medi_subject'+'":'+'"'+deptcd+'",';//진료과목
  1369. // trace(ds_init_P0322list.saveXML());
  1370. //trace("v_medi_subject :"+deptcdnm+"/"+v_medi_subject);
  1371. //헤더 데이터 적재하기
  1372. var v_insu = (ds_main_prcpdata_patinfo.getColumn(0,"insukind")).substr(0,1);
  1373. var v_insu2 ="";
  1374. if(v_insu == "4") { //산재
  1375. v_insu2 = "3";
  1376. }else if (v_insu == "3") { //자보
  1377. v_insu2 = "4";
  1378. }else{
  1379. v_insu2 = v_insu;
  1380. }
  1381. v_insure = v_insure+'"'+v_insu2+'",';
  1382. if (v_insu2 == "5") { // 보험유형 기타
  1383. v_insure_ex = v_insure_ex +'"51",';
  1384. }else {
  1385. v_insure_ex = v_insure_ex +'"",';
  1386. }
  1387. if (v_insu2 == '2') {
  1388. v_protect = v_protect+'"'+ds_main_prcpdata_patinfo.getColumn(0,"insukind").substr(1,1)+'",';
  1389. }else{
  1390. v_protect = v_protect+'"",';
  1391. }
  1392. v_order_no = v_order_no+'"'+ ds_main_prcpdata_patinfo.getColumn(0,"drugdd").substr(0,8)+ds_main_prcpdata_patinfo.getColumn(0,"drugno")+'",';
  1393. v_doc_name = v_doc_name+'"'+ds_main_prcpdata_patinfo.getColumn(0,"orddrnm")+'",';
  1394. if (deptcdnm.indexOf("치과") >= 0 || deptcdnm.indexOf("치주") >= 0 || deptcdnm.indexOf("구강") >= 0) { //치과의사구분
  1395. v_doc_license = v_doc_license+'"치과의사",';
  1396. }else{
  1397. v_doc_license = v_doc_license+'"의사",';
  1398. }
  1399. v_doc_id = v_doc_id+'"'+ds_main_prcpdata_patinfo.getColumn(0,"licnsno")+'",';
  1400. v_pat_name = v_pat_name+'"'+ds_main_prcpdata_patinfo.getColumn(0,"hngnm")+'",';
  1401. v_pat_rrn = v_pat_rrn+'"'+ds_main_prcpdata_patinfo.getColumn(0,"rrgstno").replace("-","")+'",';
  1402. v_insured_relation = v_insured_relation+'"",';
  1403. v_insurance_no = v_insurance_no+'"",';
  1404. v_acc_hosp_no = v_acc_hosp_no+'"",';
  1405. v_company_name = v_company_name+'"",';
  1406. v_vows_no = v_vows_no+'"",';
  1407. v_medi_subject = v_medi_subject;
  1408. v_special_code = v_special_code;
  1409. v_period_date = v_period_date;
  1410. v_extra_data = "";
  1411. //확장데이터
  1412. var rsrvdd = utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"rsrvdd")).replace("/","");//예약일자
  1413. var diagcd = new Array();
  1414. for (var i=0; i < ds_main_prcpdata_diaginfo.rowcount; i++){
  1415. diagcd[0] = ds_main_prcpdata_diaginfo.getColumn(0,"diagcd1");
  1416. if(!utlf_isNull(ds_main_prcpdata_diaginfo.getColumn(0,"diagcd2"))) {
  1417. diagcd[1] = ds_main_prcpdata_diaginfo.getColumn(0,"diagcd2");
  1418. };
  1419. }
  1420. if(diagcd.length > 0 && !utlf_isNull(rsrvdd)) {
  1421. v_extra_data = '01';
  1422. for (var j=0; j< diagcd.length; j++) {
  1423. v_extra_data = v_extra_data+'|'+diagcd[j];
  1424. }
  1425. for (var j=0; j < (4 - diagcd.length); j++) {
  1426. v_extra_data = v_extra_data+'|';
  1427. }
  1428. v_extra_data = '|'+v_extra_data + '|'+rsrvdd+'|';
  1429. }else if(diagcd.length > 0 && utlf_isNull(rsrvdd)) {
  1430. v_extra_data = '01';
  1431. for (var j=0; j< diagcd.length; j++) {
  1432. v_extra_data = '|'+v_extra_data+'|'+diagcd[j];
  1433. }
  1434. for (var j=0; j < (4 - diagcd.length); j++) {
  1435. v_extra_data = v_extra_data+'|';
  1436. }
  1437. v_extra_data = v_extra_data + '||';
  1438. }else if(diagcd.length < 1 && !utlf_isNull(rsrvdd)) {
  1439. v_extra_data = v_extra_data + '|||||'+rsrvdd+'|';
  1440. }else{
  1441. v_extra_data = v_extra_data + '"01"';
  1442. }
  1443. //v_extra_data = '"'+'extra_data'+'":"' + utlf_rPad(v_extra_data,200," ")+'"';
  1444. v_extra_data = '"'+'extra_data'+'":"' + v_extra_data+'"';
  1445. //trace(v_extra_data);
  1446. //trace(ds_main_prcpdata_patinfo.saveXML());
  1447. //trace(ds_main_prcpdata_diaginfo.saveXML());
  1448. //trace("rsrvdd"+rsrvdd+"/"+6 - diagcd.length);
  1449. //trace(ds_main_prcpdata_sumlist.saveXML());
  1450. //약/주사 처방부분
  1451. var v_allow_code = '"'+'allow_code'+'":'; //급여구분
  1452. var v_internal_use = '"'+'internal_use'+'":'; //내복/외용 구분
  1453. var v_drug_code = '"'+'drug_code'+'":'; //약품 코드
  1454. var v_oneday_admin = '"'+'oneday_admin'+'":'; //1 일 투여횟수
  1455. var v_all_admin = '"'+'all_admin'+'":'; //총 투여횟수
  1456. var v_admin_code = '"'+'admin_code'+'":'; //용법코드
  1457. var v_extra_data1 = ""; // 확장데이터
  1458. //v_extra_data1 = utlf_rPad(v_extra_data1,100," ");
  1459. var strJson = "";
  1460. var strJson2 = "";
  1461. var strJson3 = "";
  1462. strJson = '{ '+'\n' + v_header + '\n' + v_hosp_code + '\n' + v_version +'\n'+ v_print_info +'\n'+ v_insure +'\n'+ v_insure_ex +'\n'+ v_protect +'\n'
  1463. + v_order_no +'\n'+ v_medi_care_t +'\n'+ v_hosp_name +'\n'+ v_hosp_tel +'\n'+ v_hosp_fax +'\n'+ v_hosp_email +'\n'
  1464. + v_doc_name +'\n'+ v_doc_license +'\n'+ v_doc_id +'\n'+ v_pat_name +'\n'+ v_pat_rrn +'\n'+ v_insured_relation +'\n' +v_insurance_no +'\n'
  1465. + v_acc_hosp_no +'\n'+ v_company_name +'\n'+ v_vows_no +'\n'+ v_order_date +'\n'+ v_medi_subject +'\n'+ v_special_code +'\n' +v_period_date
  1466. +'\n' + v_extra_data;
  1467. for(var i = 0 ; i < ds_main_prcpdata_sumlist.rowcount ; i++) {
  1468. if (!utlf_isNull(ds_main_prcpdata_sumlist.getColumn(i,"prcptims"))) {
  1469. var v_drugkind = ds_main_prcpdata_sumlist.getColumn(i,"drugkind");//M 주사약,N 내복약,Y 외용약
  1470. var v_payflagcd = ds_main_prcpdata_sumlist.getColumn(i,"payflagcd");
  1471. var rxd_suryang = '|'+utlf_lPad((ds_main_prcpdata_sumlist.getColumn(i,"prcpqty")*10000),5,"0")+'|0';//1회 투약량
  1472. var rxd_code = ds_main_prcpdata_sumlist.getColumn(i,"edicd");
  1473. if (utlf_isNull(ds_main_prcpdata_sumlist.getColumn(i,"edicd"))) {
  1474. rxd_code = ds_main_prcpdata_sumlist.getColumn(i,"hngnm");
  1475. }
  1476. var rxd_gubun = "";
  1477. var rxd_pay = "";
  1478. if (v_drugkind == "M" || v_drugkind == "Y" ) {
  1479. rxd_gubun = "2";
  1480. }else{
  1481. rxd_gubun = "1";
  1482. }
  1483. if (v_payflagcd == "0") {
  1484. rxd_pay = "1";
  1485. }else if (v_payflagcd == "1") {
  1486. rxd_pay = "3";
  1487. }else if (v_payflagcd == "2") {
  1488. rxd_pay = "2";
  1489. }else{
  1490. rxd_pay = "3";
  1491. }
  1492. v_extra_data1 = "";
  1493. v_extra_data1 = v_extra_data1 + rxd_suryang;
  1494. //v_extra_data1 = '"'+'extra_data'+'":"'+utlf_rPad(v_extra_data1,100," ")+'"';
  1495. v_extra_data1 = '"'+'extra_data'+'":"'+v_extra_data1+'"';
  1496. if(v_drugkind == 'N' || v_drugkind == 'Y') { //약처방
  1497. if(utlf_isNull(strJson2)) {
  1498. strJson2 = strJson2 +'{'+'\n'+
  1499. v_allow_code +'"'+rxd_pay+'",'+'\n'+
  1500. v_internal_use +'"'+rxd_gubun+'",'+'\n'+
  1501. v_drug_code +'"'+rxd_code+'",'+'\n'+
  1502. v_oneday_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcptims")+'",'+'\n'+
  1503. v_all_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcpdayno")+'",'+'\n'+
  1504. //v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdnm")+'",'+'\n'+
  1505. v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdcd").substr(0,6)+'",'+'\n'+
  1506. v_extra_data1 +'}' ;
  1507. }else{
  1508. strJson2 = '\n'+strJson2 +','+'\n'+'{ '+'\n'+
  1509. v_allow_code +'"'+rxd_pay+'",'+'\n'+
  1510. v_internal_use +'"'+rxd_gubun+'",'+'\n'+
  1511. v_drug_code +'"'+rxd_code+'",'+'\n'+
  1512. v_oneday_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcptims")+'",'+'\n'+
  1513. v_all_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcpdayno")+'",'+'\n'+
  1514. //v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdnm")+'",'+'\n'+
  1515. v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdcd").substr(0,6)+'",'+'\n'+
  1516. v_extra_data1 +'}' ;
  1517. }
  1518. }else{ //주사처방
  1519. if(utlf_isNull(strJson3)) {
  1520. strJson3 = strJson3 +'{'+'\n'+
  1521. v_allow_code +'"'+rxd_pay+'",'+'\n'+
  1522. v_internal_use +'"'+rxd_gubun+'",'+'\n'+
  1523. v_drug_code +'"'+rxd_code+'",'+'\n'+
  1524. v_oneday_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcptims")+'",'+'\n'+
  1525. v_all_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcpdayno")+'",'+'\n'+
  1526. //v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdnm")+'",'+'\n'+
  1527. v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdcd").substr(0,6)+'",'+'\n'+
  1528. v_extra_data1 +'}' ;
  1529. }else{
  1530. strJson3 = '\n'+strJson3 +','+'\n'+'{ '+'\n'+
  1531. v_allow_code +'"'+rxd_pay+'",'+'\n'+
  1532. v_internal_use +'"'+rxd_gubun+'",'+'\n'+
  1533. v_drug_code +'"'+rxd_code+'",'+'\n'+
  1534. v_oneday_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcptims")+'",'+'\n'+
  1535. v_all_admin +'"'+ds_main_prcpdata_sumlist.getColumn(i,"prcpdayno")+'",'+'\n'+
  1536. //v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdnm")+'",'+'\n'+
  1537. v_admin_code +'"'+ds_main_prcpdata_sumlist.getColumn(i,"mthdcd").substr(0,6)+'",'+'\n'+
  1538. v_extra_data1 +'}' ;
  1539. }
  1540. }
  1541. }
  1542. }
  1543. var strTemp = strJson;
  1544. var strTemp2 = strJson2;
  1545. var strTemp3 = strJson3;
  1546. if(!utlf_isNull(strTemp2)) {
  1547. strTemp2 = '"'+'drug_list'+'"'+': ['+ strTemp2+'\n'+' ]';
  1548. }
  1549. if(!utlf_isNull(strTemp3)) {
  1550. strTemp3 = '"'+'injection_list'+'"'+': ['+strTemp3+'\n'+' ]';
  1551. }
  1552. if(!utlf_isNull(strTemp2) && !utlf_isNull(strTemp3)) {
  1553. strTemp = strTemp+','+'\n'+strTemp2+','+'\n'+strTemp3+'\n'+'}';
  1554. // return 'Y';
  1555. }else if(!utlf_isNull(strTemp2) && utlf_isNull(strTemp3)) {
  1556. strTemp = strTemp+','+'\n'+strTemp2+'\n'+'}';
  1557. // return 'Y';
  1558. }else if(utlf_isNull(strTemp2) && !utlf_isNull(strTemp3)) {
  1559. strTemp = strTemp+','+'\n'+strTemp3+'\n'+'}';
  1560. //return 'Y';
  1561. }else{
  1562. return 'N';
  1563. }
  1564. if(!utlf_isNull(strTemp2) || !utlf_isNull(strTemp3)) {
  1565. //trace(strTemp);
  1566. strTemp = strTemp.replace('"', '\\');
  1567. ds_main_prcpdata_patinfo.updatecontrol = false;
  1568. ds_main_prcpdata_patinfo.addColumn("drugfile","string");
  1569. ds_main_prcpdata_patinfo.setColumn(0,"drugfile",fname);
  1570. ds_main_prcpdata_patinfo.updatecontrol = true;
  1571. objExtCommon.executeProcess(fdir + "Space_module.exe", strTemp+' '+fname);
  1572. }else{
  1573. trace("strTemp:"+strTemp);
  1574. trace("strTemp2:"+strTemp2);
  1575. trace("strTemp3:"+strTemp3);
  1576. }
  1577. }
  1578. ]]></Script>
  1579. </Form>
  1580. </FDL>