In diesem Abschnitt: |
Wenn Sie Formeln in Computercode kompilieren, führt dies zu einer schnelleren Verarbeitung.
Vorgehensweise: |
Es sind auf z/OS zwei Formel-Compiler verfügbar. Indem Sie den entsprechenden Befehl ausgeben, können Sie einen auswählen oder die Kompilierung von Formeln deaktivieren. Es können nicht beide Compiler für dieselbe Anfrage aktiviert sein:
Zu den Vorteilen des DEFINE-Compilers gehören:
Nachdem der systemeigene DEFINE-Compiler aufgerufen wurde, führt jede Anfrage, die eine DEFINE-Formel verwendet, dazu, dass die Formel kompiliert und dann in das System geladen wird. Das System führt für jeden Datensatz der Anfrage, der Berechnung benötigt, den erzeugten Code aus. Dieser Compiler ist am effektivsten mit TABLE-Anfragen, die eine große Anzahl DEFINE-Felder enthalten, und eine große Anzahl Datensätze lesen, da die Geschwindigkeit der Auswertung pro Datensatz in solchen Anfragen die zusätzliche Kompilierung und Ladeschritte ausgleicht.
Geben Sie den folgenden Befehl FOCPARM aus, eine FOCEXEC oder in der Befehlszeile:
SET DEFINES = {COMPILED|OLD}
Hierbei gilt:
Implementiert Formelkompilierung zur Ausführungszeit der Anfrage, und kompiliert nur die DEFINEs, die in der Anfrage verwendet werden.
Überlässt die Formelkompilierung der Steuerung des aktuellen SET COMPUTE-Werts. OLD ist der Defaultwert. Wenn Sie den Befehl SET DEFINES = OLD ausgeben, wird der Parameter COMPUTE automatisch auf NEW eingestellt.
Vorgehensweise: Referenz: |
Im Tab Computes:
Dies zeigt eine Dropdown-Liste an, die alle berechneten Werte für diesen Report enthält.
Dieser Vorgang zeigt die entsprechenden Informationen in der Kombobox Feld, der Dialogbox Format und Formelbox an.
Das Feld ist nicht mehr verfügbar.
SET COMPUTE = {NEW|OLD|NATV}
Hierbei gilt:
Kompiliert DEFINE-Berechnungen, wenn eine Anfrage ausgeführt wird.
Kompiliert DEFINE-Berechnungen nicht, wenn eine Anfrage ausgeführt wird. Es wird die alte Logik verwendet.
Kompiliert DEFINE-Berechnungen mit dem systemeigenen Compiler. Diese Einstellung wird auch aktiviert durch den Befehl SET DEFINES=COMPILED, welcher die Default-Einstellung ist.
Die folgenden Berechnungen werden nicht mit SET COMPUTE = NEW kompiliert:
Es sind zwei Formel-Compiler verfügbar, aber es kann für eine Anfrage jeweils nur einer aktiviert werden. Wenn Sie einen Compiler aktivieren, wird der andere automatisch deaktiviert:
Sie können daher einen der Compiler auswählen, indem Sie den Befehl SET DEFINES ausgeben. DEFINES=COMPILED wählt den neuen Compiler aus, DEFINES=OLD wählt den alten Compiler aus. Um Kompilierung zu deaktivieren, geben Sie SET COMPUTE=OLD aus.
Der neue Compiler wird empfohlen für TABLE-Anfragen, die eine große Anzahl DEFINE-Felder enthalten (besonders solche, die gepackte arithmetische oder Formeln oder Datumsformeln verwenden) und eine große Anzahl Datensätze lesen.
Wenn eine TABLE-Anfrage eine große Anzahl Datensätze abruft, oder wenn die DEFINE-Felder gepackte arithmetische Formeln (insbesondere mit langen gepackten Feldern) oder Datumsformeln verwenden, ist der neue Compiler wahrscheinlich besser geeignet.
Wenn keine Kompilierung möglich ist wegen Umgebungsbedingungen, wird die Verarbeitung ohne Kompilierung durchgeführt. Es wird keine Meldung erzeugt, dass die Kompilierung nicht stattgefunden hat. Um zu bestimmen, dass sie stattgefunden hat, geben Sie den Befehl ? COMPILE aus.
WebFOCUS |