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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

USERELATIONSHIP con inactivos de muchos a muchos

Hola a todos,

Para mi cliente estoy tratando de calcular los ingresos del año pasado.
Se refiere al comercio minorista, por lo que la comparación con el año pasado es un poco complicada. Tiene que comparar el primer lunes del año en curso con el primer lunes del año anterior, etc.

Para ello hicimos una columna adicional en nuestra tabla de calendario que contiene este "DatePY".

Debido al hecho de que los años no tienen la misma cantidad de "lunes", "martes" ,... algunos valores de "DatePY" están vacíos.


Así que tenemos 2 tablas: calendario y transacciones. Que están vinculados de la siguiente manera.

Calendario (fecha) 1 ---- * Transacciones (fecha); relación activa

Calendar(DatePY) *-----* Transacciones (fecha); relación inactiva

Calculo mis ingresos de PY de la siguiente manera:
Calculate(Sum(Transactions(Revenue), USERELATIONSHIP(Calendar(DatePY), Transactions(date)))

Pero esto devuelve exactamente la misma cantidad que el cálculo para el año en curso (solo suma de Transacciones(Ingresos))


Ya descubrí que cuando elimino los espacios en blanco de la columna DatePY, funciona (pero esto no es deseable porque esto quita filas de la tabla de calendario).

En el pasado arreglamos esto duplicando la tabla Transacciones, pero esto tampoco es deseable.

¿Alguien puede ayudarme?

¡Muy apreciado!

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

No @Simon_BI,

Es muy difícil de analizar sin mirar los datos y simplemente imaginando. Vea si puede pegar la imagen del gráfico que represente los datos de ejemplo.

https://community.powerbi.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-Forum/ba-...

Elimine los datos confidenciales antes de cargarlos.

Saludos
Liang
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los demás miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

@Simon_BI, yo sugeriría el uso de inteligencia de tiempo con la tabla de fechas

Ejemplos

Ventas YTD = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD('Date'[Date],"12/31"))
Últimas ventas en YTD = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-1,Year),"12/31"))
Este año Ventas = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(ENDOFYEAR('Date'[Date]),"12/31"))
El año pasado Ventas = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(ENDOFYEAR(dateadd('Date'[Date],-1,Year)),"12/31"))
Ventas de última a última YTD = CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(dateadd('Date'[Date],-2,Year),"12/31"))
Año detrás de ventas = CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Year))
Año detrás de ventas = CALCULATE(SUM(Sales[Sales Amount]),SAMEPERIODLASTYEAR('Date'[Date]))
Año por detrás de las ventas = CALCULATE(SUM(Sales[Sales Amount]),previousyear('Date'[Date]))

Sólo año vs año, no un nivel por debajo

Este año = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])))
Año pasado = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])-1))

Power BI — Año tras año con o sin inteligencia de tiempo
https://medium.com/@amitchandak.1978/power-bi-ytd-questions-time-intelligence-1-5-e3174b39f38a
https://www.youtube.com/watch?v=km41KfM_0uA

Helpful resources

Announcements
September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Top Solution Authors