LT - Limit für Verarbeitungsschleifen

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

Mögliche Werte

1 - 2147483647
0

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.

Anmerkung:
Innerhalb einer Session: 0 bis n; dabei ist n = Wert des Profilparameters LT beim Start der Session.

Standard-Einstellung 99999999  
Dynamische Angabe yes  
Angabe innerhalb der Session yes  
Gültige Statements SET GLOBALS

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 gesetzt wurde.

Gültiges Kommando GLOBALS
Programmierschnittstelle (API) USR1005N Siehe SYSEXT Utility in der Debugger und Dienstprogramme (Utilities)-Dokumentation.

Anmerkungen:

  1. Dieses Limit gilt für alle Statements, mit denen Datensätze aus der Datenbank gelesen werden; d.h., Statements, die eine Verarbeitungsschleife auslösen, wie zum Beispiel READ, FIND, HISTOGRAM oder SELECT, und Statements, mit denen nur ein einzelner Datensatz gelesen wird, wie zum Beispiel FIND UNIQUE, FIND NUMBER, FIND FIRST, GET (SAME) und SELECT SINGLE.
  2. 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.
  3. 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 jedoch 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.
  4. 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.
  5. In einer Natural-Session kann die Einstellung des Profilparameters LT mit dem Session-Parameter LT überschrieben werden.