CHECK ( ABAP Keyword) introduction & Details
CHECK - within loops
Basic form
CHECK logexp.
Effect
CHECK evaluates
the subsequent logical expression . If it is true, the processing continues with
the next statement.
In loop structures like
DO ...
ENDDO
WHILE ... ENDWHILE
LOOP ... ENDLOOP
SELECT ...
ENDSELECT
CHECK with a negative outcome terminates the current loop
pass and goes back to the beginning of the loop to start the next pass, if there
is one.
In structures like
FORM ... ENDFORM
FUNCTION ...
ENDFUNCTION
MODULE ... ENDMODULE
AT
CHECK with a negative
outcome terminates the routine or modularization unit.
If CHECK is not in
a loop or a routine or a modularization unit, a negative logical expression
terminates the current event. In contrast, the statement REJECT terminates the
current event, even from loops or subroutines.
Note
If a CHECK
produces a negative result in a GET event , the GET events in subordinate tables
of the logical database are not processed either.
Related CONTINUE , EXIT ,
REJECT , STOP
CHECK - special for reports with logical databases
Variants
1. CHECK sel.
2. CHECK
SELECT-OPTIONS.
Variant 1
CHECK sel.
Effect
Checks the
selection criterion requested by the statement SELECT-OPTIONS sel ...
.
This statement is equivalent to f IN sel , if sel was defined by
SELECT-OPTIONS sel FOR f and can be used anywhere in logical
expressions
If the result of this check is negative, the processing in
this event is terminated and the GET events for any subordinate database tables
are not processed either.
This variant of the CHECK statement should be
used only if the logical database for the corresponding table does not support
dynamic selections (see CHECK SELECT-OPTIONS ), or SELECT-OPTIONS with the
addition NO DATABASE SELECTION . Otherwise, the relevant record is not read from
the database and made available to the program.
Variant 2
CHECK
SELECT-OPTIONS.
Effect
Called only after a GET event.
This
statement checks all the selections for SELECT-OPTIONS where the reference field
after FOR belongs to the current table dbtab (specified after GET . However,
this applies only if the logical database for dbtab does not support dynamic
selections . Otherwise, the selections are passed directly to the logical
database (with the exception: addition " NO DATABASE SELECTION " to
SELECT-OPTIONS ).
This variant of the CHECK statement only makes sense if
the logical database does not support dynamic selections for the corresponding
table or SELECT-OPTIONS are defined with the addition " NO DATABASE SELECTION
".
You can determine from the ABAP/4 Development Workbench whether
dynamic selections are defined and, if so, for which logical database tables by
selecting Development -> Programming environ. -> Logical databases
followed by Extras -> Dynamic selections .
Example
The logical
database F1S of the demo flight reservation system contains the tables SPFLI
with, and the table SFLIGHT without, dynamic
selections.
TABLES:
SPFLI,
SFLIGHT.
SELECT-OPTIONS:
SF_PRICE FOR SFLIGHT-PRICE,
SP_CARR FOR
SPFLI-CARRID,
SP_FROM FOR SPFLI-CITYFROM NO DATABASE SELECTION,
SP_DEPT
FOR SPFLI-DEPTIME.
Since dynamic selections are defined with the
table SPFLI , but not with the table SFLIGHT , the following procedure
applies:
...
GET SFLIGHT.
CHECK SELECT-OPTIONS.
This
CHECK statement is equivalent to the following statement:
CHECK
SF_PRICE.
With
GET SPFLI.
CHECK
SELECT-OPTIONS.
the CHECK statement is equivalent to the following
statement:
CHECK SP_FROM.
Note
With CHECK
SELECT-OPTIONS , fields from superior tables in the database hierarchy are not
(!) checked.
Note
Runtime errors
CHECK_SELOPT_ILLEGAL_OPTION :
Wrong " OPTION " in SELECT-OPTIONS or RANGES table
CHECK_SELOPT_ILLEGAL_SIGN
: Wrong " SIGN " in SELECT-OPTIONS or RANGES table
Related 10 ABAP Syntax Tutorials
Most readed SAP Tutorials
- WRITE - Output to a list ( SAP ABAP Keyword)
WRITE ( Output to a list ) is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details. - List of SAP HR TABLES and Infotypes tables
Detailed full list of tables and infotypes used in SAP HR module. - List of SAP MM Transaction codes
This documentation covers the details of SAP MM Transaction codes - SELECT-OPTIONS ( SAP ABAP Keyword)
SELECT-OPTIONS is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details. - FI Accounts Receivable and Accounts Payable | SAP FI PDF manual
The following topics are an introduction to the Accounts Receivable and Accounts Payable application components. - SAP MM Process Flow
The typical procurement cycle for a service or material consists of the following phases: - SELECT clause ( SAP ABAP Keyword)
SELECT clause is a keyword used in SAP ABAP programming.This tutorial covers its introduction & syntax details.
Latest Added SAP documents
- 9KE9 Transaction code
Details about SAP transaction code 9KE9 - 9KE8 Transaction code
Details about SAP transaction code 9KE8 - 9KE7 Transaction code
Details about SAP transaction code 9KE7 - 9KE6 Transaction code
Details about SAP transaction code 9KE6 - 9KE5 Transaction code
Details about SAP transaction code 9KE5 - 9KE4 Transaction code
Details about SAP transaction code 9KE4 - 9KE3 Transaction code
Details about SAP transaction code 9KE3 - 9KE2 Transaction code
Details about SAP transaction code 9KE2 - 9KE1 Transaction code
Details about SAP transaction code 9KE1 - 9KE0 Transaction code
Details about SAP transaction code 9KE0