2.2.5 パネル定義文の編集
Windowsで扱えるようにするために,パネル定義文を変更する必要がある次の定義について説明します。必要に応じて,パネル定義文だけでなく,APのソースも修正してください。
-
COBOL/C以外の言語で使用するパネル定義文
-
16進数による指定
-
ページング(複数のLOGSEG文,PHSEG文)
-
ページプリンタ帳票のけい線のDFC
変換できる機能については,「付録B インポートで変換できる機能範囲」を参照してください。
- 〈この項の構成〉
(1) COBOL/C以外の言語で使用するパネル定義文
インポートで変換できるのは,COBOL用のパネル定義文だけです。それ以外の言語用のパネル定義文の場合,変換時にPANEL文のLANGオペランドがC(COBOL)に変更されます。
ただし,データ名は変換しないので,あらかじめCOBOLで使用できるデータ名に変更しておいてください。
(2) 16進数による指定
インポートでは16進数による指定は変換できません。数値または文字列に変更してください。ただし,次の指定は変換できるので,修正する必要はありません。
-
CNSFLD文
-
VALオペランドでのNX指定(16進数によるKEISコード直接指定)
-
VALオペランドでのX指定(16進数による定数直接指定)
-
-
LOGFLD文
-
VALオペランドでのNX指定(16進数によるKEISコード直接指定)
-
VALオペランドでのX指定(16進数による定数直接指定)
-
FILLオペランドでのX指定(16進数による定数直接指定)※
- 注※
-
CODE=Kで「NX,'KEISコード'」,「C,'埋字'」または「X,'16進数字'」の場合,「埋めない」に変換されます。(X,'40'),(X,'00'),および(X,'FF')をそれぞれ「スペース」,「LOW(X'00')」,「HIGH(X'FF')」に変換する場合は,インポートの変換オプションで「16進で指定されたKEIS項目の埋字を破棄しない(X,'40',X,'00',X,'FF'のみ)」をチェックしてください。
-
(3) ページング(複数のLOGSEG文,PHSEG文)
XMAP3はページングに対応していないため,インポートでも複数のLOGSEG文およびPHSEG文を含むパネル定義文を変換できません。一画面(一組の論理セグメントと物理セグメント)につき一つのパネル定義文になるように,ファイルを分割してください。
(4) ページプリンタ帳票のけい線のDFC
インポートでは,帳票はすべて「占有」として変換されます。したがって,PHSEG文のCNTRLオペランドにFULLを指定した場合,けい線の開始位置とフィールドの配置とが重なることがあります。この場合,「パネル定義文ファイル名.err」にエラーメッセージが出力されますが,マップ定義ファイルは生成されます。ただし,重なったオブジェクトのうち,変換されるのはパネル定義文中で最初に定義された要素だけで,それ以降のものはエラーとなり変換されません。
けい線の開始位置とフィールドが重なって,どちらかが変換されない場合を次の図に示します。
例1の場合,あとで定義されたけい線(RLINE文)は変換されない。 可変フィールドが固定フィールド(CNSFLD文)の場合も同様。 例1 VARFLD POS=(8,7)... : : RLINE POS=(8,7)... 例2の場合,あとで定義された可変フィールド(VARFLD文)は変換されない。 可変フィールドが固定フィールド(CNSFLD文)の場合も同様。 例2 RLINE POS=(8,7)... : : VARFLD POS=(8,7)... |
このような場合は,パネル定義文を修正して位置を変更してください。または,変換されたファイルをドローで編集して,変換されなかったオブジェクトを定義し直してください。