变更数据捕获 跟踪字段中的所有更改,即使它只分配给 Dynamics ax 表中的几个字段



我已经为表中的 5 个字段启用了变更数据捕获,该表具有 10 个用于 Dynamics ax 数据库的字段

在这 5 个字段中,我修改了 By 字段可用。因此,每当我更改该字段中的字段时,修改的 10 个字段都会更改,并在 CDC 表中对其进行跟踪。但是,如果其他 5 个字段未被跟踪,我不想跟踪 CDC 表中的更改。

例如:表1

A B C D E F G H I J(MODIFIEDBY)
1 2 3 4 5 6 7 8 9 10
8 6 4 3 2 4 5 6 7 8

我正在跟踪G,H,I,J,F。但是 J 是 modifiedBy 字段,每次您在九个字段中的任何字段进行更改时,该字段都会更改。因此,如果您在字段 A 中进行更改,J 将更新,以便 CDC 捕获事务。我不想跟踪。

你能给我一些解决方案吗?提前谢谢。

每次

更新记录时,系统都会更新字段ModifiedBy,无论更改哪个字段。

因此,您必须:

  • 停止现场ModifiedBy的数据捕获

或:

  • 创建您自己的字段,该字段在 5 个字段更新时更新,例如SomeFieldsModifiedBy

此字段的更新很简单:

public void update()
{
    if (this.G != this.orig().G || this.H != this.orig().H || ...)
        this.SomeFieldsModifiedBy = curUserId();
    super();
}

还要考虑更新插入时的字段。

最新更新