The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
hola queridos,
A continuación se muestran mis datos RAW. El número de usuarios inscritos aumenta, mientras que el número de usuarios no inscritos disminuye mes a mes.
| Ubicación | Ene-24 | feb-24 | Mar-24 | Abr-24 | Mayo-24 | Jun-24 |
Usuarios inscritos | País A | 28 | 31 | 58 | 61 | 68 | 73 |
Usuarios inscritos | País B | 4 | 10 | 20 | 20 | 25 | 27 |
Usuarios no inscritos | País A | 49 | 46 | 19 | 16 | 9 | 3 |
Usuarios no inscritos | País B | 23 | 17 | 7 | 7 | 2 | 0 |
Total de usuarios | País A | 77 | 77 | 77 | 77 | 77 | 76 |
Total de usuarios | País B | 27 | 27 | 27 | 27 | 27 | 27 |
En PowerBI, he agregado dos componentes de visualización: un segmentador de datos y un gráfico de anillos. Lo que quiero lograr es:
Cuando no se selecciona ningún mes en Slicer, el número de usuarios inscritos y no inscritos que se muestran en el gráfico de anillos es el mismo que el del último mes (actualmente junio), en lugar de una suma de los últimos meses. (porque el total de usuarios solo 103)
Ahora, no tengo idea de ajustarlo, sinceramente por sus sugerencias y ayuda
Transform121
querría usar ISFILTERED o HASONEVALUE (personalmente, usaría ISFILTERED):
https://learn.microsoft.com/en-us/dax/isfiltered-function-dax
Esta es una combinación rápida, pero su código se verá así:
Users = // Gets the Start of Last Month VAR __MinDate = EOMONTH ( TODAY (), -2 ) + 1 // Gets the End of Last Month VAR __MaxDate = EOMONTH ( TODAY (), -1 ) // if Date is selected, Sums user counts. If no date selected, Returns Last Month's users count. RETURN IF ( ISFILTERED ( [Date] ), SUM ( [Users Counts] ), CALCULATE ( SUM ( [Users Counts] ), FILTER ( 'Trends', Date >= __MinDate && Date <= __MaxDate ) ) )
Hola @Yaru
En función de los datos actuales que muestre, también puede probar esta medida y usarla en el objeto visual del gráfico de anillos. La lógica para obtener el último mes es a través de la variable _lastMonth que obtiene la última fecha en su tabla y la convierte en formato aaaamm.
UserCount Measure = var _lastMonth = FORMAT(MAX('Table'[Date]),"yyyymm") return IF(ISFILTERED('Table'[Date]),SUM('Table'[Users Counts]),CALCULATE(SUM('Table'[Users Counts]),FORMAT('Table'[Date],"yyyymm")=_lastMonth))
Saludos
Jing
Si esta publicación ayuda, acéptala como solución para ayudar a otros miembros a encontrarla. ¡Agradezco sus felicitaciones!