Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Unknown macro: {scrollbar}

Entre las funcionalidades disponibles para la construcción de un simulador se encuentra la especificación de dependencias entre componentes. Las dependencias entre componentes permiten de una manera explícita reflejar que un componente toma valores de otro (la forma no explícita es definiendo un parámetro que es la forma usual de obtener datos de las tablas relacionales).

Una de las ventajas al usar dependencias de componentes es que el orden de ejecución las respeta, es decir, si un componente depende de otro, este se calcula antes. En cuanto a la definición la definición y posibilidades será muy similar a la obtenida utilizando parámetros, por esto se mencionaron previamente el paralelismo entre una dependencia de componente y un parámetro.

Para agregar una dependencia de componente basta con presionar el botón derecho sobre la definición del componente y elegir la opción a tales efectos. La siguiente figura muestra como se define una dependencia de componente:


Figura 1: Definición de una dependencia entre componentes

Para definir una dependencia entre componentes el primer paso es especificar de cual componente se depende (ej. Forecast), a continuación es necesario dar la lista de variables que se usarán para ir a buscar los valores (idem alcance) y finalmente que valores se traerán de dicho componente. En la figura se puede apreciar que el componente "Costos" depende del componente "Forecast", de este se trae la cantidad para cada producto.
Para definir como se buscarán los valores en el componente dependiente se establecen las variables denominadas como de Acceso al Componente, estas variables definen la correspondencia entre las variables locales y las del componente dependiente si es que las hay (pueden no haber variables de acceso). Para facilitar la compresión podemos decir que cada linea de estas variables genera una condición más en la clausula where utilizada para obtener los valores (ej. where Costos.Producto = Forecast.Producto and ...).
En lo anterior Campo con clave refiere a la variable del componente actual y Atributo refiere a que variable del componente referido.

Para incorporar valores del componente dependiente de forma de poder utilizarlos en el cálculo de este componente se definen las variables llamadas Datos a incorporar. La columna Clave de la tabla indica que variable del componente dependiente se utilizará, la columna Nombre indica como ésta debe llamarse en este componente (idem al AS de SQL, ej. Clave AS Nombre). Con esto último se maneja un posible conflicto de nombres, además los valores que en un componentes significaban una cosa en otro pueden representar otro concepto distinto.

Una funcionalidad también disponible en las dependencias de componente es utilizar una función de agregación. Supongamos que el componente "Forecast" calcula el valor para cada división de la empresa y éste sin embargo es un resultado global (ej. suma de todas las divisiones), en tal caso es posible utilizar la función de agregación sum. Nuevamente para facilitar el entendimiento pensar en la siguiente sentencia SQL:

select sum(Forecast.Cantidad) as Cantidad from Forecast where Costos.Producto = Forecast.Producto and ....

Además de lo anterior, en el caso de dependencias entre componentes es posible utilizar la idea de valor por defecto (si no hay valor, se retorna éste) y de función de post procesamiento (luego de obtenido el valor se transforma con dicha expresión). La ventana que permite realizar esta definición luce como sigue:


Figura 2: Valor por defecto y función de post procesamiento

Notar el paralelismo con lo presentado para Parámetros.


Unknown macro: {scrollbar}
  • No labels