我试图找到用途和零件寿命之间的关系。 这是在使用时不断运行的部件。 我需要一个在更换零件时重置的运行总计。 就我而言,我有前四列,我想知道如何创建“作业部分已完成”列,该列在检测到修复事件时重置。
| 开始日期时间 | 日期时间结束 | 工作 | 事件 | 作业部分已完成 |
| 2019 年 1 月 1 日 上午 8:00 | 2019 年 1 月 1 日 上午 9:00 | 2 | 工作 | 2 |
| 2019 年 1 月 1 日 10:00 | 2019 年 1 月 1 日 12:00 | 5 | 工作 | 7 |
| 2019 年 1 月 1 日下午 3:00 | 2019 年 1 月 1 日 下午 6:00 | 5 | 工作 | 12 |
2019 年 1 月 1 日 下午 6:00 | 2019 年 1 月 1 日 下午7时00 | | 替代品 | 0 |
| 2019 年 1 月 1 日 晚上 8:00 | 2019 年 1 月 1 日 晚上 9:00 | 2 | 工作 | 2 |
2019 年 1 月 1 日 下午10:00 | 2019 年 1 月 1 日 晚上 11:00 | 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
)
)
);