1. ... USING
SELECTION-SET vari
2.
... WITH p op f SIGN s
3.
... WITH p BETWEEN f1 AND f2 SIGN s
4.
... WITH p NOT BETWEEN f1 AND f2 SIGN s
5.
... WITH p IN sel
6. ...
WITH SELECTION-TABLE seltab
7. ... WITH FREE SELECTIONS texpr
Passes values to the SELECT-OPTIONS
and PARAMETERS of the
program rep (these can also be defined in the database program SAPDBldb
of the relevant logical database ldb).
p is the name of a parameter
or selection criterion.
... USING SELECTION-SET vari
The variable vari contains the name of a variant used to start the report.
... WITH p op f SIGN s
op is one of the operations EQ,
NE, CP, NP, GE, LT, LE, GT. s is a variable
which must contain one of the values
'I' or 'E'
(any other values result in a runtime error). The addition SIGN
is optional and the default is
'I'. If p is
a selection criterion (SELECT-OPTIONS),
an entry with LOW = f, OPTION
= op and SIGN = s is generated in the relevant
internal table.
If
p is a parameter (PARAMETERS),
the system treats all options like EQ, i.e. it always
transfers a single value. The field f is passed to the
parameter
p or to the field p-LOW
of the selection criterion (xxx in the above list) in internal format. If
p is not the same type as f, a type conversion is performed in the target report when data is passed.
Instead of the option EQ, you can also use = or INCL.
... WITH p BETWEEN f1 AND f2 SIGN s
Passes the range with the lower limit f1 and the upper
limit
f2 to the selection criterion p. As with variant
2, f1 and f2
are passed in internal format and the handling of SIGN
is also the same. The system thus generates an entry with LOW = f1,
HIGH = f2, OPTION =
BT and SIGN = s. When data is passed, a type conversion is performed.
... WITH p NOT BETWEEN f1 AND f2 SIGN s
Similar to 3, except that OPTION NB is generated instead of OPTION BT.
... WITH p IN sel
p is a selection criterion and sel is an internal
table which is compatible with p and contains the transfer
values. You are recommended to define
sel with RANGES.
The lines of sel must have exactly the same structure
as the lines of a selection table (see SELECT-OPTIONS).
... WITH SELECTION-TABLE seltab
seltab is an internal table with the structure RSPARAMS.
This variant allows you to set the names and contents of the parameters and selection options dynamically
at runtime.
You can use the function module RS_REFRESH_FROM_SELECTOPTIONS
to read the contents of the parameters and selection options of the current program into an internal
table
seltab with the structure RSPARAMS.
By using SUBMIT ... WITH SELECTION-TABLE seltab, you can then pass these values on directly.
... WITH FREE SELECTIONS texpr
Passes dynamic selections.
texpr is an internal table of the type RSDS_TEXPR (see type pool RSDS).
You can, for example, fill the object texpr in one of the following ways:
1. Combination of variant and WITH
DATA: RANGE_LANGU TYPE RANGE OF SY-LANGU,
RANGE_LANGU_WA
LIKE lINE OF RANGE_LANGU.
PARAMETERS: MSG_FR LIKE T100-MSGNR,
MSG_TO
LIKE T100-MSGNR.
MOVE: 'I' TO RANGE_LANGU_WA-SIGN,
'BT'
TO RANGE_LANGU_WA-OPTION,
'D' TO RANGE_LANGU_WA-LOW,
'I' TO RANGE_LANGU_WA-HIGH.
APPEND RANGE_LANGU_WA
TO RANGE_LANGU.
MOVE: 'EQ' TO RANGE_LANGU_WA-OPTION,
'E'
TO RANGE_LANGU_WA-LOW.
APPEND RANGE_LANGU_WA TO RANGE_LANGU.
SUBMIT REPORT00
USING SELECTION-SET 'VARIANT1'
WITH MSG BETWEEN MSG_FR AND MSG_TO
WITH LANGU IN RANGE_LANGU.
In
REPORT00, all parameters
and SELECT-OPTIONS
take their values from the variant
VARIANT1.Only MSG and LANGU take the values that are explicitly passed.
2. Combination of variant, WITH SELECTION-TABLE, and explicit WITH clauses.
DATA: SELTAB TYPE TABLE OF RSPARAMS,
SELTAB_WA LIKE
LINE OF SELTAB.
MOVE: 'LANGU' TO SELTAB_WA-SELNAME,
'S' TO
SELTAB_WA-KIND, " SELECT-OPTION
'I' TO
SELTAB_WA-SIGN,
'BT' TO SELTAB_WA-OPTION,
'D' TO SELTAB_WA-LOW,
'I' TO
SELTAB_WA-HIGH.
APPEND SELTAB_WA TO SELTAB.
MOVE: 'E' TO
SELTAB_WA-SIGN,
'EQ' TO SELTAB_WA-OPTION,
'F' TO SELTAB_WA-LOW,
SPACE TO
SELTAB_WA-HIGH.
APPEND SELTAB_WA TO SELTAB.
CLEAR SELTAB_WA.
MOVE: 'ARBGB' TO SELTAB_WA-SELNAME,
'P' TO SELTAB_WA-KIND, "
PARAMETER
'XX' TO SELTAB_WA-LOW.
APPEND
SELTAB_WA TO SELTAB.
SUBMIT REPORT00
USING SELECTION-SET
'VARIANT1'
WITH ARBGB CP 'A*'
WITH SELECTION-TABLE SELTAB
AND RETURN.
In
REPORT00, all parameters
and SELECT-OPTIONS
take their contents from the variant
VARIANT1except LANGU,
which takes its contents from SELTAB, and ARBGB, which takes the value that was explicitly passed.
Filling the Selection Screenof a Called Program