Просто используйте системный вид VCOLUMN, чтобы спросить саму sas, какие поля у него есть
proc sql
select name
into :num_vars separated by ' '
from SASHELP.VCOLUMN
where libname = 'YOUR_LIB' /* upper case */
and memname = 'YOUR_MEMBER' /* upper case */
and name not in ('id', 'diagnosis'); /* correct case */
quit;
Это создает макропеременную, которая перечисляет все необходимые переменные
%put &num_vars;
Теперь используйте это
proc boxplot data=YOUR_LIB.YOUR_MEMBER;
plot (&num_vars)*diagnosis;
run;