可変長フィールド
CRTCBLMOD または CRTBNDCBL コマンドの CVTOPT(*VARCHAR) パラメーター、 または PROCESS ステートメントの VARCHAR オプションを指定する場合には、 プログラムに可変長フィールドを取り入れることができます。 外部記述ファイルから抽出する可変長フィールドは、プログラムの中で固定長グループ項目になります。
これらのフィールドについて詳しくは、 「IBM® Rational® Development Studio for i: ILE COBOL プログラマーの手引き」を参照してください。
レコードをレコード域に明示的に移動する前に WRITE 操作を実行すると、 多くの場合、16 進値 40 (X'40') を持つブランクを書き込むことになります。 可変長フィールドの場合、これは、現行のフィールド長として X'4040' が使用されることを意味します。
X'4040' は 10 進値 16448 に変換され、おそらく、可変長フィールドに関して定義された最大の長さを上回ります。 このため、WRITE 操作または後続の CLOSE 操作は失敗し、ファイル状況は 90 となります。