Authoring reports for System Center Operations Manager 2007

My name is Eugene Bykov and I am a developer responsible for reporting user interface in Microsoft System Center Operations Manager. I frequently get asked questions about new Operations Manager 2007 reporting infrastructure and ways of adopting it to needs of particular organization. I will try to answer some of those questions in this blog. As a developer I will primarily concentrate on using Operations Manager reporting infrastructure to create new reports and ways to customize existing reports to your specific needs.

As you probably already know, reporting was completely rewritten in the Operations Manager 2007. It is still based on SQL Reporting Services (SSRS) though so all skills and experience you have with SSRS applies for the new version. In this version however SSRS is much more integrated with the OpsMgr. This integration comes in different ways. First and most visible is UI. Reports now run inside the console and parameters are frequently in context with things you are currently doing. For normal activity you shouldn’t have a need to use standard SSRS Report Manager UI anymore. It is still available for you though and you can use it to do some advance tasks.

So, how do I author reports? Well, it depends on the problem you are trying to solve. There are several ways available to introduce a new report for the OpsMgr. First and the least expensive one is reusing existing OpsMgr generic reports. OpsMgr Generic Report Library contains a set of highly customizable reports that allow you to report on pretty much any data in the data warehouse. It is usually only a question of providing the right set of parameters. You customize generic reports providing parameters and the best way to do that in SSRS is create a linked report.

The second way to create custom reports in Operations Manager is using Report Builder. Unfortunately we do not ship any Report Builder models at this time so this way is available to you only if you create the models yourself. This could be beneficial for organizations that would want to allow their end users to create new reports using report models created by administrator.

If neither first nor second way solves your problem you can always create report from the scratch using Visual Studio. This is the most powerful way that allows you to use full set of functionality provided by both SSRS and OpsMgr.

There is a set of OpsMgr specific extensions available to you if you decide to write a custom report. Relative date support; custom parameter block; localization; chart extensions. All of this is available for you to use in your reports. You do not have to use and know all of them however. Any SSRS report would work in OpsMgr. It all depends on how much complexity you need and like to put in your solution.

To access data OpsMgr data warehouse has a set of public views. Make sure you use these views rather than going directly against database tables so no future schema updates break your reports. This is also true for building Report Models.