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.
Hola, chicos
Tengo esta cosa que estoy tratando de crear, pero me faltan las habilidades para ello. Es difícil exlain en el título, así que trataré de ser lo más claro posible con mis datos a continuación:
Mis datos de entrada tienen este aspecto:
Fase es sólo un código para un proyecto. Marca de inicio y finalización la fecha de inicio y finalización de dicha fase.
Fase | Empezar | Final |
A | 1-1-2019 | 31-12-2019 |
B | 1-5-2019 | 31-12-2020 |
C | 1-1-2019 | 31-12-2020 |
D | 22-7-2019 | 29-5-2020 |
E | 22-7-2019 | 29-5-2020 |
F | 22-7-2019 | 31-12-2019 |
G | 22-7-2019 | 29-5-2020 |
H | 22-7-2019 | 29-5-2020 |
I | 22-7-2019 | 29-5-2020 |
J | 22-7-2019 | 29-5-2020 |
K | 22-7-2019 | 29-5-2020 |
Lo que estoy tratando de lograr es una tabla de fechas que se ve así, donde se crea una fila para cada día entre el inicio y el final por fase. Así que para la fase A tendría 356 filas creadas para cada día del año, y después de eso pasa a la fase B donde crea una fila para cada día entre 1-5-2019 y 31-12-2019, etc.
Fecha | Fase |
1-1-2019 | A |
2-1-2019 | A |
3-1-2019 | A |
.. | .. |
29-12-2019 | A |
30-12-2019 | A |
31-12-2019 | A |
1-5-2019 | B |
2-5-2019 | B |
3-5-2019 | B |
.. | .. |
29-12-2019 | B |
30-12-2019 | B |
31-12-2019 | B |
1-1-2019 | C |
2-1-2019 | C |
3-1-2019 | C |
.. | .. |
29-12-2020 | C |
30-12-2020 | C |
31-12-2020 | C |
etcetera |
Recientemente aprendí a crear una tabla de fechas, pero esta fase añade un elemento por encima de mis habilidades. Espero que alguien sepa cómo lograr esto, ¡porque me ayudará mucho!
¡Gracias!
Hola , @ErikBI
Haga clic en Nuevo origen ->crear una consulta en blanco->Editor avanzado
A continuación, pegue el siguiente código M:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTLUN9Q3MjC0BDGN9I2hnFidaCUnoJAppqyRAVjWGbteqKwLUMhc38gIJm2qb2SJkHXFK+uGJovmLHe8mj3wynrilfXCK+uNWzYWAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Phase = _t, start = _t, end = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Phase", type text}, {"start", type date}, {"end", type date}}),
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each Duration.TotalDays(Date.StartOfDay([end])-Date.StartOfDay([start]))),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each List.Generate(()=>[Custom], each _ >= 0, each _ - 1)),
#"Expanded Custom.1" = Table.ExpandListColumn(#"Added Custom1", "Custom.1"),
#"Added Custom2" = Table.AddColumn(#"Expanded Custom.1", "Date", each if [Custom.1]=[Custom] then [start] else Date.AddDays(Date.StartOfDay([start]),[Custom]-[Custom.1])),
#"Removed Columns" = Table.RemoveColumns(#"Added Custom2",{"start", "end", "Custom", "Custom.1"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Removed Columns",{{"Date", type date}}),
#"Sorted Rows" = Table.Sort(#"Changed Type1",{{"Phase", Order.Ascending}, {"Date", Order.Ascending}})
in
#"Sorted Rows"
Para obtener más detalles, haga doble clic en el paso en "PASOS APLICADOS".
Saludos
Equipo de soporte de la comunidad _ Eason
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
¡Brillante! tomó un poco de juguete con el editor avanzado para ajustar los datos de origen, pero parece funcionar perfectamente ahora.
¡Gracias!
@ErikBI ,
ver si uno de estos dos puede ayudar
O Open Pbix
https://www.dropbox.com/s/bqbei7b8qbq5xez/leavebetweendates.pbix?dl=0
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |