Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Hola Comunidad PBI,
Espero que todos lo estén haciendo bien.
Quiero ordenar mis datos en función de la columna DateTime y realizar la suma del valor máximo antes de cero. En realidad, quiero encontrar que la producción total y el contador de producción se incrementan y el recuento de la producción anterior se agrega en el nuevo recuento de producción. Cuando el cambio cambia o la máquina se detiene por cualquier motivo, el contador se restablece a 0. Quiero encontrar una producción sabia por turnos. A continuación se muestran los datos de ejemplo para referencia y desea sumar los valores en negrita resaltados en rojo según el escenario.
Hora | Turno | Producción |
7:00:00 | Turno A | 0 |
7:02:00 | Turno A | 5 |
7:04:00 | Turno A | 10 |
7:06:00 | Turno A | 15 |
7:08:00 | Turno A | 0 |
7:10:00 | Turno A | 5 |
07:12:00 | Turno A | 10 |
7:14:00 | Turno A | 15 |
7:16:00 | Turno A | 20 |
07:18:00 | Turno A | 25 |
7:20:00 | Turno A | 30 |
07:22:00 | Mayús B | 0 |
7:24:00 | Mayús B | 5 |
7:26:00 | Mayús B | 10 |
7:28:00 | Mayús B | 15 |
7:30:00 | Mayús B | 0 |
07:32:00 | Mayús B | 5 |
7:34:00 | Mayús B | 10 |
7:36:00 | Mayús B | 15 |
07:38:00 | Mayús B | 20 |
7:40:00 | Mayús B | 0 |
El resultado que quiero es,
Mayús A = 15 + 30 = 45
Mayús B = 15 + 20 = 35
Esperando alguna respuesta postiva.
Saludos
Ibad.
Hola
Por favor, compruebe la siguiente imagena y el archivo pbix adjunto.
desired outcome measure: =
VAR newtable =
ADDCOLUMNS ( Data, "@index", IF ( Data[Production] = 0, 1, 0 ) )
VAR indexcumulatetable =
ADDCOLUMNS (
newtable,
"@indexcumulate", SUMX ( FILTER ( newtable, Data[Time] <= EARLIER ( Data[Time] ) ), [@index] )
)
VAR groupbyindexcumulatemax =
SUMMARIZE (
GROUPBY (
indexcumulatetable,
Shift[Shift],
[@indexcumulate],
"@maxtime", MAXX ( CURRENTGROUP (), Data[Time] )
),
[@maxtime]
)
RETURN
SUMX (
FILTER ( data, Data[Time] IN groupbyindexcumulatemax ),
Data[Production]
)
Hola @Jihwan_Kim muchas gracias por su apoyo y rápida respuesta. Está funcionando correctamente de acuerdo con la condición dada, pero tengo otro escenario que si el siguiente valor es menor que el valor actual (no específicamente 0) que considere el valor actual como el máximo del contador para calcular la producción.
A continuación se muestran los datos de muestra para su comprensión,
Fecha | Hora | Turno | Producción |
8/4/2022 | 7:04:00 | Turno A | 10 |
8/4/2022 | 7:06:00 | Turno A | 15 |
8/4/2022 | 7:08:00 | Turno A | 0 |
8/4/2022 | 7:10:00 | Turno A | 5 |
8/4/2022 | 07:12:00 | Turno A | 10 |
8/4/2022 | 7:14:00 | Turno A | 15 |
8/4/2022 | 7:16:00 | Turno A | 20 |
8/4/2022 | 07:18:00 | Turno A | 25 |
8/4/2022 | 7:20:00 | Turno A | 30 |
8/4/2022 | 07:22:00 | Mayús B | 5 |
8/4/2022 | 7:24:00 | Mayús B | 10 |
8/4/2022 | 7:26:00 | Mayús B | 15 |
8/4/2022 | 7:28:00 | Mayús B | 20 |
8/4/2022 | 7:30:00 | Mayús B | 4 |
8/4/2022 | 07:32:00 | Mayús B | 5 |
8/4/2022 | 7:34:00 | Mayús B | 10 |
8/4/2022 | 7:36:00 | Mayús B | 15 |
8/4/2022 | 07:38:00 | Mayús B | 20 |
8/4/2022 | 7:40:00 | Mayús B | 0 |
9/4/2022 | 7:00:00 | Turno A | 2 |
9/4/2022 | 7:02:00 | Turno A | 4 |
9/4/2022 | 7:04:00 | Turno A | 6 |
9/4/2022 | 7:06:00 | Turno A | 2 |
9/4/2022 | 7:08:00 | Turno A | 4 |
9/4/2022 | 7:10:00 | Turno A | 1 |
9/4/2022 | 07:12:00 | Turno A | 4 |
9/4/2022 | 7:14:00 | Turno A | 6 |
9/4/2022 | 7:16:00 | Turno A | 8 |
9/4/2022 | 07:18:00 | Turno A | 10 |
9/4/2022 | 7:20:00 | Turno A | 12 |
9/4/2022 | 07:22:00 | Mayús B | 0 |
9/4/2022 | 7:24:00 | Mayús B | 2 |
9/4/2022 | 7:26:00 | Mayús B | 4 |
9/4/2022 | 7:28:00 | Mayús B | 6 |
9/4/2022 | 7:30:00 | Mayús B | 0 |
9/4/2022 | 07:32:00 | Mayús B | 4 |
9/4/2022 | 7:34:00 | Mayús B | 6 |
9/4/2022 | 7:36:00 | Mayús B | 8 |
9/4/2022 | 07:38:00 | Mayús B | 10 |
9/4/2022 | 7:40:00 | Mayús B | 2 |
El resultado deseado es:
8/4/2022 | Turno A | 45 |
8/4/2022 | Mayús B | 40 |
9/4/2022 | Turno A | 22 |
9/4/2022 | Mayús B | 16 |
Esperamos su respuesta.
Hola
Compruebe el archivo pbix adjunto.
Con respecto al turno 9/4/2022B, no estoy seguro, pero agregué el último número de producción (2) y el número muestra 18.
desired outcome measure V2: =
VAR newtable =
ADDCOLUMNS (
ADDCOLUMNS (
Data_Second,
"@previousvalue",
VAR _currentdate = Data_Second[Date]
VAR _currenttime = Data_Second[Time]
VAR _currentshift = Data_Second[Shift]
VAR _previoustime =
MAXX (
FILTER (
Data_Second,
Data_Second[Shift] = _currentshift
&& Data_Second[Date] = _currentdate
&& Data_Second[Time] < _currenttime
),
Data_Second[Time]
)
VAR _previousvalue =
MAXX (
FILTER (
Data_Second,
Data_Second[Shift] = _currentshift
&& Data_Second[Date] = _currentdate
&& Data_Second[Time] = _previoustime
),
Data_Second[Production]
)
RETURN
_previousvalue
),
"@index",
IF (
[@previousvalue]
== BLANK ()
|| Data_Second[Production] < [@previousvalue],
1,
0
)
)
VAR indexcumulatetable =
ADDCOLUMNS (
newtable,
"@indexcumulate",
SUMX (
FILTER ( newtable, Data_Second[Time] <= EARLIER ( Data_Second[Time] ) ),
[@index]
)
)
VAR groupbyindexcumulatemax =
SUMMARIZE (
GROUPBY (
indexcumulatetable,
Shift[Shift],
[@indexcumulate],
"@maxtime", MAXX ( CURRENTGROUP (), Data_Second[Time] )
),
[@maxtime]
)
RETURN
IF (
HASONEVALUE ( Shift[Shift] ),
SUMX (
FILTER ( Data_Second, Data_Second[Time] IN groupbyindexcumulatemax ),
Data_Second[Production]
)
)
@Jihwan_Kim Muchas gracias, está funcionando perfectamente, lo estoy aceptando como una solución.
He publicado un problema más con respecto al mismo tablero, estoy pegando el enlace a continuación, ¿puede verificarlo y analizarlo cómo podemos hacerlo?
Esperando una respuesta positiva.
Saludos
Ibad
@Jihwan_Kim gracias por su rápida respuesta.
Lamento haber olvidado agregar la columna de fecha en la fecha de la muestra.
A continuación se muestran los datos actualizados,
Fecha | Hora | Turno | Producción |
8/4/2022 | 7:00:00 | Turno A | 0 |
8/4/2022 | 7:02:00 | Turno A | 5 |
8/4/2022 | 7:04:00 | Turno A | 10 |
8/4/2022 | 7:06:00 | Turno A | 15 |
8/4/2022 | 7:08:00 | Turno A | 0 |
8/4/2022 | 7:10:00 | Turno A | 5 |
8/4/2022 | 07:12:00 | Turno A | 10 |
8/4/2022 | 7:14:00 | Turno A | 15 |
8/4/2022 | 7:16:00 | Turno A | 20 |
8/4/2022 | 07:18:00 | Turno A | 25 |
8/4/2022 | 7:20:00 | Turno A | 30 |
8/4/2022 | 07:22:00 | Mayús B | 0 |
8/4/2022 | 7:24:00 | Mayús B | 5 |
8/4/2022 | 7:26:00 | Mayús B | 10 |
8/4/2022 | 7:28:00 | Mayús B | 15 |
8/4/2022 | 7:30:00 | Mayús B | 0 |
8/4/2022 | 07:32:00 | Mayús B | 5 |
8/4/2022 | 7:34:00 | Mayús B | 10 |
8/4/2022 | 7:36:00 | Mayús B | 15 |
8/4/2022 | 07:38:00 | Mayús B | 20 |
8/4/2022 | 7:40:00 | Mayús B | 0 |
9/4/2022 | 7:00:00 | Turno A | 0 |
9/4/2022 | 7:02:00 | Turno A | 2 |
9/4/2022 | 7:04:00 | Turno A | 4 |
9/4/2022 | 7:06:00 | Turno A | 6 |
9/4/2022 | 7:08:00 | Turno A | 0 |
9/4/2022 | 7:10:00 | Turno A | 2 |
9/4/2022 | 07:12:00 | Turno A | 4 |
9/4/2022 | 7:14:00 | Turno A | 6 |
9/4/2022 | 7:16:00 | Turno A | 8 |
9/4/2022 | 07:18:00 | Turno A | 10 |
9/4/2022 | 7:20:00 | Turno A | 12 |
9/4/2022 | 07:22:00 | Mayús B | 0 |
9/4/2022 | 7:24:00 | Mayús B | 2 |
9/4/2022 | 7:26:00 | Mayús B | 4 |
9/4/2022 | 7:28:00 | Mayús B | 6 |
9/4/2022 | 7:30:00 | Mayús B | 0 |
9/4/2022 | 07:32:00 | Mayús B | 4 |
9/4/2022 | 7:34:00 | Mayús B | 6 |
9/4/2022 | 7:36:00 | Mayús B | 8 |
9/4/2022 | 07:38:00 | Mayús B | 10 |
9/4/2022 | 7:40:00 | Mayús B | 0 |
El resultado deseado es:
04/08/2022 -- Turno A -- 45
04/08/2022 -- Turno B -- 35
04/09/2022 -- Turno A -- 18
04/09/2022 -- Turno A -- 16
@Ibad_Khan , crear una nueva columna
Columna = var _max = Minx(filter(Data, [Shift] = EARLIER([Shift]) && [Time] > EARLIER([Time])), [Time])
Var _val = Minx(filter(Data, [Shift] = EARLIER([Shift]) && [Time] =_max ), [Production])
return if(_val =0 , [Producción], BLANK())
Puede usar esto en medida ahora
Check out the October 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |