用途と部品寿命の関係を見つけようとしています。 これは、使用時に常に動作する部品です。 部品交換時にリセットされる現在の合計が必要です。 私の場合、最初の4つの列があります。修復イベントが検出されたときにリセットされる、「ジョブパーツが完了しました」列を作成する方法を知りたいです。
| 開始日時 | 終了日時 | ジョブズ | イベント | JobsPartは完了しました |
| 2019年1月1日午前8時 | 2019年1月1日午前9時 | 2 | 仕事 | 2 |
| 2019年1月1日10:00AM | 2019年1月1日12:00PM | 5 | 仕事 | 7 |
| 2019年1月1日午後3時 | 2019年1月1日 午後6時 | 5 | 仕事 | 12 |
2019年1月1日 午後6時 | 2019年1月1日 午後7時 | | 置換 | 0 |
| 2019年1月1日午後8時 | 2019年1月1日午後9時 | 2 | 仕事 | 2 |
2019年1月1日 午後10時 | 2019年1月1日 午後11時 | 2 | 仕事 | 4 |
これは私にとってはうまくいくようです。最も効率的ではないかもしれません。
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
)
)
);