SMADT01100.js 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856
  1. /**
  2. * 파 일 명 : OAD_OutCheoBangJeonHelp.js
  3. * 설 명 : 외래 처방전/라벨 출력 Javascriot
  4. * 설 계 자 : 안찬영
  5. * 작 성 자 : 안찬영
  6. * 수정이력 : 2006.3.20 / 수정작성 / 공두경
  7. */
  8. var gTimer;
  9. var gTimer1;
  10. var chk_count=0;
  11. var chk_cnt = 0;
  12. /**
  13. * 초기화
  14. */
  15. function fInit() {
  16. //등록번호▦처방일자▦진료과▦진료의사▦주부유형▩
  17. //var sParam = model.getAttribute("YK_OUT_PRINT_PARAM");
  18. //model.setValue("/root/HideData/cbsearch/pid", TFGetMatrixData(sParam, 0, 0));
  19. //model.setValue("/root/HideData/cbsearch/orddd", TFGetMatrixData(sParam, 0, 1));
  20. //model.setValue("/root/HideData/cbsearch/orddeptcd", TFGetMatrixData(sParam, 0, 2));
  21. //model.setValue("/root/HideData/cbsearch/orddoctcd", TFGetMatrixData(sParam, 0, 3));
  22. // model.setValue("/root/HideData/cbsearch/mskind", TFGetMatrixData(sParam, 0, 4));
  23. //model.setValue("/root/HideData/cbsearch/totaldt", TFGetMatrixData(sParam, 0, 5));
  24. // 출력 조건 초기화
  25. //model.setAttribute("YK_OUT_PRINT_PARAM", "");
  26. // 날짜 초기화
  27. var curDate = new Date();
  28. model.setValue("/root/hidden/prcpsrch/drugdd", getCurrentDate());
  29. //원내 체크 초기화
  30. model.makeValue("/root/hidden/prcpsrch/hosinyn", "Y");
  31. fChkHosin_YN();
  32. //라벨 체크 초기화
  33. model.makeValue("/root/hidden/prcpsrch/lblyn", "Y");
  34. fChkLBL_YN();
  35. //원외 체크 초기화
  36. model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
  37. fChkHosout_YN();
  38. //makeReportPreview(0,230,820,700);
  39. //진료과 Combo 조회
  40. model.setValue("/root/send/deptinfo/deptflag", "D");
  41. //submit("TRADT01103");
  42. model.refresh();
  43. if(model.getValue("/root/hidden/popupinfo/drugno") != ""){
  44. model.setValue("/root/hidden/prcpsrch/drugdd", model.getValue("/root/hidden/popupinfo/drugdd"));
  45. model.setValue("/root/hidden/prcpsrch/drugno", model.getValue("/root/hidden/popupinfo/drugno"));
  46. var drugno = model.getValue("/root/hidden/popupinfo/drugno");
  47. var hosinhosoutflagnm = model.getValue("/root/hidden/popupinfo/hosinhosoutflagnm");
  48. if( drugno >= 80000 && drugno < 90000) { //20100728 이선경 추가 : 임상연구 일반약 처방전 출력위해 추가
  49. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "C");
  50. if(hosinhosoutflagnm == "원내"){
  51. model.setValue("/root/hidden/prcpsrch/hosoutyn", "");
  52. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "");
  53. } else {
  54. model.makeValue("/root/hidden/prcpsrch/lblyn", "");
  55. model.makeValue("/root/hidden/prcpsrch/lblflag", "");
  56. model.makeValue("/root/hidden/prcpsrch/injyn", "");
  57. model.makeValue("/root/hidden/prcpsrch/hosinyn", "");
  58. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "");
  59. model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
  60. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "1|2");
  61. }
  62. } else if( (drugno > 10000 && drugno < 60001) || drugno >= 70000 ) {
  63. model.makeValue("/root/hidden/prcpsrch/lblyn", "");
  64. model.makeValue("/root/hidden/prcpsrch/lblflag", "");
  65. model.makeValue("/root/hidden/prcpsrch/hosinyn", "");
  66. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "");
  67. model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
  68. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "1|2");
  69. } else {
  70. model.setValue("/root/hidden/prcpsrch/hosoutyn", "");
  71. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "");
  72. }
  73. model.refresh();
  74. }
  75. //바코드프린터설정 초기화
  76. model.setValue("/root/send/scrnid", getScreenID());
  77. submit("TRLLC90101", false);
  78. var comm = model.getValue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/comm");
  79. var prntkind = model.getValue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/prntkind");
  80. if(comm == "2") {
  81. model.setValue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/comm02/comm", "1");
  82. }
  83. if(prntkind == "1") {
  84. model.setValue("/root/main/barcdprntsetup/prntsetupinfo/setupinfo/prntkind", "5");
  85. }
  86. // 출고부서 조회, 설정 2009.09.07 pymi
  87. submit("TRADT01106");
  88. var dutplceinstcd = getUserInfo("dutplceinstcd");
  89. // 20101019_laboru_경북대병원_cmc 셋팅을 경북대병원용으로 변경
  90. /*
  91. if(dutplceinstcd == "017" || dutplceinstcd == "012" || dutplceinstcd == "011") {
  92. combo1.select(1);
  93. } else {
  94. combo1.select(0);
  95. }*/
  96. if(dutplceinstcd == "031") {
  97. combo1.select(1);
  98. } else if(dutplceinstcd == "032") {
  99. combo1.select(0);
  100. } else {
  101. combo1.select(1);
  102. }
  103. chk_cnt ++;
  104. model.setValue("/root/temp/stocdeptcd", model.getValue("/root/hidden/prcpsrch/stocdeptcd"));
  105. combo1.refresh();
  106. // (e)
  107. // 2010.03.18 pymi
  108. submit("TRADT01107");
  109. model.setValue("/root/hidden/prcpsrch/lbl5", model.getValue("/root/init/lbllists/lbllists/lbl5"));
  110. // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
  111. submit("TRADT01108");
  112. // (e)
  113. model.refresh();
  114. }
  115. /**
  116. * 원내 변경시 처리
  117. */
  118. function fChkHosin_YN() {
  119. var chk = model.getValue("/root/hidden/prcpsrch/hosinyn");
  120. var dutplceinstcd = getUserInfo("dutplceinstcd");
  121. if(chk == "Y"){
  122. if(dutplceinstcd == "032") {
  123. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "Y|S|K|F");
  124. } else {
  125. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "Y|S|K");
  126. }
  127. } else {
  128. model.makeValue("/root/hidden/prcpsrch/hosinmpsflag", "");
  129. }
  130. model.refresh();
  131. }
  132. /**
  133. * 원외 변경시 처리
  134. */
  135. function fChkHosout_YN() {
  136. var chk = model.getValue("/root/hidden/prcpsrch/hosoutyn");
  137. if(chk == "Y"){
  138. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "1|2");
  139. } else {
  140. model.makeValue("/root/hidden/prcpsrch/hosoutmpsflag", "");
  141. }
  142. model.refresh();
  143. }
  144. /**
  145. * 라벨 변경시 처리
  146. */
  147. function fChkLBL_YN() {
  148. var chk = model.getValue("/root/hidden/prcpsrch/lblyn");
  149. // 2015.6.3 김치국 'IH,IM' 항암주사라벨 추가|IH|IM
  150. var sLblFlag = "D|DI|I|DT|DM|DH|DX|DS|DG";
  151. if(chk == "Y"){
  152. model.makeValue("/root/hidden/prcpsrch/lblflag", sLblFlag);
  153. model.makeValue("/root/hidden/prcpsrch/injyn", "Y");
  154. } else {
  155. model.makeValue("/root/hidden/prcpsrch/lblflag", "");
  156. model.makeValue("/root/hidden/prcpsrch/injyn", "");
  157. }
  158. model.refresh();
  159. }
  160. /**
  161. * 처방전/라벨 출력
  162. */
  163. function fPrcpMPSPrint() {
  164. var chk_drugno = model.getValue("/root/hidden/prcpsrch/drugno");
  165. // alert("row 196 chk_drugno " + chk_drugno);
  166. var hosinhosoutflagnm = model.getValue("/root/hidden/popupinfo/hosinhosoutflagnm");
  167. if( chk_drugno >= 80000 && chk_drugno < 90000 && hosinhosoutflagnm == "") { //20100728 이선경 추가 : 임상연구 일반약 처방전 출력위해 추가
  168. messageBox("임상연구 처방전은 외래처방전 감사화면에서 번호 선택 후 출력가능합니다.", "E000");
  169. return ;
  170. }
  171. //20090824: jmma수정. 네트워크 문제 등으로 문제가 발생해도 계속 진행될 수 있도록 수정 시작.
  172. if( chk_drugno == ""){
  173. setErrorOff(true);
  174. group2.visible = "true";
  175. chk_count++;
  176. if ( ( chk_count % 4 )=="0" ){
  177. caption14.text="자동 출력중[/]";
  178. }
  179. if ( ( chk_count % 4 )=="1" ){
  180. caption14.text="자동 출력중[―]";
  181. }
  182. if ( ( chk_count % 4 )=="2" ){
  183. caption14.text="자동 출력중[\]";
  184. }
  185. if ( ( chk_count % 4 )=="3" ){
  186. caption14.text="자동 출력중[|]";
  187. }
  188. caption14.refresh();
  189. //자동출력 또는 미출력 처방 출력은 <원내>처방과 응급실원외처방만 출력한다.
  190. model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
  191. model.setValue("/root/send/paramsrch/autoprcp", "Y");
  192. //원내 처방전 출력
  193. if (model.getValue("/root/hidden/prcpsrch/hosinyn") == "Y" && model.getValue("/root/hidden/prcpsrch/autoinprntyn") == "Y") {
  194. if(isSearchString(checkbox10.value, "C")) { // 임상
  195. model.makeValue("/root/send/paramsrch/crdrugyn", "Y");
  196. }
  197. submit("TRADT01101");
  198. fHosInMPSPrint();
  199. }
  200. //원외 처방전 출력
  201. if (model.getValue("/root/hidden/prcpsrch/hosoutyn") == "Y" && model.getValue("/root/hidden/prcpsrch/autooutprntyn") == "Y") {
  202. submit("TRADT01101");
  203. fHosOutMPSPrint();
  204. }
  205. //라벨 출력
  206. if (model.getValue("/root/hidden/prcpsrch/lblyn") == "Y" && model.getValue("/root/hidden/prcpsrch/autoinprntyn") == "Y") {
  207. model.setValue("/root/hidden/prcpsrch/liquidflag", "");
  208. model.refresh();
  209. model.setValue("/root/send/paramsrch/autoprcp", "");
  210. if(isSearchString(checkbox10.value, "C")) { // 임상
  211. model.makeValue("/root/send/paramsrch/crdrugyn", "Y");
  212. }
  213. submit("TRADT01104");
  214. fHosInLBLPrint();
  215. }
  216. //봉투 출력 (2010.12.15) 이선경
  217. if (model.getValue("/root/hidden/prcpsrch/lblyn") == "B" && model.getValue("/root/hidden/prcpsrch/autoinprntyn") == "Y"){
  218. model.setValue("/root/hidden/prcpsrch/liquidflag", "");
  219. model.refresh();
  220. model.setValue("/root/send/paramsrch/autoprcp", "");
  221. if(isSearchString(checkbox10.value, "C")) { // 임상
  222. model.makeValue("/root/send/paramsrch/crdrugyn", "Y");
  223. }
  224. submit("TRADT01104");
  225. fHosInLBLPrint2();
  226. }
  227. //물약라벨 출력
  228. if(model.getValue("/root/hidden/prcpsrch/lblyn") == "Y" && model.getValue("/root/hidden/prcpsrch/autoliquidlbl") == "Y") {
  229. model.setValue("/root/hidden/prcpsrch/liquidflag", "Y");
  230. model.refresh();
  231. model.setValue("/root/send/paramsrch/autoprcp", "");
  232. fLiquidLBLPrint();
  233. }
  234. } else {
  235. setErrorOn();
  236. //원외 처방
  237. group2.visible = "false";
  238. if(isNaN(chk_drugno)){
  239. messageBox("투약번호를 숫자로","C001");
  240. model.setValue("/root/hidden/prcpsrch/drugno", "");
  241. model.setFocus("input14");
  242. model.refresh();
  243. return;
  244. }
  245. chk_drugno = parseInt(chk_drugno, 10);
  246. /*if((chk_drugno >= 10001 && chk_drugno < 20001) || (chk_drugno >= 90001 && chk_drugno < 100000) ){
  247. model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
  248. fChkHosout_YN();
  249. } else if(chk_drugno < 10001){
  250. model.setValue("/root/hidden/prcpsrch/hosinyn", "Y");
  251. fChkHosin_YN();
  252. //model.setValue("/root/hidden/prcpsrch/lblyn", "Y");
  253. //fChkLBL_YN();
  254. } else {
  255. messageBox("범례에 따른 외래투약번호를","C001");
  256. return;
  257. }*/
  258. if(model.getValue("/root/hidden/prcpsrch/eprntype") != "E") { // 2009.09.10 pymi
  259. if (model.getValue("/root/hidden/prcpsrch/hosoutyn") == "Y" ) {
  260. if(fChkDrugNo("Y")){
  261. model.setValue("/root/hidden/prcpsrch/prntflag", "Y");
  262. model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
  263. submit("TRADT01101");
  264. var chkret = 0;
  265. if(model.getValue("/root/main/paramdata/param/drugchkstat") == "NC") {
  266. chkret = messageBox("조제보류된 처방입니다. 출력", "Q004");
  267. if(chkret != 6) {
  268. return;
  269. }
  270. }
  271. var prntdt = model.getValue("/root/main/paramdata/param[1]/prntdt");
  272. if( prntdt !="" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
  273. var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
  274. prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
  275. result = messageBox(prntdata + "에 출력한 처방입니다. 원외처방전 재출력을","Q003");
  276. if(result == 6) {
  277. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  278. }
  279. } else {
  280. result = 6;
  281. }
  282. if(result == 6) {
  283. //원외 처방전 출력
  284. fHosOutMPSPrint();
  285. }
  286. }
  287. }
  288. //원내 처방
  289. // alert("row 344 "+ model.getValue("/root/hidden/prcpsrch/lblyn") )
  290. if ((model.getValue("/root/hidden/prcpsrch/hosinyn") == "Y") || model.getValue("/root/hidden/prcpsrch/lblyn") != "") {
  291. // alert("row 346 "+ fChkDrugNo("O") )
  292. if(fChkDrugNo("O")){
  293. model.setValue("/root/hidden/prcpsrch/prntflag", "O");
  294. model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
  295. submit("TRADT01101");
  296. if(model.getValue("/root/main/paramdata/param/pid") == ""){
  297. return;
  298. }
  299. if((model.getValue("/root/hidden/prcpsrch/hosinyn") == "Y")){
  300. var prntdt = model.getValue("/root/main/paramdata/param[1]/prntdt");
  301. if(prntdt != "" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
  302. var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
  303. prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
  304. result = messageBox(prntdata + "에 출력한 처방입니다. 원내처방전 재출력을","Q003");
  305. if(result == 6) {
  306. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  307. }
  308. } else {
  309. result = 6;
  310. }
  311. if(result == 6) {
  312. //원내 처방전 출력
  313. fHosInMPSPrint();
  314. }
  315. }
  316. // alert("row 375 "+ model.getValue("/root/hidden/prcpsrch/lblyn") )
  317. //라벨 출력
  318. if (model.getValue("/root/hidden/prcpsrch/lblyn") == "Y") {
  319. model.setValue("/root/hidden/prcpsrch/liquidflag", "");
  320. model.refresh();
  321. var prntdt = model.getValue("/root/main/paramdata/param[1]/lblprntdt");
  322. if(prntdt != "" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
  323. var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
  324. prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
  325. result = messageBox(prntdata + "에 출력한 처방입니다. 원내라벨 재출력을","Q003");
  326. if(result == 6) {
  327. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  328. } else {
  329. model.setValue("/root/hidden/prcpsrch/reprintyn","");
  330. }
  331. } else {
  332. result = 6;
  333. }
  334. //if(result == 6) {
  335. submit("TRADT01101");
  336. fHosInLBLPrint();
  337. //}
  338. }
  339. //봉투 출력 (2010.12.15) 이선경
  340. if (model.getValue("/root/hidden/prcpsrch/lblyn") == "B"){
  341. model.setValue("/root/hidden/prcpsrch/liquidflag", "");
  342. model.refresh();
  343. var prntdt = model.getValue("/root/main/paramdata/param[1]/lblprntdt");
  344. if(prntdt != "" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
  345. var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
  346. prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
  347. result = messageBox(prntdata + "에 출력한 처방입니다. 원내봉투 재출력을","Q003");
  348. if(result == 6) {
  349. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  350. } else {
  351. model.setValue("/root/hidden/prcpsrch/reprintyn","");
  352. }
  353. } else {
  354. result = 6;
  355. }
  356. //if(result == 6) {
  357. submit("TRADT01101");
  358. fHosInLBLPrint2();
  359. }
  360. }
  361. }
  362. } else if(model.getValue("/root/hidden/prcpsrch/eprntype") == "E"){ // 영문처방전 출력 2009.09.11 pymi
  363. if(fChkDrugNo("Y")){
  364. model.setValue("/root/hidden/prcpsrch/prntflag", "Y");
  365. model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
  366. submit("TRADT01101");
  367. var chkret = 0;
  368. if(model.getValue("/root/main/paramdata/param/drugchkstat") == "NC") {
  369. chkret = messageBox("조제보류된 처방입니다. 출력", "Q004");
  370. if(chkret != 6) {
  371. return;
  372. }
  373. }
  374. var prntdt = model.getValue("/root/main/paramdata/param[1]/prntdt");
  375. if( prntdt !="" && prntdt != "-" && model.getValue("/root/hidden/prcpsrch/reprintyn") == "") {
  376. /*var prntdata = prntdt.substring(0,4) + "년" + prntdt.substring(4,6) + "월" + prntdt.substring(6,8) + "일" +
  377. prntdt.substring(8,10) + ":" + prntdt.substring(10,12) + ":" + prntdt.substring(12,14);
  378. result = messageBox(prntdata + "에 출력한 처방입니다. 영문처방전 재출력을","Q003");
  379. if(result == 6) {
  380. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  381. }*/
  382. model.setValue("/root/hidden/prcpsrch/reprintyn","Y");
  383. result = 6;
  384. } else {
  385. result = 6;
  386. }
  387. if(result == 6) {
  388. //원외 처방전 출력
  389. fHosOutMPSPrint();
  390. }
  391. }
  392. } // (e)
  393. }
  394. model.setValue("/root/hidden/prcpsrch/reprintyn",""); // 20091112 이선경 : 출력 후 재출력 여부는 초기화
  395. model.refresh();
  396. if ( model.getValue("/root/hidden/prcpsrch/autoatcyn") =="Y" ){
  397. //ATC Data생성 배치 호출
  398. model.setValue("/root/send/atcinfo/drugdd", model.getValue("/root/hidden/prcpsrch/drugdd"));
  399. model.setValue("/root/send/atcinfo/instcd", model.getValue("/root/hidden/prcpsrch/instcd"));
  400. //20090824: jmma수정. 네트워크 문제 등으로 문제가 발생해도 계속 진행될 수 있도록 수정 시작.
  401. submit("TXADT10202");
  402. }
  403. if( chk_drugno == ""){
  404. fErrMsg();
  405. }
  406. }
  407. /**
  408. * 원외 처방전 출력
  409. */
  410. function fHosOutMPSPrint() {
  411. // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
  412. var mdrugflag = model.getValue("/root/init/mdrugflags/mdrugflags/r002");
  413. for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
  414. /*model.copyNode("/root/send/prcpsrch","/root/main/paramdata/param["+i+"]");
  415. //model.makeValue("/root/send/prcpsrch/hosoutmpsflag", model.getValue("/root/hidden/prcpsrch/hosoutmpsflag"));
  416. model.makeValue("/root/send/prcpsrch/prntflag", model.getValue("/root/hidden/prcpsrch/prntflag"));
  417. model.makeValue("/root/send/prcpsrch/autoprntyn", model.getValue("/root/hidden/prcpsrch/autoprntyn"));
  418. submit("TRADT01102");
  419. model.makeValue("/root/main/prcpdata/patinfo/hosoutmpsflagnm", "(약국제출용)");
  420. exeReportPreview("RFADT01101", "XMLSTR", "", "", "true","","","","","true");
  421. model.makeValue("/root/main/prcpdata/patinfo/hosoutmpsflagnm", "(본인보관용)");
  422. exeReportPreview("RFADT01101", "XMLSTR", "", "", "true","","","","","true");
  423. */
  424. var sParam = "";
  425. // 영문명 출력시 약국용만 출력 2009.09.16 pymi
  426. var hosoutmpsflag = "";
  427. if( model.getValue("/root/hidden/prcpsrch/eprntype") == "E") {
  428. hosoutmpsflag = "1";
  429. } else {
  430. hosoutmpsflag = model.getValue("/root/hidden/prcpsrch/hosoutmpsflag");
  431. }
  432. // (e)
  433. sParam = "drugdd▦drugno▦pid▦orddd▦cretno▦orddeptcd▦prcpgenrflag▦hosoutmpsflag▦reprintyn▦Y▦eprntype▦stocdeptcd▦mdrugflag▩";
  434. sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
  435. model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
  436. model.getValue("/root/main/paramdata/param["+i+"]/pid")+"▦"+
  437. model.getValue("/root/main/paramdata/param["+i+"]/orddd")+"▦"+
  438. model.getValue("/root/main/paramdata/param["+i+"]/cretno")+"▦"+
  439. model.getValue("/root/main/paramdata/param["+i+"]/orddeptcd")+"▦"+
  440. model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag")+"▦"+
  441. //model.getValue("/root/hidden/prcpsrch/hosoutmpsflag")+"▦"+
  442. hosoutmpsflag +"▦"+
  443. model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
  444. "Y"+"▦"+
  445. model.getValue("/root/hidden/prcpsrch/eprntype")+"▦"+
  446. model.getValue("/root/hidden/prcpsrch/stocdeptcd")+"▦"+ // 20100310_laboru_시행부서 Y 로 박히는 것 수정.
  447. mdrugflag+"▩"; // 20101124_laboru_경북대병원_마약/향정 외래 환자 원외 처방전 출력 여부 조회(R002)
  448. model.setAttribute("params", sParam);
  449. modal("SPADT61100",0,200,200,"","");
  450. model.setAttribute("params", "");
  451. }
  452. }
  453. /**
  454. * 원내 처방전 출력
  455. */
  456. function fHosInMPSPrint() {
  457. for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
  458. /*model.copyNode("/root/send/prcpsrch","/root/main/paramdata/param["+i+"]");
  459. //model.makeValue("/root/send/prcpsrch/hosoutmpsflag", model.getValue("/root/hidden/prcpsrch/hosoutmpsflag"));
  460. model.makeValue("/root/send/prcpsrch/prntflag", model.getValue("/root/hidden/prcpsrch/prntflag"));
  461. model.makeValue("/root/send/prcpsrch/autoprntyn", model.getValue("/root/hidden/prcpsrch/autoprntyn"));
  462. submit("TRADT01102");
  463. exeReportPreview("RFADT01102", "XMLSTR", "", "", "true","","","","","true");
  464. */
  465. var sParam = "";
  466. sParam = "drugdd▦drugno▦pid▦orddd▦cretno▦orddeptcd▦prcpgenrflag▦hosoutmpsflag▦autoinprntyn▦reprintyn▩";
  467. sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
  468. model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
  469. model.getValue("/root/main/paramdata/param["+i+"]/pid")+"▦"+
  470. model.getValue("/root/main/paramdata/param["+i+"]/orddd")+"▦"+
  471. model.getValue("/root/main/paramdata/param["+i+"]/cretno")+"▦"+
  472. model.getValue("/root/main/paramdata/param["+i+"]/orddeptcd")+"▦"+
  473. model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag")+"▦"+
  474. model.getValue("/root/hidden/prcpsrch/autoinprntyn")+"▦"+
  475. model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
  476. model.getValue("/root/hidden/prcpsrch/stocdeptcd")+"▩"; // 2009.09.08 pymi
  477. model.setAttribute("params", sParam);
  478. modal("SPADT61200",0,200,200,"","");
  479. model.setAttribute("params", "");
  480. }
  481. }
  482. /**
  483. * 원내 라벨 출력
  484. */
  485. function fHosInLBLPrint() {
  486. for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
  487. if(model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag") != "S") { // 건진처방제외
  488. var sParam = "";
  489. sParam = "drugdd▦drugno▦ioflag▦lblflag▦liquidflag▦reprintyn▦autoinprntyn▩";
  490. sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
  491. model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
  492. "O"+"▦"+
  493. model.getValue("/root/hidden/prcpsrch/lblflag")+"▦"+
  494. ""+"▦"+
  495. model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
  496. model.getValue("/root/hidden/prcpsrch/autoinprntyn") + "▦"+
  497. model.getValue("/root/hidden/prcpsrch/lbl5") + "▩"; // 2010.03.18 pymi
  498. // alert(sParam);
  499. model.setAttribute("params", sParam);
  500. // alert("row 594 SPADT61300 Call" )
  501. model.copyNode("/root/init/barcdprntsetup", "/root/main/barcdprntsetup");
  502. modal("SPADT61300",0,200,200,"SPADT61300","/root/init/barcdprntsetup","/root/init/barcdprntsetup");
  503. model.setAttribute("params", "");
  504. }
  505. }
  506. }
  507. /*
  508. * 원내 봉투 출력
  509. */
  510. function fHosInLBLPrint2() {
  511. for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
  512. if(model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag") != "S") { // 건진처방제외
  513. var sParam = "";
  514. sParam = "drugdd▦drugno▦ioflag▦lblflag▦liquidflag▦reprintyn▦autoinprntyn▦lbl5▦atclblyn▩";
  515. sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
  516. model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
  517. "O"+"▦"+
  518. model.getValue("/root/hidden/prcpsrch/lblflag")+"▦"+
  519. ""+"▦"+
  520. model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
  521. model.getValue("/root/hidden/prcpsrch/autoinprntyn") + "▦"+
  522. model.getValue("/root/hidden/prcpsrch/lbl5") + "▦"+ // 2010.03.18 pymi
  523. "" + "▩";
  524. model.setAttribute("params", sParam);
  525. model.copyNode("/root/init/barcdprntsetup", "/root/main/barcdprntsetup");
  526. modal("SPADT61400",0,0,0,"","/root/init/barcdprntsetup","/root/init/barcdprntsetup");
  527. model.setAttribute("params", "");
  528. }
  529. }
  530. }
  531. /**
  532. * 물약 라벨 출력
  533. */
  534. function fLiquidLBLPrint() {
  535. model.setValue("/root/hidden/prcpsrch/liquidflag", "Y");
  536. model.refresh();
  537. model.copyNode("/root/send/paramsrch","/root/hidden/prcpsrch");
  538. submit("TRADT01104");
  539. for(var i = grd_param.fixedRows; i < grd_param.rows; i++){
  540. if(model.getValue("/root/main/paramdata/param["+i+"]/prcpgenrflag") != "S") { // 건진처방제외
  541. var sParam = "";
  542. sParam = "drugdd▦drugno▦ioflag▦lblflag▦liquidflag▦reprintyn▦autoinprntyn▩";
  543. sParam += model.getValue("/root/main/paramdata/param["+i+"]/drugdd")+"▦"+
  544. model.getValue("/root/main/paramdata/param["+i+"]/drugno")+"▦"+
  545. "O"+"▦"+
  546. model.getValue("/root/hidden/prcpsrch/lblflag")+"▦"+
  547. "Y"+"▦"+
  548. model.getValue("/root/hidden/prcpsrch/reprintyn")+"▦"+
  549. model.getValue("/root/hidden/prcpsrch/autoinprntyn") + "▦"+
  550. model.getValue("/root/hidden/prcpsrch/lbl5") + "▩"; // 2010.03.18 pymi
  551. model.setAttribute("params", sParam);
  552. model.copyNode("/root/init/barcdprntsetup", "/root/main/barcdprntsetup");
  553. modal("SPADT61300",0,200,200,"SPADT61300","/root/init/barcdprntsetup","/root/init/barcdprntsetup");
  554. model.setAttribute("params", "");
  555. }
  556. }
  557. }
  558. /**
  559. * 투약번호 체크
  560. */
  561. function fChkDrugNo(flag) {
  562. var drugno = model.getValue("/root/hidden/prcpsrch/drugno");
  563. var chk_in = model.getValue("/root/hidden/prcpsrch/hosinyn");
  564. var chk_out = model.getValue("/root/hidden/prcpsrch/hosoutyn");
  565. var eprntype = model.getValue("/root/hidden/prcpsrch/eprntype"); // 2009.09.09 pymi
  566. if(drugno != ""){
  567. drugno = parseInt(drugno, 10);
  568. if(flag == "Y" && eprntype != "E"){
  569. if((drugno >= 10001 && drugno < 20001) || (drugno >= 90001 && drugno < 100000) ){
  570. } else {
  571. // messageBox("원외 투약번호를", "C001");
  572. return false;
  573. }
  574. } else if(flag == "O"){
  575. if( (drugno > 10000 && drugno < 60001) || drugno >= 70000 ) {
  576. // messageBox("원내 투약번호를", "C001");
  577. return false;
  578. }
  579. }
  580. }
  581. return true;
  582. }
  583. /**
  584. * 원내 자동출력 체크시
  585. */
  586. function fChkHosInAutoPrnt() {
  587. var autoflag = model.getValue("/root/hidden/prcpsrch/autoinprntyn");
  588. //투약번호 초기화
  589. model.setValue("/root/hidden/prcpsrch/drugno", "");
  590. //원내 체크 초기화
  591. model.setValue("/root/hidden/prcpsrch/hosinyn", "Y");
  592. fChkHosin_YN();
  593. //원외 체크 초기화
  594. model.setValue("/root/hidden/prcpsrch/hosoutyn", "");
  595. fChkHosout_YN();
  596. //러벨 체크 초기화
  597. //model.setValue("/root/hidden/prcpsrch/lblyn", "Y");
  598. //fChkLBL_YN();
  599. model.setValue("/root/hidden/prcpsrch/stocdeptcd", model.getValue("/root/temp/stocdeptcd")); // 2009.09.14 pymi
  600. if (autoflag == "Y"){
  601. if (gTimer == null) {
  602. model.setValue("/root/hidden/prcpsrch/drugno", "");
  603. gTimer = window.setInterval("fPrcpMPSPrint()",13000);
  604. }
  605. } else {
  606. if (gTimer != null) {
  607. window.clearinterval(gTimer);
  608. gTimer = null;
  609. }
  610. }
  611. if ( model.getValue("/root/hidden/prcpsrch/autoinprntyn") =="Y" ||model.getValue("/root/hidden/prcpsrch/autooutprntyn") =="Y"
  612. || model.getValue("/root/hidden/prcpsrch/autoliquidlbl") =="Y" ){
  613. group2.visible = "true";
  614. } else {
  615. group2.visible = "false";
  616. }
  617. if (autoflag == "Y"){
  618. if (gTimer1 == null) {
  619. model.setValue( "/root/send/suminfo/orddd", model.getValue("/root/hidden/prcpsrch/drugdd") );
  620. model.refresh();
  621. gTimer1 = window.setInterval("fSumHR()",45000); //인공신장실 자동마감
  622. }
  623. } else {
  624. if (gTimer1 != null) {
  625. window.clearinterval(gTimer1);
  626. gTimer1 = null;
  627. }
  628. }
  629. model.refresh();
  630. }
  631. function fSumHR(){
  632. submit("TXADT01101");
  633. //20100728 이선경 추가 : 임상연구 일반약 자동마감 기능 추가
  634. if(isSearchString(checkbox10.value, "C")) {
  635. model.makeValue("/root/send/srchinfo/srchprcpdd", model.getValue( "/root/send/suminfo/orddd"));
  636. model.makeValue("/root/send/srchinfo/crsumflag", "O");
  637. model.makeValue("/root/send/srchinfo/hosinhosout", "I"); //원내
  638. submit("TXADC10901"); //외래임상약 마감하는 것과 동일 소스임 (수정시 주의)
  639. model.makeValue("/root/send/srchinfo/hosinhosout", "O"); //원외
  640. submit("TXADC10901"); //외래임상약 마감하는 것과 동일 소스임 (수정시 주의)
  641. }
  642. }
  643. /**
  644. * 원외 자동출력 체크시
  645. */
  646. function fChkHosOutAutoPrnt(flag) { // 2009.09.09 pymi 함수 인자 설정
  647. var autoflag = model.getValue("/root/hidden/prcpsrch/autooutprntyn");
  648. //투약번호 초기화
  649. if(flag !== "E") { // 2009.09.09 pymi
  650. model.setValue("/root/hidden/prcpsrch/drugno", "");
  651. }
  652. //원내 체크 초기화
  653. model.setValue("/root/hidden/prcpsrch/hosinyn", "");
  654. fChkHosin_YN();
  655. //러벨 체크 초기화
  656. model.setValue("/root/hidden/prcpsrch/lblyn", "");
  657. fChkLBL_YN();
  658. //원외 체크 초기화
  659. model.setValue("/root/hidden/prcpsrch/hosoutyn", "Y");
  660. fChkHosout_YN();
  661. if ( model.getValue("/root/hidden/prcpsrch/autoinprntyn") =="Y" ||model.getValue("/root/hidden/prcpsrch/autooutprntyn") =="Y"
  662. || model.getValue("/root/hidden/prcpsrch/autoliquidlbl") =="Y" ){
  663. group2.visible = "true";
  664. } else {
  665. group2.visible = "false";
  666. }
  667. if (autoflag == "Y"){
  668. if (gTimer == null) {
  669. model.setValue("/root/hidden/prcpsrch/drugno", "");
  670. gTimer = window.setInterval("fPrcpMPSPrint()",15000);
  671. }
  672. } else {
  673. if (gTimer != null) {
  674. window.clearinterval(gTimer);
  675. gTimer = null;
  676. }
  677. }
  678. model.refresh();
  679. }
  680. function fChkAutoLiquidLBLPrint() {
  681. var autoflag = model.getValue("/root/hidden/prcpsrch/autoliquidlbl");
  682. //투약번호 초기화
  683. model.setValue("/root/hidden/prcpsrch/drugno", "");
  684. //원내 체크 초기화
  685. model.setValue("/root/hidden/prcpsrch/hosinyn", "");
  686. fChkHosin_YN();
  687. //원외 체크 초기화
  688. model.setValue("/root/hidden/prcpsrch/hosoutyn", "");
  689. fChkHosout_YN();
  690. if (autoflag == "Y"){
  691. if (gTimer == null) {
  692. model.setValue("/root/hidden/prcpsrch/drugno", "");
  693. gTimer = window.setInterval("fPrcpMPSPrint()",13000);
  694. }
  695. } else {
  696. if (gTimer != null) {
  697. window.clearinterval(gTimer);
  698. gTimer = null;
  699. }
  700. }
  701. if ( model.getValue("/root/hidden/prcpsrch/autoinprntyn") =="Y" ||model.getValue("/root/hidden/prcpsrch/autooutprntyn") =="Y"
  702. || model.getValue("/root/hidden/prcpsrch/autoliquidlbl") =="Y" ){
  703. group2.visible = "true";
  704. } else {
  705. group2.visible = "false";
  706. }
  707. if (autoflag == "Y"){
  708. if (gTimer1 == null) {
  709. model.setValue( "/root/send/suminfo/orddd", model.getValue("/root/hidden/prcpsrch/drugdd") );
  710. model.refresh();
  711. gTimer1 = window.setInterval("fSumHR()",45000);
  712. }
  713. } else {
  714. if (gTimer1 != null) {
  715. window.clearinterval(gTimer1);
  716. gTimer1 = null;
  717. }
  718. }
  719. model.refresh();
  720. }
  721. function fErrMsg () {
  722. var errorMsgPath = "/root/properties/error";
  723. if ( model.getValue ( "/root/properties/error/type" ) == "error" ) {
  724. window.load("../../../com/commonweb/xrw/SPZZZ00100_시스템에러.xrw","modeless","","width:514px;height:198px;align:center;","/root/properties/error","/root/main");
  725. }
  726. }