LEAVE SCREEN | 現在の画面の処理を中止し、次の画面を呼び出す | - |
LEAVE TO SCREEN | 現在の画面の処理を中止し、動的に定義された次の画面を呼び出す | - |
LEAVE [PROGRAM] | 現在のプログラムの処理を停止し、このプログラムが呼び出されたポイントに戻る | - |
LEAVE TO TRANSACTION | - |
画面処理からの一覧の起動
このセクションでは、画面処理から一覧処理に切り替える方法について説明します。最初に技術的概要を簡単に説明し、次に推奨される手順について説明します。
画面処理と一覧処理の切替
画面処理には、CALL SCREEN またはトランザクションコードを使用して開始する画面順序が常に関係します。画面処理中、ABAP プログラムはダイアログプロセッサによって制御されます。ABAP プログラムで、Dynpro 制御ロジックから呼び出された PBO および PAI モジュールが実行されます。
ダイアログプロセッサから一覧プロセッサにコントロールを渡すには、以下の命令を含める必要があります。
LEAVE TO LIST-PROCESSING [AND RETURN TO SCREEN nnnn].
これをいずれかのダイアログモジュールに含めます。この命令は、PBO イベントまたはPAI イベントに含めることができます。これにより、一覧プロセッサが起動し、現在の画面の PAI 処理後に基本一覧が表示されます。基本一覧には、その時点までに実行された PBO および PAI モジュールからの一覧出力すべてが含まれます。
ABAP プログラムの該当イベントブロック (AT LINE-SELECTION、AT USER-COMMAND) で詳細一覧が定義されている場合には、基本一覧でのユーザアクションによって詳細一覧が表示され、その後のインタラクションによってさらに一覧レベルが表示されます。
一覧処理は、以下の 2 つの方法で終了することができます。
1,前画面、終了、または取消機能を使用して基本一覧を終了します。
2, 一覧処理中に以下の命令を使用します。
LEAVE LIST-PROCESSING.
どちらの場合も、一覧プロセッサからダイアログプロセッサにコントロールが戻ります。コントロールが戻るたびに、一覧システム全体が初期化されます。その後の PBO および PAI モジュールでの一覧出力命令はすべて、空の基本一覧に適用されます。
デフォルトでは、ダイアログプロセッサは一覧プロセッサが呼び出された画面のPBO 処理に戻ります。オプション AND RETURN TO SCREEN を追加すると、現在の画面順序内で処理を再開したい PBO イベントのある別の画面を指定することができます。たとえば、以下の命令を使用するとします。
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
この場合、現在の画面順序を終了して、初めに呼び出された地点に戻ることができます。
推奨手順
画面処理中に一覧を照会するには、呼び出す一覧システムそれぞれに対して個別の画面を登録する必要があります。この画面により、基本一覧の登録と照会がカプセル化されます。そのため、CALL SCREEN を使用してプログラム内の任意の場所から呼び出すことができます。
この画面の実際の画面マスクは、空のままの場合があります。PAI モジュールは不要で、必要なのは 1 つの PBO モジュールだけです。PBO モジュールで、一覧システムの基本一覧を定義し、一覧プロセッサを呼び出します。