cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
William_Moreno
Helper II
Helper II

Para convertir la mesa vertical en tabla horizontal en powerbi

Hola, chicos

He enfrentado un problema para resolver este caso:

Tengo la siguiente tabla:

Order_IDMovFecha
10050050110510/08/2020
10050050110511/08/2020
10050050110512/08/2020
10050050110513/08/2020
10050050110514/08/2020

Quiero convertir en esta tabla:

Order_IDFecha1Fecha2Fecha3Fecha4Fecha 5
10050050110/08/202011/08/202012/08/202013/08/202014/08/2020

¿Es posible en PowerBI?

¡Gracias!

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

Hola @William_Moreno ,

Podemos usar algunas transformaciones en Power Query Editor para satisfacer sus necesidades.

1. Copie la tabla y elimine la columna Mov.

C1.jpg

2. Agrupe la columna Order_ID.

C2.jpg

3. Agregue una columna personalizada para obtener la columna Fecha.

C3.jpg

4. Extraiga la columna Personalizado por coma.

C4.jpg

5. Por último, divida la columna.

C5.jpg

Toda la consulta M como sigue,

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjQwMAUhQyUdINsUSBoZGBnoW+gbGijF6uCTNyQgb0RA3piAvAmKvBFY3gwmb6hviF/aCL+0MX5pAnabKsXGAgA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Order_ID = _t, Mov = _t, Date = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}}),
    #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"Mov"}),
    #"Grouped Rows" = Table.Group(#"Removed Columns", {"Order_ID"}, {{"Data", each _, type table [Order_ID=nullable text, Date=nullable date]}}),
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.Column([Data],"Date")),
    #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), ","), type text}),
    #"Removed Columns1" = Table.RemoveColumns(#"Extracted Values",{"Data"}),
    #"Split Column by Delimiter" = Table.SplitColumn(#"Removed Columns1", "Custom", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Custom.1", "Custom.2", "Custom.3", "Custom.4", "Custom.5"}),
    #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Order_ID", Int64.Type}, {"Custom.1", type date}, {"Custom.2", type date}, {"Custom.3", type date}, {"Custom.4", type date}, {"Custom.5", type date}})
in
    #"Changed Type1"

Si no cumple con sus requisitos, ¿podría mostrar el resultado esperado exacto basado en la tabla que ha compartido?

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

BTW, pbix como adjunto.

View solution in original post

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

Hola @William_Moreno ,

¿Qué tal el resultado después de seguir las sugerencias mencionadas en mi publicación original?

¿Podría proporcionar más detalles o resultado esperado si no cumple con su requisito?

Si ha solucionado el problema por su cuenta, por favor comparta su solución. Si la ayuda de los mensajes anteriores, por favor márquela como una solución para ayudar a otros a encontrarlo más rápidamente.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

v-zhenbw-msft
Community Support
Community Support

Hola @William_Moreno ,

Podemos usar algunas transformaciones en Power Query Editor para satisfacer sus necesidades.

1. Copie la tabla y elimine la columna Mov.

C1.jpg

2. Agrupe la columna Order_ID.

C2.jpg

3. Agregue una columna personalizada para obtener la columna Fecha.

C3.jpg

4. Extraiga la columna Personalizado por coma.

C4.jpg

5. Por último, divida la columna.

C5.jpg

Toda la consulta M como sigue,

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjQwMAUhQyUdINsUSBoZGBnoW+gbGijF6uCTNyQgb0RA3piAvAmKvBFY3gwmb6hviF/aCL+0MX5pAnabKsXGAgA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Order_ID = _t, Mov = _t, Date = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}}),
    #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"Mov"}),
    #"Grouped Rows" = Table.Group(#"Removed Columns", {"Order_ID"}, {{"Data", each _, type table [Order_ID=nullable text, Date=nullable date]}}),
    #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.Column([Data],"Date")),
    #"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), ","), type text}),
    #"Removed Columns1" = Table.RemoveColumns(#"Extracted Values",{"Data"}),
    #"Split Column by Delimiter" = Table.SplitColumn(#"Removed Columns1", "Custom", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Custom.1", "Custom.2", "Custom.3", "Custom.4", "Custom.5"}),
    #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Order_ID", Int64.Type}, {"Custom.1", type date}, {"Custom.2", type date}, {"Custom.3", type date}, {"Custom.4", type date}, {"Custom.5", type date}})
in
    #"Changed Type1"

Si no cumple con sus requisitos, ¿podría mostrar el resultado esperado exacto basado en la tabla que ha compartido?

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

BTW, pbix como adjunto.

View solution in original post

amitchandak
Super User IV
Super User IV

@William_Moreno , Crear una columna (Subcategoría basada en el identificador de pedido) Rango y anexar eso con Fecha

Fecha nueva : "Fecha" & [RanK]

Para rango Consulte estos enlaces
https://radacad.com/how-to-use-rankx-in-dax-part-2-of-3-calculated-measures
https://radacad.com/how-to-use-rankx-in-dax-part-1-of-3-calculated-columns
https://radacad.com/how-to-use-rankx-in-dax-part-3-of-3-the-finale
https://community.powerbi.com/t5/Community-Blog/Dynamic-TopN-made-easy-with-What-If-Parameter/ba-p/3...



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

pranit828
Super User II
Super User II

Hola @William_Moreno

Usar tabla dinámica

https://databear.com/power-bi-pivot-and-unpivot-columns/




PBI_SuperUser_Rank@1x.png


Hope it resolves your issue? 
Did I answer your question? Mark my post as a solution!

Appreciate your Kudos, Press the thumbs up button!!
Linkedin Profile

Thank you for your answer but,  the corvesion has  to be developed in another table!

It means that the vertical table is the table 1 e horizontal table is table 2 in power bi.

Thanks in advanced.

Helpful resources

Announcements
PBI User Groups

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group!

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

secondImage

Are You Ready?

Test your skills now with the Cloud Skills Challenge.

Top Solution Authors