セグメント出口を使用すると、ユーザー記述プログラムでセグメント選択を制御し、ロードおよびアンロード処理中にセグメント・データを変更できます。出口プログラムは、データベース・セグメントごとに呼び出されます。出口プログラムでは、セグメントを削除したり、セグメント・データを変更したり、セグメント・データを未変更のまま渡したりすることができます。セグメントが削除されると、そのセグメントの子セグメントも自動的にすべて削除されます。セグメント出口を有効にするには、SEGEXIT 指令を使用します。
圧縮出口は、Load への入力ファイルおよび Unload の出力ファイルに使用されます。圧縮出口では、入力または出力ファイルのセグメント圧縮や暗号化が考慮されます。圧縮出口は、MFIMS データベースに格納されたデータには使用されません。入力ファイルの圧縮解除と出力ファイルの圧縮を行うために CBLDCIMS という標準ルーチンが用意されています。ユーザー記述プログラムでは、別のセグメント・エンコーディングを実行できます。この出口を有効にするには、COMPRESS 指令を使用します。
IMS/ESA データベースをアンロードするための IMSDBUV サンプル・プログラムは、CBLDCIMS ルーチンを使用して、IMSDBU Load へ入力される圧縮ファイルを作成し、それらのファイルを圧縮解除することができます。
これらの出口の詳細は、サンプル・ファイルの DBUPARMS.CPY に記述されています。