Tag: Building Business Intelligence

SAS Global Forum: Here’s the Wrap Up!

SAS Global Forum 2012 was a success! After a whirlwind week of activities followed by a vacation and week of rest – I’m ready to give you some highlights.  It was a lot of fun! Tip: Click on any picture to enlarge it. Day 1 – Saturday Ready for the Tweet-Up The biggest drama was at the airport – our flight was delayed due to mechanical failure so I decided it might be better to take a later flight. Met @Steve0verton at the airport and @PhilipB who were both headed to Orlando.  As a result of the later flight we were late to the Tweet-Up so we missed the first round of drinks.  It was sunset when we landed and the weather was mild – very nice for Florida. We had a lot of fun.  @WaynetteTubbs hosted the even and she had a trivia contest.  I won a LED key chain and some SAS Post-It notes.  I love Post-It notes. Plus I got to meet Anna Maria who writes the sassy Julia Group blog – she’s such a sweetie.  And Andrea Wainwright Zimmerman told me that she was the academic chair for SESUG in St. Pete, FL next year.  I may have to volunteer […]

SAS Enterprise Guide: Import the Excel Spreadsheet – Easy Peasy

One SAS Enterprise Guide feature I particularly like is the ability to import Microsoft Excel data quickly and easily.  SAS offers many ways to work with Excel spreadsheets but often I find I just want to extract data from Excel and get on with my job.   Use a “Known Good” First Time If you are trying this process for the first time, use a “known good” or simple spreadsheet so if any issues arise you can at least eliminate the data as the cause. When this process fails, I generally find that the spreadsheet has something odd going on, such as pasted text, etc.  SAS Enterprise Guide has some sample spreadsheets available, which I use in this example. The SupplyInfo.xls spreadsheet is available in the SAS Enterprise Guide Sample data sub-directory. It has two sheets: Suppliers and Shippers.  Let’s import the Suppliers spreadsheet for some quick analysis. Here is the location of my sample files.  [Read Create Your Own Sample Data for SAS BI for ideas about where other sample data lives.] Import Your Excel Spreadsheet I’m using SAS Enterprise Guide 5.1; as far as I can tell the wizard has not changed much from earlier releases so you should be able […]

SAS OLAP Cubes: Viewing Member Properties in Excel and Enterprise Guide

As a follow-up to my earlier post on taking advantage of OLAP member properties, you can also display OLAP member properties through the Add-in for Microsoft Office as well as SAS Enterprise Guide.  I’m a huge fan of Enterprise Guide, so it’s nice to have that ability but even nicer when the more common information consumer can display member properties through a Pivot Table in Excel. One Click to More Information Simply right-click the level and select Show Properties in Report.  From there you can check the properties you have defined. I like the way the Pivot Table displays member properties as each column in Excel.  This information gives the user a little more insight into the data. Also Works in SAS Enterprise Guide To display member properties through SAS Enterprise Guide the approach is similar, right-click the level and select Show Member Property. From there you can check the member properties you want to display.   More about OLAP Member Properties Check out my earlier post to see how these same OLAP member properties are defined and displayed in SAS Web Report Studio. Related content: SAS OLAP Cubes: Taking Advantage of OLAP Member Properties SAS Business Intelligence Tools Overview SAS […]

SAS OLAP Cubes: Taking Advantage of OLAP Member Properties

Have you ever had a requirement to display additional details about data in a report but couldn’t find a good way to do so?  Showing OLAP Member Properties in a SAS Web Report could be a useful way to sneak more details about data into a crosstab table. Crossing Multiple Dimensions with High Cardinality Creates Data Headaches I recently ran into a data challenge with a large OLAP cube (NWAY of about 12 million records) where I needed to summarize a simple count by a “group ID” crossed with a “group name” crossed with another insignificant dimension.  There were a large number of “groups” – over a 1000 distinct group IDs with matching group names.  Since the cardinality between the “group ID” and “group name” with the source data was pretty high, the OLAP query took a very long time to run and ultimately failed due to a lack of memory.  Rather than figuring out how to cross two dimensions with high cardinality (which is not going to be realistic), I used the “group name” to define a member property of the “group ID”. Since the group name had a one-to-one relationship with the group ID, the member property makes sense. […]

SAS Global Forum: Orlando, Here I Come! I’m so Pumped!!

SAS Global Forum 2012 starts this coming Sunday in the happiest place on earth – Disney World.  I’m so excited.  You may have already read some of things I’m planning to do and papers I’m planning to see and even some background on the SAS BI and Google Analytics paper that Angela and I are presenting. By the way, SAS Press is giving away a copy of the Building Business Intelligence book during our talk and three more during the SAS Talks via Twitter on Wednesday morning at 9:30 am EST.  You can join the SAS Talks here. Check out All the Buzz!!! Here’s my latest video blog at AllAnalytics.Com about the SAS Global forum.  Like my screen capture?  Am I getting ready to kiss the monitor or spit out my gum?  Anyway – leave a comment at the All Analytics site if you watch the video. (Appreciate you!)   Check out these excellent posts from some of the coolest people I know: All Analytics editor Beth Schultz, provides a great overview in the On the Road to SAS Global Forum.  She helps you understand why we are all so excited!  Angela Hall, my wonderful co-author, invites you to meet up at SAS […]

Administration: Fall in Love with JBoss Again by Configuring the JGroup Bind Address

As a consultant working for multiple clients, having JBoss installed on a laptop is common to perform demonstrations or to develop SAS BI applications.  JBoss can become flaky over time and be a source of frustration for local installations because the operating environment changes very frequently compared to a server environment.  Digging through logs trying to find a direct answer to why a report link does not work or why a BI Dashboard indicator will not link properly is a huge headache.  I have experienced instances where some web applications work and others do not.  A simple configuration task can be performed to prevent a lot of these random issues – especially for mobile laptops which change environments frequently.   It involves adding an additional JVM option to the scripts or batch files which start the web application server (JBoss) and the SAS Remote Services service. Binding JBoss The 9.3 Mid-Tier administration guide describes how to set the JGroups Bind Address for JBoss, Weblogic, and WebSphere.  The JGroup Bind Address needs to be set for SAS Remote Services and JBoss (or whatever the mid-tier application server is).  The bind address MUST be the same for both JBoss and SAS Remote […]

SAS Stored Processes: Excerpt from STP Book

We excerpted this post from The 50 Keys to Learning SAS Stored Processes. Chapter 2: Creating Simple Stored Processes BASE SAS gives programmers the exponential ability to query and report about data from their desktops; however, this limitation means that a user can access the data from their desktops only. As an organization’s reporting needs grow, more individuals need to quickly retrieve and analyze similar information. As a result, a small group with access to the data unintentionally becomes report gatekeepers. Other members of the organization have to talk to these gatekeepers for even the simplest piece of data. Before you convert a SAS program to a stored process, you must consider whether the program is a good candidate for conversion. Although any SAS program can be a stored process, this does not mean that all programs should be a stored process. Programs that require user input, run on user demand, and generate output are typically better candidates than those programs scheduled to run overnight, take a long time to run or require no user modifications. In Chapter 1, “Getting Started with Stored Processes” you learned how to register a stored process. In this chapter, you will convert an existing […]

Peek Inside: The 50 Keys to Learning SAS Stored Processes

 Release Date: Apr 2012     In the midst of writing our first book, Angela and I argued over the content of the stored process chapter. We knew we could not cover all the topics that deserved attention. After we wrote the outline for that chapter, we then wrote the outline for this book.  The first title was the 25 Best Tips for Writing Stored Processes. As we started writing the book, the tips grew from 37 to 43 to 55. Finally, we agreed on a nice round number – 50.   Our idea for the tips, which later became keys, was simple: take a simple SAS program and show how that program can be modified into several different stored processes. By following this process, you build on your knowledge from the previous chapter as you learn the new techniques. Careful – once you realize how easy it is to create powerful stored processes, you might find yourself making up excuses to write them!    Enhanced Learning Path  We wanted to make learning the code easier to learn. So we developed a table method where the code you are writing is on the left and the explanation is on the right. […]