Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Estimados expertos,
Buen día, espero que lo estés haciendo bien.
Ok, mi requisito es tranquilo diferente o inusual, estamos en un proceso de replicar los informes tabulares de SSRS en Power BI, la mayoría de las características se lograron y se atascaron en este, no soy tan bueno en DAX, solo lo básico que conozco. así que, déjenme ir al grano
requisito:
1) Hay 5 segmentaciones de datos, a saber, Grupo1, Grupo2, Grupo3, Grupo4, Grupo5
información adicional sobre la segmentación de datos >> todas son segmentaciones de datos de selección única >> un valor de segmentación de datos no se mostrará en la otra. >> colum slicer es de una tabla independiente que tiene "Sin relación" con cualquier otra tabla de datos.
2) El usuario seleccionará aleatoriamente los valores de cada segmentación de datos >> en función de esta selección, necesito calcular el subtotal de una columna financiera
Conjunto de datos de ejemplo y el resultado esperado según la imagen siguiente.
déjame darte un resumen sobre la imagen de arriba,
> He tomado la población de EE.UU. por estado
> Se agregaron dos segmentaciones de datos para el propósito de ejemplo
> Seleccionado "País" de Slicer#1 y "Estado" de Slicer#2
> Según la selección anterior, la salida esperada se proporciona en el lado derecho de la imagen. (tabla coloreado)
También creé medidas como esta
Measeure =
Solved! Go to Solution.
Allí, @Prabhu_MDU;
Puede intentar cambiar la medida de la siguiente manera:
Payment =
CALCULATE (
SUM ( [Payment] ),
FILTER (
'Table',
[Company] = MAX ( Slicer1[Group1_Column] )
&& [External] = MAX ( Slicer2[Group2_Column] )
&& [Process Center] = MAX ( Slicer3[Group3_Column] )
&& [State Name] = MAX ( Slicer4[Group4_Column] )))
Saludos
Team_ de apoyo comunitario Yalan Wu
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Mis humildes disculpas por el retraso en la respuesta.. (todos los correos de notificación fueron en la carpeta de correo no deseado, lo siento mucho por ello).
Muchas gracias por su gran esfuerzo @v-yalanwu-msft .. estás mucho más cerca de mi requisito. pero no es exactamente lo mismo. (lo siento mucho)..
aquí está el ejemplo de poder para lo que estoy buscando.
buena noticia es, soy capaz de traer el valor esperado utilizando SWITCH. pero parece que es demasiado costoso en rendimiento. tomando mucho tiempo de renderizado cuando implemento la misma lógica en el archivo en tiempo real.
por favor, descargue este archivo pbix de ejemplo y eche un vistazo, defenitely puede ser fácil de ayudarme con este archivo de ejemplo.
Pido disculpas si no soy claro al dar el requisito.
mirando adelante a saber de ti..
https://drive.google.com/file/d/1DzZH6kRiuMaLDDkplW86np4XpTGVJYq0/view?usp=sharing
Allí, @Prabhu_MDU;
De acuerdo con su descripción, si usa la tabla para mostrarla, podría crear una medida para calcular la suma del estado y crear una bandera para filtrarla; si utiliza matrix para mostrarlo, solo creará una medida de indicador para filtrar .
mesa:
a)crear una medida para calcular la suma
Populationsum = CALCULATE(SUM([Population]),ALLEXCEPT('Table','Table'[Country ],'Table'[State]))
b)crear una medida de indicador
flag =
var _ccountry=SUMMARIZE('slicer',[Country ])
return IF(MAX([Country ]) in _ccountry||MAX([State])=MAX('slicer'[State]),1,0)
c)poner la medida de la bandera en el filtro.
La salida final se muestra a continuación:
matriz:
a)crear una medida de indicador
flag = var _ccountry=SUMMARIZE('slicer',[Country ])
return IF(MAX([Country ]) in _ccountry||MAX([State])=MAX('slicer'[State]),1,0)
b)ponerlo en filtro.
La salida final se muestra a continuación:
Saludos
Team_ de apoyo comunitario Yalan Wu
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hay @v-yalanwu-msft ,
Gracias por su valiosa respuesta y gran esfuerzo. la solución es exactamente lo que estoy buscando, pero en su ejemplo (según mis datos de muestra) es estático, pero en mi escenario real será dinámico.
Usted tiene el requisito exactamente. pero cómo se puede lograr lo mismo de forma dinámica. ese es el reto al que me enfrento.
No puedo definir directamente como
CALCULATE(SUM([Payment]) , ALLEXCEPT([Company],[External],[Process Center],[State Name]))
porque las columnas "ALLEXCEPT" serán seleccionadas por el usuario mediante la segmentación de datos. Por lo tanto, tengo que decir que definirlo así
CALCULAT(SUM([Payment]) , ALLEXCEPT(
SELECTEDVALUE(Slicer1[Group1_Column])="Company",[Company],
SELECTEDVALUE(Slicer2[Group2_Column])="External",[External],
SELECTEDVALUE(Slicer3[Group3_Column])="Process Center",[Process Center],
SELECTEDVALUE(Slicer4[Group4_Column])="State Name",[State Name]))
(esta no es la medida correcta, pero la idea es la misma), aquí se vuelve dinámica en función del valor seleccionado de cada segmentación de datos. Creo que mi descripción es aún más elaborada para usted.
En el screenshort anterior, hay totalmente 9 columnas, de las 9, 8 se darán como una lista desplegable en las segmentaciones de datos como se muestra en la imagen, cada valor de segmentación de datos es de cada tabla diferente y son tablas independientes (no se creó ninguna relación), las segmentaciones de datos se establecen en el modo "Selección única" "Activado", según la elección del usuario de la lista desplegable en cada segmentación de datos , obtendremos 4 columnas, basadas en estas 4 columnas aleatorias, necesito calcular la suma de "Pago" la última columna. complacer ayudarme para fijar esto.
Nota: Lo siento, no se puede conectar la muestra de power Bi,
Allí, @Prabhu_MDU;
Puede intentar cambiar la medida de la siguiente manera:
Payment =
CALCULATE (
SUM ( [Payment] ),
FILTER (
'Table',
[Company] = MAX ( Slicer1[Group1_Column] )
&& [External] = MAX ( Slicer2[Group2_Column] )
&& [Process Center] = MAX ( Slicer3[Group3_Column] )
&& [State Name] = MAX ( Slicer4[Group4_Column] )))
Saludos
Team_ de apoyo comunitario Yalan Wu
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@Prabhu_MDU , si está utilizando la segmentación de datos en el país y el estado que a continuación a la misma tbale que está poniendo filtro, que son automáticamente filtro con y (&&) sin que usted hace que
'Tabla'[País]=MIN('Tabla'[País]) ||
'Tabla'[Estado]=MIN('Tabla'[Estado])
Esto solo hace la comparación de contexto de fila
con tablas independientes estado y país o puede funcionar
Measeure =
CALCULAR(
SUM('Tabla'[Población]),
FILTER(('Tabla'),
'Tabla'[País]=valor seleccionado('País'[País]) ||
'Tabla'[Estado]=selectedvalue('Estado'[Estado])
)
)
)
Necesidad de una tabla independiente en Power BI: https://youtu.be/lOEW-YUrAbE
Hay @amitchandak,
Mi oídigo gracias por su respuesta,
Esto está funcionando igual que cómo funciona mi medida, es decir, no está agrupando los valores de las segmentaciones de datos que se trata como columna aquí. Quiero decir, no está agrupando las columnas como
Sum(Población) GroupBy (País,Estado). Está agrupando todas las columnas, aquí según el ejemplo Country,State,City,Sum(Population).
Por favor, ayúdame a solucionar esto.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |