package org.hanei.jaxcel.report;\r
\r
import java.io.File;\r
+import java.io.FileOutputStream;\r
import java.io.IOException;\r
import java.io.InputStream;\r
import java.io.OutputStream;\r
\r
log.trace("makeReport end");\r
}\r
+\r
+ /**\r
+ * 入力ストリームのExcelテンプレートファイルにデータを挿入することでExcel帳票を生成、Excel帳票ファイルを出力する。<br>\r
+ * 入力ストリームは別途クローズが必要。\r
+ * \r
+ * @param template Excelテンプレートファイル入力ストリーム\r
+ * @param parameter テンプレートに挿入するデータ\r
+ * @param output Excel帳票出力ファイル\r
+ *\r
+ * @throws JaxcelInputException 入力例外発生時\r
+ * @throws JaxcelOutputException 出力例外発生時\r
+ */\r
+ public void makeReport(InputStream template, Map<String, Object> parameter, File output) {\r
+ log.trace("makeReport start");\r
+ \r
+ // Excel帳票生成\r
+ Workbook book = makeReport(template, parameter);\r
+ \r
+ // 出力ストリーム\r
+ FileOutputStream _output;\r
+ try {\r
+ _output = new FileOutputStream(output);\r
+ }\r
+ catch(Exception e) {\r
+ log.error("output file open error: {}", e.getMessage(), e);\r
+ throw new JaxcelOutputException("output file open error");\r
+ }\r
+\r
+ // 出力\r
+ outputReport(book, _output);\r
+ try {\r
+ _output.close();\r
+ } catch (IOException e) {\r
+ log.error("output file close error: {}", e.getMessage(), e);\r
+ throw new JaxcelOutputException("output file close error");\r
+ }\r
+\r
+ // テンプレートファイルクローズ\r
+ close();\r
+\r
+ log.trace("makeReport end");\r
+ }\r
\r
/**\r
* Excelテンプレートファイルにデータを挿入することでExcel帳票を生成、Workbookオブジェクトを返却する。<br>\r
\r
log.trace("makeReport end");\r
}\r
+\r
+ /**\r
+ * Excelテンプレートファイルにデータを挿入することでExcel帳票を生成、Excel帳票ファイルを出力する。<br>\r
+ * \r
+ * @param template Excelテンプレートファイル\r
+ * @param parameter テンプレートに挿入するデータ\r
+ * @param output Excel帳票出力ファイル\r
+ * \r
+ * @throws JaxcelInputException 入力例外発生時\r
+ * @throws JaxcelOutputException 出力例外発生時\r
+ */\r
+ public void makeReport(File template, Map<String, Object> parameter, File output) {\r
+ log.trace("makeReport start");\r
+\r
+ // Workbook生成\r
+ Workbook book = makeReport(template, parameter);\r
+\r
+ // 出力ストリーム\r
+ FileOutputStream _output;\r
+ try {\r
+ _output = new FileOutputStream(output);\r
+ }\r
+ catch(Exception e) {\r
+ log.error("output file open error: {}", e.getMessage(), e);\r
+ throw new JaxcelOutputException("output file open error");\r
+ }\r
+\r
+ // 出力\r
+ outputReport(book, _output);\r
+ try {\r
+ _output.close();\r
+ } catch (IOException e) {\r
+ log.error("output file close error: {}", e.getMessage(), e);\r
+ throw new JaxcelOutputException("output file close error");\r
+ }\r
+ \r
+ // テンプレートファイルクローズ\r
+ close();\r
+\r
+ log.trace("makeReport end");\r
+ }\r
\r
/**\r
* ExcelテンプレートのWorkbookオブジェクトにデータを挿入することでExcel帳票を生成する。<br>\r