当没有来自源的数据时,如何使用页眉和页脚在informatica中创建文件?

时间:2017-03-15 17:30:07

标签: informatica

我有以下情况。

在informatica中,对于一个包含2个输入文件的进程流,执行union#1,派生页眉和页脚并执行另一个联合并将Union#2输出加载到目标文件。

但是,即使是来自源代码的空白文件,我也需要使用页眉和页脚生成文件(页脚数为2)。

目标文件中的预期内容,如果我们得到空白来源:

HYYYYMMDDCODE1315(标题)
TYYYYMMDDCODE1315 0000002(带有no.of记录的预告片)

有人可以帮忙吗?

提前致谢!

3 个答案:

答案 0 :(得分:1)

您可以使用第三个输入文件 - 一个包含1列和1行的虚拟文件。在导出页眉/页脚之前,全外连接此虚拟文件与第一个联合的输出。使用与连接条件中的文件具有相同值的虚拟列(例如,1 = 1)

这样,即使实际输入文件没有任何数据,也会有至少一行来自连接器。稍后,您可以通过检查实际源字段是否为NULL来过滤掉虚拟记录。

答案 1 :(得分:0)

您可以使用会话前命令将标题行回显到文件。然后在会话中将数据附加到现有文件(选中Append if Exists框)。 使用会话后附加页脚行。

答案 2 :(得分:0)

我可以在informatica中的post session命令中使用以下命令来代替所有这些复杂的过程。

如果[! -s $ PMTargetFileDir / $ OutputFile1];然后回显" H"" $(日期+"%Y%m%d")"" $ (日期+"%Y%m%d")"" XXX"""> $ PMTargetFileDir / $ OutputFile1; echo" T"" $(日期+"%Y%m%d")"" $(日期+& #34;%Y%米%d")"" XXX"""" 00000000002""" >> $ PMTargetFileDir / $ OutputFile1;网络连接;

感谢大家的投入!