我必须开发一个信息过程,将平面文件中的数据加载到目标中(简单的截断和加载),但问题是:
如果拒绝的行数大于100,则该过程应该停止,即会话失败&目标中的数据必须回滚到加载前的最初数据。
我认为TC Transformation在这里可能很有用,但我不确定如何使用它。如果我能得到一些帮助就会很棒。
谢谢!
答案 0 :(得分:0)
在这种情况下你不能使用truncate - 它是不可逆转的。尝试首先将数据加载到临时表中(启用Truncate table
选项)。创建第二个会话,执行一组sql命令,如
`truncate table YourTable
insert into YourTable select * from YourTempTable`
将两者与$yourTempTableSession.TgtFailedRows>100
之类的条件联系起来。
要满足第二个要求(即工作流失败),请添加Control task
并将其设置为Abort top level workflow
。使用$yourTempTableSession.TgtFailedRows>100