¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo escribir lógica de script en BPC para delimitar y calcular datos de manera efectiva

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 24 Vistas
0
Cargando...
Aunque tengo mucha experiencia con BPC, si alguien me pide escribir una lógica de script, es posible que no pueda escribir ese código en 10 minutos. No es un problema de mi conocimiento, sino que escribir una lógica de script requiere entender sus requisitos financieros y el conocimiento de su aplicación como el identificador de miembro de cuenta y el nombre de las propiedades. Hay algunos documentos y archivos de ayuda sobre la lógica de script y HTG, pero los usuarios finales pueden sentir que no es fácil. Estoy de acuerdo con eso, pero si entiendes su estructura y concepto, puedo garantizarte que puedes leer y entender lo que significa y cuál es el propósito de esa lógica de script. Además, es posible que puedas modificarlo o crearlo. Es lo mismo que no es fácil escribir un libro, pero leer un libro es otra historia. Vamos a aprender paso a paso.

1. Comprender las 3 partes de la lógica.

La lógica es un motor de script especial y consta de 3 partes. Alcance, cálculo (crear/Registrar) y Escritura.


2. Alcance

BPC se basa en NW BI o MSAS que tiene muchos datos. Por lo tanto, si no especifica el alcance, llevará mucho tiempo leer los datos.
Digamos que necesita calcular enero de 2011, datos reales y solo una cuenta como 'Ventas externas con descuento' basada en las Ventas externas.

¿Cómo podemos delimitar esto desde una gran base de datos?

La respuesta es.... *XDIM_MEMBERSET

*XDIM_MEMBERSET se utiliza para delimitar datos por cada dimensión.
Aquí está la sintaxis de XDIM_MEMBERSET.

*XDIM_MEMBERSET <NOMBREDIMENSIÓN> = <NOMBREMIEMBRO 1>,<NOMBREMIEMBRO 2>...<NOMBREMIEMBRO n>

Ahora, delimitemos el ejemplo anterior.
para delimitar enero de 2011, *XDIM_MEMBERSET DIMTIEMPO=2011.ENE
para delimitar real,       *XDIM_MEMBERSET DIMCATEGORÍA=REAL
para delimitar ventas externas,  *XDIM_MEMBERSET DIMCUENTA=VENTASEXT
(Nota: necesitamos delimitar las Ventas externas porque las Ventas externas con descuento se calcularán en función de las Ventas externas.)


3. Ahora, acabamos de delimitar, así que es hora de calcular (crear) datos.

A diferencia de otros motores de script, no hay variable temporal en el motor de script de lógica, por lo que creará un registro que tenga la misma estructura que la tabla de hechos.
y reemplazará o cambiará su valor usando '*REC' comando. (Nota: *REC significa 'Registro'.)

Aquí está la sintaxis de la declaración *REC

*REC([FACTOR|EXPRESIÓN={Expresión}[,{dim1}={miembro},{dim2}=?)]

Usando esa sintaxis, podemos hacer nuestro script de la siguiente manera.


*REC (FACTOR = 0.9,CUENTA="DESCUENTO_VENTASEXT")
Lo que significa multiplicar por 0.9 el registro delimitado actual y reemplazar el miembro de cuenta con DESCUENTO_VENTASEXT

Aquí hay un ejemplo de lo que sucede con la declaración anterior.

<Registro delimitado>
VENTASEXT,2011.ENE,REAL, 10000

<Registro generado>
DESCUENTO_VENTASEXT,2011.ENE,REAL, 9000


¿Qué pasa si quieres poner el registro generado en la categoría PRESUPUESTO ?
Entonces la declaración debería ser

*REC (FACTOR = 0.9,CUENTA="DESCUENTO_VENTASEXT",CATEGORÍA=" PRESUPUESTO ")

Ahora quieres poner el 80% del valor en PRONÓSTICO al mismo tiempo. ¿Qué debemos hacer?
Podemos usar otra declaración *REC al mismo tiempo.

*REC (FACTOR =

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?