FÓRMULAS - Explicación de las Funciones que pueden utilizarse en su Construcción

Con el método de proyección "Freeform" se pueden crear fórmulas propias para calcular el valor de la historia y/o proyección de cualquier cuenta. Una fórmula contendrá uno o más de los siguientes componentes:

Valor: Puede ser un número (e.j., 100,000) o el número de una cuenta (el número de la cuenta debe estar precedida por una "V", e.j., V1030.0.000).
Operadores Matemáticos: +, -, *, /, ( ), ^.
Cuentas Referenciadas y Funciones: (e.j., para períodos específicos o porcentajes).
Si no se utilizan los paréntesis; se deberá formular utilizando el orden aritmético standard, (exponencial, multiplicación, división, suma y resta) de izquierda a derecha. Al utilizar los paréntesis, se garantiza que los cálculos dentro del paréntesis se realizarán primero.

VALOR

Para introducir el valor numérico, solo se tipea el valor (e.j., 10). Cabe resaltar que este valor es representado en el cálculo como un "10" y no como 10.000, si el archivo está especificado en miles. Para entrar en una cuenta, se tipea el número precedido de la letra "V", como en cualquiera de los casos señalados arriba o abajo (e.j., V2700.1.01 o v1030).

OPERADORES MATEMÁTICOS

Se utilizan cualquiera de los cinco operadores matemáticos siguientes:

+ Para Sumar
- Para Restar
* Para Multiplicar
/ Para Dividir
^ Para Función Exponencial

CUENTAS REFERENCIADAS Y FUNCIONES

Se pueden utilizar cualquiera de las siguientes cuentas referenciadas y funciones en la fórmula.
Cuentas Referenciadas para otros Períodos de Tiempo.

Utilizando el formato vXXXX (argumento), se puede llamar al valor de una cuenta desde un período de tiempo hasta el corriente; puede utilizarse un período absoluto o relativo.
La referencia a un período de tiempo absoluto se puede formar de una o dos maneras: especificando el período exacto o utilizando cualquiera de las funciones relacionadas a seleccionar un período de tiempo específico. Los siguientes son ejemplos de referencia absoluta:

v1030 ( "Jan 93" ) Especifica las Ventas de Enero de 1993
v1030 ( @firstpd ) Especifica las Ventas del primer período.

Para referenciar un período se debe especificar el número y letra de período a referenciar. Si no se especifica la letra (período), asumirá que las referencia al período es la misma que el período corriente. Si se está en Mes, se tomará como Mes; si se está en años se desplazará en años.

Ejemplos de Formatos:

v1030( -1M ) Se desplazará al Mes de Ventas anterior. (M= Month=Mes)
v1030( -4Q ) Se desplazará hacia el cuarto trimestre de Venta anterior (Q= Quater= Trimestre)
v1030( -1Y ) Se desplazará hacia el año de Ventas anterior (Y= Year= Año)
v1030( -1 ) Se desplazará hacia hacia el período inmediatamente anterior

Nota: Se requiere utilizar el signo menos (-).

FUNCIONES

Existen diferentes tipos de funciones:

Funciones que recuperan un valor.
Funciones que hacen referencia a un período de tiempo específico.
Funciones que recuperan información sobre un período de tiempo.
Funciones que modifican el valor de una cuenta.
Funciones que operan sobre las expresiones.

FUNCIONES QUE RECUPERAN UN VALOR

@na
Recuperan el valor de un genérico N/A (No-un-Número) para uso de la fórmula.

FUNCIONES QUE HACEN REFERENCIA A UN PERÍODO DE TIEMPO ESPECÍFICO

@period:
Regresa a 0 en el último período histórico; 1 en el primer período proyectado. Contar con períodos (agregar o no).

@firstpd:
Se refiere al primer período del archivo.

@lasthist:
Se refiere al último período histórico del archivo.

@firstfore:
Se refiere al primer período proyectado del archivo.

FUNCIONES QUE SE REFIEREN A LA INFORMACIÓN DE UN PERÍODO DE TIEMPO

Estas funciones de argumentos opcionales para especificar a un período relativo a absoluto. Si el argumento es omitido, entonces el valor es recobrado para el período corriente.

@ishist:
VERDADERO si el período corriente es un período histórico.

@isfore:
VERDADERO si el período corriente es un período proyectado.

@isfirstpd:
VERDADERO si el período corriente es el primer período en el modelo.

@islasthist:
VERDADERO si el período corriente es el primer período histórico.

@isfirstfore:
VERDADERO si el período corriente es el primer período proyectado.

@islastfore:
VERDADERO si el período corriente es el último período proyectado.

@ismonth:
VERDADERO si es mes.

@isqtr:
VERDADERO si el período es un trimestre.

@isyear:
VERDADERO si el período es un año.

@isagg:
VERDADERO si el período corriente es un Período Agregado.

@isinput:
VERDADERO si la cuenta es un input (número) en el período corriente.

@pdlen:
Toma el período corriente en días.

@pdexists:
VERDADERO si el período especificado existe.

@yearlen:
Toma la longitud del año en días.

@iseoy:
VERDADERO si el período corriente corresponde al final de un año fiscal.

FUNCIONES QUE MODIFICAN EL VALOR DE UNA CUENTA

El primer argumento para cada una de estas es una cuenta en referencia.

@input:
Recupera el valor input value de la cuenta corriente.

@sum(vXXXX, Período a Referenciar):
Calcula la sumatoria de vXXXX empezando por defecto en el período corriente, y el número de períodos a ir hacia atrás es tipeado en el período a referenciar. Entonces, @sum(vXXXX, -3M) calculará la sumatoria de vXXXX empezando en el período corriente y tomando los 3 meses anteriores.

@avg(vXXXX, Período a Referenciar):
Calcula el promedio de vXXXX empezando por defecto en el período corriente, y el número de períodos a ir hacia atrás es tipeado en el período a referenciar. Entonces, @avg(vXXXX, -3M) calculará el promedio de vXXXX empezando en el período corriente y tomando los tres meses anteriores.

@chg(vXXXX, Period Reference):
Calcula el cambio de vXXXX empezando por defecto en el período corriente, y el número de períodos a ir hacia atrás es tipeado en el período a referenciar. Entonces, @avg(vXXXX, -3M) calculará el cambio en el valor de vXXXX entre en el período corriente y los tres meses anteriores.

FUNCIONES QUE OPERAN SOBRE EXPRESIONES

@IF(cond, iftrue, iffalse):
La función @if evalúa el condicional, cond. Si el valor de la condición es VERDADERO, @if regresa al valor computado para la cláusula verdadera (iftrue ) de la función; sino, @if regresa al valor computado para la cláusula falsa (iffalse).

@max(val1, val2):
Toma el máximo valor entre val1 y val2.

@min(val1, val2):
Toma el mínimo valor entre val1 y val2.

@isna(expresión):
VERDADERO si la expresión es N/A ( No-un-Número ).

@not(expresión):
Invierte el valor lógico.