LE - Reaktion auf Limit-Überschreitung bei Verarbeitungsschleifen

#### Search Results

Search

# LE - Reaktion auf Limit-Überschreitung bei Verarbeitungsschleifen

Mit diesem Natural Profil- und Session-Parameter bestimmen Sie, was geschehen soll, wenn bei der Ausführung einer Verarbeitungsschleife das angegebene Limit (d.h. die maximale Anzahl der Schleifendurchläufe) bei einem Statement `READ`, `FIND` oder `HISTOGRAM` erreicht wird.

Mögliche Werte | `ON` | Die Schleife wird beendet, wenn das Limit erreicht ist. Das Programm wird dann mit dem auf die beendete Schleife folgenden Statement fortgesetzt. Nach Beendigung der Ausführung des Natural-Objekts, wird der Fehler NAT0957 (`Database loop limit reached with 'LE=ON'.`) ausgegeben. Anmerkung `LE=ON` gilt nur für Programme, die von einer in der Systemdatei `FUSER` abgelegten Library geladen werden, d.h. der Library `SYSTEM`, oder einer Library mit einem Namen, der nicht mit dem Präfix `SYS` anfängt.
`OFF` | Die Schleife wird beendet, wenn das Limit erreicht ist. Das Programm wird dann mit dem auf die beendete Schleife folgenden Statement fortgesetzt. Nach Beendigung der Ausführung des Natural-Objekts, wird keine Fehlermeldung ausgegeben.
Standard-Einstellung | `OFF`
Dynamische Angabe | ja
Angabe innerhalb der Session | ja | Gültige Statements: | `SET GLOBALS`
Gültiges Kommando: | `GLOBALS`
Programmierschnittstelle (API) | `USR1005N` | Siehe SYSEXT Utility im Dokumentensatz Debugger und AE-Dienstprogramme.

Anmerkungen:

1. Der Parameter `LE` gilt bei `READ`, `FIND` und `HISTOGRAM`-Statements, bei denen ein Limit angegeben ist (siehe Beispiel).
3. Das Limit kann entweder ein (mit dem `LIMIT`-Statement angegebenes) globales Limit oder ein schleifenspezifisch festgesetztes Limit sein.
4. In einer Natural-Session kann der Profilparameter `LE` durch den Session-Parameter `LE` überschrieben werden.

#### Beispiel:

    DEFINE DATA LOCAL
    1 EMPL-VIEW VIEW OF EMPLOYEES
      2 NAME
    END-DEFINE
    READ (10) EMPL-VIEW BY NAME
      WRITE NAME
    END-READ
    END

Bei `LE=OFF`: Nach 10 Datensätzen wird die Schleife ohne eine Meldung beendet.

Bei `LE=ON`: Nach 10 Datensätzen wird die Schleife mit einer Fehlermeldung NAT0957 (`Database loop limit reached with 'LE=ON'`) beendet.