SPADT62201.xjs 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[
  3. var nTotal = 0;
  4. /*
  5. var prepagecnt = 0;
  6. var nextpagecnt = 0;
  7. */
  8. /****************************************************************************************
  9. * Argument : N/A
  10. * Description : 초기화
  11. ****************************************************************************************/
  12. function fInit_prnt() {
  13. dsf_createDsRow("ds_req", [
  14. {col:"drugdd", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"drugdd")}
  15. , {col:"drugno", type:"INT", size:256, val:ds_send_prcpinfo.getColumn(0,"drugno")}
  16. , {col:"pid", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"pid")}
  17. , {col:"prcpdd", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"drugdd")}
  18. , {col:"orddd", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"orddd")}
  19. , {col:"cretno", type:"INT", size:256, val:ds_send_prcpinfo.getColumn(0,"cretno")}
  20. , {col:"orddeptcd", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"orddeptcd")}
  21. , {col:"prcpgenrflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"prcpgenrflag")}
  22. , {col:"lblflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"lblflag")}
  23. , {col:"prcpflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"prcpflag")}
  24. , {col:"prntflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"prntflag")}
  25. , {col:"etcdescflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"etcdescflag")}
  26. , {col:"reyn", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"reyn")}
  27. , {col:"autoyn", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"autoyn")}
  28. , {col:"reprintyn", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"reprintyn")}
  29. , {col:"stocdeptcd", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"stocdeptcd")}
  30. , {col:"autolimanti", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"autolimanti")}
  31. , {col:"clientprnttime", type:"STRING", size:256, val:utlf_getCurrentDateTime().replace(" ","")}
  32. , {col:"intiflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"intiflag")}
  33. , {col:"intinoflag", type:"STRING", size:256, val:ds_send_prcpinfo.getColumn(0,"intinoflag")}
  34. ]);
  35. var oParam = {};
  36. oParam.id = "TRADT62201";
  37. oParam.service = "pharmacyprescriptionapp.DrugPrint";
  38. oParam.method = "reqGetInPrintData";
  39. oParam.inds = "req=ds_req";
  40. oParam.outds = "ds_main_prcpdata_patinfo=patinfo ds_main_prcpdata_diaginfo=diaginfo ds_main_prcpdata_sumlist=sumlist ds_main_prcpdata_resn=resn";
  41. oParam.async = false;
  42. //oParam.callback = "cf_TRADT62201";
  43. tranf_submit(oParam);
  44. dsf_createDs("ds_main_prcpdata_sumlist_copy"); //
  45. dsf_copyColInfo(ds_main_prcpdata_sumlist_copy,ds_main_prcpdata_sumlist);
  46. ds_main_prcpdata_sumlist_copy.copyData(ds_main_prcpdata_sumlist);
  47. ds_main_prcpdata_sumlist.clearData();
  48. var intiyn1 = "N"; //인티팜처방 유무
  49. var intiyn2 = "N"; //인티팜처방 유무
  50. var intirow = 0; //인티팜처방 마지막 row
  51. var dcyn = "N"; //반환약 여부
  52. var drugno = ""; //drugno
  53. for (var i = 0 ; i < ds_main_prcpdata_sumlist_copy.rowcount ; i++) {
  54. var engnm = ds_main_prcpdata_sumlist_copy.getColumn(i,"engnm");
  55. if (!utlf_isNull(ds_main_prcpdata_sumlist_copy.getColumn(i,"drugno"))) {
  56. drugno =ds_main_prcpdata_sumlist_copy.getColumn(i,"drugno");
  57. }
  58. if (!utlf_isNull(engnm)) {
  59. if (engnm.indexOf("반 환 약") > 0 ) {
  60. dcyn = "Y";
  61. }
  62. }
  63. }
  64. if (dcyn == "N") {
  65. for (var i = 0 ; i < ds_main_prcpdata_sumlist_copy.rowcount ; i++) {
  66. var engnm = ds_main_prcpdata_sumlist_copy.getColumn(i,"engnm");
  67. var edicd = ds_main_prcpdata_sumlist_copy.getColumn(i,"edicd");
  68. if (!utlf_isNull(engnm)) {
  69. if (engnm.indexOf("이하 여백") < 0 && ds_main_prcpdata_sumlist_copy.getColumn(i,"mediflag") != 'M') {
  70. var iRow = ds_main_prcpdata_sumlist.addRow();
  71. ds_main_prcpdata_sumlist.copyRow(iRow, ds_main_prcpdata_sumlist_copy, i);
  72. intiyn1 = "Y";
  73. intirow = iRow;
  74. }
  75. //trace(engnm);
  76. if (engnm.indexOf("반 환 약") > 0 ) {
  77. dcyn = "Y";
  78. }
  79. }
  80. }
  81. for (var i = 0 ; i < ds_main_prcpdata_sumlist_copy.rowcount ; i++) {
  82. var iRow = 0;
  83. if (ds_main_prcpdata_sumlist_copy.getColumn(i,"mediflag") == 'M') {
  84. //trace("aaaaaaaaaaaaaaa :"+intiyn1+"/"+intiyn2);
  85. if (intiyn1 == "Y" && intiyn2 == "N" ) {
  86. iRow = ds_main_prcpdata_sumlist.addRow();
  87. ds_main_prcpdata_sumlist.setColumn(iRow, "edicd","");
  88. ds_main_prcpdata_sumlist.setColumn(iRow, "drugtype","");
  89. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpcd","");
  90. ds_main_prcpdata_sumlist.setColumn(iRow, "hngnm","");
  91. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  92. ds_main_prcpdata_sumlist.setColumn(iRow, "powdflag","");
  93. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol","");
  94. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvolunit","");
  95. ds_main_prcpdata_sumlist.setColumn(iRow, "dailyqty","");
  96. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty","");
  97. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqtyunit","");
  98. ds_main_prcpdata_sumlist.setColumn(iRow, "prcptims","");
  99. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdayno","");
  100. ds_main_prcpdata_sumlist.setColumn(iRow, "totdrugqty","");
  101. ds_main_prcpdata_sumlist.setColumn(iRow, "mthdnm","");
  102. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdelivefact","");
  103. ds_main_prcpdata_sumlist.setColumn(iRow, "drugno","");
  104. ds_main_prcpdata_sumlist.setColumn(iRow, "drugmd","");
  105. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpkindcd","");
  106. ds_main_prcpdata_sumlist.setColumn(iRow, "drugstatnm","");
  107. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol2","");
  108. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty2","");
  109. ds_main_prcpdata_sumlist.setColumn(iRow, "mediflag","");
  110. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  111. ds_main_prcpdata_sumlist.setColumn(iRow, "nextpageyn","Y");
  112. ds_main_prcpdata_sumlist.setColumn(iRow, "careprnexecflag","");
  113. iRow = ds_main_prcpdata_sumlist.addRow();
  114. ds_main_prcpdata_sumlist.copyRow(iRow, ds_main_prcpdata_sumlist_copy, i);
  115. ds_main_prcpdata_sumlist.setColumn(iRow, "edicd","");
  116. ds_main_prcpdata_sumlist.setColumn(iRow, "drugtype","");
  117. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpcd","");
  118. ds_main_prcpdata_sumlist.setColumn(iRow, "hngnm","");
  119. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  120. ds_main_prcpdata_sumlist.setColumn(iRow, "powdflag","");
  121. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol","");
  122. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvolunit","");
  123. ds_main_prcpdata_sumlist.setColumn(iRow, "dailyqty","");
  124. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty","");
  125. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqtyunit","");
  126. ds_main_prcpdata_sumlist.setColumn(iRow, "prcptims","");
  127. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdayno","");
  128. ds_main_prcpdata_sumlist.setColumn(iRow, "totdrugqty","");
  129. ds_main_prcpdata_sumlist.setColumn(iRow, "mthdnm","");
  130. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdelivefact","");
  131. ds_main_prcpdata_sumlist.setColumn(iRow, "drugno","");
  132. ds_main_prcpdata_sumlist.setColumn(iRow, "drugmd","");
  133. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpkindcd","");
  134. ds_main_prcpdata_sumlist.setColumn(iRow, "drugstatnm","");
  135. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol2","");
  136. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty2","");
  137. ds_main_prcpdata_sumlist.setColumn(iRow, "mediflag","");
  138. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","< 인티팜 약 >");
  139. ds_main_prcpdata_sumlist.setColumn(iRow, "nextpageyn","Y");
  140. ds_main_prcpdata_sumlist.setColumn(iRow, "careprnexecflag","");
  141. }else if (intiyn1 == "N" && intiyn2 == "N" ) {
  142. //trace('AAAAAAAAAAAAAAAAAAAAAAAAAAAA');
  143. iRow = ds_main_prcpdata_sumlist.addRow();
  144. ds_main_prcpdata_sumlist.setColumn(iRow, "edicd","");
  145. ds_main_prcpdata_sumlist.setColumn(iRow, "drugtype","");
  146. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpcd","");
  147. ds_main_prcpdata_sumlist.setColumn(iRow, "hngnm","");
  148. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  149. ds_main_prcpdata_sumlist.setColumn(iRow, "powdflag","");
  150. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol","");
  151. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvolunit","");
  152. ds_main_prcpdata_sumlist.setColumn(iRow, "dailyqty","");
  153. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty","");
  154. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqtyunit","");
  155. ds_main_prcpdata_sumlist.setColumn(iRow, "prcptims","");
  156. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdayno","");
  157. ds_main_prcpdata_sumlist.setColumn(iRow, "totdrugqty","");
  158. ds_main_prcpdata_sumlist.setColumn(iRow, "mthdnm","");
  159. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdelivefact","");
  160. ds_main_prcpdata_sumlist.setColumn(iRow, "drugno","");
  161. ds_main_prcpdata_sumlist.setColumn(iRow, "drugmd","");
  162. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpkindcd","");
  163. ds_main_prcpdata_sumlist.setColumn(iRow, "drugstatnm","");
  164. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol2","");
  165. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty2","");
  166. ds_main_prcpdata_sumlist.setColumn(iRow, "mediflag","");
  167. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  168. ds_main_prcpdata_sumlist.setColumn(iRow, "nextpageyn","Y");
  169. ds_main_prcpdata_sumlist.setColumn(iRow, "careprnexecflag","");
  170. iRow = ds_main_prcpdata_sumlist.addRow();
  171. ds_main_prcpdata_sumlist.copyRow(iRow, ds_main_prcpdata_sumlist_copy, i);
  172. ds_main_prcpdata_sumlist.setColumn(iRow, "edicd","");
  173. ds_main_prcpdata_sumlist.setColumn(iRow, "drugtype","");
  174. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpcd","");
  175. ds_main_prcpdata_sumlist.setColumn(iRow, "hngnm","");
  176. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","");
  177. ds_main_prcpdata_sumlist.setColumn(iRow, "powdflag","");
  178. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol","");
  179. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvolunit","");
  180. ds_main_prcpdata_sumlist.setColumn(iRow, "dailyqty","");
  181. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty","");
  182. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqtyunit","");
  183. ds_main_prcpdata_sumlist.setColumn(iRow, "prcptims","");
  184. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdayno","");
  185. ds_main_prcpdata_sumlist.setColumn(iRow, "totdrugqty","");
  186. ds_main_prcpdata_sumlist.setColumn(iRow, "mthdnm","");
  187. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpdelivefact","");
  188. ds_main_prcpdata_sumlist.setColumn(iRow, "drugno","");
  189. ds_main_prcpdata_sumlist.setColumn(iRow, "drugmd","");
  190. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpkindcd","");
  191. ds_main_prcpdata_sumlist.setColumn(iRow, "drugstatnm","");
  192. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpvol2","");
  193. ds_main_prcpdata_sumlist.setColumn(iRow, "prcpqty2","");
  194. ds_main_prcpdata_sumlist.setColumn(iRow, "mediflag","");
  195. ds_main_prcpdata_sumlist.setColumn(iRow, "engnm","< 인티팜 약 >");
  196. ds_main_prcpdata_sumlist.setColumn(iRow, "nextpageyn","Y");
  197. ds_main_prcpdata_sumlist.setColumn(iRow, "careprnexecflag","");
  198. }
  199. iRow = ds_main_prcpdata_sumlist.addRow();
  200. ds_main_prcpdata_sumlist.copyRow(iRow, ds_main_prcpdata_sumlist_copy, i);
  201. intiyn2 = "Y";
  202. }
  203. }
  204. for (var i = 0 ; i < ds_main_prcpdata_sumlist_copy.rowcount ; i++) {
  205. var engnm = ds_main_prcpdata_sumlist_copy.getColumn(i,"engnm");
  206. var edicd = ds_main_prcpdata_sumlist_copy.getColumn(i,"edicd");
  207. var nextpageyn = ds_main_prcpdata_sumlist_copy.getColumn(i,"nextpageyn");
  208. if (!utlf_isNull(engnm)) {
  209. //if (utlf_isNull(edicd)) {
  210. if (engnm.indexOf("이하 여백") >= 0 ) {
  211. var iRow = ds_main_prcpdata_sumlist.addRow();
  212. ds_main_prcpdata_sumlist.copyRow(iRow, ds_main_prcpdata_sumlist_copy, i);
  213. }
  214. }
  215. }
  216. }else{
  217. ds_main_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist_copy);
  218. }
  219. //20090811 이선경 처방전 수동 첫출력시 log 생성
  220. if(ds_send_prcpinfo.getColumn(0,"autoyn") != "Y" && ds_send_prcpinfo.getColumn(0,"reprintyn") != "Y") {
  221. sysf_trace("병동처방전 출력 log START");
  222. sysf_trace("pid : " + ds_main_prcpdata_patinfo.getColumn(0,"pid"));
  223. sysf_trace("prcpdd : " + ds_main_prcpdata_patinfo.getColumn(0,"prcpdd"));
  224. sysf_trace("drugno : " + ds_main_prcpdata_patinfo.getColumn(0,"drugno"));
  225. sysf_trace("병동처방전 출력 log END");
  226. }
  227. //20101102 이선경 수정 : 일일기준과 1회 기준의 용량과 수량을 보여주는 것을 결정하여 결과를 리턴
  228. var colHidnValue = lf_grdBaseColHidn("D");
  229. //1회 기준
  230. if( colHidnValue == "C" ) {
  231. dsf_makeValue(ds_main_prcpdata_patinfo,"prcpvol2chk","string","Y");
  232. }
  233. if(!utlf_isNull(ds_main_prcpdata_patinfo.getColumn(0,"pid"))) {
  234. var memo = utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"memo"));
  235. var memoCnt = 0;
  236. var lineCnt = 0;
  237. var pageCnt = 0;
  238. var strMemo = "";
  239. var nextMemo = "";
  240. /*
  241. if ( memo.indexOf("\n", lineCnt) >=0 ){
  242. while ( (memoCnt = memo.indexOf("\n", lineCnt ))>=0){
  243. if( pageCnt < 3) {
  244. if (lineCnt == 0) {
  245. strMemo = strMemo + memo.substring( lineCnt, memoCnt );
  246. } else {
  247. strMemo = strMemo + "\n" + memo.substring( lineCnt, memoCnt ) ;
  248. }
  249. } else {
  250. if (pageCnt == 3) {
  251. nextMemo = nextMemo + memo.substring( lineCnt, memoCnt );
  252. } else {
  253. nextMemo = nextMemo + "\n" + memo.substring( lineCnt, memoCnt ) ;
  254. }
  255. }
  256. lineCnt = memoCnt + 1;
  257. pageCnt++;
  258. }
  259. if ( lineCnt < memo.length ) {
  260. nextMemo = nextMemo + "\n" + memo.substring( lineCnt, memo.length );
  261. }
  262. } else {
  263. strMemo = memo;
  264. }
  265. */
  266. ds_main_prcpdata_patinfo.setColumn(0,"memo", memo);
  267. dsf_makeValue(ds_main_prcpdata_patinfo,"memo1","string", nextMemo);
  268. var prepagecnt = 0;
  269. var nextpagecnt = 0;
  270. dsf_createDs("ds_temp_prcpdata_sumlist");
  271. dsf_copyColInfo(ds_temp_prcpdata_sumlist,ds_main_prcpdata_sumlist);
  272. ds_temp_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist);
  273. // trace('000000000000000000');
  274. // trace(ds_temp_prcpdata_sumlist.saveXML());
  275. ds_main_prcpdata_sumlist.clearData();
  276. dsf_createDs("ds_main_prcpdata_sumlist2"); //다음페이지 출력할 약품
  277. dsf_copyColInfo(ds_main_prcpdata_sumlist,ds_temp_prcpdata_sumlist);
  278. dsf_copyColInfo(ds_main_prcpdata_sumlist2,ds_temp_prcpdata_sumlist);
  279. for (var i = 0 ; i < ds_temp_prcpdata_sumlist.rowcount ; i++) {
  280. var nextpageyn = ds_temp_prcpdata_sumlist.getColumn(i,"nextpageyn");
  281. if(nextpageyn == "N" || utlf_isNull(nextpageyn)) {
  282. ds_main_prcpdata_sumlist.copyRow(ds_main_prcpdata_sumlist.addRow(),ds_temp_prcpdata_sumlist,i);
  283. prepagecnt++;
  284. } else if(nextpageyn == "Y") {
  285. ds_main_prcpdata_sumlist2.copyRow(ds_main_prcpdata_sumlist2.addRow(),ds_temp_prcpdata_sumlist,i);
  286. nextpagecnt++;
  287. } else {
  288. }
  289. }
  290. if( nextpagecnt > 0 ) {
  291. if(ds_temp_prcpdata_sumlist.rowcount > 0) {
  292. if(ds_temp_prcpdata_sumlist.getColumn(ds_temp_prcpdata_sumlist.rowcount-2,"nextpageyn") == "E") {
  293. ds_main_prcpdata_sumlist2.copyRow(ds_main_prcpdata_sumlist2.addRow(),ds_temp_prcpdata_sumlist,ds_temp_prcpdata_sumlist.rowcount-2);
  294. }
  295. }
  296. ds_main_prcpdata_sumlist2.copyRow(ds_main_prcpdata_sumlist2.addRow(),ds_temp_prcpdata_sumlist,ds_temp_prcpdata_sumlist.rowcount-1);
  297. } else {
  298. if(ds_temp_prcpdata_sumlist.rowcount > 0) {
  299. if(ds_temp_prcpdata_sumlist.getColumn(ds_temp_prcpdata_sumlist.rowcount-2,"nextpageyn") == "E") {
  300. ds_main_prcpdata_sumlist.copyRow(ds_main_prcpdata_sumlist.addRow(),ds_temp_prcpdata_sumlist,ds_temp_prcpdata_sumlist.rowcount-2);
  301. }
  302. }
  303. ds_main_prcpdata_sumlist.copyRow(ds_main_prcpdata_sumlist.addRow(),ds_temp_prcpdata_sumlist,ds_temp_prcpdata_sumlist.rowcount-1);
  304. }
  305. // trace('1111111111111111111111');
  306. // trace(ds_main_prcpdata_sumlist.saveXML());
  307. // trace(ds_main_prcpdata_sumlist2.saveXML());
  308. //처방전에 환자 키, 체중을 입력하기 위해 첫번째 공백 노드 삭제.(2010-01-18)
  309. if(utlf_isNull(ds_main_prcpdata_sumlist2.getColumn(0,"hngnm"))) {
  310. ds_main_prcpdata_sumlist2.deleteRow(0);
  311. }
  312. //처방전에 환자 키, 체중을 입력하기 위해 첫번째 공백 노드 삭제.(2010-01-18)
  313. if(utlf_isNull(ds_main_prcpdata_sumlist.getColumn(0,"hngnm"))) {
  314. ds_main_prcpdata_sumlist.deleteRow(0);
  315. }
  316. //처방전에 DUR이 존재하면 RFADT62202 존재하지 않으면 RFADT62200 출력
  317. var resn = ds_main_prcpdata_resn.getColumn(0,"resnnm");
  318. // 20101106_laboru_경북대병원_주민번호 뒷자리 별표 처리
  319. var rrgstno = utlf_transNullToEmpty(ds_main_prcpdata_patinfo.getColumn(0,"rrgstno")).split("-");
  320. ds_main_prcpdata_patinfo.setColumn(0,"rrgstno", rrgstno[0] + "-" + rrgstno[1].substring(0, 1) + "******");
  321. // 20120228_laboru_지참약 유무 출력
  322. if(!utlf_isNull(ds_main_prcpdata_sumlist.getColumn(0,"selfflag"))) {
  323. dsf_makeValue(ds_main_prcpdata_patinfo,"selfflag","string", "(" + ds_main_prcpdata_sumlist.getColumn(0,"selfflag") + ")");
  324. }
  325. //trace('222222222222222 -> '+nextpagecnt);
  326. // 20120402_laboru_처방전에 인티팜 약인지 여부 표시
  327. if(nextpagecnt > 0) {
  328. for (var i = 0 ; i < ds_main_prcpdata_sumlist2.rowcount ; i++) {
  329. var tempmedi = "";
  330. if(ds_main_prcpdata_sumlist2.getColumn(i,"mediflag") == "M") {
  331. tempmedi = "인티";
  332. } else if(ds_main_prcpdata_sumlist2.getColumn(i,"mediflag") == "P") {
  333. tempmedi = "약국";
  334. }
  335. if (!utlf_isNull(tempmedi)) {
  336. ds_main_prcpdata_sumlist2.setColumn(i,"engnm", tempmedi + " - " + ds_main_prcpdata_sumlist2.getColumn(i,"engnm") );
  337. }
  338. }
  339. for (var i = 0 ; i < ds_main_prcpdata_sumlist.rowcount ; i++) {
  340. var tempmedi = "";
  341. if(ds_main_prcpdata_sumlist.getColumn(i,"mediflag") == "M") {
  342. tempmedi = "인티";
  343. } else if(ds_main_prcpdata_sumlist.getColumn(i,"mediflag") == "P") {
  344. tempmedi = "약국";
  345. }
  346. if (!utlf_isNull(tempmedi)) {
  347. ds_main_prcpdata_sumlist.setColumn(i,"engnm", tempmedi + " - " + ds_main_prcpdata_sumlist.getColumn(i,"engnm") );
  348. }
  349. }
  350. } else {
  351. for (var i = 1 ; i < ds_main_prcpdata_sumlist.rowcount ; i++) {
  352. var tempmedi = "";
  353. if(ds_main_prcpdata_sumlist.getColumn(i,"mediflag") == "M") {
  354. tempmedi = "인티";
  355. } else if(ds_main_prcpdata_sumlist.getColumn(i,"mediflag") == "P") {
  356. tempmedi = "약국";
  357. }
  358. if (!utlf_isNull(tempmedi)) {
  359. ds_main_prcpdata_sumlist.setColumn(i,"engnm", tempmedi + " - " + ds_main_prcpdata_sumlist.getColumn(i,"engnm") );
  360. }
  361. }
  362. }
  363. // 20101117_wify_경북대병원_보고서폼 변경 처리
  364. // RFADT622000 ==> RFADT622003
  365. // RFADT622001 ==> RFADT622004
  366. // RFADT622002 ==> RFADT622005
  367. if(utlf_isNull(resn)) {
  368. if ( !utlf_isNull(nextMemo) ) {
  369. nTotal = prepagecnt + nextpagecnt;
  370. if(prepagecnt > 0) {
  371. nTotal = nTotal - prepagecnt;
  372. //sysf_trace("1-1 total : "+nTotal);
  373. // makeReportPreview(0,0,10, 10, "grp_report1");
  374. var objDOM = rptf_createDOM(); // DOM 객체 설정
  375. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  376. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  377. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  378. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  379. var objParam = new Object();
  380. objParam.xml_data_XML1 = objDOM.documentElement.source;
  381. if (nextpagecnt < 1) {
  382. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  383. }else{
  384. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  385. }
  386. rptf_exeReportPreview30(["RFADT62203"],[objParam], option);
  387. }
  388. if(nextpagecnt > 0) {
  389. nTotal = nTotal - nextpagecnt;
  390. //sysf_trace("1-2 total : "+nTotal);
  391. // makeReportPreview(0,0,10, 10, "grp_report2");
  392. // makeReportPreview(0,0,10, 10, "grp_report3");
  393. var objDOM = rptf_createDOM(); // DOM 객체 설정
  394. ds_main_prcpdata_sumlist.clearData();
  395. ds_main_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist2);
  396. //rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  397. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist2);
  398. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  399. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  400. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  401. var objParam = new Object();
  402. objParam.xml_data_XML1 = objDOM.documentElement.source;
  403. if (nextpagecnt < 1) {
  404. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  405. }else{
  406. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  407. }
  408. rptf_exeReportPreview30(["RFADT62203","RFADT62204"],[objParam], option);
  409. } else {
  410. // makeReportPreview(0,0,10, 10, "grp_report2");
  411. var objDOM = rptf_createDOM(); // DOM 객체 설정
  412. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  413. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  414. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  415. // rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  416. var objParam = new Object();
  417. objParam.xml_data_XML1 = objDOM.documentElement.source;
  418. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  419. rptf_exeReportPreview30(["RFADT62204"],[objParam], option);
  420. }
  421. } else {
  422. nTotal = prepagecnt + nextpagecnt;
  423. if(prepagecnt > 0) {
  424. nTotal = nTotal - prepagecnt;
  425. //sysf_trace("2-1 total : "+nTotal+"/"+prepagecnt+"/"+nextpagecnt);
  426. // makeReportPreview(0,0,10, 10, "grp_report1");
  427. var objDOM = rptf_createDOM(); // DOM 객체 설정
  428. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  429. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  430. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  431. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  432. var objParam = new Object();
  433. objParam.xml_data_XML1 = objDOM.documentElement.source;
  434. if (nextpagecnt < 1) {
  435. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  436. }else{
  437. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  438. }
  439. rptf_exeReportPreview30(["RFADT62203"],[objParam], option);
  440. }
  441. if(nextpagecnt > 0) {
  442. //sysf_trace("2-2 total : "+nTotal);
  443. nTotal = nTotal - nextpagecnt;
  444. // makeReportPreview(0,0,10, 10, "grp_report2");
  445. var objDOM = rptf_createDOM(); // DOM 객체 설정
  446. ds_main_prcpdata_sumlist.clearData();
  447. ds_main_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist2);
  448. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  449. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  450. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  451. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  452. var objParam = new Object();
  453. objParam.xml_data_XML1 = objDOM.documentElement.source;
  454. //var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  455. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  456. rptf_exeReportPreview30(["RFADT62203"],[objParam], option);
  457. }
  458. }
  459. }else {
  460. if ( !utlf_isNull(nextMemo) ) {
  461. nTotal = prepagecnt + nextpagecnt;
  462. if(prepagecnt > 0) {
  463. nTotal = nTotal - prepagecnt;
  464. //sysf_trace("3-1 total : "+nTotal);
  465. // makeReportPreview(0,0,10, 10, "grp_report1");
  466. var objDOM1 = rptf_createDOM(); // DOM 객체 설정
  467. var objDOM2 = rptf_createDOM(); // DOM 객체 설정
  468. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist);
  469. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/patinfo", ds_main_prcpdata_patinfo);
  470. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  471. rptf_setNodeListToDOM(objDOM2, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  472. var objParam = new Object();
  473. objParam.xml_data_XML1 = objDOM1.documentElement.source;
  474. objParam.xml_data_XML2 = objDOM2.documentElement.source;
  475. if (nextpagecnt < 1) {
  476. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  477. }else{
  478. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  479. }
  480. rptf_exeReportPreview30(["RFADT62205"],[objParam], option);
  481. }
  482. if(nextpagecnt > 0) {
  483. nTotal = nTotal - nextpagecnt;
  484. //sysf_trace("3-2 total : "+nTotal);
  485. // makeReportPreview(0,0,10, 10, "grp_report2");
  486. // makeReportPreview(0,0,10, 10, "grp_report3");
  487. ds_main_prcpdata_sumlist.clear();
  488. ds_main_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist2);
  489. var objDOM1 = rptf_createDOM(); // DOM 객체 설정
  490. var objDOM2 = rptf_createDOM(); // DOM 객체 설정
  491. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist);
  492. //rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist2);
  493. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/patinfo", ds_main_prcpdata_patinfo);
  494. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  495. rptf_setNodeListToDOM(objDOM2, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  496. var objParam = new Object();
  497. objParam.xml_data_XML1 = objDOM1.documentElement.source;
  498. objParam.xml_data_XML2 = objDOM2.documentElement.source;
  499. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  500. rptf_exeReportPreview30(["RFADT62205","RFADT62204"],[objParam], option);
  501. } else {
  502. // makeReportPreview(0,0,10, 10, "grp_report2");
  503. var objDOM = rptf_createDOM(); // DOM 객체 설정
  504. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/sumlist" , ds_main_prcpdata_sumlist);
  505. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/patinfo" , ds_main_prcpdata_patinfo);
  506. rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  507. // rptf_setNodeListToDOM(objDOM, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  508. var objParam = new Object();
  509. objParam.xml_data_XML1 = objDOM.documentElement.source;
  510. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  511. rptf_exeReportPreview30(["RFADT62204"],[objParam], option);
  512. }
  513. } else {
  514. nTotal = prepagecnt + nextpagecnt;
  515. if(prepagecnt > 0) {
  516. nTotal = nTotal - prepagecnt;
  517. //sysf_trace("4-1 total : "+nTotal);
  518. // makeReportPreview(0,0,10, 10, "grp_report1");
  519. var objDOM1 = rptf_createDOM(); // DOM 객체 설정
  520. var objDOM2 = rptf_createDOM(); // DOM 객체 설정
  521. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist);
  522. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/patinfo", ds_main_prcpdata_patinfo);
  523. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  524. rptf_setNodeListToDOM(objDOM2, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  525. var objParam = new Object();
  526. objParam.xml_data_XML1 = objDOM1.documentElement.source;
  527. objParam.xml_data_XML2 = objDOM2.documentElement.source;
  528. //var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  529. if (nextpagecnt < 1) {
  530. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  531. }else{
  532. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;";
  533. }
  534. rptf_exeReportPreview30(["RFADT62205"],[objParam], option);
  535. }
  536. if(nextpagecnt > 0) {
  537. nTotal = nTotal - nextpagecnt;
  538. //sysf_trace("4-2 total : "+nTotal);
  539. // makeReportPreview(0,0,10, 10, "grp_report2");
  540. ds_main_prcpdata_sumlist.clear();
  541. ds_main_prcpdata_sumlist.copyData(ds_main_prcpdata_sumlist2);
  542. var objDOM1 = rptf_createDOM(); // DOM 객체 설정
  543. var objDOM2 = rptf_createDOM(); // DOM 객체 설정
  544. //rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist);
  545. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/sumlist", ds_main_prcpdata_sumlist);
  546. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/patinfo", ds_main_prcpdata_patinfo);
  547. rptf_setNodeListToDOM(objDOM1, "/root/main/prcpdata/diaginfo", ds_main_prcpdata_diaginfo);
  548. rptf_setNodeListToDOM(objDOM2, "/root/main/prcpdata/resn", ds_main_prcpdata_resn);
  549. var objParam = new Object();
  550. objParam.xml_data_XML1 = objDOM1.documentElement.source;
  551. objParam.xml_data_XML2 = objDOM2.documentElement.source;
  552. var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=1;callback=lf_complete;";
  553. rptf_exeReportPreview30(["RFADT62205"],[objParam], option);
  554. }
  555. }
  556. }
  557. } else {
  558. this.close();
  559. }
  560. }
  561. function lf_complete() {
  562. //trace("nTotal "+nTotal);
  563. //trace(ds_main_prcpdata_patinfo.saveXML());
  564. if(nTotal == 0) this.close();
  565. }
  566. ]]></Script>