En esta sección: |
Varios informes requieren resultados desarrollados en informes previos. Esto sólo se puede cumplir si se proporciona un lugar para guardar valores intermediarios. Un ejemplo es la necesidad de calcular la ganancia neta en un extracto de ingresos antes de calcular el capital en un balance. FML puede guardar filas seleccionadas desde uno o más modelos al fijarlos a un archivo de trabajo. A continuación, puede recoger las filas publicadas desde el archivo de trabajo y volver a usarlas.
El archivo de trabajo predeterminado es FOCPOST. Este es un archivo delimitado por comas, desde el cual puede informar directamente si hay un archivo máster FOCPOST disponible. Para utilizar el archivo de trabajo en una solicitud, debe asignar un nombre físico al FOCPOST ddname antes de Ejecute el informe que fija los datos y debe asignar de nuevo antes de Ejecute el informe que recoge los datos.
Puede asignar el nombre físico al archivo emitiendo un comando FILEDEF en Windows, y UNIX, o un comando TSO ALLOCATE o DYNAM ALLOCATE en z/OS, antes de ejecutar la solicitud. Puede crear un comando FILEDEF mediante el Asistente de asignación.
Aunque no puede preparar un informe FML completo usando los datos que suministra directamente en su solicitud, puede preparar un informe completo usando los datos almacenados en un archivo de trabajo delimitado por comas.
Cómo: |
Puede guardar cualquier fila TAG, RECAP o DATA al fijar la salida a un archivo. Puede usar estas filas como si proviniesen de una fila DATA.
Se procesa la fila de la forma usual en el informe, dependiendo de sus otras opciones y después se fija. Primero se escribe la etiqueta de la fila, seguida por los valores numéricos de las columnas, cada uno separado por una coma y terminando con el carácter final ($). Para más información, consulte Cómo fijar filas a un archivo de trabajo.
Nota: Sólo se fijan los campos mostrados actualmente en la salida del informe. Los campos que no aparezcan impresos (por ejemplo, los campos especificados con la opción NOPRINT, campos extra creados al cambiar el formato de los campos en la solicitud o los campos ímplicitos por su uso en un cálculo) no quedan fijados.
La sintaxis para guardar cualquier fila TAG, RECAP o DATA es:
POST [TO ddname]
donde:
Es el nombre lógico que asigna al archivo de trabajo donde fija los datos.
Añada esta sintaxis a cualquier fila que desea fijar al archivo de trabajo.
La siguiente solicitud crea un informe FML y fija dos filas de etiquetas en el archivo de trabajo LEDGEOUT.
FILEDEF LEDGEOUT DISK [APP]\LEDGEOUT.DAT
DEFINE FILE LEDGER CUR_YR/I5C=AMOUNT; LAST_YR/I5C=.87*CUR_YR - 142; END
TABLE FILE LEDGER
SUM CUR_YR LAST_YR
FOR ACCOUNT
1100 LABEL AR POST TO LEDGEOUT OVER
1200 LABEL INV POST TO LEDGEOUT
END
La salida se muestra en la siguiente imagen.
Puede recuperar filas fijadas desde cualquier archivo de trabajo y las utiliza como si se proporcionaran en una fila DATA al añadir la frase a continuación a una solicitud FML.
DATA PICKUP [FROM ddname] id1 [OR id2 ...] [LABEL label] [AS 'text']
donde:
Es el nombre lógico del archivo de trabajo desde dónde recupera los datos.
Es la etiqueta que se le asignó en el archivo de trabajo a la fila fijada de datos que ahora se recoge.
Es la etiqueta que desea asignar a los datos que recoge.
Aunque no es obligatorio, puede hacer que la etiqueta asignada a los datos elegidos coincida con la etiqueta (Id.) de los datos fijados.
Puede incluir frases LABEL y AS, pero no funciona WHEN EXISTS.
Nota: Los campos recuperados se mapean a todos los campos (imprimidos o no) en el repositorio de la memoria del informe (matriz interna). Si la matriz contiene columnas que no se corresponden con los campos del archivo fijado, puede ocurrir un alineamiento incorrecto de los valores recuperados. Por ejemplo, si reformatea un campo en la solicitud PICKUP, ese campo quedará representado por dos columnas en la matriz interna. Sin embargo, el archivo fijado sólo tendrá un valor que represente a ese campo y los valores recuperados no se mapearán correctamente a las columnas asociadas en la matriz.
En el ejemplo siguiente, los datos en el origen de datos LEDGER y en el archivo de trabajo LEDGEOUT se utilizan en el cálculo RECAP. Para ver cómo se generó este archivo, consulte Cómo fijar filas a un archivo de trabajo.
Sugerencia: Debe asignar un nombre lógico al archivo emitiendo un comando FILEDEF en Windows y UNIX, o un comando DYNAM ALLOCATE en z/OS, antes de ejecutar la solicitud. Puede crear un comando FILEDEF mediante el Asistente de asignación.
DEFINE FILE LEDGER CUR_YR/I5C=AMOUNT; LAST_YR/I5C=.87*CUR_YR - 142; END
TABLE FILE LEDGER SUM CUR_YR LAST_YR FOR ACCOUNT 1010 TO 1030 AS 'CASH' LABEL CASH OVER DATA PICKUP FROM LEDGEOUT AR AS 'ACCOUNTS RECEIVABLE' LABEL AR OVER DATA PICKUP FROM LEDGEOUT INVAS 'INVENTORY' LABEL INV OVER BAR OVER RECAP CUR_ASSET/I5C = CASH + AR + INV; END
La salida se muestra en la siguiente imagen.
Se puede usar la línea a continuación para recoger la suma de las dos cuentas desde LEDGEOUT.
DATA PICKUP FROM LEDGEOUT AR OR INV AS 'ACCTS REC AND INVENTORY'
Nota: Dado que las filas en un archivo PICKUP se almacenan en formato delimitado por comas, se pueden introducir ya sea desde una fijación previa o directamente por un usuario.
WebFOCUS |