In case you have SAS Enterprise Guide available you can use the query builder to create a query that will subset the data based on your prompt. See Screenshot below. I have marked the relevant things when building a filter for a prompt.
A multiple value prompt will create more than one macro variable. Find more information on this topic in the doc here http://support.sas.com/documentation/cdl/en/stpug/68399/HTML/default/viewer.htm#n1ffjd8bu6we10n1neag...
As @BrunoMueller mentioned, the key point is that multiple value prompts create multiple macro variables, not a single variable holding a list of values. I use a macro to create the list I want, something like:
%macro ConcatenateSelectionList (prompt ,dlm=%str( ) ); %local i return ; %if &&&prompt._Count >= 2 %then %do i = 1 %to &&&prompt._Count ; %if &i=1 %then %let return=&&&prompt&i ; %else %let return=&return&dlm&&&prompt&i ; %end ; %else %if &&&prompt._Count = 1 %then %do ; %let return=&&&prompt ; %end ; %else %if &&&prompt._Count = 0 %then %do ; %let return= ; %*null ; %end ; %else %put ER%str()ROR: USER &=&prompt._Count; &return %mend ConcatenateSelectionList;
I blogged about over at bi-notes.com: http://bi-notes.com/2013/08/sas-stored-process-taming-selection-list-prompts/
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.