Resources

More on this Topic

Feedback

New Goodies for the SAS® Programmer in SAS® Enterprise Guide® 4.3: Webinar Follow-up

This webinar was originally presented to a live audience in January 2011 and is now available on demand. This page summarizes the questions submitted by the webinar audience, and the answers that were provided by a panel of experts during the session. Many of the answers have been researched since the original session and are presented with more detail here.

Here are some other links of interest for those who want to learn more about this topic:

Questions and Answers from the Webinar Session

These answers were last updated in February 2011, and apply to SAS Enterprise Guide 4.3 unless otherwise indicated.

Will this presentation be available for playback at a later date?

Yes, it's available for playback from here.

What version of SAS do I need to in order to use SAS Enterprise Guide 4.3?  Specifically, which maintenance release?

You need SAS 9.2 or later.  Technically, SAS Enterprise Guide 4.3 can work with any maintenance level of SAS 9.2, but SAS 9.2 Maintenance 3 is recommended.

Are there similar drop box suggestions for system options?

Yes, if you type "options" then spacebar, a list of system options will be displayed, as shown in this screenshot:

Options syntax suggestions

How can you add your own keywords for autocompletion?

You can create an abbreviation from the Program->Add Abbreviation Macro menu. Abbreviations appear in the syntax suggestion.

Is there a link within the syntax context help to SAS help online?

No, not in the 4.3 release.  But this feature is planned for the next major release of SAS Enterprise Guide.

How do I find the list of hot keys?

Select Program->Enhanced Editor Keys, or look in the help for SAS Enterprise Guide.  You can customize almost all of the keyboard shortcuts that are used within the program editor.  Many other shortcuts (such as Ctrl+M for "Maximize content view") are documented in the included help.

Will we also be able to bring up functions in a computed column in a Query Builder task?

No, the computed column editor (expression builder) does not display syntax suggestions. However, built-in functions are listed and documented within the expression builder window, as shown in this screenshot:

Expression builder with built-in function help

So, Ctrl+L loads a list of SAS libraries, correct? Can we set similar shortcuts for libraries we use daily?

You can do this, and many other editing tricks, by defining editor macros and abbreviations.  (Select Program->Editor Macros.)  Editor macros are combinations of commands and keystrokes that you might need to repeat often (such as defining a particular library or code segment).  Once defined as a macro, you can assign a keyboard shortcut to map it as a keyboard command.

Can SGPLOT plot the line of a regression model?

Yes.  Check out the REG statement for the SGPLOT procedure.  Also, most of the analytical procedures in SAS/STAT support ODS Graphics, so creating plots can be accomplished as you define your models.

What version of SAS do I need to use the SGPLOT procedure?

SGPLOT requires SAS 9.2 or later.  You might also be interested in the SGSCATTER and SGPANEL procedures.

You are showing how to write SAS procedure code on the results of a DATA step.  I assume that these processes can be accomplished with an imported data set also, correct?

Yes. In this session, we showed only what it's like to write and maintain programs.  But you can integrate your custom programs with the results of built-in tasks, such as Import Data, Query Builder, and any of the nearly 90 other tasks.

Are these programming features also available for SAS Display Manager ("Base SAS")?  How about the SAS Universal Viewer?

No. These features are available only in SAS Enterprise Guide, and there are not currently any plans to add these features into SAS Display Manager.

If I have projects developed in SAS Enterprise Guide 4.2, do I need to migrate my projects to SAS Enterprise Guide 4.3?

Yes. When you open a project file (.EGP file) in SAS Enterprise Guide 4.3, it is automatically converted for use in the newer version.  After you save the project again, you will be able to use it only in the newer version of SAS Enterprise Guide.  You will not be able to open the project again in SAS Enterprise Guide 4.2.

I use SAS 9.2 for programming. Never bothered about SAS Enterprise Guide as I thought it was point-and click only. This session is therefore very helpful.

We're glad that it helped you!

Please save time to show the features and capabilities of the last bullet, Code Analyzer.

Okay, we did! Thanks for the reminder!

How does the code analyzer handle constructs like macro functions and %include programs?

The code analyzer treats "referenced" programs such as macro programs and included programs as sort of a "black box".  You won't see as much detail in the resulting process flow when you analyze these programs.  That's something that we're working on, but in the meantime you could try to expand out all of the logic into one larger program before trying Program->Analyze->Analyze for Program Flow.

Where can I find more information about how to change the code to make it grid-enabled with the Code Analyzer?

 The feature you're referring to is in Program->Analyze->Analyze for Grid Computing. The Scalability & Performance area of the support.sas.com site is a great reference for All Things Grid Computing.  It includes documents that describe how to work with a SAS Grid Computing environment in SAS Enterprise Guide.

If the execution of code happens on a server, what are the system requirements for the desktop running SAS Enterprise Guide?

You can find the system requirements for SAS Enterprise Guide 4.3 here.  Use the Install Center section of support.sas.com to see system requirements for all SAS products.

Is there a 64-bit version of SAS Enterprise Guide?

There is not currently a 64-bit version, but the 32-bit version is supported on 64-bit versions of Microsoft Windows. SAS Enterprise Guide runs as a 32-bit application. As this blog entry points out, you can still use SAS with the benefits of a 64-bit architecture even while SAS Enterprise Guide remains a 32-bit application.

SAS Enterprise Guide is not automatically installed. I need to install it as a separate product, right??

SAS Enterprise Guide is a separate application from SAS Foundation (or The SAS System). If installing SAS 9.2 software, you need to make sure that SAS Enterprise Guide is part of your install plan for your client desktop.

SAS Enterprise Guide is different from SAS viewer, right? To use SAS Enterprise Guide, a base SAS license is required, right?

Yes, it's completely different from the SAS Viewer or SAS Universal Viewer.. SAS Enterprise Guide uses a SAS session to access data, run programs, and generate results. If you have SAS for Windows (Workstation) installed on the same machine with SAS Enterprise Guide, you need just Base SAS to access these features (SAS/Stat and SAS/Graph are highly recommended). If your SAS installation is on another machine or platform running Windows, UNIX, or z/OS, then you need SAS Integration Technologies to be able to connect to that SAS environment from within SAS Enterprise Guide.

For all work that is done in SAS Enterprise Guide, can a batch-mode equivalent be created on demand?

Almost all tasks that you complete in SAS Enterprise Guide generate SAS programs. You can use the File->Export->Export All Code feature to create a standalone SAS program that contains all of the SAS code needed to run your project work in batch SAS.

If you have SAS Integration Technologies or SAS BI Server, you can also publish your project work as a SAS stored process. A stored process is a SAS program that is stored in a central location that can be run on-demand by a group of authorized users. Stored processes can be run in SAS Enterprise Guide, in the SAS Add-In for Microsoft Office, or in a Web application.

How do you make sure a task (or program) has completed successfully before performing the next one?

In SAS Enterprise Guide 4.2 and later, you can add one or more conditions to a task that control whether the task (and any items that follow it) will run. A condition can be based upon a prompt value, date/time conditions, a value in SAS data set, or macro variable. It's these last two type that can be very powerful, since you can add almost any value that you want to a SAS data set or macro variable and check for it within a condition.

To ensure that a particular task has what it needs before continuing, use a Query Builder or SAS program step in the project to populate a value into a SAS data set. Then create a condition (right-click on the task and select Condition->Add), and create a condition based upon the expected value within the data set you created.

Is there a separate charge for SAS Enterprise Guide apart from the SAS 9.2 license?

SAS Enterprise Guide is provided with SAS for Windows (Workstation) at no additional charge. It's also provided as part of a number of SAS packaged solutions. You can also license it as a separate product for use with SAS already installed at your site. You should work with your SAS account representative to learn whether you already have SAS Enterprise Guide or what is required to get it.

Are there whitepapers beyond this presentation teaching specific steps taught in this seminar?

There are many additional resources for information about SAS Enterprise Guide and how to use it. The SAS Enterprise Guide product support page is a great place to start. You might also be interested in this training course: SAS Enterprise Guide for Experienced SAS Programmers or these other related offerings.

How can I integrate SAS/AF or SCL code into SAS Enterprise Guide tasks?

SCL ("SAS Component Language", which was formerly also known as "Screen Control Language") is most commonly used in SAS full-screen applications built with SAS/AF. As such, those uses of SCL are not accessible from within SAS Enterprise Guide, because SAS Enterprise Guide connects to SAS as a "headless" server that has no full-screen capabilities.

You can extend SAS Enterprise Guide with your own modules by developing custom tasks with Microsoft .NET.

How can you debug DATA steps using SAS Enterprise Guide?

The DATA step debugger, being a full-screen application based in SAS, cannot run within SAS Enterprise Guide. You can still use the time-tested and proven techniques of OBS=0 (to prevent data processing) and strategically placed PUT statements (to see the values of key variables within the SAS log).