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
caruso1058
Employee
Employee

Búsqueda de una columna para devolver valor

Hola tengo una tabla con varias iteraciones de números de pieza.
Si una pieza todavía está en desarrollo, entonces necesito devolver el último número de pieza.

Si la pieza ya no está en Desarrollo, devuelva "Producción"

Así es como se ven mis datos:

Número de piezaPN_BasePN_SuffixCount_of_PN_Bases
Q1234-900Q12349005
Q1234-901Q12349015
Q1234-902Q12349025
Q1234-903Q12349035
Q1234-001Q12340015
Q9876-900Q98769003
Q9876-901Q98769013
Q9876-001Q98760013
Q5678-900Q56789002
Q5678-901Q56789012

Me gustaría crear una o dos columnas calculadas para determinar la última versión de una pieza y su estado actual, como este:

Número de piezaPN_BasePN_SuffixCount_of_PN_BasesCurrent_VersionEstado
Q1234-900Q12349005FalsoDesarrollo
Q1234-901Q12349015FalsoDesarrollo
Q1234-902Q12349025FalsoDesarrollo
Q1234-903Q12349035FalsoDesarrollo
Q1234-001Q12340015VerdadProducción
Q9876-900Q98769003FalsoDesarrollo
Q9876-901Q98769013FalsoDesarrollo
Q9876-001Q98760013VerdadProducción
Q5678-900Q56789002FalsoDesarrollo
Q5678-901Q56789012VerdadDesarrollo
1 ACCEPTED SOLUTION
mahoneypat
Employee
Employee

Esta es una manera de hacerlo en una expresión de columna calculada. Tenga en cuenta que puede optar por devolver cualquiera de las últimas 3 variables para obtener resultados diferentes (por ejemplo, la última versión, Dev vs Prod, o Es la última T o F).

Latest Version =
VAR thisversion = Parts[PN_Suffix]
VAR latestproduction =
    CALCULATE (
        MAX ( Parts[PN_Suffix] ),
        ALLEXCEPT ( Parts, Parts[PN_Base] ),
        FILTER ( ALL ( Parts[PN_Suffix] ), VALUE ( Parts[PN_Suffix] ) < 900 )
    )
VAR latestdev =
    CALCULATE (
        MAX ( Parts[PN_Suffix] ),
        ALLEXCEPT ( Parts, Parts[PN_Base] ),
        FILTER ( ALL ( Parts[PN_Suffix] ), VALUE ( Parts[PN_Suffix] ) > 900 )
    )
VAR latest =
    IF ( ISBLANK ( latestproduction ), latestdev, latestproduction )
VAR islatest = thisversion = latest
VAR prodordev =
    IF ( ISBLANK ( latestproduction ), "Development", "Production" )
RETURN
    latest

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


View solution in original post

4 REPLIES 4
mahoneypat
Employee
Employee

Esta es una manera de hacerlo en una expresión de columna calculada. Tenga en cuenta que puede optar por devolver cualquiera de las últimas 3 variables para obtener resultados diferentes (por ejemplo, la última versión, Dev vs Prod, o Es la última T o F).

Latest Version =
VAR thisversion = Parts[PN_Suffix]
VAR latestproduction =
    CALCULATE (
        MAX ( Parts[PN_Suffix] ),
        ALLEXCEPT ( Parts, Parts[PN_Base] ),
        FILTER ( ALL ( Parts[PN_Suffix] ), VALUE ( Parts[PN_Suffix] ) < 900 )
    )
VAR latestdev =
    CALCULATE (
        MAX ( Parts[PN_Suffix] ),
        ALLEXCEPT ( Parts, Parts[PN_Base] ),
        FILTER ( ALL ( Parts[PN_Suffix] ), VALUE ( Parts[PN_Suffix] ) > 900 )
    )
VAR latest =
    IF ( ISBLANK ( latestproduction ), latestdev, latestproduction )
VAR islatest = thisversion = latest
VAR prodordev =
    IF ( ISBLANK ( latestproduction ), "Development", "Production" )
RETURN
    latest

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Wow @mahoneypat ,

Esto es hermoso y funciona perfectamente. Sólo puedo esperar que mis habilidades sean tan sabias como este algún día!

¡Muchas gracias!

amitchandak
Super User
Super User

@caruso1058 , ¿se hace la columna de fecha. Porque todas estas columnas no conducirán a la mezcla máxima, etc.

a partir de ahora crear columna de índice

https://stackoverflow.com/questions/45715963/creating-an-index-column-for-power-bi

y tratar como

if([Index] á maxx(filter(table,[PN_Base]-earlier([PN_Base])),[index]),"Production", "Development")

Lo ideal sería una cita. en lugar del índice, como index it orde rin que obtuvo datos en power bi

Hola @amitchandak ,

Es posible que pueda incorporar los valores de fecha con otra consulta del origen de datos principal. Si soy capaz de traer el valor de fecha, entonces la Columna calculada se vería así:

IF([DATE] ? MAXX(FILTER(table,[PN_Base]-EARLIER([PN_Base])),[DATE]),"Production", "Development") ?


Gracias por su ayuda con esto!

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.