





















































This article by the lead author Samuel Erskine, along with the co-authors Dieter Gasser, Kurt Van Hoecke, and Nasira Ismail, of the book Microsoft System Center Reporting Cookbook, discusses the drivers of organizational reporting and the general requirements on how to plan for business valued reports, steps for planning for the inputs your report data sources depends on, how you plan to view a report, the components of the System Center product, and preparing your environment for self-service Business Intelligence (BI). A report is only as good as the accuracy of its data source. A data source is populated and updated by an input channel.
In this article, we will cover the following recipes:
(For more resources related to this topic, see here.)
This recipe discusses the drivers of organizational reporting and the general requirements on how to plan for business valued reports.
To prepare for this recipe you need to be ready to make a difference with all the rich data available to you in the area of reporting. This may require a mindset change; be prepared.
The key to successfully identifying what needs to be reported is a clear understanding of what you or the report requestor is trying to measure and why.
Reporting is driven by a number of organizational needs, which may fall into one or more of these sample categories:
These categories are examples of the business needs which you must understand. Understanding the business needs of the report increases the value of the report. For example, let us expand on and map the preceding business scenarios to the System Center Product using the following table:
Business/organizational objective |
Objective details |
System Center Product |
Information to support a business case |
Provide a count of computers out of warranty to justify the request to buy additional computers. |
System Center Configuration Manager |
Audit and compliance driven request |
|
|
Budget planning and forecasting |
How much storage should we plan to invest in next year's budget based on the last 3 years' usage data? |
System Center Operations Manager |
Operational Service Level |
How many incidents were resolved without second tier escalation? |
System Center Service Manager |
In a majority of cases for System Center administrators, the requestor does not provide the business objective. Use the preceding table as an example to guide your understanding of a report request.
Reporting is a continual life cycle that begins with a request for information and should ultimately satisfy a real need. The typical life cycle of a request is illustrated in the following figure:
The life cycle stages are:
The recipe focuses on the report conception stage. This stage is the most important stage of the life cycle. This is due to the fact that a report with a clear business objective will deliver the following:
An additional benefit to this stage of report planning is knowing when a report is no longer required. This would reduce the need to manage and support a report that has no value or use.
A report is only as good as the accuracy of its data source. A data source is populated and updated by an input channel. This recipe discusses and provides steps for planning for the inputs your report data source(s) depends on.
Review the Understanding the goals of reporting recipe as a primer for this recipe.
The inputs of reports depend on the type of output you intend to produce and the definition of the accepted fields in the data source. An example is a report that would provide a total count of computers in a System Center Configuration Manager environment. This report will require an input field which stores a numeric value for computers in the database.
Here are the recommended steps you must take to prepare and optimize the data inputs for a report:
The following table provides a practical example of the steps for a report on the total count of computers by the Windows operating system. Workgroup computers and computers not in the Active Directory domain are out of scope of this report request.
Report input type |
Details |
Notes |
Data source |
Asset Database |
Populated manually by the purchase order team |
Data source |
Active Directory |
Automatically populated. Orchestrator runbook performs a scheduled clean-up of disabled objects |
Data source |
System Center Configuration Manager |
Requires an agent and currently not used to manage servers |
Authoritative source |
Active Directory |
Based on the report scope |
Data source relationship |
Microsoft System Center Configuration Manager is configured to discover all systems in the Active directory domain |
Alternative source for the report using the All systems collection |
Plan to document the specific fields you need from the authoritative data source. For example, use a table similar to the following.
Required data |
Description |
Computer name |
The Fully Qualified domain name of the computer |
Operating system |
Friendly operating system name |
Operating system environment |
Server or workstation |
Date created in data source |
Date the computer joined the domain |
Last logon date |
Date the computer last updated the attributes in Active Directory |
The steps provided discusses an example of identifying input sources and the fields you plan to use in a requested report.
Once the required data for your reports have been identified and documented, you must test for validity and consistency. Data sources which are populated by automated processes tend to be less prone to consistency errors. Conversely data sources based on manual entry are prone to errors (for example, correct spelling when typing text into forms used to populate the data source). Here are typical recommended practices for improving consistency in manual and automated system populated data sources:
The reports you create and manage are only as accurate as the original data source. There may be one or more sources available for a report. The process discussed in this recipe provides steps on how to narrow down the list of requirements. The list must include the data source and the specific data fields which contain the data for the proposed report(s). These input fields are populated by manual, automated processes or a combination of both.
The final part of the recipe discussed an example of how to optimize the inputs you select.
These steps will assist in answering one of the typical questions often raised about reports: "Can we trust this information?" The answer, if you have performed these steps will be "Yes, and this is why and how."
The preceding recipe, Planning and optimizing dependent inputs, discussed what you need for a report. This recipe builds on the preceding recipes with a focus on how you plan to view a report (output).
Plan to review the Understanding the goals of reporting and Planning and optimizing dependent inputs recipes.
The type of report output depends on the input you query from the target data source(s). Typically, the output type is defined by the requestor of the report and may be in one or more of these formats:
Here is an example of the steps you must perform to plan and agree the reporting output (s):
The steps to plan the output of reports are illustrated in the following figure:
These are the basic minimal steps you must perform to plan for outputs.
The steps in this recipe are focused on scoping the output of the report. The scope provides you with the following:
The objective is to ensure that the request can be satisfied based on what is available and not what is desired. The process also provides an additional benefit of identifying any gaps in data before embarking on the actual report creation.
When planning report outputs, you may not always have access to the actual source data. The recommend practice is not to work directly with the original source even if this is possible to avoid negatively impacting the source during the planning stage. In either case, there are other options available to you. One of these options is using a spreadsheet program such as Microsoft Excel.
An approach to testing and validating report outputs is the use of Microsoft Excel. You can create a representation of the input source data including the data type (numbers, text, and formula). The data can either be a sample you create yourself or an extract from the original source of the data.
The added benefit is that the spreadsheet can serve as a part of the portfolio of documentation for the report.
The reporting schema of the System Center product is specific to each component. The components of the System Center product are listed in the following table:
System Center component |
Description |
Configuration Manager |
This is configuration life cycle management. It is primarily targeted at client management; however, this is not a technical limitation, and can be used and is also used to manage servers. This component provides configuration management capabilities, which include but are not limited to deploying operating systems, performing hardware and software inventory, and performing application life cycle management. |
Data Protection Manager |
This component delivers the capabilities to provide continual protection (backup and recovery) services for servers and clients. |
Orchestrator |
This is the automation component of the product. It is a platform to connect the different vendor products in a heterogeneous environment in order to provide task automation and business-process automation. |
Operations Manager |
This component provides data center and client monitoring. Monitoring and remediation is performed at the component and deep application levels. |
Service Manager |
This provides IT service management capabilities. The capabilities are aligned with the Information Technology Infrastructure Library (ITIL) and the Microsoft Operations Framework (MOF). |
Virtual Machine Manager |
This is the component to manage virtualization. The capabilities span the management of private, public, and hybrid clouds. |
This recipe discusses the reporting capabilities of each of these components.
You must have a fully deployed configuration of one or more of the System Center product components. Your deployment must include the reporting option provided for the specific component.
The reporting capability for all the System Center components is rooted in their use of Microsoft SQL databases. The reporting databases for each of the components is listed in the following table:
System Center component |
Default installation reporting database |
Additional information |
Configuration Manager |
CM_<Site Code> |
There is one database for each Configuration Manager site. |
Data Protection Manager |
DPMDB_<DPM Server Name> |
This is the default database for the DPM server. Additional information is written to the Operations Manager database if this optional integration is configured. |
Orchestrator |
Orchestrator |
This is the default name when you install Orchestrator. |
Operations Manager |
OperationsManagerDW |
You must install the reporting components to create and populate this database. |
Service Manager |
DWDataMart |
This is the default reporting database. You have the option to configure two additional databases known as OMDataMart and CMDataMart. Additionally, SQL Analysis Services creates a database called DWASDataBase that uses DWDataMart as a source. |
Virtual Machine Manager |
VirtualManagerDB |
This is the default database for the VMM server. Additional information is written to the Operations Manager database if this optional integration is configured. |
Use the steps in the following sections to view the schema of the reporting database of each of the System Center components.
Use the following steps:
Use the following steps:
Use the following steps:
Use the following steps:
Use the following steps:
Perform the following steps:
The procedure provided is a simplified approach to gain a baseline of what may seem rather complicated if you are new to or have limited experiences with SQL databases. The view for each respective component is a consistent representation of the data that you can retrieve by writing reports. Each view is created from one or more tables in the database. The recommended practice is to target report construction at the views, as Microsoft ensures that these views remain consistent even when the underlying tables change.
An example of how to understand the schema is as follows. Imagine the task of preparing a meal for dinner. The meal will require ingredients and a process to prepare it. Then, you will need to present the output on a plate. The following table provides a comparison of this scenario to the respective schema:
Attributes of the meal |
Attributes of the schema |
Raw ingredients |
Database tables |
Packed single or combined ingredients available from a supermarket shelf |
SQL Server views that retrieve data from one or a combination of tables |
Preparing the meal |
Writing SQL queries using the views; use one or a combination (join) views |
Presenting the meal on a plate |
The report(s) in various formats |
In addition to using MSSMS, as described earlier, Microsoft supplies schema information for the components in the online documentation. This information is specific for each product and varies in the depth of the content. The See also section of this recipe provides useful links to the available information published for the schemas.
It is important to understand the schema for the System Center components, but equally important are the processes that populate the databases. The data population process differs by component, but the results are the same (data is automatically inserted into the respective reporting database). The schema is a map to find the data, but the information available is provided by the agents and processes that transfer the information into the databases.
System Center Service Manager and Operations Manager have a similar architecture. The data is initially written to the operational database and then transferred to the data warehouse. The operational database information is typically what is available to view in the console. The operational information is, however, not the best candidate for reporting, as this is constantly changing. Additionally, performing queries against the operational database can result in performance issues. You may view the schema of these databases using a process similar to the one described earlier, but this is not recommended for reporting purposes.
This recipe is focused on preparing your environment for self-service Business Intelligence (BI).
Self-service BI in Microsoft Excel is made available by enabling or installing add-ins. You must download the add-ins from their respective official sites:
The tasks discussed in this recipe are as follows:
The Power Query add-in must be installed using an MSI installer package that is available at Microsoft Download Center. The installer deploys the bits and enables the add-in in your Excel installation.
The functionality in this add-in is regularly improved by Microsoft. Search for Microsoft Power Query for Excel in Download Center for the latest version. The add-in can be downloaded for 32-bit and 64-bit Microsoft Excel versions.
Follow these steps to install the Power Query add-in:
The Power Map add-in must be installed using an executable (.exe) installer package that is available at Microsoft Download Center.
The functionality in this add-in also is regularly improved by Microsoft. Search for Microsoft Power Map for Excel in the Download Center for the latest version.
Follow these steps to install the Power Map add-in:
Perform the following steps in Microsoft Excel to enable PowerPivot and Power View:
You are now ready to explore System Center data, create queries, and perform analysis on the data.
The add-ins for Microsoft Excel provide additional functionality to gather and analyze System Center data. Wizards can be added, interfaces can be made available to combine different sources, and a common language, Data Analysis SyntaX (DAX), can be made available for calculations and performing different forms of visualizations.
The steps discussed in this recipe are required for the use of the Power BI features and functionality using Microsoft Excel. You followed the steps to install Power Query and Power Map, and you enabled PowerPivot and Power Views. These add-ins provide the foundation for self-service Business Intelligence using Microsoft Excel.
In this article, we covered the goals of reporting and how to plan and optimize dependent data inputs. We also discussed planning of report outputs, the reporting schemas of System Center components, and configuring Microsoft Excel for System Center data analysis.
Further resources on this subject: