Date: Tue, 9 May 2006 13:34:38 -0400
Reply-To: Randy Herbison <RandyHerbison@WESTAT.COM>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: Randy Herbison <RandyHerbison@WESTAT.COM>
Subject: Re: GOTO or LEAVE Command
Content-Type: text/plain; charset="us-ascii"
Some possibilities are:
1. PROC PMENU -- lets you programmatically build cascading pull-down
menus. MENUB is a GUI interface to do the same. Enter MENUB on a
Display Manager command line to run it. You can associate commands with
menu items.
2. Macro windows -- let you build & conditionally display text windows
to display info and get user input.
3. SAS/AF -- lets you build & conditionally display text or GUI windows
to display info and get user input.
RandyHerbison@westat.com
-----Original Message-----
From: owner-sas-l@listserv.uga.edu [mailto:owner-sas-l@listserv.uga.edu]
On Behalf Of Paul St Louis
Sent: Tuesday, May 09, 2006 11:58 AM
To: SAS-L@LISTSERV.UGA.EDU
Subject: GOTO or LEAVE Command
I read a small handfull of L messages concerning GOTO or LEAVE commands
and wonder if anyone has additional thoughts. Back in the old days of
DOS batch file programming, I would set up a user menu with various GOTO
commands to submenus with conditional If statements. This allowed the
user to navigate from one menu option to another. Commands would execute
in the background. Is there a way to effectively utilize the same menu
process in SAS? I am asking because we have some SAS users who want to
get a SAS report but don't want to learn SAS (gasp, I know, but it's
true.) I am a little familiar with Display Manager, but little better
than a novice myself. I am stumped on how to add verification code to
bump a user to a standard error message, or route back to the top of the
SAS program to re-display the menu. Also looking for any good books I
can buy, or links to learn about this.
I've found some excellent help from many accomplished SAS programmers
here, so I am reaching out again for whatever advice you may offer.
The basic DOS functionality was as follows:
:TOP
CALL certain commands
:MENU
OPTION1
OPTION2
OPTION3
ASK===?
IF OPTION1 GOTO DATAENTRY
IF OPTION2 GOTO QUERY
IF OPTION3 GOTO REPORTS
IF %USER-RESPONSE NOT 1 OR 2 OR 3 THEN GOTO ERROR
:DATAENTRY
commands
:QUERY
commands
:REPORTS
commands
:ERROR
ECHO 'ERROR MSG.'
GOTO TOP
:END
CALL commands to end