Selection screens are one of the three types of screen in the SAP GUI, along with dialog screens and lists. You use them whenever you want the user to enter either a single value for a field or fields, or to enter selection criteria.
ABAP programs use screens to obtain input from users. The most general type of screen is a dialog screen, which you create using the ABAP Workbench tools Screen Painter and Menu Painter These tools allow you to create screens for data input and output. However, each of these screens requires its own flow logic.
You often use screens purely for data input . In these cases, you can use a selection screen. Selection screens are a standardized user interface. Users can enter both single values and complex selections. Input parameters are primarily used to control the program flow, while users can enter selection criteria to restrict the amount of data read from the database. You can create and save predefined sets of input values in the ABAP Editor for any selection screen. These are called variants. Texts on the selection screen are stored as language-specific selection texts in the program text elements. If you start an executable report using the SUBMIT statement, the input fields of the selection screen also serve as a data interface.
You define selection screens using ABAP statements in a program. Simple statements allow you to create input fields, checkboxes, and radio buttons, and design the screen layout. If you want to create a screen exclusively for data input, you do not need to create it using the normal dialog programming tools. When you create a selection screen, the system automatically assumes the tasks of the Screen Painter and Menu Painter.
The rules for calling and defining selection screens in ABAP programs depend on the program type:
· Executable program without logical database
You can use a single standard selection screen and as many user-defined selection screens as you wish. The standard selection screen is called automatically when you start the program. User-defined selection screens, on the other hand, are called using the CALL SELECTION-SCREEN statement in a program. The standard selection screen always has the screen number 1000. User-defined selection screens can have any screen number except 1000.
· Executable program with logical database
The standard selection screen for an executable program linked to a logical database is made up of the logical database selections and the program selections.
· Module Pools and Function Modules
You can only use user-defined selection screens in module pools and function modules. These can have any number apart from 1000. You can only call a selection screen from a function module using the CALL SELECTION-SCREEN statement. You can use a user-defined selection screen in a module pool as the initial screen of a transaction.
You can also define selection screens as Subscreens and incorporate them in screens or tabstrip controls.