sapdev logo background
sapdev logo sapdev logo
Comments

SAP LOGEXP SELECT OPTION documentation, setup help and example usage



Return to SAP documentation index


ARTICLE

rel_exp - Table-Like Relational Operator IN

Syntax
ABAP_KEY ... operand [NOT] IN seltab ...

Effect
In a comparison expression with relational operator IN , the conditions of a selection table or a table with this layout are checked, that is whether an operand
operand meets the conditions of the rows in the selection table or, with addition NOT , does not meet them. The table-like comparison expression is equivalent to a join using
binary or ternary comparison expressions whose number is determined by the number of rows in the internal table.
As a selection table seltab , any internal table can be specified whose row type matches that of a selection table, or a functional method with the corresponding type of return value. This includes, in particular, ranges tables . The selection table can be of any table category. For the layout of a selection table, refer to section SELECT-OPTIONS . The evaluation of a selection table requires the table to contain the valid values specified in that section in the columns sign and option . If the selection table contains invalid values, an exception that cannot be handled is raised. If the selection table is initial, the comparison expression is always true.
Each row in a non-initial selection table is included in the join using one of the following comparison expressions. Depending on the operator in the column option , this involves a comparison between two operands using a binary relational operator
or the delimitation of an interval using the ternary operator BETWEEN .
  • The operators "EQ" , "NE" , "GE" , "GT" ,

  • "LE" , and "LT" produce a comparison of sizes:

    ... operand {EQ|NE|GE|GT|LE|LT} seltab-low ...

    The relational operator corresponds to the content of the column
    seltab-option and as the right operand, the content of column
    seltab-low is used.

  • The operators "CP" and "NP" produce a string comparison:


  • ... operand {CP|NP} operand

    The relational operator matches the content of the column
    seltab-option and the content of the columns seltab-low and seltab-high is concatenated as the right operand.

  • The operators "BT" , "NB" produce a delimitation of an interval:


  • ... operand [NOT] BETWEEN seltab-low AND seltab-high ...

    The comparison is executed without addition NOT , if the content of the column seltab-option is "BT" , and with NOT , if it is "NB" . For the interval boundaries, the content of the columns seltab-low and seltab-high is used.
    operand is a general expression position and the usual comparison rules apply to operand and the columns low and high
    of the selection table. The comparison expressions of the individual rows are joined as a logical expression in accordance with the following hierarchy:
    The expressions of all rows that contain "I" in the column
    sign are joined using OR . If there are no rows that contain "E" in the column sign , this represents the entire logical expression.

    The expressions of all rows that contain "E" in the column
    sign are joined using OR and then negated using NOT . If there are no rows that contain "I" in the column sign , this represents the entire logical expression.

    If the content "I" and the content "E" are both in the column sign , AND is used to join the logical expression that results from step 1 with the logical expression from step 2


    Notes
  • These rules above can be interpreted in such a way that the rows containing "I" or "E" in the column sign describe two value sets. The set for "I" is the inclusive set, the set for

  • "E" is the exclusive set. By subtracting the exclusive set from the inclusive set, a result set is calculated that contains all values for which the entire logical expression is true.
  • The operator IN is, due to its implementation using binary relational operators , not suitable for selecting natural-language text content.

  • If the selection table seltab was declared using the statement SELECT-OPTIONS seltab for the data object operand , it is possible to specify the comparison expression in an obsolete short form .


  • Example
    See Selection Tables in Relational Expressions
    .
    Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved




    LOGEXP_RULES_OPERANDS_STRUC
    LOGEXP_STRINGS




    comments powered by Disqus