chapter 04_the at user-command event and menu painter
DESCRIPTION
Chapter 04_The at USER-COMMAND Event and Menu PainterTRANSCRIPT
IBM Global Business Services
© IBM Corporation 2013The AT USER-COMMAND Event and Menu Painter |
Dec-2008
The AT USER-COMMAND Event and Menu Painter
IBM Global Business Services
© IBM Corporation 20132 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Objectives
The participants will be able to: Apply the AT USER-COMMAND syntax.
Use the Graphical User Interface.
Use the SY-UCOMM system field.
IBM Global Business Services
© IBM Corporation 20133 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Graphical User Interface (GUI)
Titlebar Menubar
StandardToolbar
ApplicationToolbar
IBM Global Business Services
© IBM Corporation 20134 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Menu Painter
Menu PainterMenu PainterMenu PainterMenu Painter
Creates Function Codes
Function KeyAssignments
StandardToolbar
ApplicationToolbar Menubar
IBM Global Business Services
© IBM Corporation 20135 Dec-2008The AT USER-COMMAND Event and Menu Painter |
GUI Status
The GUI Status (Graphical User Interface Status)
Programmer Defined Buttons and Menus :
In this sample GUI Status, the programmer decided to create a “DOCUMENTS” button, and a “LIST” menu.
IBM Global Business Services
© IBM Corporation 20136 Dec-2008The AT USER-COMMAND Event and Menu Painter |
GUI Title
The GUI Title (Graphical User Interface Title)
Programmer defined titlebar
IBM Global Business Services
© IBM Corporation 20137 Dec-2008The AT USER-COMMAND Event and Menu Painter |
ABAP Code
DATA: WA_LFA1 TYPE LFA1.
START-OF-SELECTION.SET PF-STATUS ‘TEST1’.SELECT * FROM LFA1 INTO WA_LFA1.
WRITE: / WA_LFA1-LIFNR, 30 WA_ LFA1-NAME1.ENDSELECT.
AT USER-COMMAND.CASE SY-UCOMM.
WHEN ‘RUNX’.SET PF-STATUS ‘TEST2’.SET TITLEBAR ‘TB2’.
WHEN ‘RUNY’.. . . .
ENDCASE.
SELECT *
SY-SUBRCCHECK
IBM Global Business Services
© IBM Corporation 20138 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Activating the AT USER-COMMAND Event
3rd. Behind the scenes, the ABAP processor reacts and triggers the AT USER-COMMAND event.
1st. The user clicks on a button that the programmer created on the GUI Status.
2nd. The system detects that ‘RUNY’ has been assigned as the function code behind this button.
IBM Global Business Services
© IBM Corporation 20139 Dec-2008The AT USER-COMMAND Event and Menu Painter |
The AT USER-COMMAND Event
*--begin of AT USER-COMMAND event--------------------------------AT USER-COMMAND.
WRITE: / ‘The user just clicked on a pushbutton, selected’,/ ‘a menu path, or pressed a function key’.
*--end of AT USER-COMMAND event-----------------------------------
Do not write this code, we will learn the complete syntax momentarily.
A New ABAPEvent
SYNTAX: AT USER-COMMAND.SYNTAX: AT USER-COMMAND.
IBM Global Business Services
© IBM Corporation 201310 Dec-2008The AT USER-COMMAND Event and Menu Painter |
3rd. Behind the scenes, the ABAP processor reacts and triggers the AT USER-COMMAND event.
1st. The user clicks on a buttonthat the programmer createdon the GUI Status.
2nd. The SY-UCOMMsystem field isupdated with the four char. “tag” RUNY
A New ABAP
System Field
SYSTEM FIELD: SY-UCOMMSYSTEM FIELD: SY-UCOMM
The SY-UCOMM System Field
IBM Global Business Services
© IBM Corporation 201311 Dec-2008The AT USER-COMMAND Event and Menu Painter |
*--BEGIN OF AT USER-COMMAND EVENT MODULE.--------------
AT USER-COMMAND.CASE SY-UCOMM.
WHEN ‘RUNX’.WRITE: / ‘The user just pressed button X’.
WHEN ‘RUNY’. WRITE: / ‘The user just pressed button Y’.
ENDCASE.
*--END OF AT USER-COMMAND EVENT MODULE.----------------
Using AT USER-COMMAND with the SY-UCOMM System Field
Must be in
all caps and
single quotes
IBM Global Business Services
© IBM Corporation 201312 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Two programmer defined buttons, BUTTON X, and BUTTON Y.
This is what our first interactive report, that utilises a GUI status, will look like.
A programmer defined a menu containing two menu items,
(menu Item X, and menu Item Y), will duplicate the
functionality of our buttons.
Interactive Report that Utilizes a GUI Status
IBM Global Business Services
© IBM Corporation 201313 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Demonstration
Use of AT USER-COMMAND event, system field SY-UCOMM and creation and usage of GUI components.
Create a program generating a basic list and create different kind of detail lists from the basic list depending on User Interaction.
IBM Global Business Services
© IBM Corporation 201314 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Practice
Use of AT USER-COMMAND event, system field SY-UCOMM and creation and usage of GUI components.
Create a program generating a basic list and create different kind of detail lists from the basic list depending on User Interaction.
IBM Global Business Services
© IBM Corporation 201315 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Summary
System assigns a default GUI status to all report programs. GUI status for a program is created through ‘Menu Painter’ transaction ‘SE41’. GUI for a program contains the following :
Function Key Assignment Standard Toolbar Application Toolbar Menubar Titlebar
Three components of interactive reporting are : GUI status GUI Title ABAP Code
AT USER-COMMAND event is triggered when the user clicks on a pushbutton or selects a menu item. Which button has been clicked or which Menu item has been selected is determined by the system field SY-UCOMM.
IBM Global Business Services
© IBM Corporation 201316 Dec-2008The AT USER-COMMAND Event and Menu Painter |
Questions
What are the components of a GUI ?
What can be managed through the GUI status ?
How will you manage the title of your list ?
Which event is used to recognize the user action on the list ?
How do the programmer recognize which pushbutton has been clicked or which Menu item has been selected ?