Using the SAS Management Console in SAS®9.2, you can move prompts within groups and also move a prompt from one group to another.
The attached file "PromptGroup1.png" shows a stored process that has several prompts and prompt groups. With the prompt named "simple_int" selected, note that I can use the "Move Down" button on the right side of the panel to change the location of the prompt within the prompt group. The "Move Up" button is disabled because the prompt is already at the top of the group.
To move a prompt to another group, select the prompt and either double-click it, or click the "Edit..." button on the right side of the panel. The resulting dialog is shown in attached file "PromptGroup2.png". To move the prompt to a different group, select the desired group from the "Parent Group" drop-down list. Here the top group, "Parameters", is being selected. Click OK to save your selection.
The attached file "PromptGroup3" shows that the prompt "simple_int" has been moved from the "numeric" group to the bottom of the "Parameters" group. You may now change the location of the prompt in this group by using the "Move Up" button.
Also in SAS®9.2, you can choose "commonly used" values for date and time prompts, as shown in attached files "DatePrompt.png" and "TimePrompt.png", respectively.
Similar functionality is available if you are using SAS Enterprise Guide 4.2.
To use a function as a default value of a prompt, try this:
1. Create a stored process with a text prompt named "DATE" with a default value "%sysfunc(today())".
2. Use this SAS code:
[pre]
*ProcessBody;
data test;
do i = 0 to 5;
thedate = today() + i;
output;
end;
run;
%STPBEGIN;
data _null_;
call symput('DATE', resolve("&DATE"));
run;
title "The value of DATE is &DATE";
proc print data=test;
where (thedate eq &DATE);
run; quit;
%STPEND;
[/pre]
When you execute the stored process, the PRINT procedure should display only the first observation.
Vince DelGobbo
SAS R&D