Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
mphillenga
Helper I
Helper I

Una plantilla (que contiene pasos de consulta, formato de gráfico, etc.) con orígenes de datos variables

Hola

Soy bastante nuevo en PowerBI y quiero crear una plantilla que me permita volver a usar gráficos, gráficos y consultas para diferentes conjuntos de datos. Tengo varios espectadores que deben tener su propio informe (basado en la plantilla con exactamente los mismos gráficos / consultas / etc) pero cargado con diferentes datos, publicado en su propio espacio de trabajo o aplicación. Así que los orígenes de datos son diferentes, pero todo lo que he hecho en PowerBI Desktop y exportado como plantilla debe ser el mismo.

- Tengo múltiples fuentes de datos, llamados dataset_supplier1_A, dataset_supplier1_B, dataset_supplier1_C, etc. Se ingieren de Google Big Query y luego se 'importan'

- Los nombres de columna son exactamente los mismos para cada conjunto de datos. Por ejemplo, dataset_supplier1_A tiene los mismos nombres de columna que dataset_supplier2_A y dataset_supplier1_B tiene los mismos nombres de columna que dataset_supplier2_B. La única diferencia es el nombre del proveedor, al que se hace referencia en el nombre de la tabla

- También he hecho varias transformaciones (formato moneda / fecha), medidas creadas, algunas fórmulas DAX y columnas calculadas, etc. Me gustaría conservarlos y volver a usarlos para otra versión del proveedor del informe a través de la plantilla para que no tenga que volver a hacerlos

- También he hecho un montón de diseño de las cartas. Me gustaría volver a utilizar aquellos a través de la plantilla, así que no tengo que volver a hacerlos

Actualmente elimino todos los conjuntos de datos de supplier1 y exporto el informe como plantilla. Al abrir e ingerir conjuntos de datos de supplier2, tengo que rellenar manualmente los campos y valores de todos los gráficos, hacer todas las transformaciones/columnas calculadas y hacer el diseño de los gráficos de nuevo.

Miré "roles", pero luego tendría que combinar los datos de todos los proveedores en un conjunto de datos en Google Big Query, dando a un proveedor de acceso a datos específicos a través de un determinado rol. Debido a la privacidad y otras razones no quiero configurar las cosas de esa manera.

Además, he leído un poco sobre 'administrar parámetros' y 'flujos de datos', pero no he descubierto cuál es la mejor manera de configurar esta plantilla.

Esperemos que alguien pueda apuntarme en la dirección correcta.

Gracias

1 ACCEPTED SOLUTION
mahoneypat
Employee
Employee

Debería poder crear un parámetro denominado SupplierName y usarlo en la consulta de esta manera (solo se muestra la primera parte). El texto clave está en rojo y no debe tener comillas alrededor de él. Con un enfoque similar, también podría hacer que una tabla de todos sus nombres de proveedor, y pasar ese nombre de proveedor en esta consulta, y luego combinar todos los datos de todos los proveedores (pero sé que estaba buscando una solución de proveedor individual en este).

Dejar
Source : GoogleBigQuery.Database(null),
"nuestro nombre de empresa-nombredeaplicación" - Origen -[Nombre"nuestro nombre de empresa-nombredeaplicación"]-[Datos],
supplier_name1_Schema de la empresa de correo electrónico "nombre_de_empresas-nombreDeAplicación"""NombreDeCompray nombreDeEquipo,Kind"Schema"],[Datos],
supplier_name1_master_table_Table de supplier_name1_Schema[Nombre_de_nombre delproveedor & "_master_table",Kind"Table"]-[Datos],

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


View solution in original post

8 REPLIES 8
mahoneypat
Employee
Employee

No he confirmado todos esos puntos, pero cree que el archivo de plantilla debe conservar todas esas cosas. Si tuviera medidas/columnas en las tablas que eliminó, se perderían, por supuesto. ¿Ha probado la adición de una columna, el formato de medida ya que ha creado su nueva tabla/consulta y guardarlo como plantilla para confirmar?

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


mphillenga
Helper I
Helper I

Muchas gracias @mahoneypat .

La configuración de parámetros funciona. He hecho una lista de los proveedores y asumo que cuando hay nuevo proveedor se puede añadir a la lista de parámetros a través de la función 'editar'.

Los campos de cada tabla se cargan en cada gráfico. Eso va bien, muchas gracias por la solución.

Sin embargo, me encuentro con lo siguiente:

  • Las medidas creadas y las columnas calculadas no se generan. Tal vez esto se debe a la eliminación de todas las tablas (de un proveedor), antes de guardarlo en el formato de plantilla. Entendí que las plantillas serían capaces de almacenar cualquier medida, columna calculada, consultas, etc. ¿No estás seguro de cómo superar eso? Si mantenlo las tablas en el archivo de plantilla, tengo problemas para cargar a través del parámetro si es un proveedor diferente.
  • Lo mismo se aplica a: no se ejecuta ningún formato de datos (por ejemplo, moneda, fecha/hora) y los pasos aplicados en las consultas no se ejecutan/presentes
  • Tablas/consultas con ordenación personalizada donde una columna adicional tiene una relación con una tabla de ordenación personalizada que se guarda en el archivo de plantilla

Espero que pueda ayudar a aclarar lo anterior.

Muchas gracias por su ayuda.

Mejor

mahoneypat
Employee
Employee

Debería poder crear un parámetro denominado SupplierName y usarlo en la consulta de esta manera (solo se muestra la primera parte). El texto clave está en rojo y no debe tener comillas alrededor de él. Con un enfoque similar, también podría hacer que una tabla de todos sus nombres de proveedor, y pasar ese nombre de proveedor en esta consulta, y luego combinar todos los datos de todos los proveedores (pero sé que estaba buscando una solución de proveedor individual en este).

Dejar
Source : GoogleBigQuery.Database(null),
"nuestro nombre de empresa-nombredeaplicación" - Origen -[Nombre"nuestro nombre de empresa-nombredeaplicación"]-[Datos],
supplier_name1_Schema de la empresa de correo electrónico "nombre_de_empresas-nombreDeAplicación"""NombreDeCompray nombreDeEquipo,Kind"Schema"],[Datos],
supplier_name1_master_table_Table de supplier_name1_Schema[Nombre_de_nombre delproveedor & "_master_table",Kind"Table"]-[Datos],

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


mahoneypat
Employee
Employee

Vaya al Editor avanzado para la consulta de uno de los conjuntos de datos y pegue ese código M aquí. A continuación, podemos sugerir código M modificado que hará referencia a un parámetro de nombre de conjunto de datos. Una vez que lo tenga, puede guardarlo como un archivo de plantilla (pbit) y usarlo para cambiar rápidamente los conjuntos de datos en el informe. Si tiene previsto publicar varios informes paralelos, deberá mantenerlos todos por separado si realiza cambios. Otra opción sería utilizar informes paginados (la prima por usuario es gratuita actualmente). Con eso, puede configurar suscripciones a cada proveedor (basado en un parámetro) que se les envíe por correo electrónico a la frecuencia establecida. Esos informes serían estáticos (pdf, PowerPoint), pero solo tendría que administrar una solución.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Muchas gracias @mahoneypat .

A continuación encontrará el código M para dos consultas diferentes del mismo proveedor.

El nombre de la empresa-nombre-proyecto se fija para todos los proveedores.

El supplier_name1 es lo único que cambia para cada proveedor. Como se ha dicho todo el código, el diseño de gráficos, etc. debe ser exactamente el mismo.

Consultar el código M de la consulta:

Dejar
Source : GoogleBigQuery.Database(null),
"nuestro nombre de empresa-nombredeaplicación" - Origen -[Nombre"nuestro nombre de empresa-nombredeaplicación"]-[Datos],
supplier_name1_Schema "nombre_de_empresas-nombredeaplicación"""Nombre_de_supplier_name1",Kind"Schema"]-[Datos],
supplier_name1_master_table_Table de supplier_name1_Schema[Nombre"supplier_name1_master_table",Kind"Table"]-[Datos],
"Valor reemplazado" - Table.ReplaceValue(master_table_Table,"1","Very low",Replacer.ReplaceText,'"r_quintile"'),
"Valor reemplazado1" - Table.ReplaceValue('Valor reemplazado'","2","Bajo",Replacer.ReplaceText,'"r_quintile"'),
"Valor reemplazado2" - Table.ReplaceValue(-"Valor reemplazado1","3","Medium",Replacer.ReplaceText,'"r_quintile"'),
"Valor reemplazado3" - Table.ReplaceValue(-"Valor reemplazado2","4","Alto",Replacer.ReplaceText,'"r_quintile"'),
"Valor reemplazado4" - Table.ReplaceValue(-"Valor reemplazado3","5","Muy alto",Replacer.ReplaceText,'"r_quintile"'),
"Valor reemplazado5" - Table.ReplaceValue(-"Valor reemplazado4","5","Muy alto",Replacer.ReplaceText,'"f_segment"'),
"Valor reemplazado6" - Table.ReplaceValue(-"Valor reemplazado5","4","Alto",Replacer.ReplaceText,'"f_segment"'),
"Valor reemplazado7" - Table.ReplaceValue(-"Valor reemplazado6","3","Medium",Replacer.ReplaceText,'"f_segment"'),
"Valor reemplazado8" - Table.ReplaceValue(-"Valor reemplazado7","2","Bajo",Replacer.ReplaceText,'"f_segment"'),
"Valor reemplazado9" - Table.ReplaceValue(-"Valor reemplazado8","1","Muy bajo",Replacer.ReplaceText,'"f_segment"'),
"Valor reemplazado10" - Table.ReplaceValue('Valor reemplazado9',"1","Muy bajo",Replacer.ReplaceText,'"m_quintile"'),
"Valor reemplazado11" á Table.ReplaceValue('Valor reemplazado10',"2","Bajo",Replacer.ReplaceText,'"m_quintile"'),
"Valor reemplazado12" - Table.ReplaceValue('Valor reemplazado11',"3',"Medio",Replacer.ReplaceText,'"m_quintile"'),
"Valor reemplazado13" - Table.ReplaceValue('Valor reemplazado12',"4","Alto",Replacer.ReplaceText,'"m_quintile"'),
"Valor reemplazado14" - Table.ReplaceValue(-"Valor reemplazado13","5","Muy alto",Replacer.ReplaceText,"m_quintile"-)
En
"Valor reemplazado14"

Consultar código 2 M:

Dejar
Source : GoogleBigQuery.Database(null),
"nuestro nombre de empresa-nombredeaplicación" - Origen -[Nombre"nuestro nombre de empresa-nombredeaplicación"]-[Datos],
supplier_name1_Schema "nombre_de_empresas-nombredeaplicación"""Nombre_de_supplier_name1",Kind"Schema"]-[Datos],
supplier_name1_simple_rfm_segments_Table de supplier_name1_Schema[Nombre"supplier_name1_simple_rfm_segments",Kind"Table"]-[Datos],
"Added Index" á Table.AddIndexColumn(supplier_name1_simple_rfm_segments_Table, "Index", 1, 1, Int64.Type),
"Valor reemplazado" - Table.ReplaceValue(-"Added Index",10,40,Replacer.ReplaceValue,-"Index"-),
"Valor reemplazado1" - Table.ReplaceValue(-"Valor reemplazado",11,120,Replacer.ReplaceValue,'Índice"')
"Valor reemplazado2" - Table.ReplaceValue(-"Valor reemplazado1",12,80,Replacer.ReplaceValue,'Índice'')
"Valor reemplazado3" - Table.ReplaceValue(-"Valor reemplazado2",13,60,Replacer.ReplaceValue,'Índice'')
"Valor reemplazado4" - Table.ReplaceValue(-"Valor reemplazado3",9,20,Replacer.ReplaceValue,'Índice"')
"Valor reemplazado5" - Table.ReplaceValue(-"Valor reemplazado4",8,10,Replacer.ReplaceValue,'Índice"'),
"Valor reemplazado6" - Table.ReplaceValue(-"Valor reemplazado5",7,13,Replacer.ReplaceValue,'Índice"'),
"Valor reemplazado7" - Table.ReplaceValue(-"Valor reemplazado6",6,50,Replacer.ReplaceValue,'Índice"')
"Valor reemplazado8" - Table.ReplaceValue(-"Valor reemplazado7",5,7,Replacer.ReplaceValue,-"Index"-),
"Valor reemplazado9" - Table.ReplaceValue(-"Valor reemplazado8",4,11,Replacer.ReplaceValue,-"Index"-),
"Valor reemplazado10" - Table.ReplaceValue(-"Valor reemplazado9",1,9,Replacer.ReplaceValue,'Índice"')
"Valor reemplazado11" - Table.ReplaceValue(-"Valor reemplazado10",2,1,Replacer.ReplaceValue,'Índice'')
"Valor reemplazado12" - Table.ReplaceValue(-"Valor reemplazado11",20,2,Replacer.ReplaceValue,'Índice"')''
"Valor reemplazado13" - Table.ReplaceValue(-"Valor reemplazado12",40,4,Replacer.ReplaceValue,'Índice"')''
"Valor reemplazado14" - Table.ReplaceValue(-"Valor reemplazado13",50,5,Replacer.ReplaceValue,''Índice'')
"Valor reemplazado15" - Table.ReplaceValue(-"Valor reemplazado14",60,6,Replacer.ReplaceValue,''Índice'')
"Valor reemplazado16" - Table.ReplaceValue(-"Valor reemplazado15",80,8,Replacer.ReplaceValue,'Índice"')
"Valor reemplazado17" - Table.ReplaceValue(-"Valor reemplazado16",120,12,Replacer.ReplaceValue,'Índice"')''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
"Filas ordenadas" - Table.Sort(-"Valor reemplazado17","índice", Orden.Ascending),),
"Columnas eliminadas" - Table.RemoveColumns("Filas ordenadas","índice"))
En
"Columnas eliminadas"

Muchas gracias por su ayuda.

mahoneypat
Employee
Employee

Esto suena como un buen uso de los archivos de plantilla. ¿Puede mostrar dos de sus consultas (o simuladas si es necesario, una para dataset1 y otra para dataset2) para ver cómo difieren, por lo que se puede sugerir un uso específico de los parámetros? Además, aquí hay un artículo que escribí sobre archivos de plantilla, en caso de que sea útil.

Los archivos de plantilla son una característica de Under-Sung – Hoosier BI

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Hola Pat,

Muchas gracias por su respuesta y compartir el artículo. Muy perspicaz y muestra que las plantillas deben ser capaces de hacer el trabajo. Las consultas (nombres de columna y pasos aplicados) para el conjunto de datos 1 y el conjunto de datos 2 son exactamente las mismas.

No estoy seguro de si entendí su pregunta, así que por favor encuentre algunas capturas de pantalla a continuación de:

  • Ejemplo A de nombres de columna de consulta (similar para el conjunto de datos 1 y el conjunto de datos 2)
  • Ejemplo B de nombres de columna de consulta (similar para el conjunto de datos 1 y el conjunto de datos 2)
  • Nombre de una tabla de conjunto de datos 1 y conjunto de datos 2
  • Pasos de consulta aplicados
  • Columna calculada

Gracias

Las disculpas @mahoneypat por (otra vez) una respuesta tardía. Pero me las arreglé para encontrar tiempo durante las vacaciones de Navidad para trabajar adecuadamente en los comentarios que proporcionó.

Todo parece funcionar como se esperaba. Muchas gracias por el apoyo!!

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors