原文はこちら
HOW TO USE PLUGIN/cldownload with Colheadings and usecollabels ACS
概要
ACSに標準付属のプラグイン:cldownload を使用してdb2 for i テーブルをエクセル xlsx ファイルにダウンロード(エクスポート)する機能です。
cldownloadプラグインはWINDOWSから実行する方法とIBM i の5250(そのほか)からRUNJAVAコマンドで実行する方法とがあります。
カラムヘッダーの指定方法
以下の指定によりダウンロードしたエクセル xlsx ファイルの第一行目にカラムヘッダーを含めない・含める、含める場合の表示情報の指定ができます。
①/colheadings=0 カラムヘッダーをダウンロードしない
上記ではカラムヘッダーが含まれません。
②/usecollabels カラムラベルをヘッダーとしてダウンロードする
上記のようにDDSのカラムラベルがヘッダーとしてダウンロードされます。
③/colheadings=1 /usecollabels DDSのCOLHDGをヘッダーとしてダウンロードする
DDSで指定しているCOLHDGがダウンロードされます。
④/colheadings=1 DDSの別名をヘッダーとしてダウンロードする
当資料のサンプルDb2 for i テーブルの入手元SAVF
一番上の元記事の中に CUSTALL SAVF へのリンクがあります。
このCUSTALL SAVFをIBM i OS上に復元すると、QIWS/QCUSTCDTというサンプルテーブルが復元されます。元記事ではQCSTCDTテーブルをMYLIB.CUSTALL (MYLIB/CUSTALL)にコピーして使用しています。
Windowsからの実行サンプル
※以下の例では ACSは C:*\IBM\ClientSolutions\ にインストールされている前提です。
①/colheadings=0
C:\*\IBM\ClientSolutions\acsbundle.jar
java -Xmx1024m -Dcom.ibm.iaccess.dataxfer.SheetId=%1$s
-jar acsbundle.jar /PLUGIN=cldownload /system=MySYSTEM
/hostfile=MYLIB/CUSTALL /clientfile=/Temp/test.xlsx
/colheadings=0
②/usecollabels
C:\*\IBM\ClientSolutions\acsbundle.jar
java -Xmx1024m -Dcom.ibm.iaccess.dataxfer.SheetId=%1$s
-jar acsbundle.jar /PLUGIN=cldownload /system=MySYSTEM
/hostfile=MYLIB/CUSTALL /clientfile=/Temp/test.xlsx
/usecollabels
③/colheadings=1 /usecollabels
C:\*\IBM\ClientSolutions\acsbundle.jar
java -Xmx1024m -Dcom.ibm.iaccess.dataxfer.SheetId=%1$s
-jar acsbundle.jar /PLUGIN=cldownload /system=MySYSTEM
/hostfile=MYLIB/CUSTALL /clientfile=/Temp/test.xlsx
/colheadings=1 /usecollabels
④/colheadings=1
C:\*\IBM\ClientSolutions\acsbundle.jar
java -Xmx1024m -Dcom.ibm.iaccess.dataxfer.SheetId=%1$s
-jar acsbundle.jar /PLUGIN=cldownload /system=MySYSTEM
/hostfile=MYLIB/CUSTALL /clientfile=/Temp/test.xlsx
/colheadings=1
IBM i CLコマンドから
5250画面のコマンドラインのほかにも、ACS SQLスクリプト実行画面からCL: として実行もできますね。
実は今実機触れない環境なのですが、以下を実行するには CD /QIBM/proddata/access/acs/base や事前に左記にパスを通しておかないとだめかもしれません。
RUNJVA CLASS('/QIBM/proddata/access/acs/base/acsbundle.jar')
PARM('/PLUGIN=cldownload' '/SYSTEM=localhost' '/
hostfile=MYBLIB/CUSTALL' '/clientfile=/home/MYUSER/
Testscustall.xlsx' '/colheadings=0')
RUNJVA CLASS('/QIBM/proddata/access/acs/base/acsbundle.jar')
PARM('/PLUGIN=cldownload' '/SYSTEM=localhost' '/
hostfile=MYBLIB/CUSTALL' '/clientfile=/home/MYUSER/
Testscustall1.xlsx' '/colheadings=1')
RUNJVA CLASS('/QIBM/proddata/access/acs/base/acsbundle.jar')
PARM('/PLUGIN=cldownload' '/SYSTEM=localhost' '/
hostfile=MYBLIB/CUSTALL' '/clientfile=/home/MYUSER/
Testscustall2.xlsx' '/colheadings=1' '/usecollabels')
IBM i コマンドラインからのマニュアルのサンプルには、②/usecollabelsが無いのです?できない理由はないと思うので後日確認してみます。