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
Anonymous
Not applicable

[¡Cuidado! Novato!] Recuento de valor basado en otra columna filtrada

Hola, chicos

Tengo problemas con el cálculo de un valor. Mi tarea es la siguiente:

Tengo:

tabla: usuarios con

columnas: [id, name, createdAt, partnerId, isPartner]
Un usuario puede atraer a otros usuarios, son el socio. Si un usuario tiene partnerId, significa que ha sido contratado por otro usuario. isPartner tiene valores 1 o 0.


Necesito contar los usuarios que tienen partnerId, pero solo para los socios que se crearon en un intervalo de fechas específico.

Mi medida está aquí:

allReferals = CALCULATE(
    COUNT(users[id]),
    FILTER(
        'users',
        'users'[partnerId] <> BLANK() 
        && 'users'[partnerId] IN { 
            SELECTCOLUMNS(
                FILTER(
                    'users', 
                    'users'[createdAt] >= CALCULATE(MIN('calendar'[Date]), ALLSELECTED('calendar'[Date]))
                    && 'users'[createdAt] <= CALCULATE(MAX('calendar'[Date]), ALLSELECTED('calendar'[Date]))
                    && 'users'[isPartner] = 1
                ),
            "id2", [id]
            )
        }
    )
)

No funciona en absoluto. Puedes ver mi muestra aquí: allReferals.pbix

Gracias de antemano!

1 ACCEPTED SOLUTION
dax
Community Support
Community Support

Hola @mordaKota ,

Usted podría tratar a continuación medida para ver si funciona o no.

Measure 1 = CALCULATE(
    COUNT(users[id]),
    FILTER(
        'users',
        'users'[partnerId] <> BLANK() 
        &&'users'[createdAt] >= MIN('calendar'[Date])&& 
                    'users'[createdAt] <= MAX('calendar'[Date])
                    && 'users'[isPartner] = 1
            
    )
)

Saludos
Zoe Zhi

Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
dax
Community Support
Community Support

Hola @mordaKota ,

Usted podría tratar a continuación medida para ver si funciona o no.

Measure 1 = CALCULATE(
    COUNT(users[id]),
    FILTER(
        'users',
        'users'[partnerId] <> BLANK() 
        &&'users'[createdAt] >= MIN('calendar'[Date])&& 
                    'users'[createdAt] <= MAX('calendar'[Date])
                    && 'users'[isPartner] = 1
            
    )
)

Saludos
Zoe Zhi

Si este post ayuda, entonces considera Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

mhossain
Solution Sage
Solution Sage

Hola @mordaKota

No está seguro de por qué está escribiendo criterios de filtro de fecha, la medida funcionará ya según su segmentación de datos.

Prueba esto

allReferals - CALCULATE(
COUNTROWS(users),users[partnerID]<>BLANK(), users[isPartner]-1)
Por favor, hágamelo saber si lo anterior funciona
amitchandak
Super User
Super User

@mordaKota, no muy claro.

Como

calculate(count(user[ID]),user[isPartner]-1)

Anonymous
Not applicable

calculate(count(user[ID]),user[isPartner]-1)

esto volverá como el recuento de usuarios que son socios.

Necesito usuarios que fueron contratados por los usuarios asociados (que tienen partnerId !-0) (los usuarios asociados deben crearse de 08/11/2020 a 08/12/2020, por ejemplo).

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.