Informatica会话失败

时间:2016-10-10 16:19:43

标签: ssrs-2008 etl informatica informatica-powercenter

我创建了一个映射,从平面文件中提取数据,显示特定SSRS报告的使用数据。该文件每天都会被前几天的使用数据覆盖。我的问题是,有时报告当天没有任何用法,我的ETL向我发送“失败”电子邮件,因为源中没有任何数据。如果源中没有数据或阻止其失败,则运行该作业。

- 由于

3 个答案:

答案 0 :(得分:0)

是的,有几种方法,你可以这样做。

当没有源数据时,您可以向ETL作业提供空文件。为此,请在Informatica工作流程中使用touch <filename>之类的会前命令。如果不存在,这将创建一个<filename>的空文件。工作流将成功运行0行。

如果您有一个触发Informatica作业的脚本,那么您可以在那里进行检查:

if [ -e <filename> ]
then
    pmcmd ...
fi

这将跳过执行的作业。

答案 1 :(得分:0)

在实际dataload之前再进行一次会话。读取文件,使用FALSE过滤器和一些虚拟目标。将此链接链接到您已有的会话并设置以下链接条件:

$yourDummySessionName.SrcSuccessRows > 0

答案 2 :(得分:0)

解决这个问题的一个简单方法是创建一个&#34; Passthrough&#34;映射仅包含平面文件源,源限定符和平面文件目标。

您将在工作流程的开头创建一个运行此映射的会话,并让它读取您的平面文件源。目标可以只是一个你会被覆盖的虚拟平面文件。然后,您将在下一个实际处理文件的会话的链接中具有此条件:

$s_Passthrough.SrcSuccessRows > 0