informatica - 在表达式中设置映射变量并在源过滤器中使用它

标签 informatica informatica-powercenter

我在不同的数据库中有两个表。表 A 中是数据,另一个表 B 中是从第一个表增量加载数据的信息。我想从表 B 加载并将上次从表 A 成功加载的日期存储在映射变量 $$LOAD_DATE 中。为了实现这一点,我从表 B 中读取日期并使用 SETVARIABLE()表达式中的函数设置 $$LOAD_DATE多变的。我执行此操作的端口被标记为输出并写入虚拟平面文件。我只阅读了该源的行!

然后我用这个$$LOAD_DATE表 A 的源限定符的源过滤器中的变量仅加载早于 $$LOAD_DATE 中存储的日期的新记录。变量。

我的问题是我无法设置 $$LOAD_DATE变量正确。它始终是日期 1753-1-1-00.00.00 ,这是映射日期/时间类型变量的默认值。

如何解决这个问题?如何在该变量中存储日期并稍后在源限定符源过滤器中使用它?这可能吗?

编辑:表 A 有太多记录,无法全部读取并稍后过滤。这会非常昂贵,因此必须在源过滤器级别对它们进行过滤。

最佳答案

是的,这是可能的。
在第一个映射中,您必须初始化变量,如下所示:

enter image description here


在第一个 session 配置中,您必须定义成功变量分配的 session 后:

enter image description here

第二个映射(包含表 A)将在 session 前变量分配中配置 session 后获取变量: enter image description here

它会起作用的。

关于informatica - 在表达式中设置映射变量并在源过滤器中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35894211/

相关文章:

informatica-powercenter - 更改 session 中的映射

ssis - DTS/SSIS 与 Informatica Power Center

utf-8 - 使用informatica将数据从平面文件加载到表中,同时具有英语和外语字符,如中文

ftp - informatica powercenter FTP问题

informatica - 如何从 Informatica Cloud 调用 Teradata 上的存储过程/宏?

parameter-passing - 将具有今天日期的特定时间作为值传递给 Informatica Cloud 中的输入字段

java - [错误]java.lang.ArrayIndexOutOfBoundsException :1

error-handling - 如何在Informatica中将数据截断捕获为错误

web-services - 如何通过 Informatica Web 服务检索特定工作流运行 ID 的 SessionStatistics?