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

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.

Reply
Syndicate_Admin
Administrator
Administrator

Calcular un subconjunto de una medida en función de otra tabla

Hola

Actualmente tengo una tabla de fechas que uso como rebanadora y tengo:

1ª Tabla

Tabla con todos los visitantes (un registro por cada día que la visitan, por lo tanto tengo esta medida DAX para calcular los Usuarios Activos:

Usuarios activos (NUEVO) = CALCULAR(
DISTINCTCOUNT(Análisis_Visitors[Correo electrónico]),
TODOSSELECCIONADOS('calendario'[Mes])
)
Fecha de la visitaCorreo electrónicoID de cuenta
15/01/2022personab@gmail.comAB12345
16/01/2022personab@gmail.comAB12345
19/01/2022xyz@gmail.comXZ9876
25/02/2022xyz@gmail.comXZ9876
En este ejemplo, la fórmula de usuario activo devuelve 2 para enero y 1 para febrero (los usuarios activos se definen con al menos 1 visita al mes.
2ª Tabla
Tabla con los usuarios que son los titulares de licencias de pago, cada correo electrónico tiene una fecha de inicio y finalización para cuando son un usuario de pago nombrado. Y calculando el total así:
Total de titulares de licencias con nombre =
DÓNDE Fecha actual = MÁXIMO('calendario'[Fecha])
DÓNDE Usuarios pagados =
CALCULAR(
CUENTAS('Usuarios de pago - Datos maestros'),
TODO('calendario'),
'calendario'[Fecha]<=Fecha actual,
ISBLANK('Usuarios de pago - Datos maestros'[LicenseExpirationDate])
|| 'Usuarios de pago - Datos maestros'[LicenseExpirationDate]>=Fecha actual
)
DÓNDE Resultado =
SI(
AÑO(Fecha actual)<=AÑO(HOY()),
Usuarios pagados
)
DEVOLUCIÓN
Resultado
Ejemplo de datos:
ID de cuentaCorreo electrónicoFecha de inicio de la licencia de pagoFecha de finalización de la licencia de pago
AB12345personab@gmail.com1/1/202231/3/2022
XZ9876xyz@gmail.com12/1/202212/4/2022
QW567nzc@test.com1/1/202231/12/2022
Las 2 tablas se unen mediante una tabla de asignación como puente con el ID de cuenta.
Lo que estoy tratando de obtener es una medida que me dice la cantidad total de usuarios nominales activos.
Digamos que tengo 10 Licencias Nombradas en febrero (10 correos electrónicos en la segunda tabla), y solo 5 de ellas están activas para ese mes (5 de estos correos electrónicos en la primera tabla de usuarios activos), me gustaría que la medida devolviera 5.
¿Alguien puede ayudar con eso?
2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Hi, @Andmi00 ;

Lo sentimos, en su tabla no puedo encontrar la columna [LicenseExpirationDate] sin embargo su medida tenía; A mi entender, se podría crear esta medida.

Active Users (NEW) = CALCULATE(
DISTINCTCOUNT(Analytics_Visitors[Email]),
FILTER( 'Analytics_Visitors',EOMONTH([Visit Date],0)=EOMONTH(MAX('calendar'[Date]),0)))
Total Named License Holders = 
CALCULATE(DISTINCTCOUNT('Paid Users - Master Data'[Account ID]),
FILTER('Paid Users - Master Data',[Paid License Start Date]<=MAX('calendar'[Date])&&[Paid License End Date]>=MAX('calendar'[Date])))
diff = [Total Named License Holders]-[Active Users (NEW)]

El espectáculo final:

vyalanwumsft_0-1653446381943.png

Si no es correcto, ¿puede compartir el ejemplo y el resultado que desea generar?
Saludos
Equipo de soporte de la comunidad _ Yalan Wu
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Gracias por su ayuda, no necesito la diferencia sino el número compartido entre las 2 tablas para el mismo período (Usuarios de pago que estaban activos).

Traté de resolverlo de esta manera, ¿qué piensas de esto?

Active PAID Users =
VAR CurrentDate = MAX('calendar'[Date])
VAR PaidUsers =
CALCULATETABLE(
VALUES('Paid Users - Master Data'[email]),
ALL('calendar'),
'calendar'[Date]<=CurrentDate,
ISBLANK('Paid Users - Master Data'[LicenseExpirationDate])
|| 'Paid Users - Master Data'[LicenseExpirationDate]>=CurrentDate
)
return CALCULATE( [Active Users], TREATAS( PaidUsers, Analytics_Visitors[Email]) )

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.