如何使用自定义日期/班次创建公式列?我正在进行与工作班次结构相关的分析。 我们每班工作12个小时。 意思是我们从上午7点至下午7点(白天,D)和晚上7点至上午7点(夜班,N)工作。
目前,我有一个公式列脚本,如下所示:
"WW" || Char (Week of Year (:date)) || "." || Char (Day of week (:date) - 1) ||
If (Hour (:date) <= 19 & Hour(:date) >= 7, "D", "N")
似乎它不像我期望的基于该脚本的bcs那样工作,每当时间达到12am时,它就会更改为新的一天。
例如:
该脚本会将2020年12月1日5:49:47 AM转换为WW49.2N。 应该是WW49.1N。 WW49.2D在日期和时间为12/01/2020 7:00:00 AM时启动。这是因为夜班时间是从7 pm-7am。 有人可以建议或建议另一种创建脚本的方法吗?
分析工具数据表其他脚本编写回复:如何创建具有自定义日期/班次的公式列?我认为处理此问题的最佳方法是通过减去7小时来校正日期时间值,这使班次与日期值保持一致
correctedDate = :date - In Hours( 7 );
"WW" || Char( Week Of Year( correctedDate ) ) || "." || Char( Day Of Week( correctedDate ) - 1 ) ||
If( Hour( correctedDate ) >= 0 & Hour( correctedDate ) <= 12,
"D",
"N"
);
回复:如何创建具有自定义日期/班次的公式列?只是想确认一下,当您说-几小时之内(7)是指底物7小时?
回复:如何创建具有自定义日期/班次的公式列?从当前行的“日期”列的指定值中减去25200秒。
25200 =每分钟60秒X每小时60分钟X 7小时
另外,我在公式中犯了一个小错误。If()比较的第二个元素应为“ <”,而不是“ <=“
correctedDate = :date - In Hours( 7 );
"WW" || Char( Week Of Year( correctedDate ) ) || "." || Char( Day Of Week( correctedDate ) - 1 ) ||
If( Hour( correctedDate ) >= 0 & Hour( correctedDate ) < 12,
"D",
"N"
);