分三次抽最终结果:Active:1,Change Log:4
一次抽最终结果:Active:1,Change Log:1
一次抽最终结果:Active:1,Change Log:1
覆盖DSO+三次抽(增、修、删)+后修改成支持RecordMode再测试R项

下面将数据字段修改为覆盖方式:

先做初始化,不传数据,只打标识
创建订单,数量为11,单号13381:


PSA:


通过Delta 信息包抽数到DSO,New表:

激活后Active表:

Change Loge表:

修改13381订单,11修改为10:


PSA:


通过Delta 信息包抽数到DSO,New表:

激活后Active表:

Change Loge表:

再将订单13381删除:



PSA:


通过Delta 信息包抽数到DSO,New表:

激活后Active表:

Change Loge表:

发现从PSA过来到DSO new时,R标识被丢掉了,所以数据最终并没有被删除,所以如果要支持R项,需要将数据源与DSO中的Record Mode字段关联起来:


现为了再次测试R项,则将PSA最后一次抽数置红,再次运行Delta InfoPackage时,提示:

点击再次抽取,则R项数据会现次被抽到PSA中:

删除标记R就会从源系统传到PSA中

再次抽到DSO中:

发现R项存入了New表,并且Active表里的数据被删除了

最后Active表里的数据被真正删除了

注:日志表里为了模拟删除,只会将这张单冲掉,所以反冲的结果可能为正,也可能为负,最终该单的数量合计为0即可
合计DSO+三次抽(增、修、删)+后修改成支持RecordMode再测试R项


但数据源与DSO中的Record Mode字段并未关联起来:

创建订单,单号为:13385,订单数量为11:





修改订单13385,订单数量从11修改为10:





删除订单13385:



由于DSO与数据源没有进行Record Mode字段关联,到New时发现R项丢失了


在不支持Record Mode的情况下,与覆盖型的DSO一样,最终结果Active表没有删除。现在将DSO与数据源中的Record Mode关联起来,实现R项真正删除:

将PSA最后一次请求置红,再抽,删除标记R就会从源系统传到PSA中:




与覆盖模式的DSO一样,合并模式的DSO的Active表里的数据也真正被删除了
覆盖DSO+一次抽(增、修、删)+后修改成支持Record Mode
DSO为覆盖模式,并且DSO与数据源的Record Mode字段先未进行关联
现创建订单,接着修改、然后删除:



由于删除项R很特殊,如果DSO不支持Record Mode的话,覆盖型的DSO会将R项看做是后项直接覆盖以前的结果;如果是合计型的DSO会将R项看做是A项与以前的结果进行合计。如果要实现将R项数据删除掉,则要让DSO支持Record Mode字段


由于是覆盖,并且未将数据源与DSO的Record Mode字段关联起来,所以不能进行删除数据,下面对DSO进行修改,使之支持Record Mode:

再将最后一次PSA请求置红,再次抽取那4条数据:




覆盖DSO(支持Record Mode)+一次抽(增、修、删)
由于未将数据源与DSO的Record Mode字段关联起来,所以不能进行删除数据,下面进行关联:








由于删除项R很特殊,如果DSO不支持Record Mode的话,覆盖型的DSO会将R项看做是后项直接覆盖以前的结果;如果是合计型的DSO会将R项看做是A项与以前的结果进行合计。如果要实现将R项数据删除掉,则要让DSO支持Record Mode字段


对DSO进行修改,将数据源与DSO的Record Mode进行关联:

将那4条抽数PSA请求置红,再次抽取那4条数据:









