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

Level up your Power BI skills this month - build one visual each week and tell better stories with data! Get started

Reply
Anonymous
Not applicable

Obtener de colum calculado con el idioma M

Hola, tengo una tabla a continuación:

Rick_ferreira_0-1608574446236.png


Necesito crear una columna de datos finales como:

Rick_ferreira_1-1608574553852.png

Los datos finales se calculan como:
1- Si existe un nuevo estado cada id, los datos finales son iguales a un primer estado de datos de siguiente.
2- Si no existe un nuevo estado, los datos finales son iguales a un dato ahora.

Necesito crear estas columnas en la consulta power bi, pero no puedo.

¿Alguien puede ayudarme, por favor?

2 ACCEPTED SOLUTIONS
AlB
Community Champion
Community Champion

Hay @Rick_ferreira

También puede hacer esto en DAX, pero si lo necesita en PQ, coloque el siguiente código M en una consulta en blanco para ver los pasos:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXIEYkN9Q30jAyMDpVidaCUjqKCxvilC0BgqaKpvhiroBNJupG+Bqh8kagYXjAUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [ID = _t, Status = _t, #"First data" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Status", type text}, {"First data", type date}}),

    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each let aux_ = Table.SelectRows(#"Changed Type", (inner)=> inner[Status]<>[Status] and inner[First data] > [First data] and inner[ID]=[ID])[First data], res_ = if List.Count(aux_) = 0 then "now" else List.Min(aux_) in res_, type text)
in
    #"Added Custom"

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

AlB
Community Champion
Community Champion

@Rick_ferreira

Ver todo en el trabajo en el archivo adjunto.

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

6 REPLIES 6
Ashish_Mathur
Super User
Super User

Hola

Esta fórmula de columna calculada funciona

=if(CALCULATE(COUNTROWS(Data),FILTER(Data,Data[ID]=EARLIER(Data[ID])&&Data[First Data]>EARLIER(Data[First Data])))<1,today(),CALCULATE(min(Data[First Data]),FILTER(Data,Data[ID]=EARLIER(Data[ID])&&Data[First Data]>EARLIER(Data[First Data]))))

Espero que esto ayude.

Untitled.png


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
AlB
Community Champion
Community Champion

@Rick_ferreira

Ver todo en el trabajo en el archivo adjunto.

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

mahoneypat
Microsoft Employee
Microsoft Employee

Intente eliminar las comillas dobles alrededor de los nombres de columna cuando esté dentro de [ ] en el paso "Añadido personalizado".

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


AlB
Community Champion
Community Champion

Hay @Rick_ferreira

También puede hacer esto en DAX, pero si lo necesita en PQ, coloque el siguiente código M en una consulta en blanco para ver los pasos:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXIEYkN9Q30jAyMDpVidaCUjqKCxvilC0BgqaKpvhiroBNJupG+Bqh8kagYXjAUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [ID = _t, Status = _t, #"First data" = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"ID", Int64.Type}, {"Status", type text}, {"First data", type date}}),

    #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each let aux_ = Table.SelectRows(#"Changed Type", (inner)=> inner[Status]<>[Status] and inner[First data] > [First data] and inner[ID]=[ID])[First data], res_ = if List.Count(aux_) = 0 then "now" else List.Min(aux_) in res_, type text)
in
    #"Added Custom"

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

Anonymous
Not applicable

Aparece un error cuando me adapté para mi tabla. jjj.png

Greg_Deckler
Community Champion
Community Champion

@ImkeF @edhans



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

Helpful resources

Announcements
April Power BI Update Carousel

Power BI Monthly Update - April 2026

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

Fabric SQL PBI Data Days

Data Days 2026 coming soon!

Sign up to receive a private message when registration opens and key events begin.

New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.