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 tabla de matriz que tengo que mostrar el Año , Mes y Fecha en filas y los recuentos de cuentas únicas por día como columna. A esto, necesito agregar una nueva columna para indicar el arriba /abajo del "calendario" anterior. Es decir, durante un día, necesito mostrar el swing arriba/abajo del día anterior. Para el mes, el recuento único en ese mes con el swing arriba/abajo del mes anterior y similar para el año.
Soy capaz de obtener los valores según por debajo de DAX para los días, pero los meses y años son incorrectos, ya que parece estar sumando los días, en lugar de la cuenta única para ese mes. Y posteriormente tiene que hacer esto cuando los datos aumentan por año.
AccessDate | AcctID |
9/1/2020 | A1001 |
9/1/2020 | B1001 |
9/1/2020 | C1001 |
9/1/2020 | D1001 |
9/1/2020 | E1001 |
9/2/2020 | A1001 |
9/2/2020 | B1001 |
9/2/2020 | C1001 |
9/2/2020 | D1001 |
9/2/2020 | E1001 |
9/2/2020 | F1001 |
9/3/2020 | B1001 |
9/4/2020 | C1001 |
9/4/2020 | D1001 |
9/5/2020 | C1001 |
9/5/2020 | D1001 |
9/5/2020 | E1001 |
9/5/2020 | F1001 |
9/5/2020 | G1001 |
8/1/2020 | A1001 |
8/1/2020 | B1001 |
8/1/2020 | C1001 |
8/1/2020 | D1001 |
8/1/2020 | E1001 |
8/2/2020 | C1001 |
8/2/2020 | D1001 |
8/2/2020 | E1001 |
8/4/2020 | C1001 |
8/3/2020 | D1001 |
8/3/2020 | E1001 |
8/4/2020 | F1001 |
8/4/2020 | G1001 |
8/5/2020 | D1001 |
8/5/2020 | E1001 |
8/5/2020 | F1001 |
7/1/2020 | A1001 |
7/1/2020 | B1001 |
7/1/2020 | C1001 |
7/1/2020 | D1001 |
7/1/2020 | E1001 |
7/2/2020 | B1001 |
7/2/2020 | C1001 |
7/2/2020 | D1001 |
7/3/2020 | A1001 |
7/3/2020 | B1001 |
7/3/2020 | C1001 |
7/3/2020 | D1001 |
7/3/2020 | E1001 |
La salida prevista para mes y día es ..
AccessDate | Countof AcctID | Swing de conde anterior |
Septiembre | 7 | 0 |
9/5/2020 | 5 | 3 |
9/4/2020 | 2 | 1 |
9/3/2020 | 1 | -5 |
9/2/2020 | 6 | 1 |
9/1/2020 | 5 | 2 |
Agosto | 7 | 2 |
8/5/2020 | 3 | 0 |
8/4/2020 | 3 | 1 |
8/3/2020 | 2 | -1 |
8/2/2020 | 3 | -2 |
8/1/2020 | 5 | 2 |
Jul | 5 | 0 |
7/5/2020 | 3 | 2 |
7/4/2020 | 5 | 0 |
7/3/2020 | 5 | 2 |
7/2/2020 | 3 | -2 |
7/1/2020 | 5 | 0 |
Así que julio tenía 5 cuentas únicas y agosto tenía 7 únicos por lo que el repunte de 2 para agosto. Los días individuales dentro de julio son correctos, ya que son únicos para ese día y así sucesivamente.
* Asumo sólo 5 días en un mes para este ejemplo. 8/1/20 está mirando el 7/5/20, y el 9/1/20 está mirando el 8/5. En el informe completo, 9/1 estará mirando 8/31, y 8/1 estará mirando 7/31 etc para el valor anterior para la oscilación arriba /abajo.
Los DAX que estoy usando son.
Recuento de AcctID: CALCULATE(DISTINCTCOUNT(Account[AcctID]),USERELATIONSHIP(Date[Date],Account[AccessDate])) |
AcctID Yesterday ? CALCULATE(DISTINCTCOUNT(Account[AcctID]),DATEADD(Date[Date],-1,DAY),USERELATIONSHIP(Date[Date],Account[AccessdateDate])) |
Oscilación del conteo anterior [Recuento de AcctID]-[Sedid ayer]
|
Por favor, hágamelo saber si mi identificación de solicitud posible dentro de la misma matriz? O tengo que separarlos en un año y mes y imágenes diarias.
Solved! Go to Solution.
Hola @PBI5851 ,
¿Qué te parece esto:
Previous Count swing =
VAR ThisMonth =
MONTH ( MAX ( 'Account'[AccessDate] ) )
VAR LastDayofPreviousMonth =
CALCULATE (
MAX ( 'Account'[AccessDate] ),
FILTER (
ALLSELECTED ( 'Account' ),
MONTH ( 'Account'[AccessDate] ) = ThisMonth - 1
)
)
VAR ValueofLastDayofPreviousMonth =
CALCULATE (
[AcctID Count],
FILTER (
ALLSELECTED ( 'Account' ),
'Account'[AccessDate] = LastDayofPreviousMonth
)
) + 0
VAR PreviousCount =
IF (
HASONEVALUE ( Account[AccessDate] ),
CALCULATE (
[AcctID Count],
FILTER (
ALL ( 'Account' ),
'Account'[AccessDate]
= MAX ( 'Account'[AccessDate] ) - 1
)
),
IF (
ThisMonth = MONTH ( MINX ( ALLSELECTED ( Account ), Account[AccessDate] ) ),
0,
CALCULATE (
[AcctID Count],
FILTER (
ALLSELECTED ( 'Account' ),
MONTH ( 'Account'[AccessDate] ) = ThisMonth - 1
)
)
)
)
RETURN
[AcctID Count]
- IF (
DAY ( MAX ( Account[AccessDate] ) ) = 1,
ValueofLastDayofPreviousMonth,
PreviousCount
)
Saludos
Icey
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola @PBI5851 ,
¿Qué te parece esto:
Previous Count swing =
VAR ThisMonth =
MONTH ( MAX ( 'Account'[AccessDate] ) )
VAR LastDayofPreviousMonth =
CALCULATE (
MAX ( 'Account'[AccessDate] ),
FILTER (
ALLSELECTED ( 'Account' ),
MONTH ( 'Account'[AccessDate] ) = ThisMonth - 1
)
)
VAR ValueofLastDayofPreviousMonth =
CALCULATE (
[AcctID Count],
FILTER (
ALLSELECTED ( 'Account' ),
'Account'[AccessDate] = LastDayofPreviousMonth
)
) + 0
VAR PreviousCount =
IF (
HASONEVALUE ( Account[AccessDate] ),
CALCULATE (
[AcctID Count],
FILTER (
ALL ( 'Account' ),
'Account'[AccessDate]
= MAX ( 'Account'[AccessDate] ) - 1
)
),
IF (
ThisMonth = MONTH ( MINX ( ALLSELECTED ( Account ), Account[AccessDate] ) ),
0,
CALCULATE (
[AcctID Count],
FILTER (
ALLSELECTED ( 'Account' ),
MONTH ( 'Account'[AccessDate] ) = ThisMonth - 1
)
)
)
)
RETURN
[AcctID Count]
- IF (
DAY ( MAX ( Account[AccessDate] ) ) = 1,
ValueofLastDayofPreviousMonth,
PreviousCount
)
Saludos
Icey
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@PBI5851 , Puede utilizar la tabla de fechas y la inteligencia de tiempo
Ejemplos
Día detrás de Ventas: CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Day))
Este día: CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Date]-max('Date'[Date])))
Last Day ? CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Date]-max('Date'[Date])-1))
Last Day : CALCULATE(sum('order'[Qty]), previousday('Date'[Date]))
Mes
Ventas MTD: CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
Last MTD Sales - CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
Ventas del último mes: CALCULATE(SUM(Sales[Sales Amount]),previousmonth('Date'[Date]))
Last MTD (completar) Ventas : CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(ENDOFMONTH(dateadd('Date'[Date],-1,MONTH))))
valor del mes anterior: CALCULATE(sum(''Table''[valor total de horas]),previousmonth('Date'[Date]))
diff - [Ventas MTD]-[las últimas ventas MTD]
diff % á divide([MTD Sales]-[last MTD Sales],[last MTD Sales])
año
Ventas YTD á CALCULATE(SUM(Sales[Sales Amount]),DATESYTD('Date'[Date],"12/31"))
Last YTD Sales á 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"))
Ventas del año pasado: CALCULATE(SUM(Sales[Sales Amount]),DATESYTD(ENDOFYEAR(dateadd('Date'[Date],-1,Year)),"12/31"))
Last to last YTD Sales - 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))
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])))
Last Year ? CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]-max('Date'[Year])-1))
Power BI — Año tras año
https://medium.com/@amitchandak.1978/power-bi-ytd-questions-time-intelligence-1-5-e3174b39f38a
Power BI — Lun th On Month
https://medium.com/@amitchandak.1978/power-bi-mtd-questions-time-intelligence-3-5-64b0b4a4090e
Power BI — Day Intelligence
https://medium.com/@amitchandak.1978/power-bi-day-intelligence-questions-time-intelligence-5-5c3243d...
Para obtener lo mejor de la función de inteligencia del tiempo. Asegúrese de que tiene un calendario de fechas y que se ha marcado como la fecha en la vista de modelo. Además, únete a ella con la columna de fecha de tus hechos. recomienda:
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
Apreciamos tus Felicitaciones.
@amitchandak . Gracias. Usé tu sugerencia el día detrás de las ventas de otro boleto. Si lo leo correctamente, sus soluciones dan el valor correcto si se mira a sólo año o mes. Pero, ¿se puede hacer todo eso en un solo objeto visual.
@PBI5851 , Están planeando cambiar estas medidas.
Luego hemos creado una segmentación de medida.
He hecho una vez combinado se filtra para mes y año - https://community.powerbi.com/t5/Community-Blog/HR-Analytics-Active-Employee-Hire-and-Termination-tr...
Empleado del último período, cambié la cláusula de filtro, lo mismo para un año, mes y día
Otra forma es medir la segmentación: https://radacad.com/change-the-column-or-measure-value-in-a-power-bi-visual-by-selection-of-the-slic...
Dudo que haya una fórmula que pueda hacer. A menos que un año de retraso en los datos, esto funcionará con cada agrupación, día, mes y año
Año detrás de Ventas: CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-1,Year))
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 | |
2 | |
2 | |
2 | |
1 |