从另一数据集扩充
功能¶
从另一个数据集充实操作允许您使用源数据集中的值或使用计算值来填充目标数据集中的一个或多个字段。特别是,它会修改目标数据集中现有字段的值。
在此操作结束时,系统会检查是否创建了多个相同的行,例如由于对同一行检查了多个条件。如果是,则返回错误。 匹配字段是强制性的,因为您必须指定至少一个条件列和一个属性列才能启用更新。
注意:如果源和目标对于用作条件的列都具有空值,系统会将它们视为两个不同的行。因此,条件不满足。
在操作结束时,会执行检查以确保在充实期间没有行被重复(例如,由于对同一行检查了多个条件)。
注意:在操作页面上,仅充实空值标志有两个选项:
- 选中:如果匹配字段中设置为属性的目标数据集字段为空,则执行充实,否则不执行任何操作。
- 未选中:匹配字段中设置为属性的目标数据集字段始终使用源数据集的值更新
高级选项卡¶
源场景/期间字段允许您定义要从中为给定源数据集读取数据的场景/期间。可以使用 AW 参数或通过单元格字段定义中使用的相同语法来指定值。
当该字段留空时,将采用 DTP 启动时的场景/期间;但是,如果场景/期间不存在或处于非活动状态,DTP 将继续执行但不运行该操作,并在审计中报告执行失败。
注意:高级选项卡仅对物理数据集或虚拟数据集可见。
示例
此示例展示了从另一个数据集执行扩充操作的过程。
目标数据集¶
| CONTRACT | CUSTOMER | AMOUNT | COUNTRY | RATE |
|---|---|---|---|---|
| C2 | Madison White | 5000 | Rome | |
| C1 | Joe Black | 10000 | New York |
源数据集¶
| COUNTRY | RATE |
|---|---|
| Rome | 1.7 |
| New York | 1.5 |
目标是用源数据集 RATE 字段的值更新目标数据集的 RATE 字段。在匹配字段中,需指定用作条件的字段和用作属性的字段。
匹配字段¶
| 目标字段 | 源字段 | 关系类型 |
|---|---|---|
| COUNTRY | COUNTRY | 条件 |
| RATE | RATE | 属性 |
执行从另一个数据集扩充操作后,生成的数据集将如下所示:
目标数据集¶
| CONTRACT | CUSTOMER | AMOUNT | COUNTRY | RATE |
|---|---|---|---|---|
| C2 | Madison White | 5000 | Rome | 1.7 |
| C1 | Joe Black | 10000 | New York | 1.5 |
示例
目标数据集¶
| CONTRACT | CUSTOMER | AMOUNT | COUNTRY | RATE |
|---|---|---|---|---|
| C2 | Madison White | 5000 | Rome | |
| C1 | Joe Black | 10000 | New York |
源数据集¶
| COUNTRY | RATE |
|---|---|
| Rome | 1.7 |
| Rome | 2.0 |
| New York | 1.5 |
目标是用源数据集 RATE 字段的值更新目标数据集的 RATE 字段。在匹配字段中,需指定用作条件的字段和用作属性的字段。
匹配字段¶
| 目标字段 | 源字段 | 关系类型 |
|---|---|---|
| COUNTRY | COUNTRY | 条件 |
| RATE | RATE | 属性 |
数据处理失败,因为源数据集中有两行满足条件 COUNTRY = Rome,系统不知道应使用哪个 RATE 来更新目标数据集中的行。