Parámetros dinámicos de SAP BW BEx

Un usuario Pregunto ✅

lmf232s

Quería ver cómo otros consultan SAP BW a través de BEx y ver cómo y si está aprovechando los parámetros dinámicos. Me doy cuenta de que lo que estoy a punto de preguntar podría controlarse en el nivel BEx, pero me gusta tener más control en la capa Power BI.

La primera vez que se conecta a una consulta BEx, se le solicita que ingrese los parámetros requeridos (y opcional si es necesario)

7-17-2018 12-32-20 PM.jpg

Una vez que seleccione todos sus campos e ingrese sus parámetros, su secuencia de comandos M se verá así:

7-17-2018 12-28-39 PM.jpg

Sin embargo, hay ocasiones en las que tengo parámetros de fecha y me gustaría que Power BI extraiga automáticamente la fecha de hoy estableciendo dinámicamente la fecha. Entonces hago algo en la línea de esto donde creo variables dentro de M para construir los parámetros

7-17-2018 12-34-26 PM.jpg

Luego actualizo los parámetros en Mscript para hacer referencia a las variables que he creado

7-17-2018 12-33-27 PM.jpg

Esto ha funcionado hasta ahora, pero quería ver cómo otros pueden estar haciendo esto y ver si tal vez había una forma más sólida de administrar esto utilizando Administrar parámetros, tablas de parámetros y funciones potenciales para buscar valores de parámetros y pasarlos .

¿Pensamientos?

Hola @ lmf232s,

Puede seguir los blogs a continuación para usar el parámetro de consulta en la consulta M.

Parámetros de consulta de Power BI Desktop, parte 1

Parámetros de consulta de Power BI Desktop, Parte 2 – Parámetros de consulta y enmascaramiento de datos dinámicos

Saludos,

Yuliana Gu

Jagannathan

Quizás me esté perdiendo algo aquí. El problema aún persiste. Tengo una analítica de Power BI de prueba que «consultas directas» SAP BW. Funciona bien en el cliente de escritorio de Power BI y puedo cambiar los parámetros de consulta BEx dentro del entorno de escritorio de Power BI. Sin embargo, en el momento en que lo publico, ya no puedo ver los parámetros de consulta BEx para cambiar los valores de los parámetros en tiempo de ejecución. ¿Me estoy perdiendo de algo?

Gracias

Jagannathan Santhanam

lmf232s

En respuesta a Jagannathan

No estoy seguro de cómo lo ha configurado, pero la idea aquí es que los parámetros son dinámicos, no hay necesidad de cambiarlos. El debería aparecer para usted según la lógica que ha escrito. Mire la última publicación sobre su original, verá que se creó un parámetro llamado TodaysDate y luego este valor es lo que se pasa a su secuencia de comandos M. Nada en esta publicación trata sobre el cambio manual de parámetros, sino que los parámetros se completan dinámicamente / automáticamente para usted.

Ahora digo esto sin haber hecho nunca una conexión directa a SAP BW. Entonces, tal vez tu caso sea diferente. Dicho esto, ¿podrías publicar tu mscirpt o algunas capturas de pantalla de lo que intentaste lograr para que pueda tener una mejor idea?

Jagannathan

En respuesta a lmf232s

Lo admito, soy absolutamente nuevo en Power BI. Usamos SAP Business Objects, Tableau, etc., en nuestro entorno. Todas estas herramientas de visualización de informes permiten al usuario interactuar dinámicamente en el tiempo de ejecución del informe / visualización y cambiar los parámetros BW BEx subyacentes. Por ejemplo, yo, como autor del informe, podría haber creado y publicado la visualización de rentabilidad de la empresa para el primer trimestre del año fiscal 2020. Un usuario final desea actualizar esta visualización para el segundo trimestre del año fiscal 2020. ¿Esto NO es posible en Power BI?

lmf232s

En respuesta a Jagannathan

Nunca he adoptado el enfoque que persigue, normalmente solo cargamos 1-2 años de datos en Power BI y proporcionamos filtros de informes para permitir que el usuario filtre por año, trimestre, mes, etc. De hecho, todos nuestros Los informes de Power Bi son exactamente así y no hemos tenido problemas de rendimiento ni problemas con el crecimiento del informe que consume mucho espacio de almacenamiento. Dicho esto, creo que hay una manera de crear parámetros que le permitan ajustarlos en tiempo de ejecución y luego actualizar los datos basados ​​en ellos. Probablemente desee ver ‘Administrar parámetros’ en la pestaña Inicio en la consulta de energía. Creo que puede crear parámetros que puede conectar a su consulta y le permiten cambiarlos en tiempo de ejecución. Lo más probable es que no encuentre ningún ejemplo de esto basado en SAP, pero debería encontrar algunos ejemplos que utilizan SQL Server.

Prueba este enlace:

https://channel9.msdn.com/Blogs/MVP-Azure/Pass-parameter-to-SQL-Queries-statement-using-Power-BI

Jagannathan

En respuesta a lmf232s

¡Gracias por tu publicación! Realmente no responde a mi pregunta. Una vez que se publica un informe, la visualización, no quiero cambiar nada. Prefiero dejar que el usuario cambie los parámetros de consulta BW BEx en tiempo de ejecución mientras interactúa con la versión publicada de la visualización de Power BI.

lmf232s

En respuesta a Jagannathan

Puedes mirar esto:

Solo seguí estas instrucciones y funciona, sin embargo, no me gusta cómo tienes que administrar los parámetros una vez publicados en el servicio. Aún puede administrar y actualizar los parámetros, pero mis usuarios no podrían hacerlo porque tiene que cambiar el parámetro de la configuración del conjunto de datos y mis usuarios no tienen acceso a esto. Sin embargo, si visualiza el video completo, le muestra cómo puede crear una lista de parámetros que luego puede colocar en su página y luego eso debería impulsar su actualización (no lo conecté hasta ahora).

2020-06-17_11-17-02.png

La otra opción que sugeriría es simplemente cargar todos sus datos en power bi (hasta cierto punto). Ejecutamos BW en Hana y la conexión directa es bastante lenta y no consultaba muchos datos. Si tiene que usar power bi, entonces consideraría esto como una opción si no sigue la ruta anterior.

Aquí cargué todos los datos de 2018 – 2020 (y esto lo puedo controlar dinámicamente desde M Script, por lo que solo estoy cargando, digamos, el último año, los últimos 2 años de datos o 12 o 24 meses consecutivos de datos). No tengo muchos usuarios ejecutando informes para nada fuera del último año (generalmente solo mirando el mes anterior). Por lo general, extraemos 2 años de datos para poder hacer comparaciones año tras año. Luego, puedo agregar mis filtros a la página y, en lugar de consultar los datos y esperar a que ocurra una actualización, es instantáneo, simplemente filtramos el conjunto de datos que se ha cargado en Power BI.

En las imágenes aquí agregué un filtro de año y cuarto. Ahora mis usuarios pueden filtrar fácilmente los datos de 2018 a 2020 y seleccionar el trimestre que desean. En este escenario, es instantáneo, no hay actualización ya que los datos ya se han cargado en su modelo de Power BI.

2020-06-17_11-04-26.png

Eso es todo lo que tengo.

james_batchelor

En respuesta a lmf232s

Intentamos usar variables de salida de Bex para el tiempo. Prefiero controlar todas las cosas dinámicas en un solo lugar, Bex. Entonces todas las herramientas que tenemos se ejecutan de la misma manera si usamos la misma consulta. Configuramos rangos YTD / QTD / MTD como salidas y construyo medidas preconfiguradas en base a esto … es decir, ventas YTD $, YTD Order Qty … Ventas hoy, Ventas ayer, YTD PYr … etc. y dejo que el backend haga todo la obra. Viniendo de las herramientas BOBJ, PBI no funciona bien con BW.

Jaime

Jagannathan

En respuesta a james_batchelor

Tengo que concluir que SAP no expone BW a otros proveedores como Microsoft, Tableau de la misma manera que lo hace con otras aplicaciones de SAP, incluido SAP BOBJ, ya que no tenemos problemas para hacer estas cosas básicas en SAP Business Objects. No quiero extraer años de datos en Power BI y luego dejar que el usuario corte y corte dentro de este conjunto de datos. Más bien debería controlarse dinámicamente en tiempo de ejecución. ¡¡Gracias por todas las respuestas!!

lmf232s

En respuesta a Jagannathan

Es posible que desee comenzar una nueva publicación y ver si puede obtener mejores respuestas. Estoy de acuerdo en que nadie más que SAP juega bien con SAP. Probamos Tableau hace 5 años y fue un desastre y hemos estado usando Power BI durante aproximadamente 4 años sin ningún problema. Sin embargo, no éramos una empresa madura con muchos informes BEx o desarrollo BOBJ. Entonces, para nosotros, compilamos todo lo que podemos en nuestra consulta BEx y, por lo general, solo hacemos que Power BI pase los filtros de fecha. También usamos Power BI para crear paneles (cuadros / gráficos) y no para informes basados ​​en tablas, nada los usuarios necesitan en forma de tabla o Excel todavía pasar por BEx Analyzer.

¡Buena suerte!

MA_Toor

Tenemos una consulta BW sobre cuentas por recibir y utilizamos un filtro dinámico para la fecha de hoy. El resto de la lógica del informe se basa en esta variable.

Puedo crear un informe sobre esta consulta, el problema es que cuando actualizo al día siguiente, la fecha de la variable dinámica no cambia a la fecha de hoy como sucede en Bex.

¿Cuál es la solución para esto?

Gracias,

ESTERA.

lmf232s

En respuesta a MA_Toor

¿Está utilizando esta variable en su secuencia de comandos M como el ejemplo que publiqué? ¿O está creando un parámetro e impulsando la actualización de sus datos con el parámetro?

Si usa un script M, similar a cómo publiqué en la publicación inicial, publique su código M para que podamos ver cómo lo está haciendo.

MA_Toor

En respuesta a lmf232s

Power BI 11.JPG

esto es lo que tengo y necesito pasar la fecha de hoy. Soy nuevo en PowerBI.

lmf232s

En respuesta a MA_Toor

@MA_Toor,

Mira mi publicación original, tiene este ejemplo exacto.

Hay un par de formas de hacerlo, pero esto debería funcionar. Según este código, puede crear un valor de fecha de hoy y pasar ese valor o crear otro campo que contenga el valor formateado que debe pasarse a sap bw.

2019-09-30_16-32-09.png

A continuación, puede utilizar esto de dos formas diferentes. Una forma es crear un parámetro con el nombre del parámetro que desea pasar a SAP o simplemente pasar la fecha de hoy. Así es como se ven ambos

{Cube.ApplyParameter, «[!V000002]», {Parameter}},

o

{Cube.ApplyParameter, «[!V000002]», {«[ZINV_DUE].[» & TodaysDate & «]»}},

Juegue con ambos y vea cuál funciona para usted. Incluso podría crear una función donde la función tomaría una fecha y un nombre de parmater y escupiría los resultados. La función podría crearse de modo que sea genérica y pueda funcionar con muchos tipos de datos o variables diferentes. Dicho esto, todavía seguiría este mismo tipo de implementación.

{Cube.ApplyParameter, «[!V000002]», {fnCreateParameter (» ZINV_DUE «, TodaysDate}},

que devolvería lo siguiente (por supuesto, tendría que crear la función en este escenario).

[ZINV_DUE].[20190930]

Ojalá esto ayude.

Hola @ lmf232s,

Puede seguir los blogs a continuación para usar el parámetro de consulta en la consulta M.

Parámetros de consulta de Power BI Desktop, parte 1

Parámetros de consulta de Power BI Desktop, Parte 2 – Parámetros de consulta y enmascaramiento de datos dinámicos

Saludos,

Yuliana Gu

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *