Динамически вызывать макрос из шага данных sas

Этот код выполняется нормально, когда запускается как программа SAS:

%MyMacro(foo_val, bar_val, bat_val);

Я создал таблицу, используя:

DATA analyses;
   input title : $32. weight : $32. response : $32.;
   datalines;
foo1 bar1 bat1
foo2 bar2 bat2
;

Я хочу выполнитьMyMacro один раз для каждого рядаanalyses Таблица.

Следующий код, по-видимому, передает только строковые значенияtitle, weight а такжеresponse (а не значения данныхfoo1 и т. д.) к моему макросу (проверено с помощью вызовов на%put команда):

DATA _NULL_ ;
    set analyses;
    %MyMacro(title, weight, response);

RUN;

Как я могу вызвать макрос один раз для записиanalyses таблица при передаче значений данных в качестве аргументов в макрос? Намерение состоит в том, чтобы на самом деле выполнить это для очень большого числа анализов, поэтому решение должно масштабироваться соответственно большему количеству записей вanalyses Таблица.

Ответы на вопрос(3)

Ваш ответ на вопрос