lunes, 3 de junio de 2013

Funciones Visual Fox Pro 6.0


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(nExpression1nExpression2 [, 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


NPV(nExpression1nExpression2 [,
 nExpression3])

Calcula el valor neto actual de una serie de flujos de caja futuros descontados a una tasa de interés periódica constante.
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

eExpression1eExpression2 [, 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.
Ejemplo
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)

Devuelve el número de mes de una expresión determinada de tipo Date o DateTime.

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
YEAR( ) (Función)

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