【问题标题】:FileName Port is not supported with connection or merge option连接或合并选项不支持文件名端口
【发布时间】:2017-06-29 05:22:53
【问题描述】:
我需要创建一个 csv 平面文件,并且需要将特定路径存储在 ftp 中。
文件名应使用时间戳动态创建。我在 informatica 中创建了文件名端口并映射到我创建的表达式。当我运行工作流程时,出现以下错误
严重时间戳节点线程消息代码消息
错误 28-06-2017 07:31:19 PM node01_oktst93 WRITER_1_*_1 WRT_8419 平面文件目标 [NewOrders] 文件名端口不支持连接或合并选项。
请帮忙解决,不删除文件名端口。
谢谢
【问题讨论】:
标签:
informatica
informatica-powercenter
【解决方案1】:
如果您的要求是在每次会话运行期间创建动态文件。请检查以下步骤:
1) 将源限定符连接到表达式转换。在表达式转换中创建一个输出端口(将其称为 File_Name)并将表达式分配为 'FileNameXXX'||to_char(sessstarttime, 'YYYYMMDDHH24MISS')||'.csv'
2) 现在将表达式转换连接到目标,并将表达式转换的 eh File_Name 端口连接到目标文件定义的 FileName 端口。
3) 创建工作流并运行工作流。
我使用了sessstarttime,因为它在整个会话运行期间保持不变。如果您使用过sysdate,那么每当会话运行中发生新事务时,都会创建一个新文件
【解决方案3】:
迟到的答案,但可能会有所帮助。
由于文件端口选项不能与 FTP 目标选项一起使用。
另一种方法是
在工作流中创建变量
然后在两者之间创建一个作业
然后您可以使用完整路径设置 $variable,即
'/path/to_drop/file/name_of_file_'||to_char(SYSDATE, 'YYYYMMDD')||'.csv'
现在在工作流下的会话中使用该 $variable。
立即将其添加到您的映射中
迟到的答案,但可能会有所帮助。