SAP NetWeaver AS ABAP Release 740, ©Copyright 2014 SAP AG. All rights reserved.
ABAP Keyword Documentation → ABAP − Reference → User Dialogs → Screens → Dynpro Fields → Screen Fields - Examples →Screens, Pushbuttons
The example shows how to process pushbuttons on screens.
Source Code
PROGRAM demo_dynpro_push_button .
DATA: ok_code TYPE sy-ucomm,
save_ok LIKE ok_code,
output(8) TYPE c.
CALL SCREEN 100.
MODULE user_command_0100 INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'BUTTON_EXIT'.
LEAVE PROGRAM.
WHEN 'BUTTON_1'.
output = 'Button 1'(001).
WHEN 'BUTTON_2'.
output = 'Button 2'(002).
WHEN 'BUTTON_3'.
output = 'Button 3'(003).
WHEN 'BUTTON_4'.
output = 'Button 4'(004).
WHEN OTHERS.
output = save_ok.
ENDCASE.
ENDMODULE.
Description
The static next screen number of screen 100 is 100. The screen field of output has been set as not ready for input in the Screen Painter. If the user chooses one of the pushbuttons, the event PAI is triggered. The function code of the pushbutton is assigned to the screen field ok_code which in turn is assigned to the ABAP field of the same name. Then the module user_command_0100 is processed. First, the contents of the field ok_code are assigned to the auxiliary variable save_ok, and ok_code is initialized. This procedure is always recommended since it makes sure that the screen field ok_code is also reinitialized in the PBO event and does not contain any unintended value. The control structure CASE then assigns a text symbol to the output field depending on the pushbutton chosen which is then displayed in the output field of the screen, or the program is quit when the Cancel button is chosen.