В настоящее время я пытаюсь создать макрос, который устанавливает части строки в список глобальных переменных, где части строки разделяются знаком «-», поэтому, например, 672-46-246 создаст три глобальные переменные , name2, name2 и name4, которые называются 672, 46, 246 соответственно. Также есть имя1, которое является глобальной переменной всей строки. Но в любом случае я получил возможность получить всю строку в глобальную переменную, но у меня возникли проблемы с ее разделением. Могут быть и другие способы сделать это, но я пытаюсь сделать цикл for для определения количества «расщеплений», т. Е. «-», а затем подставить его под эти разбиения. Прямо сейчас я пытаюсь выяснить, сколько существует "расщеплений", но код возвращает
ОШИБКА: символьный операнд был найден в функции% EVAL или в условии% IF, где требуется числовой операнд. Условие было:
и расщепляется.
Не уверен, что еще включить сюда в резюме.
Код ниже
%GLOBAL C;
%LET C=1;
DATA _NULL_;
SET T_&scope.;
%DO I = 1 %TO &sqlobs.;
%GLOBAL name&C.;
CALL SYMPUT("name&C.", COL&I.);
%Counter(C);
CALL SYMPUT("splits", COUNTC(COL&I., "-"));
%DO J = 0 %TO &splits.;
%Counter(C);
%END;
%END;
RUN;
ВНИМАНИЕ: Кажущаяся символическая ссылка РАЗДЕЛЕНА не разрешена.
ОШИБКА: символьный операнд был найден в функции% EVAL или в условии% IF, где требуется числовой операнд. Условие было:
& расщепляется.