CLでファイルをCHAINする方法,AS400,iSerise
WRKQRYで定義したQRYをCLPで抽出条件等を渡し実行する方法を説明致します。
ファイル定義
ファイルID:URI
@ WRKQRYでQRY情報の定義をする。
例.商品コード、伝票日付で抽出し一覧表を作成する。
◆ ファイル選択指定
◆ フィールドの選択および順序付け
◆ レコード選択定義方法
下記の様に値箇所へ「 :識別(任意) 」と入力する。
実行キーを押すと次の画面に移ります。
上記の様に適当に入力し実行キーを押して下さい。QRY定義へ画面が移ります。
◆ QUERY 終了
実行オプションは「3」を入れて下さい。パラメータ渡しなので
上記定義終了でTESTライブラリーに@URYのQRY定義(*QRYDFN)が作成出来ます。
A 上記QRY定義よりSQLソースを作成し、そのソースよりQUERY 管理機能プログラムを作成する。
◆ コマンド 「 GO CMDQRY 」と入力し実行キーを押す。
以下の画面が表示されます。
◆ bP2(QUERY 管理機能プログラム検索 )を選択します。
下記の画面が表示されます。
上記の様に情報を入力し実行キーを押して下さい。下記のソースが作成されます。
ここでライブラーも同様にCLPで変更したい場合はTESTを&TESTに変更して下さい。
◆ bR(QUERY 管理機能プログラム作成 )を選択します。
上記内容の様に入力し実行キーを押して下さい。QUERY 管理機能プログラム (*QMQRY)
オブジェクトが作成されます。
B 上記で作成されたQUERY 管理機能プログラム (*QMQRY)オブジェクトに対してCLPで情報を
渡し実行します。
パラメータで受け取った情報で抽出する例です。
注意:OVRPRTFでサイズを定義しないと80桁で切られ複数ページとなります。
V6.1以下の場合、文字列の抽出条件指定は’’’’XXXX’’’’で行わないと実行エラーとなります。
C CL実行後
WRKQRYで定義した見出しを使いたい場合は「 RTVQMFORM 」でソース を起しその後「 CRTQMFORM 」で*QMFORM を
作成して下さい。その定義をSTRQMQRYのパラメータ 「 QUERY 管理機能報告書書式 . . . QMFORM 」へ指定して下さい。
D ファイルライブラリーも指定する場合
SQLソース上で TEST → &LIBに変更しQUERY 管理機能プログラム (*QMQRY)
を作成して下さい。
CLPサンプル
E 集計する場合
例.売上ファイルを商品別に集計する
CLPサンプル
F カウントする場合
売り上げデータ上、担当者別売り上げ数をカウントする
SELECT
ALL TANTOCD , COUNT(TANTOCD)
FROM DATALIB/URIFIL T01
WHERE URIYYMM = &YYMM
GROUP BY TANTOCD
ORDER BY TANTOCD