鈴木 由臣
株式会社クレスコ・ジェイキューブ
デジタルソリューションセンター
今回のIBM i技術情報は、ACSのプラグイン機能を使って物理ファイルのデータをExcelファイルへ出力する手順についてご紹介します。
この手順を利用すると、IBM i上のACSのプラグイン機能を用いてバッチ処理したSQLのSELECTステートメントの結果を、Excelファイル形式でIFS上に作成できます。バッチ操作がIBM i上で完結するため、ACSをインストールしたWindows PCは必要ありません。そのため、ACSのデータ転送機能などを利用することなく、IBM iの日次バッチ処理でEXCELファイルを作成できます。
ご紹介する大まかな手順は、次の通りです。
(1)ACSのjarファイル「acsbundle.jar」の配置。
(2)ACSプラグインでSQLステートメントの結果をExcelファイルに出力する。
(3)出力したExcelファイルを確認する。
今回は、WESBDEMOライブラリーのTOKMSPファイルのデータをTOKMSP.xlsxに出力する例でご説明します。
(1)ACSのjarファイル「acsbundle.jar」の配置。
・IBM iのIFSパス /QIBM/ProdData/Access/ACS/Base/acsbundle.jar に存在することを確認します。
・存在しない場合は、ACSをインストールしたPCからFTPでアップロードします(手順は割愛します)。

(2)ACSプラグインでSQLステートメントの結果をExcelファイルに出力する。
・ ACSはJavaで稼働するため、ジョブのCCSIDが5035または1399の環境で実行します。
・IBM iで次のコマンドを実行する。
QSH CMD(‘java -Dcom.ibm.iaccess.ActLikeExternal=true
-jar /QIBM/PRODDATA/ACCESS/ACS/BASE/acsbundle.jar
/plugin=cldownload
/system=LOCALHOST
/clientfile=/tmp/SUZUKI/TOKMSP.xlsx
/sql=”select * from WESBDEMO/TOKMSP” > /tmp/SUZUKI/CLDOWNLOAD.LOG’)
各パラメータの意味は次を参考にしてください。
| -jar | acsbundle.jarのパスを指定 |
| /plugin | cldownloadを指定 |
| /system | IBM i自身を指定(LOCALHOST や 127.0.0.1 など) |
| /clientfile | 出力するファイル名を指定(拡張子をxlsxにするとExcel形式のデータに自動的になる) |
| /sql | 物理ファイルからデータを抽出するSELECTステートメントを記載(ダブルコーテーションで囲む) |

(3)出力したExcelファイルを確認する。
・WRKLNKコマンドでExcelファイルが作成されたことを確認する。


・共有フォルダの機能を利用したり、FTPでPCに転送したりして(手順は割愛します)PC側でExcelファイルを開いて、データを確認する。

今回は以上となります。
●参考サイト
・「HOW TO USE PLUGIN/cldownload with Colheadings and usecollabels ACS」
https://www.ibm.com/support/pages/node/6567579
・「4.3 ACSのcldownloadプラグイン」
https://guricat.github.io/SQL-on-IBM-i/#/4_SQL%E7%9B%B4%E6%8E%A5%E5%AE%9F%E8%A1%8C?id=_43-acs%e3%81%aecldownload%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3
