Funciones Financieras
PAYMENT( ) (Función)
Devuelve el importe de cada pago periódico de un préstamo a interés fijo.
PAYMENT(nPrincipal, nInterestRate, nPayments)
Parámetros
- nPrincipal
- Especifica el principal inicial del préstamo.
- nInterestRate
- Especifica el tipo de interés fijo por periodo. Si en el préstamo se hacen los pagos mensualmente pero el tipo de interés es anual, divida el tipo de interés anual entre 12.
- nPayments
- Especifica el número total de pagos que se realizarán en el préstamo.
Observaciones
PAYMENT( ) supone un tipo de interés periódico constante y que los pagos se hacen al final de cada periodo.
Ejemplo
STORE 100000 to gnPrincipal && $100,000 beginning principal
STORE .105/12 TO gnInterest && 10.5% annual interest rate
STORE (20*12) TO gnPayments && 20 years of monthly payments
CLEAR
? PAYMENT(gnPrincipal, gnInterest, gnPayments) && Displays 998.38
CALCULATE (Comando)
Realiza operaciones financieras y estadísticas en campos de una tabla o expresiones que utilicen campos.
CALCULATE eExpressionList [Scope] [FOR lExpression1] [WHILE lExpression2]
[TO VarList | TO ARRAY ArrayName] [NOOPTIMIZE]
[IN nWorkArea | cTableAlias]
Parámetros
- eExpressionList
- Especifica las expresiones que pueden contener cualquier combinación de las siguientes funciones:AVG(nExpression)CNT( )MAX(eExpression)MIN(eExpression)NPV(nExpression1, nExpression2 [, nExpression3])STD(nExpression)SUM(nExpression)VAR(nExpression)Las funciones de la lista eExpressionList están separadas con comas. Estas funciones son específicas de CALCULATE y se describen detalladamente más adelante en esta sección. No deben confundirse con funciones independientes de nombre similar. Por ejemplo, CALCULATE MIN( ) no es lo mismo que MIN( ).
Ejemplo
CLOSE DATABASES OPEN DATABASE (HOME(2) + 'data\testdata') USE orders && Open Orders table SET TALK ON CLEAR CALCULATE AVG(order_amt), MIN(order_amt), MAX(order_amt) CALCULATE STD(order_amt), VAR(order_amt) TO gnStd, gnVar
nExpression1 es la tasa de interés expresada como valor decimal.
nExpression2 es un campo, expresión de campo o expresión numérica que representa una serie de flujos de caja. Cada flujo de caja puede ser positivo o negativo. En los casos en que nExpression2 sea un campo, el valor del campo en cada registro de la tabla se considerará un flujo de caja.
nExpression3 es una inversión inicial opcional. Si no se incluye la inversión inicial, se supondrá que ésta ocurre al final del primer período. Esta inversión inicial es el primer registro del campo y es negativa para representar una retirada de caja.
Sólo se incluyen en el resultado los registros que cumplan las condiciones de Scope y/o de las cláusulas opcionales FOR o WHILE.
Funciones matemáticas
% (Operador)
Devuelve el resto que se obtiene de dividir una expresión numérica por otra expresión numérica.nDividend % nDivisor
Parámetros
- nDividend
- Especifica el dividendo (la expresión numérica que se divide). El número de decimales de nDividend determina el número de decimales del resultado.
- nDivisor
- Especifica el divisor (la expresión numérica que divide al dividendo nDividend). Se devolverá un número positivo sinDivisor es positivo y un número negativo si nDivisor es negativo. nDivisor no puede ser cero.
FCOUNT( ) (Función)
Devuelve el número de campos de una tabla.
FCOUNT([nWorkArea | cTableAlias])
Valores devueltos
Numeric
Parámetros
- nWorkArea
- Especifica el área de trabajo de la tabla cuyo número de campos devuelve FCOUNT( ).FCOUNT( ) devuelve 0 si no hay una tabla abierta en el área de trabajo que especifique.
- cTableAlias
- Especifica el alias de la tabla cuyo número de campos devuelve FCOUNT( ).Visual FoxPro genera un mensaje de error si especifica un alias de tabla que no existe.
Observaciones
Si omite los argumentos opcionales, FCOUNT( ) devuelve el número de campos de la tabla abierta en el área de trabajo seleccionada en este momento.
Ejemplo
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer && Opens Customer table
SELECT 0
USE employee && Opens employee table
CLEAR
? FCOUNT('CUSTOMER') && Displays 13, # of fields in Customer
? FCOUNT('EMPLOYEE') && Displays 22, # of fields in Em
MAX( ) (Función)
Evalúa un conjunto de expresiones y devuelve la expresión con el valor máximo.
MAX(eExpression1, eExpression2 [, eExpression3 ...])
Valores devueltos
Character, Numeric, Currency, Double, Float, Date o DateTime
Parámetros
- eExpression1, eExpression2 [, eExpression3 ...]
- Especifique las expresiones de las que desea que MAX( ) devuelva la expresión con el valor más elevado. Todas las expresiones deben ser del mismo tipo de datos.
Ejemplo
El siguiente ejemplo utiliza APPEND BLANK para crear una tabla con 10 registros que contienen valores aleatorios y, a continuación, emplea MIN( ) y MAX( ) para mostrar los valores máximo y mínimo de la tabla.
CLOSE DATABASES
CREATE TABLE Random (cValue N(3))
FOR nItem = 1 TO 10 && Append 10 records,
APPEND BLANK
REPLACE cValue WITH 1 + 100 * RAND( ) && Insert random values
ENDFOR
CLEAR
LIST && Display the values
gnMaximum = 1 && Initialize minimum value
gnMinimum = 100 && Initialize maximum value
SCAN
gnMinimum = MIN(gnMinimum, cValue)
gnMaximum = MAX(gnMaximum, cValue)
ENDSCAN
? 'The minimum value is: ', gnMinimum && Display minimum value
? 'The maximum value is: ', gnMaximum && Display maximum value
Funciones de fecha
DAY( ) (Función)
Devuelve el número del día del mes correspondiente a una expresión de Date o de DateTime dada.
DAY(dExpression | tExpression)
Parámetros
- dExpression
- Especifica una fecha a partir de la cual DAY( ) devuelve un día del mes. dExpression puede ser un literal de fecha, una variable de tipo Date, un elemento de matriz o un campo de fecha.
- tExpression
- Especifica una fecha a partir de la cual DAY( ) devuelve un día del mes. tExpression puede ser un literal de fecha, una variable de tipo Date, un elemento de matriz o un campo de fecha.
STORE {^1998-03-05} TO gdBDate CLEAR ? CDOW(gdBDate) && Displays Thursday ? DAY(gdBDate) && Displays 5 ? 'That date is ', CMONTH(gdBDate), STR(DAY(gdBDate),2)
MONTH( ) (Función)
MONTH(dExpression | tExpression)
Parámetros
- dExpression
- Especifica la expresión Date de la que se quiere que MONTH( ) devuelva el número de mes..
- tExpression
- Especifica la expresión DateTime de la que se quiere que MONTH( ) devuelva el número de mes.
Observaciones
MONTH( ) devuelve un número de 1 a 12. Enero es el mes 1, y diciembre es el mes 12.
Ejemplo
CLEAR
? DATE( ) && Displays today's date
? MONTH(DATE( )) && Displays the month number
STORE {^1998-05-03} TO gdBuy
STORE MONTH(gdBuy + 31) TO gdMonth
? gdMonth && Displays 6
Devuelve el año a partir de la expresión de fecha, o fecha y hora especificada.
YEAR(dExpression | tExpression)
Parámetros
- dExpression
- Especifica una expresión de fecha a partir de la cual YEAR( ) devuelve el año. dExpression puede ser una función que devuelve una fecha, o una variable de memoria, un elemento de matriz o un campo de tipo Date. También puede ser una cadena de fecha literal, por ejemplo: {^1998-06-06}.
- tExpression
- Especifica una expresión de tipo DateTime a partir de la cual YEAR( ) devuelve el año.
Observaciones
YEAR( ) siempre devuelve el año con el siglo. La configuración de CENTURY (ON u OFF) no afecta al valor devuelto.
Ejemplo
CLEAR
? YEAR(DATE( ))
No hay comentarios:
Publicar un comentario