SSRS 2008 Add-In for MOSS 2007

Quick one here…I was recently setting up a SSRS 2008 dev environment integrated with a MOSS 2007 dev environment and encountered some strange problems with the SSRS 2008 Add-In for SharePoint. Basically every time it would run and state the installation was “interrupted” and nothing was changed. To my frustration nothing appeared to be wrong with the MOSS or SSRS setups however I did notice an error in the event viewer related to access to the SQL Server database. It turns out that wasn’t the problem either. There seems to be an issue with the rsSharePoint[_x64].msi installer as mentioned in Prash’s blog here (http://blogs.msdn.com/prash/…)

To overcome this hurdle you must follow the following steps:

  1. Open a command prompt with “Run as Administrator…
  2. Run rsSharePoint.msi SKIPCA=1.
  3. Locate rsCustomAction.exe file on the file system. This file is copied to your computer by rsSharePoint.msi and is generally located in the C:\Users\YourUserName\AppData\Local\Temp directory.
  4. Run rsCustomAction.exe /i

You will see lots of messages similar to those below in the command window but it will eventually finish and you’re setup of the SSRS 2008 Add-In for your MOSS 2007 environment will be complete.

SSRS 2008 Add-In for MOSS 2007 Install

Hope this helps!

SSIS 2008 Package Configuration Issue

In SSIS 2005 a single config source (XML or SQL Server) with many connection strings could be used to setup the connections for multiple packages even if those packages did not contain all of the connections specified in the config source. In this scenario the native package configurations would read the source and attempt to apply connection strings for all those specified in the source. In cases where the connection did not exist in the SSIS package a warning would be reported however, these warnings could be ignored by setting the ‘SupressConfigurationWarnings’ property to ‘True’ within the package. This configuration strategy worked well for me in past experience since I would only have to manage the connection strings for almost all packages within a single config location. This method however, does not work in SSIS 2008 :(

Below is the solution I decided on however I am not totally satisfied with it. If you are also running into this issue and have something to share please comment below. Thanks!

Variable Approach
1. Inside the package there is a variable for every connection manager that will contain it’s connection string
2. The value for these variables will be derived from a package configuration pulling from a SQL Server source
3. Connection managers all are then set by an expression assigning the value of the variable to their connection string property

Benefits
1. A warning (versus error) is thrown when there is a variable in the database not found in the package that can be ignored by updating the ‘SupressConfigurationWarnings’ property to true. This is also set by another configuration.
2. A single place to manage all connection strings for all SSIS packages

Cons
1. Extra steps are involved when adding new connection managers to a package

Below are the results from my tests using the same strategy in SSIS 2005 and SSIS 2008.

2005 Output

Warning: 0x8001F02F at Package: Cannot resolve a package path to an object in the package “.Connections[Conn2].ConnectionString”. Verify that the package path is valid.
SSIS package “Package.dtsx” starting.
SSIS package “Package.dtsx” finished: Success.

2008 Output

Error at Package: The connection “Conn2″ is not found. This error is thrown by the Connections collection when the specific connection element is not found.”

SSIS Event Log Business Intelligence

Last Thursday I presented at the San Diego SQL Server User Group (www.sdsqlug.org) a codeplex project I developed based on the SSIS Event Logs. Below are links to the codeplex project as well as the slides I presented.

The inspiration for this project comes from a former position I held managing a team of database developers in which we were responsible for all the Customer Data Integration (CDI) processes as well as the Extract Transform and Load (ETL) processes for our Enterprise Data Warehouse (EDW).

While in that role I found that some of the CDI proceses were running slow to the point that it was affecting business operations. Poking around the native SSIS Event Log data it was really difficult to get any clue as to what part of the process was the bottleneck.

Now I knew that Microsoft had previously released some report packs (link) for the SSIS Event Log data that contained the logic I needed to extract this data. So I took these reports and reverse engineered them into an ETL process to load a new Data Mart (DM) based on the SSIS Event Log data.

Add an SSAS cube and some basic reports and I was now able to analyze the performance of my CDI and ETL processes easily and determine where bottlenecks exist and improvements can be made. Another interesting outcome of this is the ability to measure the improvements of changes to the CDI and ETL processes over time.

This project is designed to be generic so that anyone using SSIS can take advantage of this and gain some insight into their process performance. If you are interested in obtaining a copy of the source code please create a codeplex user account and send me a request on the project site (below).

Hope this helps!
Ben

SSIS Event Log Business Intelligence Codeplex Home – http://ssisbi.codeplex.com
Codeplex Registration – https://www.codeplex.com/site/register
San Diego SQL Server User Group – http://www.sdsqlug.org
SSIS on MSDN – http://msdn.microsoft.com/en-us/library/ms141026.aspx

Microsoft Healthcare User Group Presentation

Me and Rick trying to decide who is going to try the mic first

Me and Rick trying to decide who is going to try the mic first

Wow, what a day yesterday. Gave a presentation at the Microsoft Healthcare User Group Conference with Rick Garcia of Methodist hospital to two completely packed rooms. Funny thing, Rick and I had no clue we were supposed to be using the microphones because there was another room full of attendees that obviously couldn’t hear us without them.

In the presentation Rick talked about how they, with the help of Courtyard Group, have reformed their Business Intelligence (BI) organization to be driven by the end-user versus by the IT team. This is key in all BI organizations as, it is not something that IT (in most cases) will truly understand usually.

When IT is the driver behind BI initiatives what I’ve found is that users will simply take the data that IT is providing them, import it into Excel or Access, and then build their own BI from it. This is bad. From an organizational standpiont you have a valuable resource spending time collecting, formatting, and organizing data (something much better handeled by IT when given proper requirements) rather than doing the true analysis. From an Business Continuity (BCP) standpoint you are also now subject to a single point of failure since the analyst will most likely save the reports to their desktop

My portion of the presentation covered the Microsoft Business Intelligence stack and how we are using that to help Methodists IT group focus more on delivering the analysis tools to the users rather than doing the reports themselves. This falls into that category of “BI for the masses” and helping create that reality where IT’s main focus is to integrate the systems and present the analytical tools to the business users to do the analysis. This is how I believe BI works best and provides the most value to an organization. Of course, all of this is delivered in SharePoint as this is where all end-users are being driven to store, manage, and find any and all information.

I am really excited about where Methodist is going with their Business Intelligence initiative and hope to follow up with some more great details at the next Microsoft Healthcare User Group Conference.

Cheers!
Ben

References:

MS HUG Breakout Sessions: http://www.mshug.org/events/exchange_Sept2009.aspx

Presentation Slides: http://www.mshug.org/docs/exhange2009/Garcia_LeveragingSharePointBI.pdf
Methodist Hospital System: http://www.methodisthealth.com
Courtyard Group: http://www.courtyard-group.com/
SharePoint360: http://sharepoint360.com

Democratizing Business Intelligence using Gemini

If you’ve not heard of Gemini yet you’re in for a treat. I found these videos on youtube yesterday of the Gemini demo from the BI conference last year that you can view below.

Gemini is a new part of the MS BI stack that is an add-in for Excel that allows power-users the ability to essentially create their own cubes using virtually any data they can get their hands on.

Being the MS BI geek that I am, this opens up all sorts of new opportunities for prototyping solutions and enabling the business to build their own BI applications.

The key here, that I see, is that these solutions are not managed by IT. So, as soon as one of these Gemini cubes becomes business critical, it will need to be built using formal BI methods and tools so that the proper support procedures can be implemented. This is what scares me :-S

I can foresee smaller businesses that are resistant to change, or are scared of the term “Data Warehouse” from prior failed projects, that would want to implement Gemini solutions as business critical applications. Simply because it’s cheaper to implement in the short term, ignoring the lack of sustainability that a more traditional BI solution yeilds.

Enough rambling for now, watch the videos and let me know what you think…