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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Gráfico de líneas con punto de corte en TODAY()

¡hola!

Estoy trabajando en un tablero para mostrar los materiales desechados en el año actual YTD mientras intenta simoultanously mostrar el año anterior. He creado dos medidas:

ScrapLastYear = CALCULATE(SUM(Data[Amt.in loc.cur.]),SAMEPERIODLASTYEAR(Data[Fecha de contabilización].[ Fecha])) para mostrar todo el año anterior y el segundo:
SumEndDayToday = CALCULATE(SUM(Data[Amt.in loc.cur.]),DATESYTD(Data[Posting Date]),MAX(Data[Posting Date],TODAY()))
El resultado está casi bien, pero no puedo entender, lo que debe cambiarse para mostrar el año actual sólo hasta el final del conjunto de datos (actualmente - principios de julio). El gráfico de líneas continúa la línea en el futuro:
Patryk_PL_0-1626430428357.png

¿Qué estoy haciendo mal aquí?

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hay @Patryk_PL ,

¿Tiene una tabla de dim_date en su modelo de fecha? Le sugiero que cree uno y puede utilizar la siguiente medida:

ScrapLastYear =
VAR A =
    CALCULATE ( MAX ( Data[Posting Date] ), ALL ( Data ) )
RETURN
    IF (
        MAX ( Dim_Date[Date] ) <= A,
        CALCULATE (
            SUM ( Data[Amt.in loc.cur.] ),
            SAMEPERIODLASTYEAR ( Dim_Date[Date] )
        )
    )

SumEndDayToday =
VAR A =
    CALCULATE ( MAX ( Data[Posting Date] ), ALL ( Data ) )
RETURN
    IF (
        MAX ( Dim_Date[Date] ) <= A,
        CALCULATE ( SUM ( Data[Amt.in loc.cur.] ), DATESYTD ( Dim_Date[Date] ) )
    )

Utilice la columna de fecha de la tabla de dim_date como eje X.

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Saludos

Dedmon Dai

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hay @Patryk_PL ,

¿Tiene una tabla de dim_date en su modelo de fecha? Le sugiero que cree uno y puede utilizar la siguiente medida:

ScrapLastYear =
VAR A =
    CALCULATE ( MAX ( Data[Posting Date] ), ALL ( Data ) )
RETURN
    IF (
        MAX ( Dim_Date[Date] ) <= A,
        CALCULATE (
            SUM ( Data[Amt.in loc.cur.] ),
            SAMEPERIODLASTYEAR ( Dim_Date[Date] )
        )
    )

SumEndDayToday =
VAR A =
    CALCULATE ( MAX ( Data[Posting Date] ), ALL ( Data ) )
RETURN
    IF (
        MAX ( Dim_Date[Date] ) <= A,
        CALCULATE ( SUM ( Data[Amt.in loc.cur.] ), DATESYTD ( Dim_Date[Date] ) )
    )

Utilice la columna de fecha de la tabla de dim_date como eje X.

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Saludos

Dedmon Dai

Ok, se ve mejor cuando he creado una tabla de fechas separada (de https://www.youtube.com/watch?v=F-GGF9OS5ys este video). Ahora tengo algo como esto:

Patryk_PL_0-1627054135635.png

¿Qué más se va a cambiar? He creado medidas como las mencionadas, pero...

Vale, encontré el asunto - justo ingresó un filtro para año actual y trabajado bien ahora.

Syndicate_Admin
Administrator
Administrator

@Patryk_PL , a mí esto no me parece YTD

en segundo lugar, debe utilizar sólo la tabla de fechas

Ejemplos

YTD QTY forzado=
var _max1 = today() //o maxx(allselected('Order'),'order'[Fecha])
var _max = format(_max,"MMDD")
devolución
calculate(Sum('order'[Qty]),DATESYTD('Date'[Date]),filter('Date', format('Date'[Date],"MMDD")<=_max))


YTD QTY forzado=
var _max = hoy()
devolución
if(max('Date'[Date])<=_max, calculate(Sum('order'[Qty]),DATESYTD('Date'[Date])), blank())
o
calculate(Sum('order'[Qty]),DATESYTD('Date'[Date]),filter('Date','Date'[Date]<=_max))
calculate(TOTALYTD(Sum('order'[Qty]),'Date'[Date]),filter('Date','Date'[Date]<=_max))

LYTD QTY forzado=
var _max = date(year(today())-1,month(today()),day(today()))
devolución
if(max('Date'[Date])<=_max, CALCULATE(Sum('order'[Qty]),DATESYTD(dateadd('Date'[Date],-1,year)),'Date'[Date]<=_max), blank())
o
CALCULATE(Sum('order'[Qty]),DATESYTD(dateadd('Date'[Date],-1,year)),'Date'[Date]<=_max)
TOTALYTD(Sum('order'[Qty]),dateadd('Date'[Date],-1,year),'Date'[Date]<=_max)

Mismo <= _max puede utilizar con una medida final o medida sameperiodlastyear

ejemplo

if(max('Date'[Date])<=_max, calculate(Sum('order'[Qty]),SAMEPERIODLASTYEAR('Date'[Date])), blank())

if(max('Date'[Date])<=_max, calculate(Sum('order'[Qty]),dateadd('Date'[Date],-1,year), blank())

Helpful resources

Announcements
PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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