Forum Discussion
Sumar filas
Hay @Syndicate_Admin @Alberto_O
Ahora tiene más sentido. Así que necesito identificar el viaje primero, y luego resumir. ¿Tienes más de 1 equipo? Hay otras maneras. Esta es una columna calculada, teniendo en cuenta más de 1 equipo
Column =
VAR CurTeam = 'Table'[Team]
VAR CurDepTime = 'Table'[Departure Date]
VAR CurArrTime = 'Table'[Arrival Date]
VAR StarTime = MAXX(FILTER(ALL('Table'),'Table'[Origin]="Planta1"&&'Table'[Departure Date]<=CurDepTime),'Table'[Departure Date])
VAR EndTime = MINX(FILTER(ALL('Table'),'Table'[Destination]="Planta1"&&'Table'[Arrival Date]>=CurDepTime),'Table'[Arrival Date])
RETURN
SUMX(FILTER(ALL('Table'),'Table'[Departure Date]>=StarTime&&'Table'[Arrival Date]<=EndTime&&'Table'[Team]=CurTeam),'Table'[Distance kms])Prueba esto en mi proyecto y funciona muy bien, así que me gustaría saber si la función Fecha puede funcionar con la columna Fecha/Hora, porque algunos viajes terminan e inician la misma fecha, y suma secciones de otros viajes. Creo que ese es el último paso para la solución.
Muchas gracias.
- Syndicate_Admin5 years ago
Administrator
No sigo tu pregunta, ¿resume números equivocados para algunos viajes? ¿Puede proporcionar algunos datos de ejemplo de esos números incorrectos?
- Anonymous5 years agoNot applicable
Hola, por error use las fechas en formato de Fecha, ahora que revisé de nuevo tu formula si la tienes como formato de Fecha/Tiempo.
Si aplico de forma correcta las fórmulas en mi archivo, la columna no termina de calcularse, después de 6 horas seguía calculando y tuve que finalizar el proceso desde el administrador de tareas.
Mi archivo tiene 600K filas, creo que no es muy grande, pero no se de que manera saber el tiempo que tardará en hacer los cálculos.
Gracias por el apoyo.
- Syndicate_Admin5 years ago
Administrator
Agregue una columna personalizada en M para determinar primero el mismo viaje
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("rZHBCsIwEER/RXIudHdWEXvTL+jBW+khaPFS68X/R0IDmzQpSMhtGZjh7cwwmDubxvSzXb7WXdf5bR/T4k7ilqQFgQ+EjjYS0yrxiczY+JzArZGhiTumjXTxOUdoTsIDZ4LyiOdRiT0iOOVBzBOYxPOohFyOmm+f5/RaYyStJ5LESWcNUWtYsqRPSUnJkpYs+yUjV3LB6Kg0epanYHSYOqPH5sLRUWn0/ZL/H338AQ==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Team = _t, Origin = _t, Destination = _t, #"Departure Date" = _t, #"Arrival Date" = _t, #"Distance kms" = _t]), #"Added Index" = Table.AddIndexColumn(Source, "Index", 0, 1, Int64.Type), #"Grouped Rows" = Table.Group(#"Added Index", {"Team"}, {{"allrows", each _, type table}}), #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.AddColumn([allrows],"Trip", (IT)=> if IT[Origin] = "Planta1" then IT[Index] else List.Max( Table.SelectRows([allrows], each [Index] <IT[Index] and [Origin]="Planta1")[Index]))), #"Removed Other Columns" = Table.SelectColumns(#"Added Custom",{"Custom"}), #"Expanded Custom" = Table.ExpandTableColumn(#"Removed Other Columns", "Custom", {"Team", "Origin", "Destination", "Departure Date", "Arrival Date", "Distance kms", "Trip"}, {"Team", "Origin", "Destination", "Departure Date", "Arrival Date", "Distance kms", "Trip"}), #"Changed Type" = Table.TransformColumnTypes(#"Expanded Custom",{{"Distance kms", Int64.Type}}) in #"Changed Type"a continuación, una columna DAX o una medida en un objeto visual a su elección, aquí hay una columna DAX
Column = VAR CurTrip = [Trip] RETURN SUMX(FILTER(Query1,[Trip]=CurTrip),[Distance kms])