仕分けられた帳票の印刷データから抜き出した文字列をキー情報として帳票情報に反映するレコードです。
本レコードを共通情報として定義した場合には、すべての帳票に付加されます。個別情報として定義した場合には、仕分け条件に該当した帳票だけに付加されます。共通情報と個別情報が重複した場合には個別情報が優先されます。
なお、本レコードを定義する場合には、セクション情報定義レコード(SCレコード)の定義が必須です。
本レコードは富士通ホスト帳票を仕分ける場合に使用します。
記述形式
KP,キー名,形式種別,ページ,行,開始桁,終了桁,
可変文字列キー情報定義レコードには、この他に、KCレコードがあります。KCレコードは、オープン帳票を仕分けるときに使用するレコードです。
参照
詳細は、“D.4 可変文字列キー情報定義レコード(KCレコード)”を参照してください。
定義位置
共通情報、個別情報ともにセクション情報定義レコード(SCレコード)の後に定義します。
定義数
1つの共通情報(SMレコード単位)内には、固定文字列キー情報定義レコード(KFレコード)と可変文字列キー情報定義レコード(KPレコード)を合わせて、50個まで定義できます。
また、1つの個別情報(CMレコード単位)内には、固定文字列キー情報定義レコード(KFレコード)と可変文字列キー情報定義レコード(KPレコード)を合わせて、50個まで定義できます。
定義項目
項目名 | バイト数 | 必須 | 意味 | 備考 |
---|---|---|---|---|
2 | ○ | 可変文字列キー情報定義レコードを示します。 | 「KP」は「Key Pickup」の略です。 | |
20以内 | ○ | 連携製品に渡す帳票情報のキー名を指定します。 | 参照 サポートするキー名の一覧は、“D.2 固定文字列キー情報定義レコード(KFレコード)”の“サポートするキー名について”を参照してください。 | |
2以内 | 抜き出し文字列の形式種別を指定します。(省略時は「99」) 「0」~「8」:抜き出し文字列を変換する 「99」:抜き出し文字列を変換しない | 参照 形式種別については、“形式種別を指定する場合の注意事項”を参照してください。 | ||
7以内 | ○ | 抜き出し文字列が存在するページを指定します。 | ページは、仕分け後の各帳票のページで指定します。富士通ホスト帳票で、帳票内に空白ページが存在する場合、このページも仕分けの対象に含まれます。 | |
3以内 | ○ | 抜き出し文字列が存在する行を指定します。 | 行の位置づけは、データ内の改行やFCB/LPCIのチャネルスキップなど、ユーザが設計した改行指示に従います。設計した改行指示が不明な場合は、印刷した帳票の行を空行も含めてカウントしてください。 | |
3以内 | ○ | 抜き出し文字列が存在する位置の始点を桁数で指定します。 | 桁数には、行頭から制御文字(2バイト文字の前後に付加されるシフトコードを含む)を含めてください。 | |
3以内 | ○ | 抜き出し文字列が存在する位置の終点を桁数で指定します。 | 桁数には、行頭から制御文字(2バイト文字の前後に付加されるシフトコードを含む)を含めてください。 「終了桁>レコード終端桁」なら、「終了桁=レコード終端桁」として扱われます。「開始桁>終了桁」ならエラーになります。 |
○:必須オペランド
注意事項
以下について説明しています。
形式種別を指定する場合の注意事項
抜き出し文字列の位置に関する注意事項
抜き出し文字列の文字に関する注意事項
形式種別を指定する場合の注意事項
形式種別は抜き出した文字列を変換して、値として利用する機能を持つキー名を指定した場合に有効となります。
参照
形式種別が有効になるキー名は、“D.2 固定文字列キー情報定義レコード(KFレコード)”の“サポートするキー名について”を参照してください。
キー名にLV-DATEを指定した場合の変換例を以下に示します。
形式種別 | 抜き出し形式 | 変換例(西暦2007年10月29日を変換) |
---|---|---|
0 | YYMMDD | 071029(西暦) |
(YY=年、YYYY=年4桁、MM=月、DD=日、DDD=1月1日からの通算日数、*=区切り文字)
抜き出し文字列の位置に関する注意事項
KPレコードで指定する文字の行桁位置については、帳票ダンプ出力機能により、知ることができます。
参照
帳票ダンプ出力機能については、“4.4 帳票ダンプ出力機能”を参照してください。
抜き出し文字列の文字に関する注意事項
キー名の帳票情報に使用できる文字は、帳票情報の種類に応じて制限があります。
参照
使用できる文字の詳細については“運用手引書”を参照してください。
定義例
定義例1
2ページ目3行目の1桁目から始まる「給与明細」という文字列を変換なしで抜き出す場合の定義例を以下に示します。
SC,LISTVIEW, KP,LV-TITLE,99,2,3,1,9,
注)2バイト文字の開始を表すシフトコード「28」が1桁目に付加されるため、「給与明細」という文字列の終了桁は9桁目になります。
定義例2
1ページ目の20行目、1桁目から6桁目の文字列を値として抜き出し、形式種別=0で変換する場合の定義例を示します。
KF,LV-DATE-TYPE,0, KP,LV-DATE,0,1,20,1,6,
注)LV-DATE キーを指定する場合には、LV-DATE-TYPEキーと組み合わせて指定する必要があります。
参照
詳細は、“運用手引書”を参照してください。
定義例3
印刷データ中に「年月」を表す文字列が「2007/11」という形で存在し、月度毎に作成してある保管フォルダに格納する場合の例を以下に示します。
「/」の前後の文字列を使用する場合の定義例です。
SC,LISTVIEW, KF,LV-DB-PATH,=/data/%LISTVIEW%YYYY%年%LISTVIEW%MM%月度, KP,YYYY,99,1,5,1,4, KP,MM,99,1,5,6,7,