Establecer el orden de operaciones para los cálculos de modelos
Por ejemplo, el hecho Order details contiene información sobre cada pedido:

Margin es un cálculo que determina la tasa de beneficio:
Margin = (Revenue - Product cost) / Revenue
Si se ejecuta una consulta para mostrar los valores de Revenue, Product cost y Margin de cada producto utilizando el hecho Order details, se obtiene el siguiente resultado:
Product number | Revenue | Product cost | Margin |
---|---|---|---|
1 | $23,057,141 | $11,292,005 | 61038% |
2 | $11,333,518 | $6,607,904 | 49606% |
Observe que el valor de Margin parece ser incorrecto. Esto se debe al orden de las operaciones que se utiliza para calcular Margin. Margin se calcula de la siguiente manera:
Margin = sum( (Revenue - Product cost) / Revenue )
La agregación se realizó tras la operación matemática y, en este caso, genera resultados no deseados.
Para obtener los valores deseados de Margin, necesitamos realizar la agregación antes de la operación matemática:
Margin = ( sum(Revenue) - sum(Product cost) ) / sum(Revenue)
Esto genera el siguiente resultado:
Product number | Revenue | Product cost | Margin |
---|---|---|---|
1 | $23,057.141 | $11,292,005 | 51.03% |
2 | $11,333,518 | $6,607,904 | 41.70% |
Puede conseguir esto en IBM® Cognos Framework Manager si crea un cálculo independiente para Margin, y establece la propiedad Agregado regular en Calculado. Cada elemento de consulta de la expresión del cálculo se agrega tal y como se especifica en la propiedad Agregado regular correspondiente. Las propiedades de Agregado regular de Ingresos y Coste de producto se establecen en Suma y, por lo tanto, al realizar el cálculo, la suma se utiliza para agregar dichos términos.
Por ejemplo, supongamos que utilizamos el cálculo Margin incorporado en la dimensión Sales measure:

En este ejemplo, Margin se basa en las medidas Product cost y Revenue que se encuentran en la misma dimensión de medida, Sales. Si la propiedad Agregado regular de Margin está establecida en Calculado, se acumula del siguiente modo:
Margin = sum(Revenue - Product cost ) / sum(Revenue)
Si Margin se basa en los elementos de la consulta de origen de las medidas Product cost y Revenue (Sales (model).Product cost, Sales (model).Revenue), la agregación calculada no se soporta y se comporta como si fuera automática. En este caso, Margin se acumula del siguiente modo:
Margin = sum( Revenue - Product cost) / Revenue)
Para obtener más información sobre cómo modificar el modo de agregación de elementos de consulta, consulte la publicación IBM Cognos Framework Manager Guía del usuario.