SMMND02000.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. /*
  2. HD 업무현황 (SMMND02000.xrw - JScript )
  3. - Version :
  4. 1) : Ver.1.00.01
  5. */
  6. //**전역변수**//
  7. /**
  8. * @group :
  9. * @ver : 2007.07.11
  10. * @by : 김진아
  11. * @---------------------------------------------------
  12. * @type : function
  13. * @access : public
  14. * @desc : 화면 초기화
  15. * @param :
  16. * @return :
  17. * @---------------------------------------------------
  18. */
  19. function fDone(){
  20. var currentDate = getCurrentDate(); // 현재일자
  21. var sCurrentDate = new Date();
  22. model.setValue("/root/main/condition/srchtodd" , currentDate); // 현재일자
  23. model.setValue("/root/main/condition/srchfromdd", (sCurrentDate.getAddDate(-1, "M")).getDateFormat()); // 한 달 이전 일자
  24. model.refresh();
  25. fSrchBizPresCond(); // 업무현황 조회
  26. }
  27. /**
  28. * @group :
  29. * @ver : 2007.08.13
  30. * @by : 김진아
  31. * @---------------------------------------------------
  32. * @type : function
  33. * @access : public
  34. * @desc : 업무현황 조회
  35. * @param :
  36. * @return :
  37. * @---------------------------------------------------
  38. */
  39. function fSrchBizPresCond(){
  40. var TmpPath = "/root/tmp/tmpbizprescondlist/tmpbizprescondinfo"; // (Tmp)
  41. var bizPresCondPath = "/root/main/bizprescondstatslist/bizprescondstatsinfo"; // 업무현황통계
  42. var patPresCondHDPath = "/root/main/patprescondstatslist/patprescondstatsinfo[1]"; // 환자현황통계 (HD)
  43. var patPresCondPDPath = "/root/main/patprescondstatslist/patprescondstatsinfo[2]"; // 환자현황통계 (PD)
  44. var patPresCondSumPath = "/root/main/patprescondstatslist/patprescondstatsinfo[3]"; // 환자현황통계 (Total)
  45. var HDStatsPath = "/root/main/hdstatslist/hdstatsinfo"; // 혈액투석 현황통계
  46. var PDStatsPath = "/root/main/pdstatslist/pdstatsinfo"; // 복막투석 현황통계
  47. var PDBizStatsPath = "/root/main/pdbizstatslist/pdbizstatsinfo"; // 복막투석업무 현황통계
  48. model.removenode ("/root/send");
  49. model.makeNode ("/root/send");
  50. model.makeValue ("/root/send/reqdata/srchfromdd", model.getValue("/root/main/condition/srchfromdd"));
  51. model.makeValue ("/root/send/reqdata/srchtodd" , model.getValue("/root/main/condition/srchtodd") );
  52. model.removeNodeset("/root/tmp/tmpbizprescondlist");
  53. submit("TRMND02001");
  54. //** 조회된 값 설정 **//
  55. //* 업무 현황통계 *//
  56. // 입원
  57. model.setValue(bizPresCondPath + "[1]/hdbizprescnt" , model.getValue(TmpPath + "/hdinbizprescnt"));
  58. model.setValue(bizPresCondPath + "[1]/pdbizprescnt" , model.getValue(TmpPath + "/pdinbizprescnt"));
  59. model.setValue(bizPresCondPath + "[1]/hpbizprescnt" , model.getValue(TmpPath + "/hpinbizprescnt"));
  60. model.setValue(bizPresCondPath + "[1]/hdfbizprescnt" , model.getValue(TmpPath + "/hdfinbizprescnt"));
  61. //2011.07.28 by kya SLED 항목추가
  62. model.setValue(bizPresCondPath + "[1]/sledbizprescnt" , model.getValue(TmpPath + "/sledinbizprescnt"));
  63. //2012.02.13 by kya CRRT 항목추가
  64. model.setValue(bizPresCondPath + "[1]/crrtbizprescnt" , model.getValue(TmpPath + "/crrtinbizprescnt"));
  65. model.setValue(bizPresCondPath + "[1]/totalbizprescnt", model.getValue(TmpPath + "/totalinbizprescnt"));
  66. // 중환자실
  67. model.setValue(bizPresCondPath + "[2]/hdbizprescnt" , model.getValue(TmpPath + "/hdicubizprescnt"));
  68. model.setValue(bizPresCondPath + "[2]/pdbizprescnt" , model.getValue(TmpPath + "/pdicubizprescnt"));
  69. model.setValue(bizPresCondPath + "[2]/hpbizprescnt" , model.getValue(TmpPath + "/hpicubizprescnt"));
  70. model.setValue(bizPresCondPath + "[2]/hdfbizprescnt" , model.getValue(TmpPath + "/hdficubizprescnt"));
  71. //2011.07.28 by kya SLED 항목추가
  72. model.setValue(bizPresCondPath + "[2]/sledbizprescnt" , model.getValue(TmpPath + "/sledicubizprescnt"));
  73. //2012.02.13 by kya CRRT 항목추가
  74. model.setValue(bizPresCondPath + "[2]/crrtbizprescnt" , model.getValue(TmpPath + "/crrticubizprescnt"));
  75. model.setValue(bizPresCondPath + "[2]/totalbizprescnt", model.getValue(TmpPath + "/totalicubizprescnt"));
  76. // 외래
  77. model.setValue(bizPresCondPath + "[3]/hdbizprescnt" , model.getValue(TmpPath + "/hdoutbizprescnt"));
  78. model.setValue(bizPresCondPath + "[3]/pdbizprescnt" , model.getValue(TmpPath + "/pdoutbizprescnt"));
  79. model.setValue(bizPresCondPath + "[3]/hpbizprescnt" , model.getValue(TmpPath + "/hpoutbizprescnt"));
  80. model.setValue(bizPresCondPath + "[3]/hdfbizprescnt" , model.getValue(TmpPath + "/hdfoutbizprescnt"));
  81. //2011.07.28 by kya SLED 항목추가
  82. model.setValue(bizPresCondPath + "[3]/sledbizprescnt" , model.getValue(TmpPath + "/sledoutbizprescnt"));
  83. //2012.02.13 by kya CRRT 항목추가
  84. model.setValue(bizPresCondPath + "[3]/crrtbizprescnt" , model.getValue(TmpPath + "/crrtoutbizprescnt"));
  85. model.setValue(bizPresCondPath + "[3]/totalbizprescnt", model.getValue(TmpPath + "/totaloutbizprescnt"));
  86. // 응급실
  87. model.setValue(bizPresCondPath + "[4]/hdbizprescnt" , model.getValue(TmpPath + "/hderbizprescnt"));
  88. model.setValue(bizPresCondPath + "[4]/pdbizprescnt" , model.getValue(TmpPath + "/pderbizprescnt"));
  89. model.setValue(bizPresCondPath + "[4]/hpbizprescnt" , model.getValue(TmpPath + "/hperbizprescnt"));
  90. model.setValue(bizPresCondPath + "[4]/hdfbizprescnt" , model.getValue(TmpPath + "/hdferbizprescnt"));
  91. //2011.07.28 by kya SLED 항목추가
  92. model.setValue(bizPresCondPath + "[4]/sledbizprescnt" , model.getValue(TmpPath + "/slederbizprescnt"));
  93. //2012.02.13 by kya CRRT 항목추가
  94. model.setValue(bizPresCondPath + "[4]/crrtbizprescnt" , model.getValue(TmpPath + "/crrterbizprescnt"));
  95. model.setValue(bizPresCondPath + "[4]/totalbizprescnt", model.getValue(TmpPath + "/totalerbizprescnt"));
  96. // Total
  97. model.setValue(bizPresCondPath + "[5]/hdbizprescnt" , parseInt(model.getValue(TmpPath + "/hdinbizprescnt" ))
  98. + parseInt(model.getValue(TmpPath + "/hdicubizprescnt"))
  99. + parseInt(model.getValue(TmpPath + "/hdoutbizprescnt"))
  100. + parseInt(model.getValue(TmpPath + "/hderbizprescnt" )));
  101. model.setValue(bizPresCondPath + "[5]/pdbizprescnt" , parseInt(model.getValue(TmpPath + "/pdinbizprescnt" ))
  102. + parseInt(model.getValue(TmpPath + "/pdicubizprescnt"))
  103. + parseInt(model.getValue(TmpPath + "/pdoutbizprescnt"))
  104. + parseInt(model.getValue(TmpPath + "/pderbizprescnt" )));
  105. model.setValue(bizPresCondPath + "[5]/hpbizprescnt" , parseInt(model.getValue(TmpPath + "/hpinbizprescnt" ))
  106. + parseInt(model.getValue(TmpPath + "/hpicubizprescnt"))
  107. + parseInt(model.getValue(TmpPath + "/hpoutbizprescnt"))
  108. + parseInt(model.getValue(TmpPath + "/hperbizprescnt" )));
  109. model.setValue(bizPresCondPath + "[5]/hdfbizprescnt" , parseInt(model.getValue(TmpPath + "/hdfinbizprescnt" ))
  110. + parseInt(model.getValue(TmpPath + "/hdficubizprescnt"))
  111. + parseInt(model.getValue(TmpPath + "/hdfoutbizprescnt"))
  112. + parseInt(model.getValue(TmpPath + "/hdferbizprescnt" )));
  113. //추가 2011.07.28 by kya
  114. model.setValue(bizPresCondPath + "[5]/sledbizprescnt" , parseInt(model.getValue(TmpPath + "/sledinbizprescnt" ))
  115. + parseInt(model.getValue(TmpPath + "/sledicubizprescnt"))
  116. + parseInt(model.getValue(TmpPath + "/sledoutbizprescnt"))
  117. + parseInt(model.getValue(TmpPath + "/slederbizprescnt" )));
  118. //추가 2012.02.13 by kya
  119. model.setValue(bizPresCondPath + "[5]/crrtbizprescnt" , parseInt(model.getValue(TmpPath + "/crrtinbizprescnt" ))
  120. + parseInt(model.getValue(TmpPath + "/crrticubizprescnt"))
  121. + parseInt(model.getValue(TmpPath + "/crrtoutbizprescnt"))
  122. + parseInt(model.getValue(TmpPath + "/crrterbizprescnt" )));
  123. model.setValue(bizPresCondPath + "[5]/totalbizprescnt", parseInt(model.getValue(TmpPath + "/totalinbizprescnt" ))
  124. + parseInt(model.getValue(TmpPath + "/totalicubizprescnt"))
  125. + parseInt(model.getValue(TmpPath + "/totaloutbizprescnt"))
  126. + parseInt(model.getValue(TmpPath + "/totalerbizprescnt" )));
  127. //* 환자현황통계 *//
  128. // 신환 수
  129. model.setValue(patPresCondHDPath + "/fnexamcnt", model.getValue(TmpPath + "/hdfnexamcnt"));
  130. model.setValue(patPresCondPDPath + "/fnexamcnt", model.getValue(TmpPath + "/pdfnexamcnt"));
  131. model.setValue(patPresCondSumPath + "/fnexamcnt", model.getValue(TmpPath + "/totalfnexamcnt"));
  132. // 상담건수
  133. model.setValue(patPresCondHDPath + "/cnstcnt", model.getValue(TmpPath + "/hdcnstcnt"));
  134. model.setValue(patPresCondPDPath + "/cnstcnt", model.getValue(TmpPath + "/pdcnstcnt"));
  135. model.setValue(patPresCondSumPath + "/cnstcnt", model.getValue(TmpPath + "/totalcnstcnt"));
  136. // 처방교육건수
  137. model.setValue(patPresCondHDPath + "/prcpeduccnt", model.getValue(TmpPath + "/hdprcpeduccnt"));
  138. model.setValue(patPresCondPDPath + "/prcpeduccnt", model.getValue(TmpPath + "/pdprcpeduccnt"));
  139. model.setValue(patPresCondSumPath + "/prcpeduccnt", model.getValue(TmpPath + "/totalprcpeduccnt"));
  140. // 기록교육건수
  141. model.setValue(patPresCondHDPath + "/receduccnt", model.getValue(TmpPath + "/hdreceduccnt"));
  142. model.setValue(patPresCondPDPath + "/receduccnt", model.getValue(TmpPath + "/pdreceduccnt"));
  143. model.setValue(patPresCondSumPath + "/receduccnt", model.getValue(TmpPath + "/totalreceduccnt"));
  144. // 원인별 ARF건수
  145. model.setValue(patPresCondHDPath + "/causecnt1", model.getValue(TmpPath + "/hdcausecnt1"));
  146. model.setValue(patPresCondPDPath + "/causecnt1", model.getValue(TmpPath + "/pdcausecnt1"));
  147. model.setValue(patPresCondSumPath + "/causecnt1", model.getValue(TmpPath + "/totalcausecnt1"));
  148. // 원인별 CRF건수
  149. model.setValue(patPresCondHDPath + "/causecnt2", model.getValue(TmpPath + "/hdcausecnt2"));
  150. model.setValue(patPresCondPDPath + "/causecnt2", model.getValue(TmpPath + "/pdcausecnt2"));
  151. model.setValue(patPresCondSumPath + "/causecnt2", model.getValue(TmpPath + "/totalcausecnt2"));
  152. // 보험
  153. model.setValue(patPresCondHDPath + "/healinsucnt", model.getValue(TmpPath + "/hdhealinsucnt"));
  154. model.setValue(patPresCondPDPath + "/healinsucnt", model.getValue(TmpPath + "/pdhealinsucnt"));
  155. model.setValue(patPresCondSumPath + "/healinsucnt", model.getValue(TmpPath + "/totalhealinsucnt"));
  156. // 보호 1종
  157. model.setValue(patPresCondHDPath + "/proc1kindinsucnt", model.getValue(TmpPath + "/hdproc1kindinsucnt"));
  158. model.setValue(patPresCondPDPath + "/proc1kindinsucnt", model.getValue(TmpPath + "/pdproc1kindinsucnt"));
  159. model.setValue(patPresCondSumPath + "/proc1kindinsucnt", model.getValue(TmpPath + "/totalproc1kindinsucnt"));
  160. // 보호 2종
  161. model.setValue(patPresCondHDPath + "/proc2kindinsucnt", model.getValue(TmpPath + "/hdproc2kindinsucnt"));
  162. model.setValue(patPresCondPDPath + "/proc2kindinsucnt", model.getValue(TmpPath + "/pdproc2kindinsucnt"));
  163. model.setValue(patPresCondSumPath + "/proc2kindinsucnt", model.getValue(TmpPath + "/totalproc2kindinsucnt"));
  164. // 산재
  165. model.setValue(patPresCondHDPath + "/inducsinsucnt", model.getValue(TmpPath + "/hdinducsinsucnt"));
  166. model.setValue(patPresCondPDPath + "/inducsinsucnt", model.getValue(TmpPath + "/pdinducsinsucnt"));
  167. model.setValue(patPresCondSumPath + "/inducsinsucnt", model.getValue(TmpPath + "/totalinducsinsucnt"));
  168. // 기타
  169. model.setValue(patPresCondHDPath + "/etcinsucnt", model.getValue(TmpPath + "/hdetcinsucnt"));
  170. model.setValue(patPresCondPDPath + "/etcinsucnt", model.getValue(TmpPath + "/pdetcinsucnt"));
  171. model.setValue(patPresCondSumPath + "/etcinsucnt", model.getValue(TmpPath + "/totaletcinsucnt"));
  172. // 전원
  173. model.setValue(patPresCondHDPath + "/chnghospcnt", model.getValue(TmpPath + "/hdchnghospcnt"));
  174. model.setValue(patPresCondPDPath + "/chnghospcnt", model.getValue(TmpPath + "/pdchnghospcnt"));
  175. model.setValue(patPresCondSumPath + "/chnghospcnt", model.getValue(TmpPath + "/totalchnghospcnt"));
  176. // 사망
  177. model.setValue(patPresCondHDPath + "/dethcnt", model.getValue(TmpPath + "/hddethcnt"));
  178. model.setValue(patPresCondPDPath + "/dethcnt", model.getValue(TmpPath + "/pddethcnt"));
  179. model.setValue(patPresCondSumPath + "/dethcnt", model.getValue(TmpPath + "/totaldethcnt"));
  180. // 신장이식
  181. model.setValue(patPresCondHDPath + "/bdhttrnptcnt", model.getValue(TmpPath + "/hdbdhttrnptcnt"));
  182. model.setValue(patPresCondPDPath + "/bdhttrnptcnt", model.getValue(TmpPath + "/pdbdhttrnptcnt"));
  183. model.setValue(patPresCondSumPath + "/bdhttrnptcnt", model.getValue(TmpPath + "/totalbdhttrnptcnt"));
  184. // 전환
  185. model.setValue(patPresCondHDPath + "/cvrtcnt", model.getValue(TmpPath + "/hdcvrtcnt"));
  186. model.setValue(patPresCondPDPath + "/cvrtcnt", model.getValue(TmpPath + "/pdcvrtcnt"));
  187. model.setValue(patPresCondSumPath + "/cvrtcnt", model.getValue(TmpPath + "/totalcvrtcnt"));
  188. //* 종류별 현황통계 *//
  189. // 혈액투석
  190. model.setValue(HDStatsPath + "[1]/patcnt", model.getValue(TmpPath + "/hdavfcount" ));
  191. model.setValue(HDStatsPath + "[2]/patcnt", model.getValue(TmpPath + "/hdavgcount" ));
  192. model.setValue(HDStatsPath + "[3]/patcnt", model.getValue(TmpPath + "/hdpermccount" ));
  193. model.setValue(HDStatsPath + "[4]/patcnt", model.getValue(TmpPath + "/hdjvccount" ));
  194. model.setValue(HDStatsPath + "[5]/patcnt", model.getValue(TmpPath + "/hdfvccount" ));
  195. model.setValue(HDStatsPath + "[6]/patcnt", model.getValue(TmpPath + "/hdsvccount" ));
  196. model.setValue(HDStatsPath + "[7]/patcnt", model.getValue(TmpPath + "/hdetccount" ));
  197. model.setValue(HDStatsPath + "[8]/patcnt", parseInt(model.getValue(TmpPath + "/hdavfcount" ))
  198. + parseInt(model.getValue(TmpPath + "/hdavgcount" ))
  199. + parseInt(model.getValue(TmpPath + "/hdpermccount"))
  200. + parseInt(model.getValue(TmpPath + "/hdjvccount" ))
  201. + parseInt(model.getValue(TmpPath + "/hdfvccount" ))
  202. + parseInt(model.getValue(TmpPath + "/hdsvccount" ))
  203. + parseInt(model.getValue(TmpPath + "/hdetccount" )));
  204. // 복막투석
  205. model.setValue(PDStatsPath + "[1]/patcnt", model.getValue(TmpPath + "/pdcapdcount" ));
  206. model.setValue(PDStatsPath + "[2]/patcnt", model.getValue(TmpPath + "/pdapdcount" ));
  207. model.setValue(PDStatsPath + "[3]/patcnt", model.getValue(TmpPath + "/pdipdcount" ));
  208. model.setValue(PDStatsPath + "[4]/patcnt", model.getValue(TmpPath + "/pdnpdcount" ));
  209. model.setValue(PDStatsPath + "[5]/patcnt", model.getValue(TmpPath + "/pdccpdcount" ));
  210. model.setValue(PDStatsPath + "[6]/patcnt", parseInt(model.getValue(TmpPath + "/pdcapdcount"))
  211. + parseInt(model.getValue(TmpPath + "/pdapdcount "))
  212. + parseInt(model.getValue(TmpPath + "/pdipdcount "))
  213. + parseInt(model.getValue(TmpPath + "/pdnpdcount "))
  214. + parseInt(model.getValue(TmpPath + "/pdccpdcount")));
  215. // 복막투석업무
  216. model.setValue(PDBizStatsPath + "[1]/cnt", model.getValue(TmpPath + "/catefixcount" ));
  217. model.setValue(PDBizStatsPath + "[2]/cnt", model.getValue(TmpPath + "/dinfcount" ));
  218. model.setValue(PDBizStatsPath + "[3]/cnt", model.getValue(TmpPath + "/pipecount" ));
  219. model.setValue(PDBizStatsPath + "[4]/cnt", model.getValue(TmpPath + "/edemacnfmcount" ));
  220. model.setValue(PDBizStatsPath + "[5]/cnt", model.getValue(TmpPath + "/tsetexchcount" ));
  221. model.setValue(PDBizStatsPath + "[6]/cnt", model.getValue(TmpPath + "/dialblodcount" ));
  222. model.setValue(PDBizStatsPath + "[7]/cnt", parseInt(model.getValue(TmpPath + "/catefixcount" ))
  223. + parseInt(model.getValue(TmpPath + "/dinfcount" ))
  224. + parseInt(model.getValue(TmpPath + "/pipecount" ))
  225. + parseInt(model.getValue(TmpPath + "/edemacnfmcount"))
  226. + parseInt(model.getValue(TmpPath + "/tsetexchcount" ))
  227. + parseInt(model.getValue(TmpPath + "/dialblodcount" )));
  228. }
  229. /************************************************************************************************************************/
  230. /**
  231. * @group :
  232. * @ver :
  233. * @by : 김기용
  234. * @---------------------------------------------------
  235. * @type : function
  236. * @access : public
  237. * @desc : 그리드 별 엑셀저장
  238. * @param :
  239. * @return :
  240. * @---------------------------------------------------
  241. */
  242. function saveExcelAll() {
  243. var paramLen = saveExcelAll.arguments.length;
  244. // 마지막 인자가 Boolean일 경우 처리
  245. var extendsCaptionBool;
  246. if( typeof(saveExcelAll.arguments[paramLen - 1]) == "boolean" ) {
  247. extendsCaptionBool = saveExcelAll.arguments[paramLen - 1];
  248. paramLen = paramLen - 1;
  249. }
  250. else{
  251. extendsCaptionBool = false;
  252. }
  253. var tmpParamArray = new Array();
  254. if( extendsCaptionBool ) {
  255. for( var i = 0; i < paramLen; i++ ) {
  256. tmpParamArray[i] = saveExcelAll.arguments[i];
  257. }
  258. saveExcelAllWithCaption(tmpParamArray);
  259. }
  260. else{
  261. for( var i = 0; i < paramLen; i++ ) {
  262. tmpParamArray[i] = saveExcelAll.arguments[i];
  263. }
  264. saveExcelAllWithNotCaption(tmpParamArray);
  265. }
  266. }
  267. function saveExcelAllWithCaption( sheetArray ) {
  268. // alert(gridCaptionArray);
  269. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  270. if( fileName == "" )
  271. return;
  272. // var sheetArray = new Array("grd_bizprescondstats|업무현황", "grd_patprescondstats|환자현황", "grd_hdstatsinfo|혈액투석현황", "grd_pdstatsinfo|복막투석현황", "grd_pdbizstatsinfo|복막투석업무현황");
  273. var sheetArrayLen = sheetArray.length;
  274. var gridId;
  275. var gridObj;
  276. for( var i = 0; i < sheetArray.length; i++ ) {
  277. gridId = sheetArray[i].split("|")[0];
  278. gridObj = document.all.item(gridId);
  279. // saveText() 함수는 Caption저장이 불가능 하여 SaveExcel()을 이용한다.
  280. gridObj.saveExcel("C:\\Temp\\tmp_TFExcel_" + i +".xls");
  281. }
  282. // excel application 실행함
  283. tfexcel.launchnewinstance(0);
  284. //실행된 excel application에서 새로운 workbook을 생성
  285. tfexcel.createworkbook();
  286. /* 문제있는 로직 주석처리 2013.06.13 손병은
  287. tfexcel.activatesheet(1);
  288. var sheetName;
  289. var nResult;
  290. for( var i = 0; i < sheetArrayLen; i++ )
  291. {
  292. sheetName = sheetArray[i].split("|")[1];
  293. if( i > 1 ) {
  294. nResult = tfexcel.activatesheet(i+1);
  295. tfexcel.sheetname(i+1) = sheetName;
  296. }
  297. else {
  298. nResult = tfexcel.addsheet(i+1, sheetName);
  299. }
  300. if( nResult < 0 ) {
  301. messageBox(sheetName + " 저장을", "E009");
  302. // alert(sheetName + " 오류발생");
  303. return;
  304. }
  305. tfexcel.loadCSV("C:\\Temp\\tmp_TFExcel_" + i + ".xls");
  306. }
  307. */
  308. var sheetName;
  309. var nResult;
  310. for( var i = 0; i < sheetArrayLen; i++ )
  311. {
  312. sheetName = sheetArray[i].split("|")[1];
  313. if( i > 0 ) {
  314. nResult = tfexcel.addsheet(i+1, sheetName);
  315. }else{
  316. nResult = tfexcel.activatesheet(i+1);
  317. }
  318. tfexcel.sheetname(i+1) = sheetName;
  319. if( nResult < 0 ) {
  320. messageBox(sheetName + " 저장을", "E009");
  321. // alert(sheetName + " 오류발생");
  322. return;
  323. }
  324. tfexcel.loadCSV("C:\\Temp\\tmp_TFExcel_" + i + ".xls");
  325. }
  326. //workbook을 저장.
  327. tfexcel.save(fileName);
  328. //excel application을 종료. excel application 생성 후 반드시 close해야함.
  329. tfexcel.close();
  330. var fso = new ActiveXObject("Scripting.FileSystemObject");
  331. for( var i = 0; i < sheetArrayLen; i++ ) {
  332. fso.DeleteFile("C:\\Temp\\tmp_TFExcel_" + i + ".xls");
  333. }
  334. var rmsg = messageBox("저장된 Excel을", "Q004");
  335. // var rmsg = window.alert("저장된 Excel을 실행하시겠습니까?", "알림", 36);
  336. if( rmsg == 6 )
  337. window.exec("excel.exe", '\"' + fileName + '\"');
  338. }
  339. function saveExcelAllWithNotCaption( sheetArray ) {
  340. // alert(gridCaptionArray);
  341. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  342. if( fileName == "" )
  343. return;
  344. // excel application 실행함
  345. tfexcel.launchnewinstance(0);
  346. // 실행된 excel application에서 새로운 workbook을 생성
  347. tfexcel.createworkbook();
  348. // var sheetArray = new Array("grd_bizprescondstats|업무현황", "grd_patprescondstats|환자현황", "grd_hdstatsinfo|혈액투석현황", "grd_pdstatsinfo|복막투석현황", "grd_pdbizstatsinfo|복막투석업무현황");
  349. var sheetArrayLen = sheetArray.length;
  350. var gridId;
  351. var gridObj;
  352. var sheetName;
  353. var nResult;
  354. for( var i = 0; i < sheetArrayLen; i++ ) {
  355. gridId = sheetArray[i].split("|")[0];
  356. gridObj = document.all.item(gridId);
  357. sheetName = sheetArray[i].split("|")[1];
  358. if( i > 1 ) {
  359. nResult = tfexcel.activatesheet(i+1);
  360. tfexcel.sheetname(i+1) = sheetName;
  361. }
  362. else {
  363. nResult = tfexcel.addsheet(i+1, sheetName);
  364. }
  365. if( nResult < 0 ) {
  366. messageBox(sheetName + " 저장을", "E009");
  367. // alert(sheetName + " 오류발생");
  368. return;
  369. }
  370. gridObj.saveText("C:\\Temp\\tmp_TFExcel.csv", "\n", ",", '\:', true);
  371. tfexcel.loadCSV("C:\\Temp\\tmp_TFExcel.csv");
  372. }
  373. //workbook을 저장.
  374. tfexcel.save(fileName);
  375. //excel application을 종료. excel application 생성 후 반드시 close해야함.
  376. tfexcel.close();
  377. // CSV File 삭제
  378. var fso = new ActiveXObject("Scripting.FileSystemObject");
  379. fso.DeleteFile("C:\\Temp\\tmp_TFExcel.csv");
  380. var rmsg = messageBox("저장된 Excel을", "Q004");
  381. // var rmsg = window.alert("저장된 Excel을 실행하시겠습니까?", "알림", 36);
  382. if( rmsg == 6 )
  383. window.exec("excel.exe", '\"' + fileName + '\"');
  384. }
  385. function createTFExcel(tfExcelID, parentObj) {
  386. if( parentObj == null )
  387. parentObj = body;
  388. var tfExcelObj = parentObj.createChild("xforms:object", "id:" + tfExcelID + "; clsid:{fe8d1001-6a9d-424d-ae2a-301493bb12da}; left:100px; top:100px; width:100px; height:100px; ");
  389. return tfExcelObj;
  390. }
  391. /************************************************************************************************************************/