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.
Tengo un desafío que estoy tratando de superar y espero que alguien aquí haya tenido un problema similar y pueda ayudar.
Tengo una tabla que contiene todos los casos gestionados por un helpdesk, fecha de entrada, duración, etc.
Hay múltiples casos para un día determinado, del mismo modo hay días sin casos.
Lo que quiero hacer es agregar la duración total de todos los casos manejados en un día determinado en una tabla separada que es una lista de todos los días del año.
Si no se registraron casos, quiero que la columna de duración de la tabla 2 muestre 0.
Si hubo casos, entonces quiero que la columna de duración de la tabla 2 muestre el total de la duración de todos los casos registrados esa fecha de la tabla 1.
Espero que esto tenga sentido. Estoy seguro de que hay una manera de hacer esto, simplemente no puedo entenderlo. Datos ficticios para explicar el concepto a continuación.
Cuadro 1 Datos del caso | ||
Fecha y hora registrada | Identificación del caso | Duración (Mins) |
01/09/2021 09:00 | 100 | 10 |
01/09/2021 11:15 | 101 | 20 |
01/09/2021 13:30 | 102 | 30 |
03/09/2021 08:45 | 103 | 10 |
03/09/2020 09:30 | 104 | 15 |
04/09/2021 10:15 | 105 | 20 |
06/09/2021 09:30 | 106 | 50 |
06/09/2021 11:00 | 107 | 5 |
08/09/2021 13:15 | 108 | 20 |
08/09/2021 14:00 | 109 | 20 |
10/09/2021 17:00 | 110 | 10 |
Cuadro 2 Total por fecha | |||
Fecha | Duración total (minutos) | ||
01/09/2021 | 60 | Suma de la duración de todos los casos registrados el 1/9/21, por ejemplo, Suma D4:D6 | |
02/09/2021 | 0 | Suma de la duración de todos los casos registrados el 2/9/21 e.g.No casos en este día en la tabla de datos de casos, por lo que devuelve 0 | |
03/09/2021 | 25 | Suma de la duración de todos los casos registrados el 3/9/21, por ejemplo, Suma de D7:D8 | |
04/09/2021 | 20 | Suma de la duración de todos los casos registrados el 4/9/21, por ejemplo, Suma de D9 | |
05/09/2021 | 0 | Suma de la duración de todos los casos registrados el 5/9/21 e.g.No casos en este día en la tabla de datos de casos, por lo que devuelve 0 | |
06/09/2021 | 55 | Suma de la duración de todos los casos registrados el 6/9/21, por ejemplo, Suma de D10:D11 | |
07/09/2021 | 0 | Suma de la duración de todos los casos registrados el 7/9/21 e.g.No casos en este día en la tabla de datos de casos, por lo que devuelve 0 | |
08/09/2021 | 40 | Suma de la duración de todos los casos registrados el 8/9/21, por ejemplo, Suma de D12:D13 | |
09/09/2021 | 0 | Suma de la duración de todos los casos registrados el 9/9/21 e.g.No casos en este día en la tabla de datos de casos, por lo que devuelve 0 | |
10/09/2021 | 10 | Suma de la duración de todos los casos registrados el 9/10/21, por ejemplo, Suma de D14 |
Solved! Go to Solution.
Aquí hay una forma de lograr lo que buscas.
En primer lugar, debe dividir la hora de fecha registrada en columnas de fecha y hora. En Power Query:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("bZBBDoAgDAS/Yjib0KWgwFcI//+GKCWt0cteJjtbaM0RPBUfKGCjUonc7iDp+v7iQEV6CEaGL+fKsxlGsnBWf65x9tn42e5LP96ZJo/qp7WfzP7x0z9Gpg8f98vLzptPnO35os9Gb3hc9aIcpPwUjvV9/QI=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Logged Date Time" = _t, #"Case ID" = _t, #"Duration (Mins)" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Logged Date Time", type datetime}, {"Case ID", Int64.Type}, {"Duration (Mins)", Int64.Type}}),
#"Split Column by Delimiter" = Table.SplitColumn(Table.TransformColumnTypes(#"Changed Type", {{"Logged Date Time", type text}}, "es-ES"), "Logged Date Time", Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv), {"Logged Date Time.1", "Logged Date Time.2"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Logged Date Time.1", type date}, {"Logged Date Time.2", type time}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Logged Date Time.1", "Logged Date"}, {"Logged Date Time.2", "Logged Time"}})
in
#"Renamed Columns"
Lo que te da esto:
Nest crea una tabla de fechas mediante:
Date Table =
VAR MinD = MIN('Table'[Logged Date])
VAR MaxD = MAX('Table'[Logged Date])
RETURN
CALENDAR(MinD, MaxD)
Cree una relación entre la tabla de fechas y el campo Fecha registrada. El modelo se ve así:
Cree una medida para la duración:
Sum Duration = SUM('Table'[Duration (Mins)]) + 0
Y finalmente cree el visual usando el campo de fecha de la Tabla de fechas y la medida [Suma de duración] para obtener:
He adjuntado el archivo PBIX de ejemplo
Aquí hay una forma de lograr lo que buscas.
En primer lugar, debe dividir la hora de fecha registrada en columnas de fecha y hora. En Power Query:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("bZBBDoAgDAS/Yjib0KWgwFcI//+GKCWt0cteJjtbaM0RPBUfKGCjUonc7iDp+v7iQEV6CEaGL+fKsxlGsnBWf65x9tn42e5LP96ZJo/qp7WfzP7x0z9Gpg8f98vLzptPnO35os9Gb3hc9aIcpPwUjvV9/QI=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Logged Date Time" = _t, #"Case ID" = _t, #"Duration (Mins)" = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Logged Date Time", type datetime}, {"Case ID", Int64.Type}, {"Duration (Mins)", Int64.Type}}),
#"Split Column by Delimiter" = Table.SplitColumn(Table.TransformColumnTypes(#"Changed Type", {{"Logged Date Time", type text}}, "es-ES"), "Logged Date Time", Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv), {"Logged Date Time.1", "Logged Date Time.2"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Logged Date Time.1", type date}, {"Logged Date Time.2", type time}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Logged Date Time.1", "Logged Date"}, {"Logged Date Time.2", "Logged Time"}})
in
#"Renamed Columns"
Lo que te da esto:
Nest crea una tabla de fechas mediante:
Date Table =
VAR MinD = MIN('Table'[Logged Date])
VAR MaxD = MAX('Table'[Logged Date])
RETURN
CALENDAR(MinD, MaxD)
Cree una relación entre la tabla de fechas y el campo Fecha registrada. El modelo se ve así:
Cree una medida para la duración:
Sum Duration = SUM('Table'[Duration (Mins)]) + 0
Y finalmente cree el visual usando el campo de fecha de la Tabla de fechas y la medida [Suma de duración] para obtener:
He adjuntado el archivo PBIX de ejemplo
Cree una tabla calculada de fechas usando CALENDAR o CALENDARAUTO, luego agregue una columna calculada con la suma de duraciones, algo como esto total_duration=CALCULATE(SUMX('Case Data','Case Data'[Duration (Mins)])).
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 |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |