Types of FI-SL Statements 

Using Boolean Logic, you can create different types of statements in the FI-SL application component. This statement is the smallest unit of an FI-SL statement.

You can create simple statements that use only one of the statement types or you can create complex statements that use combinations of the statement types. For more information about using these statements, see Syntax Rules for Boolean Statements .

Specific Values

In this type of statement, you refer to a specific value or values.

COBL-RACCT = ’50000100’

In this example, the account must be 50000100.

Set Names

In this type of statement, you refer to a basic, single-dimension, or multi-dimension set name that contains the values you want to use in the statement.

Beginning with Release 4.0A, sets are no longer table-dependent. The set name and the table are no longer the key fields that uniquely identify the set. Sets are uniquely identified by the set name.

The format used to enter sets in statements has therefore changed, depending on whether you use the new syntax rules for Release 4.0 or the syntax rules that existed in releases prior to Release 4.0. You only use the old syntax rules when you enter a statement in a rule directly (that is, not using the Formula Builder).

For more information about the format for entering sets using the new syntax rules, see step four in Syntax Rules for Boolean Statements .

For more information about the format for entering sets using the old syntax rules, see step five in Old Syntax Rules for Boolean Statements .

If you enter a set name that is not unique (that is, there is more than one set in the system that uses this name), the system displays a dialog box in which you select the set that you want to use.

Sets that you created in Releases 3.0 and 3.1 are automatically converted into the new set structures for Release 4.0. You do not need to recreate or change your existing sets. The new sets are fully compatible with Release 4.0 and you can still use them in validation and substitution statements and rules.

To improve system performance, you should use basic or single-dimension sets, rather than long lists of Boolean statements or user exits.

You can refer to a basic or single-dimension set in a statement even if the set has been created for a table that is not supported by the statement’s Boolean class. You cannot use this function with multi-dimension sets.

In the following example, the basic set ACCOUNTS is created using the table BSEG, but the field HKONT refers to table COBL. The statement is true if the account is found in the set ACCOUNTS.

COBL-HKONT IN ACCOUNTS

This is the only format that you can use for basic and single-dimension sets using the new syntax rules.

<COBL> $HKONT IN <BSEG> ACCOUNTS

Optional table name using the old syntax rules

You can also search for partial values in a set. If the value is found in the set, the statement is true.

If your statements and rules are still stored in table T890, you cannot search for partial values in a set or compare set fields used in different tables. It is recommended that you use report RGUGBR10 to switch to generated rules. For more information, see Using the Rule Manager Reports

To improve system performance, you should use multi-dimension sets when you want the system to check that a transaction contains two or more values that use different dimensions (for example, a specific cost center and account). Using one multi-dimension set is more efficient than using two basic or single-dimension sets connected with the AND operator.

The following statement uses the multi-dimension set ACCTSCNTRS that contains account 5000010 (dimension Account) and cost center 100 (dimension Cost Center).

IN ACCTSCNTRS

Using the new syntax rules

IN <GLT1> ACCTSCNTRS

Optional table name using the old syntax rules

 

For more information about creating sets, see Set Creation .

TRUE or FALSE Statement

In this type of statement, you simply state that a statement is TRUE or FALSE. It is possible to directly declare a statement as TRUE or FALSE (for example, as a substitute for a set name that will be inserted later).

It is not recommended that you use TRUE or FALSE statements when you enter a statement as a ledger selection condition.

User Exits

You can also refer to a user exit within a statement. The user exit accesses a background program; this program is usually more detailed than the statement, allowing for more extensive editing of data. For more information, see User Exits in Validations/Substitutions/Rules .

You cannot define user exits in rules that are stored in table T890. It is recommended that you use report RGUGBR10 to convert table T890 rules to generated rules. For more information, see Using the Rule Manager Reports .

Field Comparisons

You can also compare field values in a statement.

COBL-BUDAT <> SY-DATUM

In this example, when the date in the BUDAT field is not the same as the date in the DATUM field, the statement is TRUE.

When comparing fields, you can also instruct the system to check or compare only part of a field. For more information, see step one in Syntax Rules for Boolean Statements .

You can also compare text patterns in your statements by using the keyword LIKE.

COBL-KOSTL LIKE ’*1*1’

In this example, the * sign represents any combination of characters. The system searches for all cost centers (field KOSTL) where the value 1 is used after the first and second combination of characters (for example, 161, 121, and 2101).

Within text pattern searches, you can also use the + sign to represent a single character.

If your statements and rules are still stored in table T890, you cannot use text patterns in your statements. It is recommended that you use report RGUGBR10 to convert table T890 rules to generated rules. For more information, see Using the Rule Manager Reports.

Mathematical Processing

With mathematical processing, you can evaluate and compare two mathematical expressions. The result of the comparisons is either true or false.

AVG ( BSEG-DMBTR ) < 100000

In this example, the system checks that the average amount in local currency is less than 100000.

If your statements and rules are still stored in table T890, you cannot use mathematical processing in your statements. It is recommended that you use report RGUGBR10 to convert table T890 rules to generated rules. For more information, see Using the Rule Manager Reports.