ヌル可能フィールドの表示

EVAL デバッグ・コマンドを使用して ヌル可能フィールドの空標識を表示する ことができます。 空標識は、QRNU_NULL_ フィールド名という名前の内部変数 (複数回繰り返しデータ構造の指標変数とほぼ同じ) です。 配列が null 可能である場合には、フィールド名を配列の名前にする ことができます。

デバッガーが ヌル可能フィールドを表示すると、このフィールドが null と 見なされているかどうかにかかわらず、フィールドの内容が表示されます。 例えば、FLD1 が null 可能であり、現在 null であるとします。 EVAL _QRNU_NULL_FLD1 の結果は '1' であり、 空標識がオンであったとしても、EVAL FLD1 は FLD1 の現在の内容を 表示します。

EVAL _QRNU_NULL_FLD1     Result:  _QRNU_NULL_FLD1 = '1'

EVAL FLD1                Result:  FLD1 = 'abcde'

データ構造が null が可能なサブフィールドを持っている場合、データ構造のすべての null 可能なサブフィールド用の null 標識は、データ構造 _QRNU_NULL_dsname のサブフィールドとしてそれ自身保管されます。

データ構造が修飾されていない場合は、null 標識データ構造は修飾されていません。null が可能なサブフィールドの名前は、形式 _QRNU_NULL_subfieldname の中にあります。

例えば、修飾されたデータ構造 DS1 が null が可能なサブフィールド FLD1 および FLD2 および null が可能でないサブフィールド FLD3 を持っている場合、データ構造 _QRNU_NULL_DS1 は、標識サブフィールド _QRNU_NULL_NULLFLD1 および NULL2 を持ちます。 データ構造のすべての null 可能なサブフィールドを表示するには、以下のデバッグ・コマンドを使用します。

EVAL _QRNU_NULL_DS1      Result:  _QRNU_NULL_FLD1 OF _QRNU_NULL_DS1 = '1'
                                  _QRNU_NULL_FLD1 OF _QRNU_NULL_DS1 = '0'

データ構造が修飾されている場合は、null 標識データ構造は修飾されています。null が可能なサブフィールドの名前は、データ構造サブフィールドの名前と同じです。

例えば、修飾されたデータ構造 DS2 が null が可能なサブフィールド F1 および F2 および null が可能でないサブフィールド F3 を持っている場合、データ構造 _QRNU_NULL_DS2 は、標識サブフィールド F1 および F2 を持ちます。 データ構造のすべての null 可能なサブフィールドを表示するには、以下のデバッグ・コマンドを使用します。

EVAL _QRNU_NULL_DS2      Result:  _QRNU_NULL_DS2.F1 = '0'
                                  _QRNU_NULL_DS2.F2 = '1'

変数の null 標識を表示するには、最外部の名前を _QRNU_NULL_name で置換して、変数自身にアクセスするときと同じ EVAL 式をデバッガーで使用します。

EVAL FLD1                          Result: 'abc'
EVAL _QRNU_NULL_FLD1               Result: '0'

EVAL SUBF2                         Result: 0
EVAL _QRNU_NULL_SUBF2              Result: '1'

EVAL ARR(3)                        Result: 13
EVAL _QRNU_NULL_ARR(3)             Result: '1'

EVAL DS3.INFO(2).SUB4              Result: 'xyz'
EVAL _QRNU_NULL_DS3.INFO(2).SUB4   Result: '0'