Microsoft generic reports do not work when you try to reuse your old SCOM Data Warehouse

Case

  1. You have a SCOM Data Warehouse. It was previously used by some management group(s).
  2. You deploy a new management group. You decide to use existing data warehouse when you deploy “Reporting” components. So you uncheck “Data Warehouse” option and instruct installer to use existing database:
  3.  Setup succeeds, but when you try to run any report from Microsoft Generic Report Library, you may get following error:
     Parameter validation failed. It is not possible to provide valid values
     for all parameters. (rsParameterError)

Root cause

MSGRL report calls [ReportDisplayStringGet ] procedure to get display strings:

exec ReportDisplayStringGet 
  @ManagementGroupGuid=N'8b2a97fa-8e27-15de-a6cb-e4e1ab36a37f',
  @ManagementPackSystemName=N'Microsoft.SystemCenter.DataWarehouse.Report.Library',
  @ReportSystemName=N'Microsoft.SystemCenter.DataWarehouse.Report.Alert',
  @LanguageCode=N'RUS',
  @Scope=N'R.%'

This procedure retrieves display strings for the latest version of the management pack. Unfortunately, it doesn’t respect @ManagementGroupGuid parameter. So nothing will be returned if following conditions are met:

  1. Reporting has been uninstalled for the old management group, so the MG is marked as “Rejected” in the DW (see ManagementGroup table):
  2. You have older MP version than you had for your old MG.
    SQL query to check:

    SELECT 
    	mpv.ManagementPackVersionRowId, 
    	mp.ManagementPackSystemName, 
    	mpv.ManagementPackVersion, 
    	mpv.DWLastModifiedByManagementGroupGuid, 
    	mg.ManagementGroupDefaultName
    FROM
    	ManagementPack mp
    	INNER JOIN ManagementPackVersion mpv ON mpv.ManagementPackRowId = mp.ManagementPackRowId
    	LEFT OUTER JOIN ManagementGroup mg ON mpv.DWLastModifiedByManagementGroupGuid=mg.ManagementGroupGuid
    WHERE mp.ManagementPackSystemName='Microsoft.SystemCenter.DataWarehouse.Report.Library'

  3. Display strings have been groomed because old MG is not supposed to write to the DW any more (see 1.)

Resolution

I have faced this issue in my lab environment. So I highly recommend to open a case with Microsoft if you experiencing this issue in production.

  1. Update Microsoft.SystemCenter.DataWarehouse.Report.Library with a newest version.
  2. Check if you have correct MP version in the data warehouse (see above). You may try to update ManagementPackVersion field using SQL query (worked for me). However, please remember that you do it at your own risk.

 

 

Leave a Comment