Pakiety administracyjne

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

Raport ODR pakietu administracyjnego

Knowledge Base article:

Podsumowanie

Jak działa ten raport?

Pakiet administracyjny składa się z kilku tabel:

Element properties:

AccessibilityPublic
VisibleTrue

Report Localization:

R.Description
Dane raportu ODR pakietu administracyjnego.
R.DescriptionTitleKliknij znak plus, aby wyświetlić pełny opis tego raportu
R.GeneratedTimeLabelGodzina raportu
R.PageFormatStrona {0} z {1}
R.StartEndTimeFormatOd {0} do {1}
R.StartEndTimeLabelCzas trwania raportu
R.Table1TitleWersje zainstalowanych pakietów administracyjnych
R.Table2TitleZastąpienia
R.Table3TitleNiestandardowe elementy utworzone za pomocą interfejsu użytkownika
R.TimeZoneFormatWszystkie daty i godziny są podane według czasu {0}
R.TitleRaport ODR pakietu administracyjnego
RT.Column.ManagementPackPakiet administracyjny
RT.Column.ObjectObiekt
RT.Column.OverrideObjectPrzesłonięcie
RT.Column.ParameterParametr
RT.Column.TargetClassCel
RT.Column.ValueWartość
RT.Column.VersionWersja

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>