Cómo: |
Puede proporcionar sus propias rutinas de cálculo en filas RECAP para realizar cálculos con propósitos especiales; una característica útil cuando dichos cálculos son matemáticamente complejos o requieren extensas tablas de consulta.
Las funciones escritas por el usuario se codifican como subrutinas en un lenguaje que admita un proceso de llamada, como FORTRAN, COBOL, PL/1, y BAL. Para más información sobre cómo crear sus propias funciones, consulte el manual Cómo usar las funciones.
RECAP calcname[(s,e,i)][/format]=function (input1,...,inputn,'format2');
donde:
Es el nombre que le asigna al valor calculado.
Especifican un valor de inicio, fin e incremento, para la columna en que desea que aparezca el valor. Si se omite, el valor aparece en todas las columnas.
El formato del cálculo es opcional. El formato de la columna es el predeterminado. Si el cálculo consta de sólo una subrutina, asegúrese de que el formato del valor de salida de la subrutina (format2) concuerde con el formato del cálculo. Si el formato del cálculo es mayor que el ancho de la columna, el valor aparece en la columna como asteriscos (*).
Es el nombre de la función, hasta ocho caracteres de longitud. Debe diferenciarse de cualquier etiqueta de fila y no puede contener ninguno de los siguientes caracteres especiales:
= -, / ()
Son los argumentos de entrada para llamar a la función. Pueden incluir constantes numéricas, literales alfanuméricos, notación de referencias de filas y columnas, notación E o etiquetas, o nombres de otros cálculos RECAP.
Asegúrese de que los valores que se pasan a la función concuerden en número y en tipo con los argumentos codificados en la función.
Es el formato del valor de devolución, que se debe poner entre comillas solas.
Supongamos que en su recopilación privada de funciones tiene una función llamada INVEST (INVEST no está disponible en la biblioteca que le proporcionamos) y calcula un monto sobre la base de efectivo en mano, total de bienes y la fecha actual. Para crear un informe que imprima una cuenta de bienes de la empresa y calcule cuánto dinero tiene a su disposición la empresa para invertir, debe crear una solicitud de informe que invoque la función INVEST.
La fecha actual se obtiene de la variable de sistema &YMD. La opción NOPRINT a su lado impide que los datos aparezcan en el informe. La fecha se usa únicamente como entrada para la siguiente declaración RECAP.
La solicitud es:
TABLE FILE LEDGER
HEADING CENTER
"ASSETS AND MONEY AVAILABLE FOR INVESTMENT </2"
SUM AMOUNT ACROSS HIGHEST YEAR
IF YEAR EQ 1985 OR 1986
FOR ACCOUNT
1010 AS 'CASH' LABEL CASH OVER
1020 AS 'ACCOUNTS RECEIVABLE' LABEL ACR OVER
1030 AS 'INTEREST RECEIVABLE' LABEL ACI OVER
1100 AS 'FUEL INVENTORY' LABEL FUEL OVER
1200 AS 'MATERIALS AND SUPPLIES' LABEL MAT OVER
BAR OVER
RECAP TOTCAS = CASH+ACR+ACI+FUEL+MAT; AS 'TOTAL ASSETS' OVER
BAR OVER
RECAP THISDATE/A8 = &YMD; NOPRINT OVER
RECAP INVAIL = INVEST(CASH,TOTCAS,THISDATE,'D12.2'); AS
'AVAIL. FOR INVESTMENT' OVER
BAR AS '='
END
La salida se muestra en la siguiente imagen.
WebFOCUS |