Cómo crear un archivo de subconsulta o secuencial con HOLD FORMAT SQL_SCRIPT

Cómo:

Cuando se utiliza en una solicitud basada en un origen de datos relacional, el comando HOLD FORMAT SQL_SCRIPT genera la declaración de SQL SELECT necesaria para ejecutar la consulta y la almacena como archivo con la extensión .sql, en la carpeta de la aplicación, junto con la pareja de archivo máster y archivo de acceso que describe el conjunto de respuestas de SQL.

Cuando se utiliza en una solicitud basada en cualquier otro tipo de origen de datos, el comando HOLD FORMAT SQL_SCRIPT ejecuta la consulta actual y almacena los valores recuperados como un archivo secuencial con la extensión .ftm, en la carpeta de la aplicación, junto con el archivo máster que describe los datos recuperados.

Puede emplear la salida de HOLD FORMAT SQL_SCRIPT como archivo de destino de la función DB_INFILE. Para más información sobre la función DB_INFILE, vaya al manual Cómo usar funciones.

Nota: Cuando ya tenga el archivo .sql y su archivo máster correspondiente, podrá personalizar este archivo utilizando las variables globales de Dialogue Manager. Debe declarar estas variables en el archivo máster. Para más información sobre cómo establecer parámetros para los archivos máster con variables globales, consulte el manualCómo describir datos con el lenguaje WebFOCUS .


Principio de página

x
Sintaxis: Cómo Cómo crear un archivo de script de SQL o secuencial con HOLD FORMAT SQL_SCRIPT
ON TABLE HOLD AS script_name FORMAT SQL_SCRIPT

donde:

script_name

Es el nombre del archivo .sql, o .ftm, creado como resultado del comando HOLD FORMAT SQL_SCRIPT.



Ejemplo: Cómo crear un archivo de script de SQL con HOLD FORMAT SQL_SCRIPT

La siguiente solicitud, basada en el origen de datos relacional WF_RETAIL, produce un archivo de script de SAL en la aplicación baseapp:

APP HOLD baseapp
TABLE FILE wf_retail
SUM REGION STATECODE
BY REGION NOPRINT BY STATECODE NOPRINT
WHERE REGION EQ 'Central' OR 'NorthEast'
WHERE STATECODE EQ 'AR' OR 'IA' OR 'KS' OR 'KY' OR 'WY' OR 'CT' OR 'MA' OR 'NJ' OR 'NY' OR 'RI'
ON TABLE HOLD AS RETAIL_SCRIPT FORMAT SQL_SCRIPT
END

WF_RETAIL es un origen de datos de ejemplo que se crea pulsando con el botón derecho sobre una aplicación, en la Consola Web del Servidor de informes, y seleccionando Nuevo, Ejemplos en el menú de contexto.

El resultado de esta solicitud es un archivo de script llamado retail_script.sql, y los correspondientes archivos máster y de acceso.

El archivo retail_script.sql contiene la siguiente declaración SQL SELECT:

SELECT   MAX(T11."REGION") AS E01,  MAX(T11."STATECODE") AS E02  FROM  wrd_dim_geography T11  WHERE  (T11."STATECODE" IN('AR', 'IA', 'KS', 'KY', 'WY', 'CT', 'MA', 'NJ', 'NY', 'RI')) AND  (T11."REGION" IN('Central', 'NorthEast'))  GROUP BY  T11."REGION", T11."STATECODE"

Éste es el archivo máster retail_script.sql:

FILENAME=RETAIL_SCRIPT, SUFFIX=DB2     , $
  SEGMENT=RETAIL_SCRIPT, SEGTYPE=S0, $
    FIELDNAME=REGION, ALIAS=E01, USAGE=A15V, ACTUAL=A15V,
      MISSING=ON, $
    FIELDNAME=STATECODE, ALIAS=E02, USAGE=A2, ACTUAL=A2,
      MISSING=ON, $

Éste es el archivo de acceso retail_script.acx:

 SEGNAME=RETAIL_SCRIPT, CONNECTION=CON1, DATASET=RETAIL_SCRIPT.SQL, $


Ejemplo: Cómo crear un archivo secuencial con HOLD FORMAT SQL_SCRIPT

La siguiente solicitud, basada en el origen de datos EMPLOYEE, crea un archivo secuencial que contiene los valores recuperados por la solicitud, junto con el archivo máster correspondiente:

APP HOLD baseapp 
TABLE FILE EMPLOYEE 
PRINT LAST_NAME FIRST_NAME 
WHERE DEPARTMENT EQ 'MIS' 
ON TABLE HOLD AS EMPVALUES FORMAT SQL_SCRIPT 
END

El archivo secuencial empvalues.ftm contiene los siguientes datos:

SMITH           MARY        JONES           DIANE       MCCOY           JOHN        BLACKWOOD       ROSEMARIE   GREENSPAN       MARY        CROSS           BARBARA     

Éste es el archivo máster empvalues.mas:

FILENAME=EMPVALUES, SUFFIX=FIX     , IOTYPE=BINARY, $ 
  SEGMENT=EMPVALUE, SEGTYPE=S0, $ 
    FIELDNAME=LAST_NAME, ALIAS=E01, USAGE=A15, ACTUAL=A16, $ 
    FIELDNAME=FIRST_NAME, ALIAS=E02, USAGE=A10, ACTUAL=A12, $

WebFOCUS