我们遇到的情况是,从单个源限定符加载同一目标的实例的执行顺序不同。 当我们在推广存在问题后在TEST中执行时,我们在从DEV升级到TEST时遇到问题。
例如,我们有一个包含3个组的路由器,用于插入,更新和删除,然后是相应的更新策略,相应地设置行类型,然后是三个目标实例。
RTR ----> UPD_Insert -----> TGT_Insert
\
\__> UPD_Update -------> TGT_Update
\
\__> UPD_Delete ---------> TGT_Delete
当我们使用数据进行测试时,使用数据进行插入,然后执行更新,然后执行基于相同主键的删除操作,与在DEV环境中的相同数据相比,我们在TEST中获得不同的执行顺序。
任何人都有任何想法 - 我会张贴图片,但我还没有足够的信誉。
干杯,
吉尔。
答案 0 :(得分:1)
只要您拥有单一来源,就无法控制加载顺序。我可以将负载分开使用单独的源,可以使用映射中的目标加载顺序设置,或者甚至可以为它们创建单独的映射。 现在,您应该使用单个目标并利用更新策略转换来确定每个记录所需的操作。然后可以使用排序来定义对物理表进行不同操作的顺序。
答案 1 :(得分:1)
您可以在更新策略之前使用分拣机转换......根据更新策略条件,您可以对传入的行进行排序....因此,第一个日期将通过Insert,而不是最后通过删除策略更新。
答案 2 :(得分:0)
简单的解决方案是尝试按字母顺序重命名目标定义...例如INSERT_A
,UPDATE_B
,DELETE_C
然后开始加载
这将加载A,B,C顺序。试试让我知道