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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Pingouin_Puni
Frequent Visitor

Aplique un valor a cada ID duplicado

Hola a todos

Estoy teniendo problemas para aplicar un valor determinado para una fila si el número de identificador es un duplicado. Quiero aplicar un valor basado en un colomn calculado (estado de la misión, que se basa en las fechas de agening y final de una misión).

Por cierto, ya tengo identificar duplicados gracias a esta fórmula, que me da un resultado >1 si ID es un duplicado:

Duplicados ?
Var Matricule - [ID]
devolución

CALCULAR(
COUNTROWS(Ajouter1);
ALL(Ajouter1);
Ajouter1[ID] - ID
)

Lo que tengo :

IdEstado de la misión
m9306Terminado
m9306
m9306En curso

Lo que quiero mostrar :

IdEstado de la misión
m9306En curso

¿Alguna idea sobre cómo lograr eso?

saludos

Puni Penguin

1 ACCEPTED SOLUTION
v-zhenbw-msft
Community Support
Community Support

Hola @Pingouin_Puni ,

Podemos crear una columna de cálculo para satisfacer sus necesidades.

Column = 
VAR max_date =
    CALCULATE (
        MAX ( 'Table'[date] ),
        FILTER ( 'Table', 'Table'[id] = EARLIER ( 'Table'[id] ) )
    )
RETURN
    CALCULATE (
        MAX ( 'Table'[State of the mission] ),
        FILTER (
            'Table',
            'Table'[id] = EARLIER ( 'Table'[id] )
                && 'Table'[date] = max_date
        )
)

El resultado así,

apply 1.jpg

Si no cumple con su requisito, ¿podría mostrar el resultado exacto esperado basado en la tabla que hemos compartido?

BTW, pbix como adjunto.

Saludos

Equipo de Apoyo comunitario _ zhenbw

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

View solution in original post

5 REPLIES 5
v-zhenbw-msft
Community Support
Community Support

Hola @Pingouin_Puni ,

Podemos crear una columna de cálculo para satisfacer sus necesidades.

Column = 
VAR max_date =
    CALCULATE (
        MAX ( 'Table'[date] ),
        FILTER ( 'Table', 'Table'[id] = EARLIER ( 'Table'[id] ) )
    )
RETURN
    CALCULATE (
        MAX ( 'Table'[State of the mission] ),
        FILTER (
            'Table',
            'Table'[id] = EARLIER ( 'Table'[id] )
                && 'Table'[date] = max_date
        )
)

El resultado así,

apply 1.jpg

Si no cumple con su requisito, ¿podría mostrar el resultado exacto esperado basado en la tabla que hemos compartido?

BTW, pbix como adjunto.

Saludos

Equipo de Apoyo comunitario _ zhenbw

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

Hola @v-zhenbw-msft ,

Esta última solución con un colomn calculado funcionó perfectamente y respondió a mi necesidad. Acabo de reemplazar las fechas con la idea prioritaria de @camargos88, así que gracias a ambos 🙂

saludos

Puni Penguin

camargos88
Community Champion
Community Champion

Hola @Pingouin_Puni ,

¿Cómo está ordenando la columna Estado de la falta?

Puede darles valores numéricos (por prioridad).

Después de eso, puede obtener el último valor por id.

¿Eso te ayuda?

Ricardo



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Gracias por responder a @camargos88 ,

Estos son los diferentes sates de la misión que tengo y les di un valor prioritario:

Estado de la misiónPrioridad
Sin misión0
Misión por venir0
Terminado0
En curso1

En cuanto al último valor par ID, ¿sabe cuál sería la fórmula dax? Supongo que MAX( ) estaría involucrado, pero no puedo entenderlo. Todavía soy nuevo en DAX, pero aprende todos los días 🙂

Puni Penguin

Hola @Pingouin_Puni ,

Sólo relacionó ambas tablas por estado y cree esta medida:

Medida ?
VAR _priority á MAXX(SUMMARIZE('Table'; 'Tabla'[Id]; "Max"; MAX(Prioridad[Prioridad])); [Máx.])
RETURN CALCULATE(DISTINCT(Priority[Status of the mission]); FILTRO(Prioridad; Prioridad[Prioridad] - _priority))
También si es necesario, puede crear una nueva tabla:
T - ADDCOLUMNS(SUMMARIZE('Table'; 'Tabla'[Id]; "Max"; MAX(Prioridad[Prioridad])); "Estado"; CALCULATE(DISTINCT(Priority[Status of the mission]); FILTRO(Prioridad; Prioridad[Prioridad] á [Máx.])))
Ricardo


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors