我正在尝试在 SAS DI Studio 中创建一个自定义转换来执行一些我想要经常重用的复杂处理。为了实现这一点,作为第一步,我试图复制一个简单的 APPEND 转换的功能。
为此,我启用了多个输入(最多 10 个),并尝试利用此处&_INPUTn
引用的和&_INPUT_count
宏变量。我想简单地使用代码
data work.APPEND_DATA / view=work.APPEND_DATA;
%let max_input_index = %sysevalf(&_INPUT_count - 1,int);
set &_INPUT0 - &&_INPUT&max_input_index;
keep col1 col2 col3;
run;
但是,我收到以下错误:
错误:编号数据集列表中缺少数字后缀 (WORK.SOME_INPUT_TABLE-WORK.ANOTHER_INPUT_TABLE)
因为宏变量被解析为它们所引用的数据集的名称,其名称不符合
SET dataset1 - dataset9;
陈述。我怎样才能解决这个问题?
非常感谢。