Talking Turkey with SAS Graphs

Have you heard the expression “Talk Turkey”? Well then, what better (tongue-in-cheek) thing to do around the Thanksgiving holiday, than talk some turkey using SAS Graphs! 😉 I don’t usually decorate my graphs with images and pictures (they typically ma…

NOTE: Clean Your Cubes

It’s not spring-time, but it’s still worth giving a thought to the cleanliness of your environment, for the benefit of reducing complexity and of reducing space usage. Angela Hall posted a great article about Cleaner OLAP Cube Physical Folder Structu…

NESUG 25 In Review

I had a great time at NESUG 25!  Great networking opportunities, excellent papers/presentations, and a tremendous amount of support from SAS itself. Papers As always, there were a number of terrific papers.  The full proceedings are now posted.  I w…

Object-oriented access to SAS data in a custom task

Most custom tasks need to access SAS data in some way. Since custom tasks are built using Microsoft .NET, and the .NET Framework is object-oriented, it would be convenient if we had an object-oriented method for navigating SAS data sources. That was the thinking behind the “SasData”-namespace classes within the […]

SAS 9.3 macro SQL trick

Suppose you need to create a numbered series of macro variables, one macro variable per row, from an SQL query. Suppose you magically know in advance that a given WHERE clause returns, say, 123 rows.  No problem! proc sql; select customer_name into :…