在尝试启动并运行DS2线程时出现奇怪的错误代码。SAS proc ds2 YEAR功能
proc ds2;
thread work.th_ieb /overwrite=yes;
dcl DOUBLE Beg_Jahr;
METHOD RUN();
set {select id, date
from DATA
};
IF FIRST.id THEN DO;
Beg_Jahr = YEAR(DATE);
OUTPUT;
END;
END;
endthread;
run;
的错误是:
ERROR: Compilation error.
ERROR: Illegal conversion for date or time type. Source line 34.
它工作正常,没有YEAR的功能。有任何想法吗?
请确保与您称为'date'的变量关联的类型实际上具有日期类型。在'PROC DS2'中,实际上有一个日期数据类型,与“传统”SAS不同,日期存储为自1960年1月1日以来的天数。 – 2014-11-26 15:20:46
即使添加'dcl DATE date',它也不会运行。 – user3614882 2014-11-27 16:09:53