SAS 数据集成 - 从元数据结构创建物理 [=10=]
SAS Data Integration - Create a physical table from metadata structure
我需要在一系列具有条件的连接后使用追加对象 运行...因此如果条件未验证并且他的工作物理数据集不会执行,则连接步骤可能不会执行被创建。
问题是如果没有创建一个或多个输入物理数据集,追加步骤会出错。
是否有一种聪明的方法可以从作品的元数据结构 table 连接中创建物理空 table 或将追加与一些未创建的数据集一起使用?
使用所有字段的列表创建 table 不是真正的解决方案,因为我必须每 8 个不同的连接复制它,然后将作业复制 10 次...
感谢大家
罗伯托
感谢您的评论。
你应该做什么:
- 修改您的条件节点,使其在积极的条件下创建一个值为 MAX 的全局宏变量。在否定条件下创建值为 0 的相同变量。
- 用 "CREATE TABLE" 节点
替换有问题的 SQL 步骤
- 在 "CREATE TABLE" 的选项中,为 "MAXIMUM OUTPUT ROWS (OUTOBS)" 指定宏变量。有关这些选项的示例,请参见下图。
所以现在当你的条件不满足时,你总是会得到一个空的table。当满足条件时,该步骤将正常执行。
我必须说我的 DI Studio 版本有点旧。在我的版本中 SQL 节点不允许将宏变量传递给 SQL 选项,只能输入整数。检查你的版本是否允许,因为如果允许,那么你可以修改现有的 SQL 步骤并避免用另一个节点替换它。
还有一件事,当 OUTOBS 选项小于结果数据集时,您将收到警告。
如果您有任何问题,请告诉我。
查看创建 table 选项的图片:
最后,我创建了另一个步骤,通过 where 选项卡中的条件 1=0 从源 table 中提取 0 行。通过这种方式,我有一个空的 table,我可以在条件 运行 的 post sql 中与 data/set 一起使用,如果工作 table 的连接不存在。
这不是解决方案,而是有效的解决方法。
我需要在一系列具有条件的连接后使用追加对象 运行...因此如果条件未验证并且他的工作物理数据集不会执行,则连接步骤可能不会执行被创建。
问题是如果没有创建一个或多个输入物理数据集,追加步骤会出错。
是否有一种聪明的方法可以从作品的元数据结构 table 连接中创建物理空 table 或将追加与一些未创建的数据集一起使用?
使用所有字段的列表创建 table 不是真正的解决方案,因为我必须每 8 个不同的连接复制它,然后将作业复制 10 次...
感谢大家 罗伯托
感谢您的评论。
你应该做什么:
- 修改您的条件节点,使其在积极的条件下创建一个值为 MAX 的全局宏变量。在否定条件下创建值为 0 的相同变量。
- 用 "CREATE TABLE" 节点 替换有问题的 SQL 步骤
- 在 "CREATE TABLE" 的选项中,为 "MAXIMUM OUTPUT ROWS (OUTOBS)" 指定宏变量。有关这些选项的示例,请参见下图。
所以现在当你的条件不满足时,你总是会得到一个空的table。当满足条件时,该步骤将正常执行。
我必须说我的 DI Studio 版本有点旧。在我的版本中 SQL 节点不允许将宏变量传递给 SQL 选项,只能输入整数。检查你的版本是否允许,因为如果允许,那么你可以修改现有的 SQL 步骤并避免用另一个节点替换它。
还有一件事,当 OUTOBS 选项小于结果数据集时,您将收到警告。
如果您有任何问题,请告诉我。
查看创建 table 选项的图片:
最后,我创建了另一个步骤,通过 where 选项卡中的条件 1=0 从源 table 中提取 0 行。通过这种方式,我有一个空的 table,我可以在条件 运行 的 post sql 中与 data/set 一起使用,如果工作 table 的连接不存在。
这不是解决方案,而是有效的解决方法。