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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

¿Cómo filtro el segundo parámetro en función del primer parámetro del Generador de informes de Power BI?

Estoy trabajando con algunos datos que contienen una lista de jugadores de fútbol de varias nacionalidades. Aquí hay una muestra de esos datos:

IDENTIFICACIÓNJugadorNacionalidad
1Roberto BaggioItalia
2Hernán CrespoArgentina
3Lionel MessiArgentina

Creé dos parámetros. El primero debe filtrar la nacionalidad y el segundo debe filtrar al jugador. Aquí hay una imagen de lo que veo:

Sort.png

Cuando selecciono Nacionalidad, el menú desplegable de 'Jugador' todavía me muestra toda la lista de jugadores independientemente de su nacionalidad. ¿Cómo consigo que el menú desplegable 'Jugador' filtre en función de lo que selecciono para 'Nacionalidad'?. Por ejemplo, ¿para que si selecciono Inglaterra, solo vería a Rooney y Joe Cole para el menú desplegable 'Jugador'?. Aquí está mi archivo rdl:

https://www.mediafire.com/file/ljbfis2awvadt7b/Football.rdl/file

Soy consciente de que no podría ejecutar el informe, pero al menos podría ver la configuración de las fuentes de datos y los parámetros.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Lo que está buscando es el efecto de parámetros en cascada.

Para leer y entender: https://docs.microsoft.com/en-us/power-bi/guidance/paginated-report-cascading-parameter

Vi su archivo .rdl, pls cambiar estos solo a Dataset2

Consulta:

SELECT * 
FROM Sheet1$
WHERE
[Sheet1$].Nationality = @Nationality

sevenhills_1-1650563792519.png

Parámetros del "Dataset 2":

sevenhills_0-1650563729949.png

e intente ejecutar el informe.

espero que esto ayude!

View solution in original post

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

Hola @sevenhills

Esto funcionó maravillosamente. Muchas gracias por su ayuda. Voy a leer la documentación que compartiste, no estaba al tanto del término técnico para ello hasta que lo mencionaste.

Tengo curiosidad por saber, si añadí otro parámetro, club. Así que digamos que filtraría por nacionalidad ->club-> jugador. ¿Simplemente agregaría otra condición a la cláusula SQL anterior y luego agregaría un parámetro? de esta manera:

SELECT * 
FROM Sheet1$
WHERE
[Sheet1$].Club = @Club
AND
[Sheet1$].Nationality = @Nationality



Sí, así es como funciona.

a) Obtenga la lista de parámetros, tanto en cascada como no en cascada

b) Para cada parámetro no en cascada sin datos de la fuente, como la fecha, es posible que no necesite ninguna fuente, es decir, no necesite un conjunto de datos.

c) Para cada parámetro no en cascada con datos de la fuente, simplemente obtenga los datos de la fuente agregando un conjunto de datos y usándolos en el parámetro.

d) Para cada parámetro en cascada, el nivel superior es el mismo que el anterior.

e) Para cada parámetro en cascada, segundo nivel y cada nivel hacia abajo,
si necesita datos de la fuente,
Agregue un conjunto de datos con los parámetros hasta el nivel anterior (que desea filtrar), ajuste el SQL o el código para filtrar

y apunte el parámetro a este conjunto de datos.

f) Repetir lo mismo y la primera vez puede tomar algún tiempo de ida y vuelta. El concepto es el mismo que se agregan más niveles de cascada.

g) Finalmente, a los conjuntos de datos reales que consume para la presentación de informes,

Necesita agregar lógica para filtrar cada uno de los parámetros

y aplicar nombres de parámetros a los valores de los parámetros.

Los informes SSRS y paginados son los mismos, FYI.

A veces, hay pocas excepciones como que ES POSIBLE QUE NO necesite todos los parámetros para el conjunto de datos de informes y SOLO necesite el último parámetro o algunos de los parámetros para el conjunto de datos de informes, puramente según sus necesidades.

Gracias por la respuesta detallada. Esto puede llevarme algún tiempo digerirlo por completo. Ejecutaré algunos informes de demostración y jugaré con parámetros no en cascada y en cascada. En algún momento estoy seguro de que todo simplemente haría clic. Sin embargo, me preguntaba por qué los parámetros deben vincularse a un conjunto de datos separado en lugar de vincularse al conjunto de datos principal.

Honestamente, nunca he usado SSRS. Hace muy poco terminé un curso sobre SQL y comencé a usar SSMS y el Generador de informes correctamente. Sin embargo, estoy disfrutando el proceso. Una vez más, agradezco la ayuda.

Vaya a través de estos enlaces, para pasos detallados:

https://www.mssqltips.com/sqlservertip/3466/cascaded-parameters-in-sql-server-reporting-services/

https://docs.microsoft.com/en-us/sql/reporting-services/report-design/add-cascading-parameters-to-a-...

https://www.tutorialgateway.org/ssrs-cascading-parameters/

Cité SSRS porque hay miles de artículos y videos que existen en Internet. No confundirte.

¿Por qué creamos diferentes conjuntos de datos para cada parámetro?

Estamos usando cada conjunto de datos para cada parámetro y no queremos ver las repeticiones.

Digamos, en su caso, que tiene Nacionalidad, Club, Jugadores. Si tiene un conjunto de datos que contiene los tres, entonces vemos los valores duplicados para nacionalidad, club ... la idea es que el menú desplegable tenga una lista única y usarlo filtrará un nivel más hacia abajo. Una forma de organizar y disponer elementos únicos para la selección.

Syndicate_Admin
Administrator
Administrator

Lo que está buscando es el efecto de parámetros en cascada.

Para leer y entender: https://docs.microsoft.com/en-us/power-bi/guidance/paginated-report-cascading-parameter

Vi su archivo .rdl, pls cambiar estos solo a Dataset2

Consulta:

SELECT * 
FROM Sheet1$
WHERE
[Sheet1$].Nationality = @Nationality

sevenhills_1-1650563792519.png

Parámetros del "Dataset 2":

sevenhills_0-1650563729949.png

e intente ejecutar el informe.

espero que esto ayude!

Gracias por su ayuda en los parámetros anteriores. De hecho, intenté trabajar en tres parámetros hoy después de leer la guía que compartiste. Me encontraron con un parámetro, luego dos funcionaron bien. Tan pronto como llegué al tercer parámetro golpeé una pared de ladrillos. Compartí el problema aquí:

https://community.powerbi.com/t5/Desktop/Cascading-Report-in-Power-BI-Report-Builder-Causing-Errors/...

siéntase libre de echar un vistazo si lo desea.

No puede tener NAME como parámetro. Es una palabra reservada.

Intente cambiar a "Param_Name" o "NAME1" y mantenga el mensaje como "Nombre"

¡Aplique al filtro del conjunto de datos el mismo cambio y vea si funciona!

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Top Solution Authors