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

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.

Reply
Syndicate_Admin
Administrator
Administrator

UseRelationship en el nivel de día no funciona (modelo de muestra adjunto)

¡He adjuntado un modelo muy simple para que todos ustedes puedan ver lo que está sucediendo más rápido! 🙂

Archivo de ejemplo de PowerBI

Estoy seguro de que solo soy un hueso y me falta algo simple, pero estoy intentando usar la función UseRelationship para formar una relación entre dos tablas de fechas idénticas.

Luego usaré un filtro de cada tabla de fechas para ser utilizado en mi. Los cálculos funcionan perfectamente a nivel de semana, pero cuando lo expando hasta el día, el valor de toda la semana se muestra para cada día.

El campo que es incorrecto cambia dependiendo de la tabla de fechas de la que tomo mi campo de semana para usarlo en mi matriz. Sólo hay dos medidas.

Medida de suma simple sin relación de uso

Suma de fecha = SUMA('Tabla de datos'[Importe])

Intentar utilizar la relación de uso

Suma de fecha anterior =
CALCULAR(
[Suma de fechas]
,TODO('Fecha')
,RELACIÓN DE USO('fecha' [fecha],'fecha anterior'[fecha])
)
2023-05-12 16_19_49-Help UseRelationship File - Power BI Desktop.png

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Creo que la respuesta es que necesito tener un TODOEXCEPTO en lugar del TODO en mi declaración de cálculo. Supongo que importa porque los valores son los mismos en ambos filtros. Dicho de otra manera, ambos se escriben de la misma manera y aparecen igual que las fechas de la semana que tienen la semana y el año y, por lo tanto, son únicos para cada filtro.

Suma de fecha anterior =

CALCULAR(
[Suma de fechas]
,TODOS excepto('Fecha','Fecha'[Nombre del día de la semana])
,RELACIÓN DE USO('Tabla de datos'[Fecha comercial],'Fecha anterior'[Fecha])
)

Adjuntar un archivo de muestra para cualquier persona que se encuentre con el mismo problema. Parece un caso de uso muy común para comparaciones de tiempo que no siempre son algo simple como YoY, WoW, etc. También tengo que usar un calendario comercial, por lo que no puedo usar estas funciones integradas de forma natural. Esto también funcionará para las personas con calendario minorista.

NOTA: Los cálculos de varianza en este archivo no tienen ningún tipo de ponderación/normalización entre los dos períodos de tiempo para nivelar los períodos de tiempo. Si desea comparar períodos de tiempo de diferentes duraciones, debe multiplicar sus cuentas de suma calculada por un factor de normalización separado que creará.

¡Solución!

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Creo que la respuesta es que necesito tener un TODOEXCEPTO en lugar del TODO en mi declaración de cálculo. Supongo que importa porque los valores son los mismos en ambos filtros. Dicho de otra manera, ambos se escriben de la misma manera y aparecen igual que las fechas de la semana que tienen la semana y el año y, por lo tanto, son únicos para cada filtro.

Suma de fecha anterior =

CALCULAR(
[Suma de fechas]
,TODOS excepto('Fecha','Fecha'[Nombre del día de la semana])
,RELACIÓN DE USO('Tabla de datos'[Fecha comercial],'Fecha anterior'[Fecha])
)

Adjuntar un archivo de muestra para cualquier persona que se encuentre con el mismo problema. Parece un caso de uso muy común para comparaciones de tiempo que no siempre son algo simple como YoY, WoW, etc. También tengo que usar un calendario comercial, por lo que no puedo usar estas funciones integradas de forma natural. Esto también funcionará para las personas con calendario minorista.

NOTA: Los cálculos de varianza en este archivo no tienen ningún tipo de ponderación/normalización entre los dos períodos de tiempo para nivelar los períodos de tiempo. Si desea comparar períodos de tiempo de diferentes duraciones, debe multiplicar sus cuentas de suma calculada por un factor de normalización separado que creará.

¡Solución!

Syndicate_Admin
Administrator
Administrator

Gracias, Ashish. Tengo dos segmentaciones de datos separadas para que los usuarios puedan determinar los dos períodos de tiempo diferentes que están comparando.

Esto es parte de un análisis de mezcla de ventas que tengo, por lo que hay variaciones que se calculan entre las dos fechas.

Al intentar usar su sugerencia en mi archivo de muestra, encuentro que si tuviera que quitar el "TODO" en la función de cálculo como sugiere y elegir una semana que no es la misma en ambas segmentaciones, entonces el valor de la suma de la fecha anterior se queda en blanco.

He adjuntado un archivo actualizado que muestra este resultado. La medida "Suma de fechas" debe sumarse en función del filtro "Fecha" y la medida "Suma de fecha anterior" debe basarse en el filtro "Fecha anterior".

PowerBI: sin TODAS y diferentes semanas seleccionadas

d7382717-817d-4687-a71f-174afca870d8.png

¡¡Gracias!!

Syndicate_Admin
Administrator
Administrator

Hola

Retire el ALL() de su fórmula. Además, ¿por qué necesita la tabla de fechas anteriores en primer lugar? Si desea obtener lo mismo el mismo día de la semana pasada, escriba esta medida

Medida = calcular([ventas],fechasentre('Fecha'[Fecha],min('Fecha'[Fecha])-7,min('Fecha'[Fecha])-7))

Espero que esto ayude.

Syndicate_Admin
Administrator
Administrator

Hola

Syndicate_Admin
Administrator
Administrator

Aquí está el modelo de datos

2023-05-12 16_33_40-Help UseRelationship File - Power BI Desktop.png

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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