Date: Fri, 16 Sep 2005 09:10:07 -0700
Reply-To: Jeff Voeller <Jeff.Voeller@MCI.COM>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: Jeff Voeller <Jeff.Voeller@MCI.COM>
Subject: Re: diaglog box in SAS
In-Reply-To: <5.1.0.14.2.20050915230254.00a921e0@pop.registeredsite.com>
Content-type: text/plain; charset=us-ascii
I'm glad to hear that. I split my time these days between SAS on z/OS
and Windows. While obviously there are choices out there in the Windows
world, for the mainframe I don't think anything else comes close to
SAS/AF for easy (relatively), fast user interfaces. CLIST/REXX and ISPF
are clunky, scattered and very limited in comparison. Much of what I've
done for the past 5 years is put a friendly front-end on some fairly
tedious and complicated processes. People think I'm smart for being
able to do it, but the truth is that SAS/AF did most of the work, not
me.
All that aside, I didn't mention SAS/AF in my original response to this
thread partly because of all the rumors of its demise and partly because
I was afraid it might have been viewed as a nuclear flyswatter (i.e., a
huge tool for a small job). But I see now that I should have given
Wensui credit for having more ambition!
-----Original Message-----
From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU] On Behalf Of
Michael L. Davis
Sent: Thursday, September 15, 2005 8:21 PM
To: SAS-L@LISTSERV.UGA.EDU
Subject: Re: diaglog box in SAS
Hello Wensui and other SAS-L Friends,
A month or so ago, I received a letter from a highly placed "birdie" who
told me that despite information to the contrary, SAS R&D sees SAS/AF as
an
ongoing product. It is receiving adequate resources for continued R&D
and
you will see SAS/AF items on the next SASware ballot. Several SAS
solutions use SCL components.
The birdie also seconded the observation made by myself and others that
for
some applications, SAS/AF remains the tool of choice. They include
full-screen applications that can be deployed without a web server,
non-visual applications in lieu of macro coding (including those behind
SAS/IntrNet applications), and of course, my favorite, SCL list
processing.
Some of these observations were also reported this week at the NESUG
2006
Futures Forum, in marked contrast to other recent Futures forums. It
remains my plan to create a more elaborate summary of that letter, along
with the identity of the birdie so that my SAS-L buddies would know that
the information was authoritative.
The above being said, there is a non-SAS consideration to all of
this. While SAS/AF has many worthwhile features to recommend it, you
need
to consider with which languages that you and your colleagues have good
facility and support. If Java or VB is better supported in your shop,
that
might sway your decision.
- Michael "Mad Doggy" Davis
At 10:25 PM 9/15/2005 -0400, liuwensui@gmail.com wrote:
>Randy,
>
>I surely do want to know how to add more frame entries. If you can show
me
>more beauty of SCL, that will be sweet.
>
>Actually, Randy, I have a quick question. Someone told me that scl is
dying
>and is not worthy learning. And I also see SAS+VB is a powerful tool to
>write portable SAS application. So what is your suggestion?
>
>It is really an eye-opening experience for me. Thank you so much,
Randy!
>
>wensui
>
>On 9/15/05, Randy Herbison <RandyHerbison@westat.com> wrote:
> >
> > Wensui,
> > Yes, it's doable, but you won't need any macro. Here's how in 4
easy
> > steps (5 steps if you include running the program):
> > 1. SAS/AF applications are stored in SAS catalogs. Start by opening
an
> > SCL entry. You can use the SAS Explorer or the BUILD command:
> > SAS Explorer: Navigate to desired library->New...
->Catalog->New..-> SCL
> > program
> > or
> > BUILD command: build yourLibrary.yourCatalog.yourSCLprogram.scl
> > 2. Here's what the SCL code might look like. This example gets the
> > filename and path to export SASHELP.CLASS to an Excel file:
> > /* Start SCL program */
> >
> > dcl
> > char(200) outputFile;
> > dcl num rc;
> >
> > init:
> > /* Get output file. Check the doc for FILEDIALOG options. */
> > rc=filedialog('SAVEASNOAPPEND', outputFile, ' ', ' ', '*.xls');
> >
> > /* Use the user's selection is a SAS program. Check the doc for
SUBMIT
> > options.*/
> > submit;
> > PROC EXPORT DATA=SASHELP.CLASS
> > OUTFILE= "&outputFile"
> > DBMS=EXCEL;
> > SHEET="class";
> > RUN;
> > endsubmit;
> >
> > return;
> >
> > /* End SCL program */
> >
> > NOTE: "&outputFile" looks like a macro variable reference, but is
actually
> > an SCL variable reference.
> >
> > 3. Use either the COMPILE command or icon to compile the SCL
program.
> >
> > 4. After the SCL program has compiled, close the SCL entry (saving
it with
> > a meaningful name).
> >
> > 5. Run the SCL program. Use one of these: SAS Explorer, AFA or AF
command,
> > or PROC DISPLAY:
> >
> > AFA command: afa c=yourLibrary.yourCatalog.yourSCLprogram.scl
> >
> > AF command: af c=yourLibrary.yourCatalog.yourSCLprogram.scl
> >
> > SAS Explorer: Right-click on the SCL entry and select Run
> >
> > PROC DISPLAY:
> >
> > proc display c=yourLibrary.yourCatalog.yourSCLprogram.scl;
> > run;
> >
> > NOTES: You can use the TESTAF command or icon to test the SCL at
build
> > time, but you cannot execute the statements within a SUBMIT block at
build
> > time.
> >
> > The default SCL editor is the old SAS text editor. You can use the
SAS
> > registry to specify the Enhanced Editor for SCL source code:
> > Solutions->Accessories->Registry Editor->Products->AF-Design
Time->Source
> > Window: Change EnhancedEditor data value to Yes.
> >
> > This demonstrates how to do what you asked for. Although I usually
include
> > one or more SAS/AF frame entries when building an application that
> requires
> > user interaction, you didn't ask for that. Adding a frame entry
would be
> > very easy to do (could be less work than the 4 steps above). Write
back to
> > the list if you would like to learn how to do more.
> >
> > RandyHerbison@westat.com
> >
> > -----Original Message-----
> > *From:* Wensui Liu [mailto:liuwensui@gmail.com]
> > *Sent:* Thursday, September 15, 2005 5:53 PM
> > *To:* Randy Herbison
> > *Subject:* Re: diaglog box in SAS
> >
> > Actually, I want to select a file through this diaglog, pass the
file name
> > together with its directory to a macro variable, and then use this
macro
> > variable in a proc.
> >
> > Is it doable?
> >
> > Thanks a lot.
> >
> > wensui
> >
> > On 9/15/05, Randy Herbison <RandyHerbison@westat.com> wrote:
> >
> > > Wensui,
> > > Would you like a window that looks like a VB form, and includes a
> > > control for the user to display a file dialog, or just a file
dialog by
> > > itself?
> > > Randy
> > >
> > > -----Original Message-----
> > > *From:* Wensui Liu [mailto:liuwensui@gmail.com]
> > > *Sent:* Thursday, September 15, 2005 4:47 PM
> > > *To:* Randy Herbison
> > > *Subject:* Re: diaglog box in SAS
> > >
> > > Randy,
> > >
> > > SAS/AF is sitting here with our PCs for a while but nobody knows
how to
> > > use it. Could you please point out a direction to me?
> > >
> > > Thank you so much.
> > >
> > > On 9/15/05, Randy Herbison <RandyHerbison@westat.com> wrote:
> > >
> > > > WenSui,
> > > >
> > > > You can use the macro %WINDOW statement to display a list, and
pass
> > > > user
> > > > selections as macro variable values, but %WINDOW may be less
flexible
> > > > than what you need. You would have to know the file list, and
code it
> > > > into the macro %WINDOW statement, before the window is
displayed.
> > > >
> > > > If you have SAS/AF licensed, you can easily create a dialog
window
> > > > that
> > > > looks and acts like VB. It would involve far less code than
%WINDOW.
> > > > The exact implementation details depend on whether the list
should
> > > > contain only SAS files known by your SAS session or not.
> > > >
> > > > RandyHerbison@westat.com
> > > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: owner-sas-l@listserv.uga.edu [mailto:
> > > > owner-sas-l@listserv.uga.edu]
> > > > On Behalf Of Wensui Liu
> > > > Sent: Thursday, September 15, 2005 3:48 PM
> > > > To: SAS-L@listserv.uga.edu
> > > > Subject: diaglog box in SAS
> > > >
> > > >
> > > > Is it possible to create a DIAGLOG box, like the one in VB, in
SAS
> > > > which
> > > >
> > > > allows me to select a file and then pass the file name together
with
> > > > directory to a macro variable?
> > > >
> > > > Thank you so much
> > > >
> > > > --
> > > > WenSui Liu
> > > > (http://statcompute.blogspot.com )
> > > > Senior Decision Support Analyst
> > > > Cincinnati Children Hospital Medical Center
> > > >
> > >
> > >
> > >
> > > --
> > > WenSui Liu
> > > (http://statcompute.blogspot.com )
> > > Senior Decision Support Analyst
> > > Cincinnati Children Hospital Medical Center
> > >
> > >
> >
> >
> > --
> > WenSui Liu
> > (http://statcompute.blogspot.com)
> > Senior Decision Support Analyst
> > Cincinnati Children Hospital Medical Center
> >
> >
>
>
>--
>WenSui Liu
>(http://statcompute.blogspot.com)
>Senior Decision Support Analyst
>Cincinnati Children Hospital Medical Center
Michael L. Davis
Ambler PA
E-Mail: michael@bassettconsulting.com
|