Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

About Module pool

Former Member
0 Likes
488

Hi,

How to provide select-options in layout.

Thanks&Regards,

Prasanna.

3 REPLIES 3
Read only

Former Member
0 Likes
449

Hi Laxmi

hope it will help you.

SELECT-OPTIONS

Basic form

SELECT-OPTIONS sel FOR f.

Additions

1. ... DEFAULT g

2. ... DEFAULT g ... OPTION xx ... SIGN s

3. ... DEFAULT g TO h

4. ... DEFAULT g TO h ... OPTION xx ... SIGN s

5. ... MEMORY ID pid

6. ... MATCHCODE OBJECT mobj

7. ... MODIF ID key

8. ... NO-DISPLAY

9. ... LOWER CASE

10. ... OBLIGATORY

11. ... NO-EXTENSION

12. ... NO INTERVALS

13. ... NO DATABASE SELECTION

14. ... VALUE-REQUEST

15. ... VALUE-REQUEST FOR LOW/HIGH

16. ... HELP-REQUEST

17. ... HELP-REQUEST FOR LOW/HIGH

Effect

Declares a variable selection option.

This statement only makes sense in reports, i.e. in programs defined as type 1 in the attributes. You can execute reports with the SUBMIT statement. The statements SELECT-OPTIONS and PARAMETERS determine the technical interface and the user interface. The parameters and selection options you specify are displayed on the selection screen for the user to enter values (see also the addition NO-DISPLAY or SUBMIT without the addition VIA SELECTION-SCREEN .

sel must be 1 - 8 characters long.

Note

This statement defines an internal table sel with a fixed structure which consists of the fields sel-SIGN , sel-OPTION , sel-LOW and sel-HIGH .

A report can (by means of an entry in the attributes) be assigned to a logical database ldb . This means that both the logical database ldb and the report can define selection options (and parameters). You define the (database-specific) selection options in an ABAP/4 include program DBldbSEL (in logical database maintenance). The system then imports this include program into the actual logical database access program SAPDBldb and (partially) into the report. As a result, the database-specific selection options (and parameters) relevant to the report are available both to the database program SAPDBldb and to the report.

The 'report-specific' selection options are known only in the report (not in SAPDBldb ).

Some SELECT-OPTIONS additions are allowed only in DBldbSEL . The addition 'NO DATABASE SELECTION' can only be used in the report.

Each line of the internal table sel formulates a condition. If you require precise details about how to formulate these conditions, see the section on the IN operator under Logical expressions .

If the user enters a value set on the selection screen, the internal table sel is automatically filled.

You can use normal ABAP/4 statements to read and manipulate the internal table sel .

The values you enter for the database-specific selection options are passed directly to the database for data selection (i.e. no unwanted records are read). This also applies to report-specific SELECT-OPTIONS that refer to a field in a logical database table defined for dynamic selections (see also the addition " NO DATABASE SELECTION ").

You must check report-specific selections that refer to other fields with the CHECK statement (i.e. unwanted records must first be read from the database and discarded afterwards). This process is therefore not as efficient as the process described above.

Under "Text elements/selection texts", you should enter a description for each selection criterion sel . This description is displayed on the selection screen. If no such text exists, the name sel of the selection option is displayed instead.

The LOW and HIGH fields of a selection option are displayed in a length up to 18 bytes long (scrollable up to 45 bytes). If you define a length longer than 45, fields are truncated on the selection screen after the 45th character. This affects the first line of the SELECT-OPTIONS table. You can, however, pass longer selection options to a report if they are specified with the addition NO-DISPLAY and thus do not appear on the selection screen. Without NO-DISPLAY , the fields are then truncated whenever the selection screen is processed in the background (SUBMIT without VIA SELECTION-SCREEN ).

Example

SELECT-OPTIONS PROGRAM FOR SY-REPID.

&ABAP-EFFECT& Suppose you create an internal table PROGRAM with the header line fields PROGRAM-SIGN , PROGRAM-OPTION , PROGRAM-LOW and PROGRAM-HIGH . PROGRAM-LOW and PROGRAM-HIGH have the same field attributes as SY-REPID . When the report is executed, a line on the selection screen contains the text 'PROGRAM' or the associated selection text as well as input fields for PROGRAM-LOW and PROGRAM-HIGH . At the end of the line, there is a pushbutton with an arrow. When you press this button, you branch to the 'Complex Selections' screen where you can enter more selection lines for sel . Here, you can formulate very complicated selection conditions. For further information about how these entries determine the result set, see Logical expressions or select Utilities -> Help sel. screen on the 'Complex Selections' screen.

Note

Field attributes on the selection screen.

The input/output fields displayed on the selection screen for entry of upper and lower limits have the same attributes for type, length or conversion exits as the field f specified after FOR .

If f is a Dictionary field, the selection screen is regenerated automatically after most changes to its attributes. The attributes 'Check table' and 'Fixed values' are exceptions to this rule. If these are changed, you have to generate the program in the ABAP/4 Editor. This also generates the selection screen.

Addition 1

... DEFAULT g

Effect

Proposes the single value g as the default selection when the report is called.

Notes

For each SELECT-OPTION , you can only specify one DEFAULT .

You must specify the default value g in its internal format, e.g. " SELECT-OPTIONS DATE FOR SY-DATUM DEFAULT '19931224' ", not " ... DEFAULT '24.12.1993' ".

The default value g should normally be a literal because, at runtime, it is transferred to the selection options table sel so early that no value can be assigned to the field g . System fields are an exception here because the system usually assigns values to them as soon as the report processing starts.

Example

SELECT-OPTIONS DATE FOR SY-DATUM DEFAULT SY-DATUM.

Addition 2

... DEFAULT g ... OPTION xx ... SIGN s

( xx is OPTION , i.e. one of the values EQ,NE,CP,NP,GE,LT,LE,GT ); s is SIGN , i.e. one of the values I or E )

Effect

Similar to " ... DEFAULT g ", except that the system also proposes the specified selection option and SIGN .

You can specify the additions OPTION and SIGN in any order or omit them. The standard OPTION is EQ , the standard SIGN is I .

Example

DATA CITY(20).

SELECT-OPTIONS SO_CITY FOR CITY DEFAULT 'SAN*'

OPTION CP SIGN E.

On the selection screen, this results in an entry specifying that cities not beginning with " SAN " are selected.

pls reward pts if help.

Read only

Former Member
0 Likes
449

hi

good

You can make use of the Function Module 'COMPLEX_SELECTIONS_DIALOG' to make a field as select options and to get the extended multiple selection button as well.

Please see the sample code as below

In the user command of the button for multiple selection wirte this code wiht the specidfied fields

codedata: begin of RAN_TRACK occurs 0,

SIGN type C length 1,

OPTION type C length 2,

LOW type ZTRACK_NO,

HIGH type ZTRACK_NO,

end of RAN_TRACK.

form MULTIPLE_SELECTION_TRACK_NO .

call function 'COMPLEX_SELECTIONS_DIALOG'

exporting

TITLE = 'Multiple Selection for Tracking Number'

TEXT =

SIGNED = 'X'

LOWER_CASE = 'X'

NO_INTERVAL_CHECK = ' '

JUST_DISPLAY = ' '

JUST_INCL = ' '

EXCLUDED_OPTIONS =

DESCRIPTION =

HELP_FIELD =

SEARCH_HELP =

TAB_AND_FIELD =

tables

RANGE = RAN_TRACK

exceptions

NO_RANGE_TAB = 1

CANCELLED = 2

INTERNAL_ERROR = 3

INVALID_FIELDNAME = 4

others = 5

.

if SY-SUBRC 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

endif.

endform. " multiple_selection_track_no[/code]

thanks

mrutyun^

Read only

Former Member
0 Likes
449

Hi Laxmi,

In the layout design use input/output fields which act as a select options after that U need to capture values from the screen and write revel ant code to process your select-options.