Uso de rv_measure_calc para editar los valores de escenario
rv_measure_calc
, la hoja de trabajo debe ser parte de una combinación de ciclo y módulo con el tipo Origen de informe establecido en Incrustado.
Uso de la medida de propagación para editar los valores de un escenario
La medida actual también se debe definir en el parámetro rv_measure_calc
. Las propiedades son:
- targetmeasure
- weightmeasure_multiply
- weightmeasure_divide
- measure_spread
- spread_type
- spread_rounding
- spread_error_correction
- ifemptymeasurespread_measure_spread (e ifemptymeasurespread_targetmeasure ifemptymeasurespread_weightmeasure_multiply, ifemptymeasurespread_weightmeasure_divide, Ifemptymeasurespread_spread_rounding, Ifemptymeasurespread_spread_error_correction)
Los valores se propagan con el comando SplashValue de Infor BI OLAP. Los parámetros aplicables:
- AllocationMode (0 - 5)
- TargetCell (tupla)
- SourceCell (tupla)
- Value (expresión numérica)
- Rounding (expresión lógica)
- DecimalPlaces (expresión numérica)
- ErrorCorrection (expresión lógica)
Definir SourceCell ("medidas propagar como"):
- Si no se especifica el valor de "measure_spread", se usa la medida definida en la propiedad ifemptyspreadmeasure_spread_measure.
- En función de este valor, también se utilizan las propiedades definidas en ifemptyspreadmeasure para multiply, divide, target, spread_rounding y error_correction.
- Si tampoco se define el valor de ifemptyspreadmeasure_spread_measure, se usa la medida de propagación predeterminada de rv_measure_spreadlike.
- Si tampoco se especifica el valor de rv_measure_spreadlike, no se pueden editar los valores de escenario.
- El parámetro SplashValue.SourceCell se debe definir como if(not isnull(measure_spread), measure_spread, if(not isnull(ifemptyspreadmeasure_spread_measure), ifemptyspreadmeasure_spread_measure, rv_measure_spreadlike)).
Cuando edita un valor existente (valor original <>0):
- Se utiliza el valor actualizado de la celda modificada si la medida
spread_type
se ha establecido en "value". - Se utiliza la diferencia entre el valor original y el actualizado si la medida
spread_type
se ha establecido en "delta". - El valor se multiplica y se divide para calcular la medida
weighted_difference
, utilizando los valores especificados para las medidasweightmeasure_multiply
yweightmeasure_divide
respectivamente.Nota:- Si los valores de weightmeasure_multiply y de weightmeasure_divide no están definidos, debe calcular el valor utilizando el valor existente.
- Si el valor de
measure_spread
no está definido, se utiliza el valor predeterminadorv_measure_spreadlike
=like_measure
.
Si estos valores no están definidos, los datos modificados no se pueden guardar.
- El valor se actualiza mediante
&LIKEFULL weighted_difference like_measure
.
Cuando especifica un valor nuevo (valor original = 0):
- El valor se multiplica y se divide para calcular la medida
weighted_difference
, utilizando los valores especificados para las medidasweightmeasure_multiply
yweightmeasure_divide
respectivamente.Nota:- Si los valores de weightmeasure_multiply y de weightmeasure_divide no están definidos, debe calcular el valor utilizando el valor existente.
- Si el valor de
measure_spread
no está definido, se utiliza el valor predeterminadorv_measure_spreadlike
=like_measure
.
Si estos valores no están definidos, los datos modificados no se pueden guardar.
- El valor se actualiza mediante la medida
&LIKEFULL weighted_difference like_measure
. - Si el valor de
measure_spread
es nulo, se usa la medida definida en la propiedadifemptyspreadmeasure_spread_measure
. Esta medida también utiliza las propiedades definidas enifemptyspreadmeasure
para multiplicar y dividir los valores para el destino. La definición de la medida de propagación cuando no se especifica un valor eslike_measure = nvl(measure_spread, nvl(ifemptyspreadmeasure_spread_measure, v_measure_spreadlike))
. Por lo tanto, si el valor de esta medida es también nulo, se usa la medida de propagación predeterminada derv_measure_spreadlike
. Si no se define esta medida, se produce un error en la edición porque no se especifican los criterios de propagación.
Para determinar el redondeo de los valores:
- Si
spread_rounding
se define como un entero positivo, el comando SplashValue incluye el redondeo:- Parámetro SplashValue.Rounding: 1 = 1 (true)
- Parámetro SplashValue.DecimalPlaces: spread_rounding
- Si
spread_rounding
es nulo, negativo o no se define: el redondeo es 0=1.- Parámetro SplashValue.Rounding: 0 = 1 (false)
- Parámetro SplashValue.DecimalPlaces: sin definir
Nota: Si measure_spread es nulo, se usa el parámetro ifemptyspreadmeasure_spread_rounding. - Ejemplo de resultados de propagación como valores enteros (por ejemplo, vehículos previstos):
<Table> <Row name="[SOP_FREV]"> <Property name="targetmeasure" value="[SOP_FMI]" /><Property name="weightmeasure_divide" value="[SOP_FSELL]" /> <Property name="measure_spread" value="[SOP_FUNITS]" /><Property name="spread_type" value="value" /> <Property name="spread_rounding" value="0" /></Row> </Table>
Definir la corrección de errores:
- Si spread_error_correction es TRUE o no se define, el comando SplashValue incluye corrección de errores, es decir, un elemento base puede recibir un valor redondeado para garantizar que el total de todos los resultados de propagación es igual al valor propagado (agregado). El parámetro SplashValue.ErrorCorrection se define como 1 = 1 (true).
- Si spread_error_correction es FALSE, el comando SplashValue no incluye corrección de errores. El parámetro SplashValue.ErrorCorrection se define como 0 = 1 (false).
Las celdas que se editan pero no se envían a OLAP (con la opción Volver a calcular) se marcan con un fondo azul y una marca de edición. Cuando estas ediciones se actualizan con la opción Volver a calcular, estas celdas editadas adquieren de nuevo el formato estándar.
Sin embargo, si se define una regla de cálculo, es decir, no hay una medida de destino no calculada definida en la medida rv_measure_calc para la celda, OLAP descarta las ediciones cuando se vuelven a calcular los datos y se conserva el valor original de la celda.