管理組件

Microsoft.SystemCenter.DataWarehouse.Report.ManagementPackODR (Report)

管理組件 ODR 報表

Knowledge Base article:

摘要

這份報表如何運作?

管理組件報表由數個表格組成:

Element properties:

AccessibilityPublic
VisibleTrue

Report Localization:

R.Description
管理組件 ODR 資料。
R.DescriptionTitle在加號上按一下,即可檢視此報表的完整描述
R.GeneratedTimeLabel報表時間
R.PageFormat第 {0} 頁,共 {1} 頁
R.StartEndTimeFormat從 {0} 到 {1}
R.StartEndTimeLabel報表時間長度
R.Table1Title已安裝的 MP 版本
R.Table2Title覆寫
R.Table3Title已使用 UI 建立的自訂項目
R.TimeZoneFormat所有日期和時間顯示於 {0}
R.Title管理組件 ODR 報表
RT.Column.ManagementPack管理組件
RT.Column.Object物件
RT.Column.OverrideObject覆寫
RT.Column.Parameter參數
RT.Column.TargetClass目標
RT.Column.Value
RT.Column.Version版本

Source Code:

<Report ID="Microsoft.SystemCenter.DataWarehouse.Report.ManagementPackODR" Accessibility="Public" Visible="true">
<ParameterBlock xmlns="http://schemas.microsoft.com/mom/reporting/2007/ReportParameterSettings" columns="1">
<Controls>
<Control type="Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.RelativeDateTimePicker" rowSpan="1" columnSpan="1">
<ReportParameters>
<ReportParameter name="TimeZone" binding="TimeZone">
<Prompt>Microsoft.SystemCenter.DataWarehouse.Report.Library!Microsoft.SystemCenter.DataWarehouse.Report.ParameterPrompt.TimeZone</Prompt>
</ReportParameter>
<ReportParameter name="TimeZoneName" binding="TimeZoneName"/>
<ReportParameter name="StartDate_BaseType" binding="StartDate_BaseType"/>
<ReportParameter name="StartDate_BaseValue" binding="StartDate_BaseValue">
<Prompt>Microsoft.SystemCenter.DataWarehouse.Report.Library!Microsoft.SystemCenter.DataWarehouse.Report.ParameterPrompt.StartDateTime</Prompt>
</ReportParameter>
<ReportParameter name="StartDate_OffsetType" binding="StartDate_OffsetType"/>
<ReportParameter name="StartDate_OffsetValue" binding="StartDate_OffsetValue"/>
<ReportParameter name="EndDate_BaseType" binding="EndDate_BaseType"/>
<ReportParameter name="EndDate_BaseValue" binding="EndDate_BaseValue">
<Prompt>Microsoft.SystemCenter.DataWarehouse.Report.Library!Microsoft.SystemCenter.DataWarehouse.Report.ParameterPrompt.EndDateTime</Prompt>
</ReportParameter>
<ReportParameter name="EndDate_OffsetType" binding="EndDate_OffsetType"/>
<ReportParameter name="EndDate_OffsetValue" binding="EndDate_OffsetValue"/>
</ReportParameters>
<Properties>
<Property name="MaxWidth">
<Value>400</Value>
</Property>
</Properties>
</Control>
</Controls>
</ParameterBlock>
<Definition>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<DataSources>
<DataSource Name="DataWarehouseMain">
<rd:DataSourceID>e4235c51-407f-4065-8519-a1e57374bc45</rd:DataSourceID>
<DataSourceReference>Data Warehouse Main</DataSourceReference>
</DataSource>
</DataSources>
<InteractiveHeight>11in</InteractiveHeight>
<ReportParameters>
<ReportParameter Name="LT_Report">
<DataType>String</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>LT_Report_Query</DataSetName>
<ValueField>ValueXml</ValueField>
</DataSetReference>
</DefaultValue>
<ValidValues>
<DataSetReference>
<DataSetName>LT_Report_Query</DataSetName>
<ValueField>ValueXml</ValueField>
<LabelField>ValueName</LabelField>
</DataSetReference>
</ValidValues>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="LT_Table">
<DataType>String</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>LT_Table_Query</DataSetName>
<ValueField>ValueXml</ValueField>
</DataSetReference>
</DefaultValue>
<ValidValues>
<DataSetReference>
<DataSetName>LT_Table_Query</DataSetName>
<ValueField>ValueXml</ValueField>
<LabelField>ValueName</LabelField>
</DataSetReference>
</ValidValues>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate_BaseType">
<DataType>String</DataType>
<DefaultValue>
<Values>
<Value>="Today"</Value>
</Values>
</DefaultValue>
<Prompt>[Start Date Base]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate_BaseValue">
<DataType>DateTime</DataType>
<DefaultValue>
<Values>
<Value>=Now()</Value>
</Values>
</DefaultValue>
<Prompt>[Start Date Value]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetType">
<DataType>String</DataType>
<DefaultValue>
<Values>
<Value>="Day"</Value>
</Values>
</DefaultValue>
<Prompt>[Start Date Offset Type]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetValue">
<DataType>Integer</DataType>
<DefaultValue>
<Values>
<Value>=-7</Value>
</Values>
</DefaultValue>
<AllowBlank>true</AllowBlank>
<Prompt>[Start Date Offset]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="EndDate_BaseType">
<DataType>String</DataType>
<DefaultValue>
<Values>
<Value>="Today"</Value>
</Values>
</DefaultValue>
<Prompt>[End Date Base]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="EndDate_BaseValue">
<DataType>DateTime</DataType>
<DefaultValue>
<Values>
<Value>=Now()</Value>
</Values>
</DefaultValue>
<Prompt>[End Date Value]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetType">
<DataType>String</DataType>
<DefaultValue>
<Values>
<Value>="None"</Value>
</Values>
</DefaultValue>
<Prompt>[End Date Offset Type]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetValue">
<DataType>Integer</DataType>
<DefaultValue>
<Values>
<Value>=0</Value>
</Values>
</DefaultValue>
<AllowBlank>true</AllowBlank>
<Prompt>[End Date Offset]</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="TimeZone">
<DataType>String</DataType>
<Prompt>[Time Zone]</Prompt>
</ReportParameter>
<ReportParameter Name="TimeZoneName">
<DataType>String</DataType>
<Nullable>true</Nullable>
<AllowBlank>true</AllowBlank>
<Prompt>[Time Zone Name]</Prompt>
</ReportParameter>
<ReportParameter Name="Interactive">
<DataType>Boolean</DataType>
<Nullable>true</Nullable>
<DefaultValue>
<Values>
<Value>=False</Value>
</Values>
</DefaultValue>
<Prompt>Interactive</Prompt>
<Hidden>true</Hidden>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>8.5in</InteractiveWidth>
<rd:GridSpacing>0.05in</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<rd:ReportID>ab518a51-343d-46c4-b1f8-4ec65faafd95</rd:ReportID>
<CodeModules>
<CodeModule>Microsoft.EnterpriseManagement.Reporting.Code, Version=6.0.0.0, Culture=neutral</CodeModule>
</CodeModules>
<DataSets>
<DataSet Name="LT_Report_Query">
<Fields>
<Field Name="ValueXml">
<DataField>XML_F52E2B61-18A1-11d1-B105-00805F49916B</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ValueName">
<Value>="LT"</Value>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>ReportDisplayStringGet</CommandText>
<QueryParameters>
<QueryParameter Name="@ManagementGroupGuid">
<Value>=Code.GetCallingManagementGroupId()</Value>
</QueryParameter>
<QueryParameter Name="@ManagementPackSystemName">
<Value>ODR</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.DataWarehouse.Report.ManagementPackODR</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>R.%</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="LT_Table_Query">
<Fields>
<Field Name="ValueXml">
<DataField>XML_F52E2B61-18A1-11d1-B105-00805F49916B</DataField>
</Field>
<Field Name="ValueName">
<Value>="LT"</Value>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>ReportDisplayStringGet</CommandText>
<QueryParameters>
<QueryParameter Name="@ManagementGroupGuid">
<Value>=Code.GetCallingManagementGroupId()</Value>
</QueryParameter>
<QueryParameter Name="@ManagementPackSystemName">
<Value>ODR</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.DataWarehouse.Report.ManagementPackODR</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>RT.%</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="ManagementGroups">
<Fields>
<Field Name="ManagementGroupGuid">
<DataField>ManagementGroupGuid</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="DisplayName">
<DataField>DisplayName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT vManagementGroup.ManagementGroupGuid, ISNULL(vDisplayString.Name, vManagementGroup.ManagementGroupDefaultName) AS DisplayName
FROM vManagementGroup LEFT OUTER JOIN
vDisplayString ON vManagementGroup.ManagementGroupGuid = vDisplayString.ElementGuid AND vDisplayString.LanguageCode = @LanguageCode
</CommandText>
<QueryParameters>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="Overrides">
<Fields>
<Field Name="OverrideDefaultName">
<DataField>OverrideDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="MPDisplayName">
<DataField>MPDisplayName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Value">
<DataField>Value</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ParameterName">
<DataField>ParameterName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="OverridablePropertyName">
<DataField>OverridablePropertyName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="targetName">
<DataField>targetName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT vOverride.OverrideDefaultName, ISNULL(vDisplayStringMP.Name, vManagementPack.ManagementPackDefaultName) AS MPDisplayName,
vOverrideManagementPackVersion.Value, ISNULL(ISNULL(ISNULL(vDisplayStringOverride.Name, vOverrideManagementPackVersion.OverridableParameterName), vOverrideManagementPackVersion.OverridablePropertyName), vOverride.OverrideDefaultName) AS ParameterName,
vOverrideManagementPackVersion.OverridablePropertyName, ISNULL(vDisplayStringTarget.Name, vManagedEntityType.ManagedEntityTypeDefaultName)
AS targetName
FROM vManagementPack INNER JOIN
vOverride ON vManagementPack.ManagementPackRowId = vOverride.ManagementPackRowId INNER JOIN
vOverrideManagementPackVersion ON vOverride.OverrideRowId = vOverrideManagementPackVersion.OverrideRowId INNER JOIN
vManagedEntityType ON vOverrideManagementPackVersion.ContextManagedEntityTypeRowId = vManagedEntityType.ManagedEntityTypeRowId LEFT OUTER JOIN
vDisplayString AS vDisplayStringTarget ON vManagedEntityType.ManagedEntityTypeGuid = vDisplayStringTarget.ElementGuid AND
vDisplayStringTarget.LanguageCode = @LanguageCode LEFT OUTER JOIN
vDisplayString AS vDisplayStringMP ON vManagementPack.ManagementPackVersionIndependentGuid = vDisplayStringMP.ElementGuid AND
vDisplayStringMP.LanguageCode = @LanguageCode LEFT OUTER JOIN
vDisplayString AS vDisplayStringOverride ON vOverrideManagementPackVersion.ManagedEntityGuid = vDisplayStringOverride.ElementGuid AND
vDisplayStringOverride.LanguageCode = @LanguageCode
ORDER BY vManagementPack.ManagementPackDefaultName
</CommandText>
<QueryParameters>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="UIGeneratedObjects">
<Fields>
<Field Name="Object">
<DataField>Object</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Value">
<DataField>Value</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>--Rules
SELECT vRule.RuleSystemName AS Object, vRuleManagementPackVersionNoXml.DefinitionXml AS Value
FROM
vRule INNER JOIN
vRuleManagementPackVersionNoXml
ON vRule.RuleRowId = vRuleManagementPackVersionNoXml.RuleRowId

WHERE RuleSystemName LIKE 'MomUIGenerated%'
UNION

--Monitors
SELECT vMonitor.MonitorSystemName, vMonitorManagementPackVersionNoXml.DefinitionXml
FROM
vMonitor INNER JOIN
vMonitorManagementPackVersionNoXml
ON vMonitor.MonitorRowId = vMonitorManagementPackVersionNoXml.MonitorRowId

WHERE MonitorSystemName LIKE 'MomUIGenerated%'
</CommandText>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
<DataSet Name="ManagementPacks">
<Fields>
<Field Name="ManagementPackSystemName">
<DataField>ManagementPackSystemName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="MPDisplayName">
<DataField>MPDisplayName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ManagementPackVersion">
<DataField>ManagementPackVersion</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT
vManagementPack.ManagementPackSystemName
,ISNULL(vDisplayString.Name,vManagementPack.ManagementPackDefaultName) AS MPDisplayName
,vManagementPackVersion.ManagementPackVersion
FROM
vManagementGroupManagementPackVersion
INNER JOIN
vManagementPackVersion ON vManagementPackVersion.ManagementPackVersionRowId = vManagementGroupManagementPackVersion.ManagementPackVersionRowId
INNER JOIN
vManagementPack ON vManagementPackVersion.ManagementPackRowId = vManagementPack.ManagementPackRowId
LEFT OUTER JOIN
vDisplayString ON vManagementPack.ManagementPackVersionIndependentGuid = vDisplayString.ElementGuid AND vDisplayString.LanguageCode=@LanguageCode
WHERE vManagementGroupManagementPackVersion.LatestVersionInd = 1
</CommandText>
<QueryParameters>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
</QueryParameters>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
<Code><Script>
Const LocTableStringQuery As String = "R/S[@N='{0}']/text()"

Const TimeZoneParameterName As String = "TimeZone"
Const SD_BaseTypeParameterName As String = "StartDate_BaseType"
Const SD_BaseValueParameterName As String = "StartDate_BaseValue"
Const SD_OffsetTypeParameterName As String = "StartDate_OffsetType"
Const SD_OffsetValueParameterName As String = "StartDate_OffsetValue"
Const ED_BaseTypeParameterName As String = "EndDate_BaseType"
Const ED_BaseValueParameterName As String = "EndDate_BaseValue"
Const ED_OffsetTypeParameterName As String = "EndDate_OffsetType"
Const ED_OffsetValueParameterName As String = "EndDate_OffsetValue"
Const IsRelativeTimeSupported As Boolean = False
Const TimeTypeParameterName As String = "TimeType"
Const TimeWeekMapParameterName As String = "TimeWeekMap"

Dim LocTables As System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)
Dim ReportTimeZone As Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation
Dim ReportStartDate As DateTime
Dim ReportEndDate As DateTime
Dim ReportTime As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime
Dim ReportCulture As System.Globalization.CultureInfo
Dim ParameterProcessor As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor

Protected Overrides Sub OnInit()
LocTables = new System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)()
ReportTimeZone = Nothing
ReportStartDate = DateTime.MinValue
ReportEndDate = DateTime.MinValue
ReportTime = Nothing
ReportCulture = System.Globalization.CultureInfo.GetCultureInfo(Report.User("Language"))
ParameterProcessor = New Microsoft.EnterpriseManagement.Reporting.ParameterProcessor(ReportCulture)
End Sub

Public Function GetCallingManagementGroupId() As String
Return Microsoft.EnterpriseManagement.Reporting.ReportingConfiguration.ManagementGroupId
End Function

Public Function GetReportLocLanguageCode() As String
Return ReportCulture.ThreeLetterWindowsLanguageName
End Function

Public Function GetLocTable(Name As String) As Microsoft.EnterpriseManagement.Reporting.XmlStringTable
Dim LocTable As Microsoft.EnterpriseManagement.Reporting.XmlStringTable

If Not LocTables.TryGetValue(Name, LocTable) Then
LocTable = New Microsoft.EnterpriseManagement.Reporting.XmlStringTable(LocTableStringQuery, Report.Parameters(Name).Value)
LocTables.Add(Name, LocTable)
End If

Return LocTable
End Function

Public Function GetReportTimeZone() As Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation
If IsNothing(ReportTimeZone) Then ReportTimeZone = Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation.FromValueString(Report.Parameters(TimeZoneParameterName).Value)
Return ReportTimeZone
End Function

Public Function ToDbDate(ByVal DateValue As DateTime) As DateTime
return GetReportTimeZone.ToUniversalTime(DateValue)
End Function

Public Function ToReportDate(ByVal DateValue As DateTime) As DateTime
return GetReportTimeZone.ToLocalTime(DateValue)
End Function

Public Function GetReportStartDate() As DateTime
If (ReportStartDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_BaseTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(SD_OffsetTypeParameterName).Value, Report.Parameters(SD_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
Else
ReportStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_BaseTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(SD_OffsetTypeParameterName).Value, Report.Parameters(SD_OffsetValueParameterName).Value)
End if
End If
return ReportStartDate
End Function

Public Function GetReportEndDate() As DateTime
If (ReportEndDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportEndDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(ED_BaseTypeParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, Report.Parameters(ED_OffsetTypeParameterName).Value, Report.Parameters(ED_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
If IsBusinessHours(GetReportTimeFilter()) Then ReportEndDate = ReportCulture.Calendar.AddDays(ReportEndDate, 1)
Else
ReportEndDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(ED_BaseTypeParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, Report.Parameters(ED_OffsetTypeParameterName).Value, Report.Parameters(ED_OffsetValueParameterName).Value)
End if
End If
return ReportEndDate
End Function

Public Function GetReportTimeFilter() As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime
If IsNothing(ReportTime) Then ReportTime = New Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime(Report.Parameters(TimeTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, CStr(Join(Report.Parameters(TimeWeekMapParameterName).Value, ",")))
return ReportTime
End Function

Public Function IsBusinessHours(Value As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime) As Boolean
return (Not IsNothing(Value)) And (Value.TimeType = Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTimeType.Business)
End Function

Public Function FormatDateTime(Format As String, Value As DateTime) As String
return Value.ToString(Format, ReportCulture)
End Function

Public Function FormatNumber(Format As String, Value As Decimal) As String
return Value.ToString(Format, ReportCulture)
End Function

Public Function FormatString(Format As String, ParamArray Values() as Object) As String
return String.Format(ReportCulture, Format, Values)
End Function

Public Function NullFormatString(Format As String, Value as String) As String
return IIF(String.IsNullOrEmpty(Value), String.Empty, String.Format(ReportCulture, Format, Value))
End Function

Public Function FormatBusinessHours(Format As String, Value As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime) As String
Dim result As String

If IsBusinessHours(Value) Then

Dim firstDay As DayOfWeek
Dim days As System.Collections.Generic.List(Of String)

firstDay = ReportCulture.DateTimeFormat.FirstDayOfWeek
days = new System.Collections.Generic.List(Of String)()

For loopDay As DayOfWeek = DayOfWeek.Sunday To DayOfWeek.Saturday
Dim day As DayOfWeek
day = CType((CInt(loopDay) + CInt(firstDay)) Mod 7, DayOfWeek)

If value.WeekMap.Contains(day) Then days.Add(ReportCulture.DateTimeFormat.GetAbbreviatedDayName(day))
Next loopDay

result = FormatString(Format, DateTime.Today.Add(Value.StartTime).ToString(ReportCulture.DateTimeFormat.ShortTimePattern), DateTime.Today.Add(Value.EndTime).ToString(ReportCulture.DateTimeFormat.ShortTimePattern), String.Join(",", days.ToArray()))

Else
result = String.Empty
End if

return result
End Function

Public Function BuildXmlValueList(ByVal ValueList() As Object) As String
Return Microsoft.EnterpriseManagement.Reporting.MultiValueParameter.ToXml("Data", "Value", ValueList)
End Function

REM ----------------------------------------

Public Enum AggregationType
Hourly = 0
Daily = 1
Monthly = 2
End Enum

Public Function FormatAggregatedTimeValue(ByVal TimeValue As DateTime, ByVal AggType As AggregationType) As DateTime
Dim Result As DateTime

Select Case (AggType)
Case AggregationType.Hourly
Result = New DateTime(TimeValue.Year, TimeValue.Month, TimeValue.Day, TimeValue.Hour, 0, 0, ReportCulture.Calendar)

Case AggregationType.Daily
Result = New DateTime(TimeValue.Year, TimeValue.Month, TimeValue.Day, ReportCulture.Calendar)

Case AggregationType.Monthly
Result = New DateTime(TimeValue.Year, TimeValue.Month, 1, ReportCulture.Calendar)
End Select

Return Result
End Function

Public Function FormatAggregatedTimeValueLabel(ByVal TimeValue As DateTime, ByVal AggType As AggregationType) As String
Dim Format As String

Select Case (AggType)
Case AggregationType.Hourly
Format = "g"

Case AggregationType.Daily
Format = "d"

Case AggregationType.Monthly
Format = "Y"
End Select

Return TimeValue.ToString(Format, ReportCulture)
End Function
REM ---------------------------------

Public Function FormatTimeInterval(ByVal TimeInSeconds As Integer) As String
Dim Hours, Minutes, Seconds As Integer

Hours = Math.Floor(TimeInSeconds / 3600)
Minutes = Math.Floor((TimeInSeconds Mod 3600) / 60)
Seconds = TimeInSeconds Mod 60

Return FormatString("{0}:{1}:{2}", Hours.ToString(), Minutes.ToString("00"), Seconds.ToString("00"))
End Function</Script></Code>
<Width>8.35in</Width>
<Body><Script>
<ReportItems>
<Textbox Name="textbox5">
<DataElementOutput>NoOutput</DataElementOutput>
<Top>3.85in</Top>
<Width>8.05in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>10</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.15in</Left>
<Height>0.25in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Table3Title", "[Custom UI Items]")</Value>
</Textbox>
<Table Name="table2">
<NoRows>-- No Data --</NoRows>
<ZIndex>9</ZIndex>
<DataElementOutput>Output</DataElementOutput>
<DataSetName>UIGeneratedObjects</DataSetName>
<DetailDataElementName>Object</DetailDataElementName>
<Top>4.1in</Top>
<Width>8.05in</Width>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox12">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>6pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>AttributeNormal</DataElementStyle>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Name</DataElementName>
<Value>=Fields!Object.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox13">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Value</DataElementName>
<Value>=Fields!Value.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<Sorting>
<SortBy>
<SortExpression>=Fields!Object.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
</Details>
<DetailDataCollectionName>Objects</DetailDataCollectionName>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
</Style>
<Header>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox14">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>4pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!Object.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.Object", "[Object]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox15">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!Value.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.Value", "[Value]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>2.2in</Width>
</TableColumn>
<TableColumn>
<Width>5.85in</Width>
</TableColumn>
</TableColumns>
<DataElementName>CustomItemsTable</DataElementName>
<Left>0.15in</Left>
</Table>
<Textbox Name="textbox4">
<DataElementOutput>NoOutput</DataElementOutput>
<Top>3.05in</Top>
<Width>8.05in</Width>
<Style></Style>
<FontFamily>tahoma</FontFamily>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>8</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.15in</Left>
<Height>0.24792in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Table2Title", "[Overrides]")</Value>
</Textbox>
<Table Name="table1">
<ZIndex>7</ZIndex>
<DataElementOutput>Output</DataElementOutput>
<DataSetName>Overrides</DataSetName>
<DetailDataElementName>Override</DetailDataElementName>
<Top>3.3in</Top>
<Width>8.05in</Width>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="MPName_OverridesTable">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>6pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>ManagementPackName</DataElementName>
<Value>=Fields!MPDisplayName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="OverrideDefaultName">
<rd:DefaultName>OverrideDefaultName</rd:DefaultName>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>AttributeNormal</DataElementStyle>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Name</DataElementName>
<Value>=Fields!OverrideDefaultName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="OverridableParameterName">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Parameter</DataElementName>
<Value>=Fields!ParameterName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="ManagedEntityTypeDefaultName">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>TargetClass</DataElementName>
<Value>=Fields!targetName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="Value">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Value</DataElementName>
<Value>=Fields!Value.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<Sorting>
<SortBy>
<SortExpression/>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
</Details>
<DetailDataCollectionName>Overrides</DetailDataCollectionName>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
<Header>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox10">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>4pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>9</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!MPDisplayName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.ManagementPack", "[Management Pack]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox11">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>8</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!OverrideDefaultName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.OverrideObject", "[Override Object]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox18">
<rd:DefaultName>textbox18</rd:DefaultName>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>7</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ParameterName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.Parameter", "[Parameter]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox6">
<rd:DefaultName>textbox6</rd:DefaultName>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!targetName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.TargetClass", "[ClassTarget]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox24">
<rd:DefaultName>textbox24</rd:DefaultName>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>5</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!Value.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.Value", "[Value]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>2.1in</Width>
</TableColumn>
<TableColumn>
<Width>1.95in</Width>
</TableColumn>
<TableColumn>
<Width>1.45in</Width>
</TableColumn>
<TableColumn>
<Width>1.6in</Width>
</TableColumn>
<TableColumn>
<Width>0.95in</Width>
</TableColumn>
</TableColumns>
<DataElementName>OverridesTable</DataElementName>
<Height>0.4in</Height>
<Left>0.15in</Left>
</Table>
<Textbox Name="textbox3">
<rd:DefaultName>textbox3</rd:DefaultName>
<DataElementOutput>NoOutput</DataElementOutput>
<Top>2.25in</Top>
<Width>8.05in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.15in</Left>
<Height>0.25in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Table1Title", "[What Version of MPs are installed]")</Value>
</Textbox>
<Rectangle Name="rectangle5">
<Left>0.15in</Left>
<ZIndex>5</ZIndex>
<Top>1.50625in</Top>
<Width>8.05in</Width>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Bottom>Solid</Bottom>
</BorderStyle>
</Style>
<Height>0.05in</Height>
</Rectangle>
<Rectangle Name="rectangle4">
<Left>0.15in</Left>
<ZIndex>4</ZIndex>
<ReportItems>
<Textbox Name="reportDescriptionTitle">
<DataElementOutput>NoOutput</DataElementOutput>
<Top>0.3in</Top>
<Width>8in</Width>
<Style></Style>
<Color>DimGray</Color>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.DescriptionTitle", "[Report Description Title]")</Value>
</Textbox>
<Textbox Name="reportTitle">
<DataElementOutput>Output</DataElementOutput>
<Top>0.05in</Top>
<Width>7.8in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>11pt</FontSize>
<FontWeight>700</FontWeight>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<Left>0.2in</Left>
<DataElementName>Title</DataElementName>
<Height>0.25in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Title", "[Report Title]")</Value>
</Textbox>
</ReportItems>
<Top>0.75625in</Top>
<Width>8.05in</Width>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.55in</Height>
</Rectangle>
<Rectangle Name="rectangle3">
<Left>0.15in</Left>
<ZIndex>3</ZIndex>
<Visibility>
<Hidden>true</Hidden>
<ToggleItem>reportDescriptionTitle</ToggleItem>
</Visibility>
<ReportItems>
<Textbox Name="reportDescription">
<DataElementOutput>NoOutput</DataElementOutput>
<Width>7.8in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<CanGrow>true</CanGrow>
<Left>0.2in</Left>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Description", "[Report Description]")</Value>
</Textbox>
</ReportItems>
<Top>1.30625in</Top>
<Width>8.05in</Width>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.2in</Height>
</Rectangle>
<Rectangle Name="rectangle2">
<Left>0.15in</Left>
<ZIndex>2</ZIndex>
<ReportItems>
<Textbox Name="textbox28">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>6.05in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>9</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.StartEndTimeFormat", "{0} - {1}"), Code.FormatDateTime("g", Code.GetReportStartDate()), Code.FormatDateTime("g", Code.GetReportEndDate()))</Value>
</Textbox>
<Textbox Name="textbox17">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>0.05in</Width>
<Style></Style>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>8</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.1in</Left>
<DataElementName>TimeZone</DataElementName>
<Height>0.2in</Height>
<Value>=Parameters!TimeZoneName.Value</Value>
</Textbox>
<Textbox Name="textbox19">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>0.05in</Width>
<Style></Style>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>7</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.05in</Left>
<DataElementName>EndDate</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatDateTime("g", Code.GetReportEndDate())</Value>
</Textbox>
<Textbox Name="textbox21">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>0.05in</Width>
<Style></Style>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>StartDate</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatDateTime("g", Code.GetReportStartDate())</Value>
</Textbox>
<Image Name="parameterBottomImage">
<Sizing>Fit</Sizing>
<Top>0.55in</Top>
<MIMEType/>
<Source>External</Source>
<Style/>
<ZIndex>5</ZIndex>
<Value>../gradient_portrait.gif</Value>
</Image>
<Textbox Name="textbox9">
<DataElementOutput>Output</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<Width>6.05in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<DataElementName>Created</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatDateTime("g", Code.ToReportDate(DateTime.UtcNow))</Value>
</Textbox>
<Textbox Name="textbox7">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>0.1in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.85in</Left>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox2">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<Width>0.1in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.85in</Left>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox1">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<Width>1.65in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.2in</Left>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.GeneratedTimeLabel", "[Report Generated Time Label]")</Value>
</Textbox>
<Textbox Name="textbox26">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>1.65in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<CanGrow>true</CanGrow>
<Left>0.2in</Left>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.StartEndTimeLabel", "[Report Start/End Time Label]")</Value>
</Textbox>
</ReportItems>
<Top>1.55625in</Top>
<Width>8.05in</Width>
<Height>0.6in</Height>
</Rectangle>
<Image Name="banner_image">
<Sizing>AutoSize</Sizing>
<Top>0.11042in</Top>
<Width>8.04167in</Width>
<MIMEType/>
<Source>External</Source>
<Style/>
<ZIndex>1</ZIndex>
<Left>0.15in</Left>
<Height>0.64583in</Height>
<Value>../banner_portrait.jpg</Value>
</Image>
<Table Name="ManagementPackVersionTable">
<DataElementOutput>Output</DataElementOutput>
<DataSetName>ManagementPacks</DataSetName>
<DetailDataElementName>ManagementPack</DetailDataElementName>
<Top>2.5in</Top>
<Width>6.45in</Width>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="MPName_MPTable">
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Left</TextAlign>
<PaddingLeft>6pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>DefaultName</DataElementName>
<Value>=Fields!MPDisplayName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="ManagementPackVersion">
<rd:DefaultName>ManagementPackVersion</rd:DefaultName>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Version</DataElementName>
<Value>=Fields!ManagementPackVersion.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="ManagementPackSystemName">
<rd:DefaultName>ManagementPackSystemName</rd:DefaultName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>AttributeNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>SystemName</DataElementName>
<Value>=Fields!ManagementPackSystemName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<Sorting>
<SortBy>
<SortExpression>=Fields!MPDisplayName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
</Details>
<DetailDataCollectionName>ManagementPacks</DetailDataCollectionName>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
</Style>
<Header>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox42">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>4pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>5</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!MPDisplayName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.ManagementPack", "[Management Pack]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox43">
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ManagementPackVersion.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.Version", "[Version]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox16">
<rd:DefaultName>textbox16</rd:DefaultName>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Color>White</Color>
<BackgroundColor>Gray</BackgroundColor>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ManagementPackSystemName.Value</SortExpression>
</UserSort>
<Value>Management Pack System Name</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>3.35in</Width>
</TableColumn>
<TableColumn>
<Width>1.55in</Width>
</TableColumn>
<TableColumn>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Width>1.55in</Width>
</TableColumn>
</TableColumns>
<DataElementName>ManagementPacksTable</DataElementName>
<Height>0.4in</Height>
<Left>0.15in</Left>
</Table>
</ReportItems>
<Height>4.5in</Height>
</Script></Body>
<Language>en-US</Language>
<PageFooter>
<PrintOnFirstPage>true</PrintOnFirstPage>
<ReportItems>
<Textbox Name="textbox8">
<Top>0.1in</Top>
<Width>1.7in</Width>
<Style></Style>
<Color>DimGray</Color>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<TextAlign>Right</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<Left>6.5in</Left>
<Height>0.1875in</Height>
<Value>=string.Format(Code.GetLocTable("LT_Report").GetString("R.PageFormat", "{0}/{1}"), Globals!PageNumber, Globals!TotalPages)</Value>
</Textbox>
<Textbox Name="textbox37">
<Top>0.1in</Top>
<Width>6.25in</Width>
<Style></Style>
<Color>DimGray</Color>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<CanGrow>true</CanGrow>
<Left>0.15in</Left>
<Height>0.1875in</Height>
<Value>=string.Format(Code.GetLocTable("LT_Report").GetString("R.TimeZoneFormat", "{0}"), Parameters!TimeZoneName.Value)</Value>
</Textbox>
</ReportItems>
<Height>0.35in</Height>
<PrintOnLastPage>true</PrintOnLastPage>
</PageFooter>
<TopMargin>0.2in</TopMargin>
</Report>
</Definition>
<ReportStrings>
<ReportString ID="R.Title"/>
<ReportString ID="R.Description"/>
<ReportString ID="R.DescriptionTitle"/>
<ReportString ID="R.PageFormat"/>
<ReportString ID="R.TimeZoneFormat"/>
<ReportString ID="R.GeneratedTimeLabel"/>
<ReportString ID="R.StartEndTimeLabel"/>
<ReportString ID="R.StartEndTimeFormat"/>
<ReportString ID="R.Table1Title"/>
<ReportString ID="R.Table2Title"/>
<ReportString ID="R.Table3Title"/>
<ReportString ID="RT.Column.ManagementPack"/>
<ReportString ID="RT.Column.Version"/>
<ReportString ID="RT.Column.OverrideObject"/>
<ReportString ID="RT.Column.Parameter"/>
<ReportString ID="RT.Column.TargetClass"/>
<ReportString ID="RT.Column.Value"/>
<ReportString ID="RT.Column.Object"/>
</ReportStrings>
</Report>