0

如果找不到数据,我必须在选择屏幕上显示错误消息,并且我必须直接在选择屏幕上显示此消息。我的问题是它显示在空白屏幕上。这是我的代码:

FORM 1main .
  CLEAR: gt_tbalv.
  PERFORM check_screen.
  PERFORM get_data.
  IF gt_tbalv IS NOT INITIAL.
    CALL SCREEN 100.
  ELSE.
*   Message Data not found
    MESSAGE e010 DISPLAY LIKE 'S'.
  ENDIF.
ENDFORM.                    " 1MAIN

我的错误在哪里?

PS:我从选择屏幕的 START OF SELECTION 事件中调用此表单

************************************************************************
***                       START-OF-SELECTION                         ***
************************************************************************
START-OF-SELECTION.
  PERFORM 1main.
4

2 回答 2

3

我假设您在 START-OF-SELECTION 中调用此表单。您应该改用 AT SELECTION-SCREEN。

有关示例,请参见此答案。

于 2016-05-29T13:10:51.597 回答
0

您可以将消息类型为“S”并显示为“E”。消息后使用LEAVE TO LIST-PROCESSING,这样你的程序就会被打断。

于 2016-06-07T16:22:59.860 回答