Desktop productivity for business analysts and programmers

Prompt Manager question with SAS EG

Reply
Frequent Contributor
Posts: 138

Prompt Manager question with SAS EG

Hi,

 

I am just now playing with the prompt manager feature in SAS EG.  I am using a proc sql script in a program task and I want the prompt to populate the where clause of the script.  If I only have one variable (field 1 = 'x') it works just fine.  However, I want to write it so I can enter multiple values with the prompt.  (field 1 in ('x','y')).  I get a syntax error when I do this.  I have tried putting the quotes in a single text prompt, multiple text promp, etc. but I can't seem to get it to work correctly.  Can you guys tell me what I am missing?

Frequent Contributor
Posts: 120

Re: Prompt Manager question with SAS EG

If I get you right Smiley Happy

 

You can use the EG-macro:

 

proc sql;

select *

from sashelp.class

where %_eg_WhereParam( sex, kalle, IN, TYPE=S, IS_EXPLICIT=0 )

;

quit;

 

Kalle is the name of my prompt, sex is the variable in sashelp.class.

 

You can also resolve the macrovariables your self, but then you need some macro coding.

https://communities.sas.com/t5/General-SAS-Programming/Do-loop-using-a-prompt-generated-macro-variab...

Frequent Contributor
Posts: 138

Re: Prompt Manager question with SAS EG

@FredrikE, thank you for your answer.  The EG macro worked for what I needed so I appreciate that.  I tried to google more information about the syntax of the eg macro but didn't find anything clear.  I am curious to know what TYPE and IS_EXPLICIT it is doing.  Is there more information on this macro anywhere?

 

I looked at the coding for resolving myself.  Looks like some code I will be interested in diving into.

Ask a Question
Discussion stats
  • 2 replies
  • 129 views
  • 1 like
  • 2 in conversation