Мне интересно, как создать макрокоманду SAS в блоке инструкции SAS% MACRO? Похоже, что мои CALL SYMPUT или мои инструкции SELECT INTO не работают, когда они находятся в блоке оператора% MACRO.Как создать макрокоманду в макросе?
%MACRO NONDATE_FORMAT_CHECK(varname=,output=);
PROC SQL;
CONNECT TO NETEZZA AS NET
(SERVER=&server
DATABASE=&database
USER=&NBKID
PASSWORD=&NBKPASSWD);
CREATE TABLE WORK.DT_FMT&output AS SELECT *
FROM CONNECTION TO NET
(SELECT 'FORMAT_IS_DATE' AS DT_FMT_INDICATOR
FROM &input_database&input_table
WHERE (SELECT COUNT(*)
FROM &input_database&input_table
WHERE SUBSTR(&varname,1,10) LIKE '____-__-__') > 0
LIMIT 1);
DISCONNECT FROM NET;
QUIT;
PROC SQL;
SELECT DT_FMT_INDICATOR INTO :DT_FMT_CHECK_&varname
FROM WORK.DT_FMT&output;
QUIT;
%MEND NONDATE_FORMAT_CHECK;
Заранее спасибо.