Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!
Estoy tirando de varios archivos de Excel mal formateados en PowerBi, estos se extraen directamente de una máquina por lo que el formato debe permanecer el mismo.
La tabla tiene el siguiente aspecto:
Hora de inicio | Hora de finalización | Duración | ||
14:00:00 | 15:00:00 | 01:00:00 | ||
Producto | Agua | |||
Importe añadido | 100 |
Necesito crear una columna condicional para la hora de inicio y finalización del agua para poder verla en un diagrama de gantt o similar. Ya que no están en la misma fila, no puedo hacer esto.
Sé cómo hacer esto a través de índices, sin embargo, ya que hay alrededor de 50 ejemplos diferentes de esto, no creo que hacer esto sea factible. ¿Hay otros métodos que pueda usar para lograr el resultado que quiero?
Solved! Go to Solution.
Hola @ml2000, por favor pegue esta consulta en su editor avanzado y compruebe si funciona de acuerdo a sus necesidades.
Dejar
Source á Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjSxMjAAIiUdJUNTOFMBig0MoUKotFwwYCi/JTS5BIQMzyxJLUILIyswDE3vzSvRCExJSU1BcQ3BpJuFBsLAA", BinaryEncoding.Base64), Compression.Deflate)), let _t á ((tipo de texto que acepta valores NULL) meta [Serialized.Text ? true]) en la tabla de tipos ['"Hora de inicio" '_t''''''''_t''''''''''''''''''''''''''''''''''''''''_t''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''_t'''''''''''''''''''_t''''''''''''''''''''''''''''''''''''''''''''''
"Tipo de cambio" - Table.TransformColumnTypes(Source,"Hora de inicio", hora de inicio, "Hora de finalización", hora de tipo, "" ", escriba texto", "".1", escriba texto, "Duración", hora de tipo),
"Columna con pivote" - Table.Pivot(-"Changed Type", List.Distinct(-"Changed Type"[-" "]), " ", " .1"),
"Columnas eliminadas" - Table.RemoveColumns(-"Pivoted Column",""-),
"Relleno" - Table.FillDown("Columnas eliminadas","Duración"-),
"Filled Up1" - Table.FillUp("Filled Down","Duration", "End Time", "Start Time")),
"Filas filtradas" - Table.SelectRows(-"Filled Up1", cada uno ([-"Producto "] - "Agua"))
En
"Filas filtradas"
Hola @ml2000, por favor pegue esta consulta en su editor avanzado y compruebe si funciona de acuerdo a sus necesidades.
Dejar
Source á Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjSxMjAAIiUdJUNTOFMBig0MoUKotFwwYCi/JTS5BIQMzyxJLUILIyswDE3vzSvRCExJSU1BcQ3BpJuFBsLAA", BinaryEncoding.Base64), Compression.Deflate)), let _t á ((tipo de texto que acepta valores NULL) meta [Serialized.Text ? true]) en la tabla de tipos ['"Hora de inicio" '_t''''''''_t''''''''''''''''''''''''''''''''''''''''_t''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''_t'''''''''''''''''''_t''''''''''''''''''''''''''''''''''''''''''''''
"Tipo de cambio" - Table.TransformColumnTypes(Source,"Hora de inicio", hora de inicio, "Hora de finalización", hora de tipo, "" ", escriba texto", "".1", escriba texto, "Duración", hora de tipo),
"Columna con pivote" - Table.Pivot(-"Changed Type", List.Distinct(-"Changed Type"[-" "]), " ", " .1"),
"Columnas eliminadas" - Table.RemoveColumns(-"Pivoted Column",""-),
"Relleno" - Table.FillDown("Columnas eliminadas","Duración"-),
"Filled Up1" - Table.FillUp("Filled Down","Duration", "End Time", "Start Time")),
"Filas filtradas" - Table.SelectRows(-"Filled Up1", cada uno ([-"Producto "] - "Agua"))
En
"Filas filtradas"
Esto funcionó sin embargo ya he pivotado las columnas antes, así que no puedo hacerlo de nuevo.
Hola @ml2000 ,
¿Por qué no puedes volver a girar la mesa?
¿Puede compartir más información como Query o Pbix?
Saludos
Jay
@ml2000, puede proporcionar algún tipo de salida que está buscando.
Gracias por su respuesta, idealmente me gustaría que el resultado final se vea así:
Hora de inicio | Hora de finalización | Producto | Cantidad añadida | Duración |
14:00:00 | 15:00:00 | Agua | 100 | 01:00:00 |
Sin embargo, si se viera así (esto es lo que estaba buscando con las columnas condicionales), esto también funcionaría.
Hora de inicio | Hora de finalización | Hora de inicio del agua | Tiempo de fin de agua | Duración | Cantidad de agua añadida |
14:00:00 | 15:00:00 | 14:00:00 | 15:00:00 | 1:00:00 | 100 |