Cómo compilar expresiones

En esta sección:

La recopilación de expresiones en código de máquinas ofrece procesamiento más rápido.


Principio de página

x
Cómo compilar expresiones usando el parámetro DEFINES

Cómo:

Hay dos recopiladores de expresiones disponibles en z/OS. Al emitir el comando correspondiente, puede seleccionar uno de ellos o deshabilitar la recopilación de expresiones. No se pueden activar ambos compilados en la misma solicitud:

Entre los beneficios del compilador DEFINE se encuentran:

Después de haber invocado el compilador DEFINE nativo, cualquier solicitud que use una expresión DEFINE provoca que se compile la expresión y luego se cargue al sistema. Para cada registro de la solicitud que necesita cálculo, el sistema ejecuta el código generado. Este compilador es más efectivo con solicitudes TABLE que incluyen un mayor número de campos DEFINE y lee un mayor número de registros porque la velocidad de la evaluación por registro en tales solicitudes equilibra la recopilación extra y los pasos de carga.



x
Sintaxis: Cómo Compilar expresiones DEFINE

Emite el siguiente comando FOCPARM, un FOCEXEC o en la línea de comandos:

SET DEFINES = {COMPILED|OLD}

donde:

COMPILED

Implementa la recopilación de expresiones en tiempo de ejecución de solicitud, sólo recopila aquellos DEFINE que se utilizan en la solicitud.

OLD

Deja la expresión de recopilación al control del valor SET COMPUTE actual. OLD es el valor predeterminado. Si emite el comando SET DEFINES = OLD, automáticamente se establece el parámetro COMPUTE a NEW.



x
Sintaxis: Cómo Solicitar expresiones DEFINE compiladas

Emite el siguiente comando para consultar la configuración actual:

? SET DEFINES

Principio de página

x
Cómo compilar expresiones usando el parámetro COMPUTE

Cómo:

Referencia:



x
Sintaxis: Cómo Controlar la compilación de expresiones usando el parámetro COMPUTE
SET COMPUTE = {NEW|OLD|NATV}

donde:

NEW

Compila los cálculos DEFINE cuando se ejecuta una solicitud.

OLD

No recopila los cálculos DEFINE cuando se ejecuta una solicitud. Se usa la lógica antigua.

NATV

Compila cálculos DEFINE usando el compilador nativo. También se activará esta función usando el comando SET DEFINES=COMPILED, que es la propiedad por defecto.



x
Referencia: Notas sobre el uso de SET COMPUTE

Los cálculos siguientes no han sido compilados con SET COMPUTE = NEW:



x
Referencia: Interacción entre SET DEFINES y SET COMPUTE

Dos compiladores de expresiones están disponibles, pero sólo se puede activar uno para cualquier solicitud. Al activar cualquier compilador automáticamente desactiva el otro compilador:

Por lo tanto, puede seleccionar cualquier compilador emitiendo el comando SET DEFINES. DEFINES=COMPILED selecciona el compilador nuevo, mientras que DEFINES=OLD selecciona el antiguo. Para apagar la recopilación, emita SET COMPUTE=OLD.

Se recomienda el compilador nuevo para solicitudes TABLE que incluyen un número alto de campos DEFINE (especialmente aquellos que utilizan aritmética empaquetada o expresiones de fecha) y leen un número alto de registros.

Si una solicitud TABLE recupera un alto número de registros o si los campos DEFINE usan aritmética condensada (especialmente con campos condensados largos) o expresiones de fechas, el nuevo recopilador probablemente ofrecerá los mejores beneficios.



x
Referencia: Notas sobre el uso para DEFINEs compilados

Si la recopilación no es posible por condiciones de entorno, se maneja el procesamiento sin recopilación. No se genera ningún mensaje que indique que la recopilación no se llevó a cabo. Para determinar si se llevó a cabo, emita la ? Comando COMPILE.


WebFOCUS