March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hola
Tengo una tabla que enumera los elementos (columna Código/Descriptor) varias veces dependiendo del número de opciones aplicables correspondientes (columna Programaciones aplicables). La columna Code/Descriptor contiene valores duplicados, los valores de Programaciones disponibles son únicos por código/Descriptor pero no únicos dentro de toda la columna.
En su lugar, estoy tratando de lograr el siguiente resultado:
Código/Descriptor | Código | Nivel de código | Horarios disponibles |
5.10.1.3.4 Gantries, Carros, Bloques y similares | 5.10.1.3.4 | Nivel 5 | 73-04; 84-59; 84-08; 84-13; 84-55; 73-03; 82-07; 84-07; 73-02 |
5.10.1.3.5 Controles y trabajo eléctrico | 5.10.1.3.5 | Nivel 5 | 44-10 |
5.10.1.6.2 Instalación completa de polipastos | 5.10.1.6.2 | Nivel 5 | 84-11; 84-59 |
¿Hay alguna manera de lograr esto en el editor de consultas o con una expresión DAX/columna calculada, idealmente sin usar el lenguaje M?
Muchas gracias por su ayuda.
Ellie
Solved! Go to Solution.
Hola @EllieSim ,
Puede agrupar en Código/Descriptor, Código y Nivel de código, elegir alguna operación ficticia para Horarios Disponibles (por ejemplo, Max, no "Todas las Filas") y, a continuación, ajuste el código generado para combinar los nombres:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("tdKxCsIwEAbgVzk6tyFpG1tXRVRwFBxKh1APLD0baYLg23vFwXZxsdkukHwJ/5+qirRQUiiRiRz2pvdDiy6G82CJ8MXThmzTOTD9FfwNgdoOo3hyiBcnfCKB5qnIEplHdbysWuaJXodQZRlCVVmQBPTi6thWgFzTRBZB2lpeHRNI56qGrWXV0sfYETZ8R2MILnboppSeUTkXL6fUSqRM3R+EHuFgW+cdHHvnDZHxre2/FO/83fZflFLLvYp/S/0G", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Code/Descriptor" = _t, Code = _t, #"Code Level" = _t, #"Available Schedules" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Code/Descriptor", type text}, {"Code", type text}, {"Code Level", type text}, {"Available Schedules", type text}}),
#"Grouped Rows" = Table.Group( #"Changed Type" , {"Code/Descriptor","Code","Code Level"}, {{"Available", each Text.Combine([Available Schedules], ";"), type text}})
in
#"Grouped Rows"
Puede consultar más detalles desde aquí.
Saludos
Stephen Tao
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola @EllieSim ,
Puede agrupar en Código/Descriptor, Código y Nivel de código, elegir alguna operación ficticia para Horarios Disponibles (por ejemplo, Max, no "Todas las Filas") y, a continuación, ajuste el código generado para combinar los nombres:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("tdKxCsIwEAbgVzk6tyFpG1tXRVRwFBxKh1APLD0baYLg23vFwXZxsdkukHwJ/5+qirRQUiiRiRz2pvdDiy6G82CJ8MXThmzTOTD9FfwNgdoOo3hyiBcnfCKB5qnIEplHdbysWuaJXodQZRlCVVmQBPTi6thWgFzTRBZB2lpeHRNI56qGrWXV0sfYETZ8R2MILnboppSeUTkXL6fUSqRM3R+EHuFgW+cdHHvnDZHxre2/FO/83fZflFLLvYp/S/0G", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Code/Descriptor" = _t, Code = _t, #"Code Level" = _t, #"Available Schedules" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Code/Descriptor", type text}, {"Code", type text}, {"Code Level", type text}, {"Available Schedules", type text}}),
#"Grouped Rows" = Table.Group( #"Changed Type" , {"Code/Descriptor","Code","Code Level"}, {{"Available", each Text.Combine([Available Schedules], ";"), type text}})
in
#"Grouped Rows"
Puede consultar más detalles desde aquí.
Saludos
Stephen Tao
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Muchas gracias.
Hola, gracias por tu rápida respuesta. ¿Alguna idea sobre cómo corregir los puntos y comas al fusionar las columnas pivotadas? Buscar y reemplazar todavía deja un punto y coma en la parte delantera y final de cada resultado combinado.