Ich versuche, einen Zusammenhang zwischen Verwendungszwecken und Teilelebensdauer zu finden. Dabei handelt es sich um einen Teil, der im Betrieb ständig läuft. Ich benötige eine laufende Summe, die zurückgesetzt wird, wenn das Teil ausgetauscht wird. In meinem Fall habe ich die ersten vier Spalten. Ich möchte wissen, wie die Spalte „Jobs Part has Done“ erstellt wird, die zurückgesetzt wird, wenn ein Reparaturereignis erkannt wird.
| Datum und Uhrzeit des Starts | Datum/Uhrzeit beendet | Arbeitsplätze | Ereignis | Jobs Teil ist erledigt |
| 01.01.2019 8:00 Uhr | 1.1.2019 9:00 Uhr | 2 | Arbeiten | 2 |
| 01.01.2019 10:00 Uhr | 01.01.2019 12:00 Uhr | 5 | Arbeiten | 7 |
| 01.01.2019 15:00 Uhr | 1.1.2019 18:00 Uhr | 5 | Arbeiten | 12 |
1.1.2019 18:00 Uhr | 1.1.2019 19.00 | | Ersatz | 0 |
| 01.01.2019 20:00 Uhr | 01.01.2019 21:00 Uhr | 2 | Arbeiten | 2 |
1.1.2019 10:00 NACHMITTAGS | 1.1.2019 23:00 Uhr | 2 | Arbeiten | 4 |
Das scheint bei mir zu funktionieren.Möglicherweise nicht die effizienteste.
Names default to here(1);
dt = New Table( "ColCumSum with Reset",
Add Rows( 6 ),
New Column( "DateTime Started",
Numeric,
"Continuous",
Format( "m/d/y h:m", 19 ),
Input Format( "m/d/y h:m" ),
Set Values(
[3629174400, 3629181600, 3629199600, 3629210400, 3629217600, 3629224800]
)
),
New Column( "DateTime Ended",
Numeric,
"Continuous",
Format( "m/d/y h:m:s", 23, 0 ),
Input Format( "m/d/y h:m:s", 0 ),
Set Values(
[3629178000, 3629188800, 3629210400, 3629214000, 3629221200, 3629228400]
)
),
New Column( "Jobs",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [2, 5, 5, ., 2, 2] )
),
New Column( "Event",
Character( 16 ),
"Nominal",
Set Values( {"Work", "Work", "Work", "Replacement", "Work", "Work"} )
),
);
dt << New Column( "Jobs Part has Done",
Formula(
If(
Row() == 1, :Jobs,
:Event == "Replacement", 0,
Lag( :Jobs Part has Done ) + :Jobs
)
)
);