Tag: coding

SAS OLAP Cubes: Using PROC SQL and MDX to Query OLAP Cubes

SAS PROC SQL has a lot of neat ways you can extract and manipulate data.  In my experience, SAS users typically write PROC SQL to query SAS datasets or relational tables in databases.  You can also…

[[ This is a content summary only. Visit my webs…

SAS OLAP Cubes: Tips for Building OLAP Cube Aggregations Effectively

  As promised, this is a guest post by Steve Overton, who was one of the external reviewers on the Building Business Intelligence with SAS.  Steve works as a SAS BI consultant in the Raleigh-Durham, NC area and is sharing some of his SAS OLAP Cube wizardry with us today! Building OLAP Cube Aggregations Effectively Let me start by saying that I follow a general practice of building cubes by writing the code directly in a SAS program rather than relying solely on SAS OLAP Cube Studio.  Tip #1: Use SAS OLAP Cube Studio for Skeleton Code A good technique I’ve learned is to start building the cube in SAS OLAP Cube Studio to get the skeleton code written for you.  Then proceed with additional dimensions, measures, and customizations by enhancing the SAS code directly.   Once you have a few cubes built, it is also just as easy to copy the OLAP code from one program to the next! Tip #2: Use Separate Steps for OLAP Cube Aggregations Aggregations in OLAP cubes are used to improve the response time of a cube.  By default, aggregations are defined along with the cube in one giant PROC OLAP step.  One critical technique […]

Web Report Studio: Souped up Dashboard Speedometers, Sliders, and Dials

Sometimes SAS Web Report Studio needs some dashboard dials and sliders that seems like mission impossible for you. However, add a stored process with the trusty ole’ SAS GKPI procedure to bring the dashboard features to your local report. I know you are wondering – “What is this special magical procedure of which she speaks?” Oh you are about to find out my precious little SAS geeks. Adding Dashboard Goodies to SAS Web Report Studio You can easily add sliders, dials, and speedometers to your report using a stored process and the SAS GKPI procedure. In the following figure, the report contains a sample of the different gadgets you can add.  Plus notice – there is not any data (cube, info map) being used – it’s all stored processes.    Show me the Code!   All of the code was based on the examples from the GKPI procedure SAS documentation.  I’m only going to show how to create the one for the Avg Fix Response Time because there are just a few fine points to creating an registering the stored process. Otherwise, I basically used the examples from the SAS documentation and I think it’s easy enough to figure out.   […]

What *is* a code review?

Our team planned to use a new set of data tables to increase our customer knowledge and overall improve our processes. Due to our workloads, our team lead had a person (Dev X) from another team write some code to access the tables and create some usable datasets for our process. After the code was written, Dev X was asked to arrange a meeting to review the programs. In short, it did not go well. It was not anything Dev X did, it was what did not happen that contributed to the issue. So what went wrong and what can you learn? Mistake #1: Presuming data knowledge What Happened Dev X asked first what our SAS skill level was – the team lead answered “Advanced – macro writers“. Dev X then walked us through the code explaining how SQL joins worked, purpose of LET statements, and how various SAS functions worked, etc.  Frankly – it was insulting and a time waster. What Should Have Happened It was good to ask our skill level. If Dev X had been misled in the past, a few questions to qualify “Advanced” would have been good. “Do you use SQL to join, are you […]