GETIMS 呼び出し (IMS セグメントの検索)
この IEB 呼び出しでは、ビューによって選択された次のセグメントを検索し、 ビューによって選択されていないその間のセグメントはすべてスキップします。
- getsegm
- 検索するセグメントの名前。CHILD も指定した場合には、GETIMS はこの名前を持つ階層的に従属した次のセグメントを検索します。指定しない場合のデフォルト値は NEXT であり、GETIMS は階層とは無関係に、 この名前を持つ次のセグメントを検索します。
- NEXT
- データベースで、ビューに指定された基準に一致する次のセグメントを検索します。
- ROOT
- 現行セグメントの階層パス内のルート・セグメントを検索します。ROOT を USING_VIEW とともに指定し、ルート・セグメントがビューによって選択されていない場合には、ROOT はそのルート・セグメントの後の、選択されている最初のセグメントを検索します。
- TOP
- USING_VIEW を指定しないと、TOP によってデータベース内の最初のルート・セグメントが検索されます。USING_VIEW を指定すると、TOP では、ビューによって選択されたデータベース内の最初のセグメントが検索されますが、これは必ずしもルート・セグメントではありません。
- USING_VIEW
- GETIMS をビューによって選択されたセグメントの検索に制限します。ビューは、この GETIMS の呼び出しの前に、VIEWIMS 関数の呼び出しによってすでにロードされている必要があります。
正常に行われればゼロを戻し、そうでなければゼロ以外を戻します。戻りコード 4 は、GETIMS('NEXT USING_VIEW') がデータベースの末尾に達したことを示します。
FM/IMS で使用不可の HALDB 区画または DEDB 領域が検出された場合、GETIMS 関数は戻りコード 8 を受け取り、ISPF 変数 FMSTATUS は、以下の IMS 状況コードを示します。
- FH
- 使用不可の DEDB 領域
- BA
- 使用不可の HALDB 区画
4 でないゼロ以外の戻りコードの場合には、FMSTATUS REXX 変数の DL/I 状況コードを検査して、障害の原因を判別してください。
正常に行われた場合には、GETIMS は検索されたセグメントの内容を INREC および OUTREC REXX 変数に渡します。
GETIMS は、ビューを使用してもしなくても、使用できます。ビューを使用すると、GETIMS は、ビューによって選択されたセグメントだけを検索します。例えば、GETIMS('NEXT USING_VIEW') では、ビューによって選択された次のセグメントが検索され、ビューによって選択されていないその間のセグメントはすべてスキップされます。