3

イベント ブロックAT LINE SELECTION(およびHIDE) を使用するリスト レポートがあります。

AT LINE-SELECTION.
    WRITE: 'Testline'.
* and some more things

メイン リストの行をダブルクリックすると、AT LINE SELECTIONが処理され、メイン リストがテキスト 'Testline' で構成されるリストに置き換えられます。

緑色の戻るボタンをクリックすると、メイン リストが再び表示されます。

すべてが考慮されたとおりに機能します。

今私の質問に:

ユーザーが緑色の戻るボタンをクリックして詳細リストからメイン リストに移動したときに、レポートに通知する方法はありますか?

明らかな解決策AT USER-COMMANDは呼び出されません。これは、リストを更新するためにもう一度同じレポートを作成
するイベントです。SUBMIT

(ALV レポートでこれを行うことができることは知っていますが、単純なリスト レポートでは可能ですか?)

4

1 に答える 1

3

ドキュメントを確認すると、次の情報が見つかります。

  • 機能コード PICK および PF## ("##" は 01 から 24 を表す) は、イベント AT USER-COMMAND を発生させませんが、イベント AT LINE-SELECTION および AT PF## を発生させます。
  • 文字「%」で始まる機能コードはすべてシステム機能として解釈され、イベント AT USER-COMMAND は発生しません。リストのシステム関数を次の表 1 に示します。
  • 以下の表 2 の機能コードも同様に、イベント AT USER-COMMAND を発生させませんが、一覧プロセッサによって処理されます

表 2には次のものが含まれますBACK(これは緑色の矢印のデフォルト コードです)。

できること: 自分のステータスを書きます。

REPORT ytest.

DATA pf_exclude TYPE TABLE OF sy-ucomm WITH HEADER LINE.

START-OF-SELECTION.

  SET PF-STATUS 'LIST'.  "<--- here
  WRITE: / 'Hello World'.

AT LINE-SELECTION.
  WRITE: 'Testline'.
* and some more things

AT USER-COMMAND.
  BREAK-POINT.
  CASE sy-ucomm.
    WHEN 'MYBACK'.
  ENDCASE.

独自のステータスを定義できるようになりました。

PF ステータスの定義

  • 定義することを忘れないでください。そうしないとPICK、ダブルクリックが機能しなくなります。
  • 独自のバック関数を定義します。
于 2016-07-29T07:16:27.233 に答える