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.
Hola
Tengo una mesa donde tengo una columna de una semana con formato yyyyy-ww. No tengo ninguna columna de fecha. La columna de la semana contiene datos del año pasado hasta el año siguiente. Así, es de 2020-01 a 2022-52. Quiero crear una mesura que muestre sólo datos de las últimas 5 semanas. Por ejemplo, esta es la semana 20 ahora y cuando activo el filtro, shouls muestran datos para la semana 15-19 con correcto. También debería mostrar el año correcto a finales de año. Por ejemplo, si actualmente estoy en W3 2022, debe mostrar datos para W50 2021 - W2 2022.
Cualquier ayuda o consejos se aplican!
¡gracias!
Shamo
Solved! Go to Solution.
No hay @shamo
Prueba esto,
1. Copie la tabla como tabla de calendario,
2. Arrastre la columna de la tabla de calendario a la segmentación de datos,
3. A continuación, cree sortcolumn en dos tablas,
En la tabla calendario:
SortColumn_Calendar = LEFT('calendar table'[YYYYWW],4)*100+RIGHT('calendar table'[YYYYWW],2)
En la tabla:
SortColumn_table = LEFT('Table'[YYYYWW],4)*100+RIGHT('Table'[YYYYWW],2)
4. A continuación, cree la medida:
Measure_YYYYWW =
VAR _seldate =
SELECTEDVALUE ( 'calendar table'[SortColumn_Calendar] )
VAR _startdate =
MINX (
TOPN (
5,
FILTER ( ALL ( 'Table' ), 'Table'[SortColumn_table] < _seldate ),
'Table'[SortColumn_table], DESC
),
'Table'[SortColumn_table]
)
VAR _enddate =
MAXX (
TOPN (
5,
FILTER ( ALL ( 'Table' ), 'Table'[SortColumn_table] < _seldate ),
'Table'[SortColumn_table], DESC
),
'Table'[SortColumn_table]
)
RETURN
IF (
ISBLANK ( _seldate ),
SELECTEDVALUE ( 'Table'[YYYYWW] ),
IF (
MIN ( 'Table'[SortColumn_table] ) <= _enddate
&& MIN ( 'Table'[SortColumn_table] ) >= _startdate,
SELECTEDVALUE ( 'Table'[YYYYWW] ),
BLANK ()
)
)
resultado:
Consulte el archivo de ejemplo adjunto a continuación.
Saludos
Equipo de apoyo a la comunidad _ Tang
Si esta publicación ayuda,por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
No hay @shamo
Prueba esto,
1. Copie la tabla como tabla de calendario,
2. Arrastre la columna de la tabla de calendario a la segmentación de datos,
3. A continuación, cree sortcolumn en dos tablas,
En la tabla calendario:
SortColumn_Calendar = LEFT('calendar table'[YYYYWW],4)*100+RIGHT('calendar table'[YYYYWW],2)
En la tabla:
SortColumn_table = LEFT('Table'[YYYYWW],4)*100+RIGHT('Table'[YYYYWW],2)
4. A continuación, cree la medida:
Measure_YYYYWW =
VAR _seldate =
SELECTEDVALUE ( 'calendar table'[SortColumn_Calendar] )
VAR _startdate =
MINX (
TOPN (
5,
FILTER ( ALL ( 'Table' ), 'Table'[SortColumn_table] < _seldate ),
'Table'[SortColumn_table], DESC
),
'Table'[SortColumn_table]
)
VAR _enddate =
MAXX (
TOPN (
5,
FILTER ( ALL ( 'Table' ), 'Table'[SortColumn_table] < _seldate ),
'Table'[SortColumn_table], DESC
),
'Table'[SortColumn_table]
)
RETURN
IF (
ISBLANK ( _seldate ),
SELECTEDVALUE ( 'Table'[YYYYWW] ),
IF (
MIN ( 'Table'[SortColumn_table] ) <= _enddate
&& MIN ( 'Table'[SortColumn_table] ) >= _startdate,
SELECTEDVALUE ( 'Table'[YYYYWW] ),
BLANK ()
)
)
resultado:
Consulte el archivo de ejemplo adjunto a continuación.
Saludos
Equipo de apoyo a la comunidad _ Tang
Si esta publicación ayuda,por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Gracias por la respuesta. Creo que esto calcula a partir de la última semana en los datos disponibles. Pero quiero tener 5 semanas de hoy.
También quiero agregar la medida al panel de filtro y cuando selecciono 1, entonces se muestra la última 5 semana y cuando se seleccionan 0 o no, entonces los datos normales
@shamo , asegúrese de crear una tabla independiente para la semana del año y, a continuación, agregue la columna de clasificación
Rango de semana = formato RANKX(all('Date'),'Date'[Year Week],,ASC,Dense) //YYYYWW
Medidas
Esta semana = CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])))
Semana pasada = CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Week Rank]=max('Date'[Week Rank])-1))
Últimas 5 semanas = CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Week Rank]>=max('Date'[Week Rank])-5 && 'Date'[Week Rank]<=max('Date'[Week Rank])))
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 |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |