Mainframe Subsystem Support には、IMSDBUEA というセグメント出口ルーチンが含まれています。このルーチンを使用すると、セグメントを EBCDIC から ANSI に変換できます。このルーチンは、次の 3 つの方法で使用できます。
IMSDBUEA は、セグメント・レイアウト・ファイル (.slf) を使用して、各セグメントのどのフィールドを変換する必要があるかを判断します。そのため、IMSDBUEA を使用する前に、IMS データベース・エディタを使用して .slf ファイルを作成する必要があります。.slf ファイルは、ES_IMSDAT 環境変数によって指定されたディレクトリに入っている必要がありますが、ES_IMSDAT 環境変数が設定されていない場合は、.slf ファイルが現在のディレクトリに入っている必要があります。
IMSDBUEA の使い方は、データベース管理ユーティリティとコマンド・ラインのどちらを使用しているかによって異なります。
PROCEDURE DIVISION.
*=========================================================*
***** Load the MFIMSDBU module first.
set ws-ptr to entry "MFIMSDBU"
if ws-ptr = null
display "Cannot Load MFIMSDBU DLL"
display "Need to Die gracefully."
stop run
end-if
MOVE 02 TO SEGEXIT-VERSION
MOVE 00 TO SEGEXIT-FUNC
MOVE 'P155' TO SEGEXIT-DBD
MOVE 'P155SEG' TO SEGEXIT-SEGM
MOVE 10 TO SEGEXIT-SEGM-LTH
MOVE 10 TO SEGEXIT-SEGM-MAX-LTH
MOVE P155SEG TO SEGEXIT-DATA
CALL 'IMSDBUEA' USING SEGEXIT-PARMS
SEGEXIT-DATA.
mftech MOVE 02 TO SEGEXIT-VERSION
mftech MOVE 01 TO SEGEXIT-FUNC
mftech MOVE 'P155' TO SEGEXIT-DBD
mftech MOVE 'P155SEG' TO SEGEXIT-SEGM
mftech MOVE 10 TO SEGEXIT-SEGM-LTH
mftech MOVE 10 TO SEGEXIT-SEGM-MAX-LTH
mftech MOVE P155SEG TO SEGEXIT-DATA
mftech
mftech CALL 'IMSDBUEA' USING SEGEXIT-PARMS
mftech SEGEXIT-DATA.