!--a11y-->

プログラムにトランザクションコードがある場合、2 つの方法によって他のプログラムからそのプログラムを開始することができます。
新規トランザクションの終了時に呼出元プログラムに戻らない場合は、以下の命令を使用します。
LEAVE TO TRANSACTION <tcod> [AND SKIP FIRST SCREEN].
この命令により、呼出元プログラムが終了し、トランザクション <tcod> が開始します。これを実行すると、それ以前のすべてのプログラムのコールスタック ( 内部セッション) が削除されます。トランザクションの終了時に、コールスタック内の最初のプログラムが開始した分野メニューに戻ります。
新規トランザクションの終了時に呼出元プログラムに戻る場合は、以下の命令を使用します。
CALL TRANSACTION <tcod> [AND SKIP FIRST SCREEN] [USING <itab>].
この命令により、呼出元プログラムのデータが保存され、トランザクション <tcod> が開始します。トランザクションの終了時に、呼出レポート内の呼出直後の命令に戻ります。呼び出されたトランザクション内で LEAVE 命令が発生すると、トランザクションが終了し、コントロールは呼出を行ったプログラムに戻ります。
変数を使用して、トランザクション <tcod> を指定することができます。これにより、トランザクションを静的に呼び出すことも、動的に呼び出すこともできます。
オプション AND SKIP FIRST SCREEN を使用すると、新規トランザクションの第一画面を表示させないようにすることができます。その場合、第一画面の画面属性で指定された 次画面が最初に表示さます。第一画面が次画面とされている場合は、スキップできません。
さらに、新規トランザクションの第一画面のすべての必須項目に、SPA/GPA パラメータ の入力値がすべて正しく入力されている場合にのみ、AND SKIP FIRST SCREEN オプションが有効です。
CALL TRANSACTION
命令の
USING ITAB
オプションを使用すると、内部テーブル<itab>
を新規トランザクションに受け渡すことができます。<itab>
のフォームはバッチインプットテーブルのフォームです。バッチインプットテーブルの追加情報については、
バッチインプットによるデータのインポートを参照してください。