========================================================
 Jaxcel
    http://sourceforge.jp/projects/jaxcel/
========================================================

                Copyright 2014 Hanei Management Co.,Ltd.
                                 http://www.hanei.co.jp/
========================================================

-------------------------------------------
1. Jaxcel とは
-------------------------------------------
Jaxcelとは、Excelにテンプレート式を書くことによって、動的にデータを埋め込み、Excel帳票を出力するライブラリです。

Excelファイル自体をテンプレートとして用いることが可能な為、レイアウトの変更等も簡単に行えます。


-------------------------------------------
2. 主な特徴
-------------------------------------------
・Excelファイル自体にデータ埋め込み式を記述する為、専用ツールの知識や習得が不要。

・フォントサイズや罫線等の装飾は、テンプレートとなるExcelファイルで設定可能。

・チャートやピボットテーブルをテンプレートとして設定可能。

・複数シートが存在するブックに対応。

・マクロ埋め込みブックに対応。

・Excel97-2003ブック形式(.xls)、2007以降のブック形式(.xlsx .xlsm)に対応。

・リストや配列等の繰り返し出力(foreach)、データによる出力・非出力(if)の制御構文が使用可能。

・制御構文は行/列全体のみでなく、矩形範囲での制御が可能。

・制御構文毎に、制御方向(行/列)の指定が可能。

・制御構文内では埋め込みデータ以外に、下記の繰返し生成(foreach句使用時)、非出力(if句使用時)が可能。
  ・オートシェイプや画像等のオブジェクト ※1
  ・テーブル ※1
  ・結合セル
  ・オートフィルタ ※2

・数式の参照範囲も制御構文に連動。

・埋め込みデータの解析にはApache Commons JEXLを使用し、柔軟な埋め込み式の記述が可能。


※1：Excel2007以降のブック形式(.xlsx .xlsm)のみ対応。
※2：if句による出力・非出力のみ対応。


-------------------------------------------
3. サンプルの実行
-------------------------------------------
配布ファイルのsample/binディレクトリ配下のバッチファイル、シェルスクリプトファイルの実行で、
sample/resourcesディレクトリ配下の同名のExcelテンプレートファイルと、json形式のデータ
ファイルを使用し、sample/outputディレクトリに出力結果のExcelファイルが生成されます。

※：実行環境にjava1.7以上がインストールされていること。


-------------------------------------------
4. Java ソースサンプル
-------------------------------------------
// Jaxcelレポートメーカーオブジェクトの生成
ReportMaker jaxcel = new ReportMaker();

// パラメータとなるMapブジェクトの生成・データの投入
HashMap<String, Object> parameter = new HashMap<>();

parameter.put("data1", "Hello");
parameter.put("data2", "Jaxcel");

// テンプレートExcelファイル、パラメータ、出力結果Excelファイルを指定。
// result.xlsxファイルが生成される。
jaxcel.makeReport(new File("template.xlsx"), parameter, new File("result.xlsx"));

※：詳細は配布ファイルのJavadocを参照願います。


-------------------------------------------
4. セットアップ
-------------------------------------------
配布ファイルの jaxcel-xx.xx.xx.jar をクラスパスを含めます。

また、Jexcelの使用には下記のライブラリが必要となります。

・Apache POI 3.10
  ・poi-3.10-FINAL-20140208.jar
  ・poi-ooxml-3.10-FINAL-20140208.jar
  ・ooxml-schemas-1.1.jar ※
  ・Apache POIは下記のライブラリが必要となります。(Apache POI 3.10-FINALの場合)
    ・commons-codec-1.5.jar
    ・dom4j-1.6.1.jar
    ・xmlbeans-2.3.0.jar
    
      ※：Apache POIのダウンロードに含まれるpoi-ooxml-schemas-3.10-FINAL-20140208.jarではありません。
          poi-ooxml-schemasのフルセットとなるooxml-schemasが必要です。

      http://jakarta.apache.org/poi/
      http://repo1.maven.org/maven2/org/apache/poi/ooxml-schemas/1.1/


・Apache Commons JEXL 2.1.1
  ・commons-jexl-2.1.1.jar
  
      http://commons.apache.org/proper/commons-jexl/


・Apache Commons Lang 3.3
  ・commons-lang3-3.3.2.jar

      http://commons.apache.org/proper/commons-lang/


・SLF4J 1.7
  ・slf4j-api-1.7.7.jar

      http://www.slf4j.org/


・JSONIC 1.3
  ・jsonic-1.3.5.jar ※
  
    ※コマンドラインツール「MakeReportTool」使用時のみ必要です。

      http://jsonic.sourceforge.jp/


-------------------------------------------
5. 免責事項
-------------------------------------------
本ソフトウエアを利用する、もしくは利用できないことにより発生した一切の損害（一次的、二次的に関わらず）
および第三者からなされる請求について、株式会社阪栄マネージメントは一切責任を負いません。
各自の責任においてご使用下さい。


-------------------------------------------
6. ライセンス
-------------------------------------------
本ソフトウェアはLGPL v3にて公開しています。


--