Hitachi

PRINT DATA EXCHANGE for Open


付録C 出力できるCOBOL命令文の範囲とUAP移行手順

出力できるCOBOL命令文の範囲とUAP移行手順について次に示します。

表C‒1 出力できるCOBOL命令文の範囲とUAP移行手順

COBOLの指定

移行可否

COBOL移行手順の説明

DISPLAY UPON SYSOUT,DISPLAY UPON SYSLST

COBOL移行手順
  • ファイル形式1を使用する場合

    オープン移行に際してWITH NO ADVANCINGの指定があれば削除してください。

  • ファイル形式2を使用する場合

    ファイル形式2は使用できません。ファイル形式1を使用してください。

PDEの動作

各行の最後に改行文字が付くので,それに従い改行,改ページを行います。

WRITE ADVANCING(WRITE AFTER ADVANCINGまたはWRITE BEFORE ADVANCING)

※1

WRITE ADVANCINGの使用方法には次のパターンがあります。

  1. COBOL85はXCOBOL=(-D),XCOBOL E2,およびXCOBOLはNOADVオプション(デフォルト):

    COBOLソースの出力レコードの先頭に1バイトの領域を利用者が確保

  2. COBOL85はXCOBOL=(D),XCOBOL E2,およびXCOBOLはADVオプション:

    出力レコード先頭の1バイトの領域はコンパイラが自動的に確保

COBOL移行手順
  • ファイル形式1およびファイル形式2共通

    上記の2.はそのまま移行でき,1.は先頭の1バイトを無視させる必要があります。先頭1バイトの制御コードの領域は,次のコンパイラオプションを指定することで無視されます。

    COBOL2002:-IgnoreLCC

    COBOL85:-Hd

    ただし,COBOL85はファイル形式1の場合だけです。

  • ファイル形式1を使用する場合

    CSPおよびC01〜C12は1行送りとして扱うため,CSPは0 LINE指定に,C01はPAGE指定に,C02〜C12はLINE指定またはWRITE(固定長データ形式)での制御文字指定に移行してください。

  • ファイル形式2を使用する場合

    プログラムはそのまま移行できます。バッチジョブ実行システムを使用しないときは,実行時環境変数CBLPDERECFM_外部装置名に機械制御文字を指定してください。

通常出力時の指定
  • ファイル形式1を使用する場合

    ファイル名に指定するファイル形式情報でANSI制御文字,機械制御文字の指定をしないでください。

  • ファイル形式2を使用する場合

    ファイル名に指定するファイル形式情報で機械制御文字を指定してください。

バッチジョブ実行システム連携時の指定
  • ファイル形式1を使用する場合

    ジョブ定義XMLファイルのDD要素のRECFM属性でANSI制御文字,機械制御文字の指定をしないでください。

  • ファイル形式2を使用する場合

    ジョブ定義XMLファイルのDD要素のRECFM属性で機械制御文字を指定してください。

WRITE POSITIONING(WRITE AFTER POSITIONING)

※1

COBOL移行手順
  • ファイル形式1を使用する場合

    POSITIONINGはADVANCING 1 LINEと扱うため,プログラム修正してADVANCING指定に移行してください。ADVANCING 1 LINE相当の行制御しかしていない場合は,コンパイル時に次のコンパイラオプションを指定してください。

    COBOL2002:-IgnoreLCC

    COBOL85:-Hd

  • ファイル形式2を使用する場合

    プログラムはそのまま移行できます。コンパイル時に-IgnoreLCCオプションを指定してください。バッチジョブ実行システムを使用しないときは,実行時環境変数CBLPDERECFM_外部装置名に機械制御文字を指定してください。

通常出力時の指定
  • ファイル形式1を使用する場合

    ファイル名に指定するファイル形式情報でANSI制御文字,機械制御文字の指定をしないでください。

  • ファイル形式2を使用する場合

    ファイル名に指定するファイル形式情報で機械制御文字を指定してください。

バッチジョブ実行システム連携時の指定
  • ファイル形式1を使用する場合

    ジョブ定義XMLファイルのDD要素のRECFM属性でANSI制御文字,機械制御文字の指定をしないでください。

  • ファイル形式2を使用する場合

    ジョブ定義XMLファイルのDD要素のRECFM属性で機械制御文字を指定してください。

APPLY FORMS-OVERLAYによる書式オーバレイ印刷

※1

COBOL移行手順
  • ファイル形式1を使用する場合

    ページごとに書式オーバレイを切り替えている場合,SETPRTテキストレコードをUAPでデータ中に作成してください。

  • ファイル形式2を使用する場合

    そのまま移行できます。

通常出力時の指定
  • ファイル形式1を使用する場合

    ページごとに書式オーバレイの切り替えをしない場合,書式オーバレイをファイル名指定に変更してください。

バッチジョブ実行システム連携時の指定
  • ファイル形式1を使用する場合

    ページごとに書式オーバレイの切り替えをしない場合,書式オーバレイをジョブ定義XMLファイルでの指定に変更してください。

WRITE(固定長データ形式)

COBOL移行手順
  • ファイル形式1およびファイル形式2共通

    16進でANSI制御文字を指定している場合は,対応するASCIIコードの値に変更してください。文字でANSI制御文字を指定している場合,または16進で機械制御文字を指定している場合は,そのままでかまいません。

  • ファイル形式1を使用する場合

    実行時環境変数CBLD_ファイル名(SELECT句で指定したファイル名に対応します)にSAMAADVを指定してください。

  • ファイル形式2を使用する場合

    バッチジョブ実行システムを使用しないときは,印刷データに格納している制御文字に合わせて実行時環境変数CBLPDERECFM_外部装置名を指定してください。

通常出力時の指定
  • ファイル形式1およびファイル形式2共通

    印刷データに格納している制御文字に合わせてファイル名のファイル形式情報を指定してください。

バッチジョブ実行システム連携時の指定
  • ファイル形式1およびファイル形式2共通

    印刷データに格納している制御文字に合わせてジョブ定義XMLファイルのDD要素のRECFM属性に制御文字の指定をしてください。

WRITE(可変長データ形式)

※1

次の場合に可変長データ形式となります。

  • ファイル記述項に次のどれかの指定がある(可変長ファイルである旨の指定)

    ・RECORDING MODE IS Vが指定されている

    ・RECORD IS VARYING句が指定されている

    ・DEPENDING指定のあるOCCURS句を含むレコードが記述されている

    ・サイズの異なるレコードが記述されている

  • WRITE文に明示的なADVANCING指定がない

COBOL移行手順
  • ファイル形式1を使用する場合

    次のどれかの手順によって移行してください。

    ・WRITE ADVANCING指定に移行

    ・固定長レコード形式に移行

    ・ORGANIZATION IS LINE SEQUENTIAL指定に変更(この場合,ANSI制御文字およびSETPRTテキストレコードは利用できません)

  • ファイル形式2を使用する場合

    そのまま移行できます。バッチジョブ実行システムを使用しないときは,印刷データに格納している制御文字に合わせて実行時環境変数CBLPDERECFM_外部装置名を指定してください。

通常出力時の指定
  • ファイル形式2を使用する場合

    印刷データに格納している制御文字に合わせてファイル名のファイル形式情報を指定してください。

バッチジョブ実行システム連携時の指定
  • ファイル形式2を使用する場合

    印刷データに格納している制御文字に合わせてジョブ定義XMLファイルのDD要素のRECFM属性に制御文字の指定をしてください。

CHARACTER TYPE

※1

COBOL移行手順
  • ファイル形式1を使用する場合

    PDE for Openがサポートする機能キャラクタを16進で指定するように変更してください。

  • ファイル形式2を使用する場合

    そのまま移行できます。

XMAP2を使用したオンライン帳票印刷

×

画像出力サブルーチン(文字データ)

文字列レコードをUAPで作成してください。

文字列レコードの詳細は「2.1.3(4)(a) 文字列レコード」を参照してください。

画像出力サブルーチン(画像データ)

※2

画像データレコードをUAPで作成してください

(元のレコード長が短い場合は,レコード長を長くしてください)。

画像データレコードの詳細は「2.1.3(4)(c) 画像データレコード」を参照してください。

画像出力サブルーチン(図形データ)

×

画像出力サブルーチン(座標指定による文字データ)

※2

任意座標指定文字レコードをUAPで作成してください(元のレコード長が短い場合は,レコード長を長くしてください)。

任意座標指定文字レコードの詳細は「2.1.3(4)(d) 任意座標指定文字レコード」を参照してください。

画像出力サブルーチン(SETPRT機能)

※3

SETPRTテキストレコードをUAPで作成してください

(元のレコード長が短い場合は,レコード長を長くしてください)。

SETPRTテキストレコードの詳細は「2.1.3(4)(b) SETPRTテキストレコード」を参照してください。

報告書作成機能

COBOL移行手順
  • ファイル形式1を使用する場合

    そのまま移行できます。

  • ファイル形式2を使用する場合

    ファイル形式2は使用できません。ファイル形式1を使用してください。

PDE for Openの動作

COBOLが付加する改行コードに従って改行制御を行います。

(凡例)

○:移行できます。

△:移行できます(ソースの修正が必要)。

×:移行できません。

−:該当なし。

注※1

ファイル形式1の場合はソースの修正が必要です。

注※2

画像データレコードや任意座標指定文字レコードを出力する場合,重ね印字指定で出力してください。重ね印字指定以外で出力すると,意図しない改行が発生することがあります。

注※3

SETPRTテキストレコードを出力する場合,重ね印字または改ページ指定で出力してください。重ね印字または改ページ指定以外で出力すると,意図しない空白ページが出力されることがあります。

ファイル形式1の場合,順編成ファイルにUTF-8で日本語定数を入力するには,PICTURE句のPICTURE文字を「X」とする必要があります。ファイル形式2の場合,UTF-8は使用できません。