我有一个显示一组时间范围和一个 ID 的连续表单,目前看起来像:
T1 T2 ID
----------------
09:00 09:15 1
09:15 09:30 2
09:25 09:50 3
09:50 10:20 4
每个 ID 对行都是唯一的。我的目标是突出显示任何发生冲突的时间(在此示例中,ID 为 2 和 3 的行发生冲突,因为 3 在 2 结束之前开始)。我决定使用条件格式来执行此操作,因此希望每行中都有一个字段来指示是否存在冲突。
我通过使用两次引用数据集的查询来实现这一点,允许我将行相互比较:
[a].[T1]<[b].[T2] And [a].[T2]>[b].[T1] And [a].[ID]<>[b].[ID]
将此作为字段分配给查询给了我这样的信息:
a.T1 a.T2 a.ID b.ID Clash
--------------------------------
09:00 09:15 1 1 False
09:00 09:15 1 2 False
09:00 09:15 1 3 False
09:00 09:15 1 4 False
09:15 09:30 2 1 False
09:15 09:30 2 2 False
09:15 09:30 2 3 True
09:15 09:30 2 4 False
09:25 09:50 3 1 False
09:25 09:50 3 2 True
09:25 09:50 3 3 False
09:25 09:50 3 4 False
09:50 10:20 4 1 False
09:50 10:20 4 2 False
09:50 10:20 4 3 False
09:50 10:20 4 4 False
为了删除所有重复项,我在a.ID字段上使用了group by并取了计算字段的最大值(0 或 -1),所以我得到了 True,如果它在每个a.ID中存在的话。这给了我:
a.T1 a.T2 a.ID Clash
-------------------------
09:00 09:15 1 False
09:15 09:30 2 True
09:25 09:50 3 True
09:50 10:20 4 False
然而,几乎完美,由于这个新的计算字段,以及我基本上对结果进行分组的事实,在连续表单视图中查看这个最终结果时,我不再能够编辑 Time1 或 Time2。
有没有办法我仍然可以编辑时间字段并保留这个新的计算字段?或者也许是一种处理冲突的单独方法,允许我在表单视图中提供视觉反馈?
我意识到这里有很多东西,我可能没有解释清楚,如果是这种情况,请告诉我。
任何帮助深表感谢。