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

Cómo contar dinámicamente valores únicos en un objeto visual de tabla

hola

Estamos intentando crear un informe de Power Bi que cuente productos únicos basados en cuentas dentro de un intervalo de fechas dinámico.

cuenta fecha productoubicación unique_product_count
12310/1/2020a 1
12310/1/2020a 2
12310/1/2020a 3
12311/1/2020b2
12311/1/2020b3
12311/1/2020b4
12312/1/2020b1
12312/1/2020b2
12312/1/2020b4

Queremos identificar para un intervalo de fechas determinado (en función de una segmentación de fechas en el informe) qué cuentas tienen más de un producto único
En el ejemplo anterior, si la segmentación de datos de fecha está entre el 1/10/2020 y el 31/12/2020, el unique_product_count debe ser 2 para todas las filas.
Si la segmentación de datos está entre el 11/1/2020 y el 31/12/2020, el unique_product_count debe ser 1 para todas las filas.
si la segmentación de datos está entre el 1/10/2020 y el 15/11/2020, el unique_product_count debe ser 2 para todas las filas.

Gracias de antemano.

1 ACCEPTED SOLUTION

Hey @ssingh33 ,

Creo que esa descripción me ayudó a entender mejor su resultado 😊

Prueba esa versión:

Unique Products =
CALCULATE(
    DISTINCTCOUNT( mytable[product] ),
    ALLEXCEPT(
        myTable,
        myTable[Account],
        myTable[Date]
    ),
    ALLSELECTED( myTable[Date] )
)

Si necesita ayuda por favor hágamelo saber.
Si respondiera a su pregunta, estaría feliz si pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍
Saludos
Denis

View solution in original post

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

Hola @selimovd
Esto funciona para mí, excepto que distinctcount no cuenta el 'objeto' con un valor vacío.

En otras palabras: una ubicación tiene 100 objetos y cada objeto tiene una columna de valor. Quiero saber cuántos objetos tengo, incluso cuando esta columna de valores está vacía. Pero quiero que sea dinámico, porque algunos objetos son irrelevantes en función de un filtro (como cuando un objeto solo muestra valores de medianoche, no pertenece a los objetos del mediodía).
El problema concreto es que quería comparar los objetos correspondientes de diferentes ubicaciones, pero 1 ubicación pequeña no mostró ese objeto (los valores muestran cuántos problemas tuvo ese objeto en el último año).

Podría decidir usar el conteo no dinámico si esto no funciona.

Aquí está mi medida (TagCode son todos los objetos únicos de todas las ubicaciones):

Count_Object_All =
CALCULAR(
DISTINCTCOUNT(L_PD_Totaal[TagCode]),
TODOSELECCIONADO(L_PD_Totaal[TagCode])
)
Gracias, Gert.
Syndicate_Admin
Administrator
Administrator

No @selimovd

La solución funciona para el modo de importación, pero no cuando la usamos en un informe que tiene consulta directa. Cuando usamos Direct Query, el valor de distinct product siempre es 1.

¿Se trata de un problema con el comportamiento de las funciones ALLEXCEPT y/o ALLSELECTED?

Hola @ssingh33 ,

Sí, tanto ALLEXCEPT como ALLSELECTED no funcionarán con DirectQuery.

¿Hay alguna razón específica por la que usa DirectQuery? Tiene muchas desventajas y la mayoría de las veces no es necesario.

Saludos

Denis

Syndicate_Admin
Administrator
Administrator

Hey @ssingh33 ,

si entendí bien los requisitos, la siguiente medida debería darle el resultado deseado:

Unique Products per =
VAR vFilterTable =
    ADDCOLUMNS (
        SUMMARIZE ( myTable, myTable[account], myTable[product] ),
        "@AmountProducts", CALCULATE ( DISTINCTCOUNT ( mytable[product] ) )
    )
RETURN
    SUMX ( vFilterTable, [@AmountProducts] )

Si necesita ayuda por favor hágamelo saber.

Si respondiera a su pregunta, estaría feliz si pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍

Saludos

Denis

Blog: WhatTheFact.bi

Sígueme: twitter.com/DenSelimovic

hola

Gracias por la rápida respuesta. Probamos la medida pero devuelve un valor de 1 cuando hay 2 productos únicos. La medida que da tiene sentido, pero la forma en que PowerBI calcula los productos únicos no parece tener en cuenta todo el valor del conjunto de datos.

ssingh33_0-1624392798740.png

De la captura de pantalla anterior, los productos únicos por columna deben tener un valor de 2 para todas las filas.

gracias

Hey @ssingh33 ,

Creo que esa descripción me ayudó a entender mejor su resultado 😊

Prueba esa versión:

Unique Products =
CALCULATE(
    DISTINCTCOUNT( mytable[product] ),
    ALLEXCEPT(
        myTable,
        myTable[Account],
        myTable[Date]
    ),
    ALLSELECTED( myTable[Date] )
)

Si necesita ayuda por favor hágamelo saber.
Si respondiera a su pregunta, estaría feliz si pudiera marcar mi publicación como una solución ✔️ y darle un pulgar hacia arriba 👍
Saludos
Denis

Eso funciona.

Gracias por su ayuda!

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.