コンテンツフレーム起動

画面および画面順序 文書を SAP ライブラリストラクチャに組み込む

画面、およびその画面の制御ロジックによって Dynpro が形成されます。これは、一連のダイアログモジュールをコールすることによって、ABAP プログラムのフローを制御するインスタンスです。順序の中でいくつかの画面を組み合わせることができます。順序の中では、静的または動的に次の画面を定義することができます。最も簡単な画面順序は、単一画面です。順序は、初期画面をコールしたときに始まります。順序を開始するには、さまざまな方法があります。

このグラフィックは添付のテキストに説明されています

画面を同じ ABAP プログラムから内部でコールする

独自の画面を持つ ABAP プログラム ( タイプ 1MF) では、次の命令

CALL SCREEN <dynnr>

を使用して、プログラム内で画面および画面順序をコールすることができます。各画面の制御ロジックは、画面を呼び出したプログラム内でダイアログモジュールをコールします。 

画面順序が終了すると、元の CALL SCREEN 命令の後で制御が命令に返されます。

画面をトランザクションとしてコールする

メインプログラム ( 通常はモジュールプール) には、1 つのトランザクション ( またはトランザクションコード) がリンクしています。

ABAP プログラムからトランザクションをコールするには、次の命令

CALL TRANSACTION <tcod> ...

または

LEAVE TO TRANSACTION <tcod> ...

を使用します。トランザクションコードを定義したときに指定した初期画面で、トランザクションが開始されます。トランザクションのプログラムは、新しい内部セッションで開始され、 独自の SAP LUW を持ちます。画面順序の中の画面は、メインプログラム内のさまざまなダイアログモジュールをコールします。

画面順序が終了すると、CALL TRANSACTION 命令が含まれているプログラムに制御が返されます。LEAVE TO TRANSACTION を使用してトランザクションを開始した場合は、呼出元プログラムが開始された場所へ制御が返されます。

画面をダイアログモジュールとしてコールする

ダイアログモジュールは、メインプログラム ( 通常はモジュールプール) の画面にリンクすることができます。

ABAP プログラムからダイアログモジュールをコールするには、次の命令

CALL DIALOG <diag> ...

を使用します。ダイアログモジュールを定義したときに指定した初期画面で、ダイアログモジュールが開始されます。ダイアログモジュールのプログラムは、新しい内部セッションで開始され、 独自の SAP LUW を持ちます。画面順序の中の画面は、メインプログラム内のさまざまなダイアログモジュールをコールします。

画面順序が終了すると、ダイアログモジュールのコールの後で制御が命令に返されます。

ダイアログモジュールは廃止されており、現在は使用されていません。代わりに、画面順序を汎用グループ内でカプセル化し、適切にプログラムされた汎用モジュールから、カプセル化された画面順序をコールすることができます。

画面順序の終了

画面が終了したとき、および定義された次の画面の番号が 0 のときに、画面順序が終了します。

順序内の単一画面を終了するには、次の命令

LEAVE SCREEN

または

LEAVE TO SCREEN <dynnr>

を使用します。これらの命令によって現在の画面が終了し、定義されている次の画面がコールされます。次の画面の番号が 0 の場合は、画面順序全体が終了します。

特別な単一画面

特別な画面には、次の 3 つのタイプがあります。

選択画面

選択画面は特別な画面の一種で、ABAP 命令を使用して作成します。選択画面をコールするには、必ず次の命令

CALL SELECTION-SCREEN <dynnr> ...

を使用します。選択画面は、呼出先プログラムで処理されます ( 選択画面のユーザ入力に対する応答イベントが処理されます)

一覧

画面順序の各画面には、対応する一覧システムが 20 種類のレベルで定義されています。この一覧システムを開始するには、次の命令

LEAVE TO LIST-PROCESSING [AND RETURN TO SCREEN <dynnr>]

を使用します。この命令は、システムプログラムをコールします。システムプログラムには、一覧で使用される標準のコンテナ画面が含まれています。この処理によって、表示されている画面が変わります。この画面には、1 つの基本一覧と、最大 19 個の詳細一覧を表示することができます。一覧処理 ( 一覧のイベントにおけるユーザアクションへの応答) は、呼出先プログラムで発生します。

一覧システムを終了するには、次の命令

LEAVE LIST-PROCESSING

を使用します。 

実行可能プログラムで、最後のレポートイベントの後に、一覧システムが自動的にコールされます。

従属画面

画面の制御ロジック PBO イベントでは、次の命令を使用して従属画面をコールすることができます。

CALL SUBSCREEN <area> INCLUDING [<prog>] <dynnr>

コールする従属画面の画面は、メイン画面の従属画面領域 <area> に定義されます。

プログラム <prog> を指定しない場合は、現在の ABAP プログラムの画面が使用されます。プログラム <prog> を指定した場合は、従属画面のプログラム <prog> の画面が使用されます。このプログラムは、外部サブルーチンコールと同じように処理されます。つまり、呼出元プログラムのプログラムグループにロードされるか、または汎用グループの場合は、独自のプログラムグループとして、呼出元の ABAP プログラムと同じ内部セッションでロードされます。 

 

 

 

コンテンツフレーム終了