CHECK - processing_block

Variants:

1. CHECK log_exp.

2. CHECK SELECT-OPTIONS.

Effect

Conditional exiting of a processing block. There are two options for the conditional exiting of processing blocks using CHECK.

Variant 1

CHECK log_exp.


Effect

If the statement CHECK is executed outside a loop and log_exp is incorrect, the statement terminates the current process block. You can specify any logical expression for log_exp.

The behavior of the runtime environment after exiting the processing block is described under Exiting Processing Blocks.

Note

SAP recommends to use this procedure with the statement CHECK only inside loops (see CHECK - Loop).

Variant 2

CHECK SELECT-OPTIONS.


Effect

In this way, you can use CHECK only in event blocks for reporting events GET but not in methods. Regardless of whether the statement is executed inside or outside a loop, the effect is the same.

The statement checks whether the content of theinterface working area that was filled for the the current GET event by the logical database fullfills the conditions in all selection tables that are associated with the current node of the logical database. The name of the node is statically taken from the next highest GET statement in the program. The following restrictions apply:

If the conditions in one of the selection tables are not fullfilled, the GET event block is exited. The behavior of the runtime environment is described under Exiting Processing Blocks.

Note

For performance reasons, the statement CHECK should only be used for checking the data selections during GET events if the selections provided by the logical database are not sufficient.

Example

Exiting a GET event block if the content of the components seatsmax and seatsocc of the interface working area sflight do not fullfill the conditions in the selection tables s_max or s_occ.

NODES sflight.
SELECT-OPTIONS: s_max FOR sflight-seatsmax,
                s_occ FOR sflight-seatsocc.
GET sflight.
  WRITE: / sflight-carrid, sflight-connid.
  CHECK SELECT-OPTIONS.
  WRITE: sflight-seatsmax, sflight-seatsocc.

Exceptions

Non-Catchable Exceptions