0

我是 Abinitio 的新手,需要以下方面的帮助。

表 1 有列:

Col1

Col2

Col3

表 2 有列:

第四栏

col5

我正在使用连接组件并重新格式化组件并将输出作为 col2、col3、col4、col5。我正在把它写到一个目标表中

id,col2,col3,col4,col5,created_by,created_date_time,last_modified_date。

因为我有来自连接组件输出的 col2、col3、col4、col5 的数据,但没有 id、created_by、created_date_time、last_modified_date 的数据。

如何使用 abinitio 添加它。如果已经讨论过此类基本问题,我们将非常感谢您对此提供任何帮助并表示歉意。

问候。

4

3 回答 3

1

您可以将 REFORMAT 组件连接到 JOIN 组件的输出流。REFORMAT 组件中的转换函数可以使用通配符排除来传递 col2、col3、col4、col5 值。* :: in.*。输出表中的其余列也应该存在于 REFORMAT 组件的输出端口的 DML 中,因此您可以在 REFORMAT 的转换函数中将数据分配给这些列,例如 out.created_by :: "something" .

于 2019-03-21T11:01:30.123 回答
0

在连接组件中,您只需为所有必需的列编写转换。在连接的输出端口 dml(嵌入)中包括 id、created_by、created_date_time、last_modified_date。对于 col2、col3、col4、col5,您可以从各自的输入列映射,对于 id、created_by、created_date_time、last_modified_date 添加所需的转换。所以你可以避免一个额外的重新格式化组件。

于 2019-06-15T15:18:08.333 回答
0

加入组件后,连接重新格式化组件,并在重新格式化组件的端口部分通过在输出中添加您需要的所有相关列来更改输出端口的 dml,然后更改重新格式化组件的转换功能,如下所示: 1. 对于所有join 的传入值使用 out.* :: in.* 2. 对于您在 dml 的 out 端口中添加的所有其他列,使用 out.column_name ::“您需要传递的值”分配值

于 2019-03-24T17:53:08.550 回答