Version 4.2.6
 —  Parameter-Referenz  —

LT - Limit for Processing Loops

Limit für Verarbeitungsschleifen

Mit diesem Natural Profil- und Session-Parameter können Sie das allgemeine Limit für Verarbeitungsschleifen in Natural-Programmen bestimmen, d.h. wieviele Datensätze eine Verarbeitungsschleife in einer Natural-Anwendung maximal verarbeiten darf.

Dieses Limit gilt für alle Statements, mit denen Datensätze aus der Datenbank gelesen werden, d.h.:

Alle gelesenen Datensätze werden gezählt und das Ergebnis dieser Zählung wird mit dem im LT-Parameter gesetzten Wert verglichen. Hierbei werden alle gelesenen Datensätze mitgezählt, auch solche, die aufgrund einer WHERE-Klausel eines FIND-, READ- oder HISTOGRAM-Statements zurückgewiesen und nicht weiterverarbeitet werden. Das mit dem LT-Parameter gesetzte Limit hat keine Auswirkung auf die Statements STORE, UPDATE, DELETE, END TRANSACTION und BACKOUT TRANSACTION.

Wird ein Datensatz von der Datenbank gelesen, wird die Anzahl der gelesenen Datensätze erhöht, bevor sie mit dem Wert des LT-Parameters verglichen wird. Übersteigt der erhöhte Zählwert den aktuellen LT-Wert, wird der Natural-Fehler NAT1003 (Global limit for database calls reached) ausgegeben. Der Wert der gezählten gelesenen Datensätze wird immer dann auf Null gesetzt, wenn ein Natural-Programm auf Level 1 gestartet wird. Der Wert wird allerdings nicht zurückgesetzt, wenn das Programm auf Level 1 ein anderes Natural-Objekt aufruft (weitere Informationen hierzu siehe Mehrere Stufen (Levels) aufgerufener Objekte im Leitfaden zur Programmierung). Deshalb wird mit dem LT-Parameter die Anzahl der Datensätze begrenzt, die von einem Level 1-Programm und von den Objekten gelesenen wurden, die von diesem Programm auf einem anderen Level als Level 1 aufgerufen wurden.

Wird der Wert des LT-Parameters dynamisch in einem Programm mittels einem SET GLOBALS LT=n-Statement geändert, wird der neue Limit-Wert beim nächsten Statement wirksam, das einen Datensatz von der Datenbank liest.

In einer Natural-Session kann der Profilparameter LT durch den Session-Parameter LT überschrieben werden.

Mögliche Werte 0 - 2147483647

In einer Session: 0 bis n

(n = Wert des Profilparameters LT beim Start der Session)

Maximale Anzahl der Datensätze, die in einer gegebenen Verarbeitungsschleife gelesen werden können.

Hierbei werden alle gelesenen Datensätze mitgezählt, auch solche, die aufgrund einer WHERE-Klausel zurückgewiesen und nicht weiterverarbeitet werden.

LT=0 legt fest, dass für Verarbeitungsschleifen kein Limit gelten soll.

Standard-Einstellung 99999999  
Dynamische Spezifikation ja  
Spezifikation in Session ja Gültige Statements: SET GLOBALS, siehe Anmerkung.
Gültiges Kommando: GLOBALS, siehe Anmerkung.
Programmierschnittstelle (API) USR1005N Siehe SYSEXT - Natural Application Programming Interfaces in der Utilities-Dokumentation.

Anmerkung:
Wird der LT-Parameter mit einem SET GLOBALS-Statement oder einem SET GLOBALS-Systemkommando benutzt, kann der einstellbare Limit-Wert nicht größer als der LT-Wert sein, der im Natural-Parametermodul NATPARM gesetzt wurde.

Seitenanfang