Zmiany konfiguracji

Microsoft.SystemCenter.DataWarehouse.Report.ConfigurationChange (Report)

Ogólny raport o zmianach konfiguracji

Knowledge Base article:

Podsumowanie

Ten raport przedstawia zmiany w konfiguracji w czasie w odniesieniu do wybranych obiektów

Opis:

Pakiety administracyjne zawierają funkcje odnajdywania zbierające właściwości obiektów związane z zarządzaniem aplikacją. Dane do raportów pochodzą z odnajdywania różnicowego prowadzonego w magazynie danych, polegającego na porównywaniu każdej odnalezionej wartości z ostatnią znaną. Jeśli zmiana zostaje wykryta, zmieniona właściwość, stara i nowa wartość oraz czas wykrycia zmiany zostają zapisane w magazynie danych.

Parametry:

Wybór daty/godziny: Umożliwia ustalenie okresu raportowania z zastosowaniem dat względnych lub ustalonych.

Wybór obiektów: Umożliwia wybór grup lub obiektów, dla których będą wyświetlane alerty.

Wybranie opcji Dodawanie grupy zwraca grupę i wszystkie zawarte w niej obiekty. Opcja Dodawanie obiektu zwraca tylko wybrany obiekt.

Przykładowe zastosowanie:

Scenariusz: Należy sporządzić raport na temat wszystkich zmian konfiguracji odnajdywania dla emulatora głównego serwera zarządzania od poniedziałku do piątku w ostatnim tygodniu.

Instrukcje: (wybrane parametry są pogrubione)

Dane wyjściowe raportu:

Każda zmiana konfiguracji jest przedstawiana wraz z czasem jej wykrycia przez funkcję odnajdywania, z właściwością oraz ze starą i nową wartością.

Element properties:

AccessibilityPublic
VisibleTrue

Report Localization:

R.DescriptionTen raport przedstawia zmiany w konfiguracji w czasie w odniesieniu do wybranych obiektów
R.DescriptionTitleKliknij znak plus, aby wyświetlić pełny opis tego raportu
R.GeneratedTimeLabelGodzina raportu
R.ObjectFormatLine1{0}: {1}
R.ObjectFormatLine2{0} {1}
R.ObjectFormatLine2Path| {0}
R.ObjectsFormatLiczba obiektów uwzględnionych w tym raporcie: {0}
R.ObjectsLabelObiekty
R.ObjectUseContainmentWszystkie obiekty zawarte w:
R.PageFormatStrona {0} z {1}
R.StartEndTimeFormatOd {0} do {1}
R.StartEndTimeLabelCzas trwania raportu
R.TimeZoneFormatWszystkie daty i godziny są podane według czasu {0}
R.TitleRaport o zmianach konfiguracji
RT.Column.ChangeTypeZmiana
RT.Column.DateTimeData i godzina
RT.Column.NewValueNowa wartość
RT.Column.OldValueStara wartość
RT.Column.PropertyNameWłaściwość
RT.Data.ChangeZmień wartość
RT.Data.DeleteUsuń wartość
RT.Data.InitOdnajdywanie początkowe
RT.Data.NewNowa wartość

Source Code:

<Report ID="Microsoft.SystemCenter.DataWarehouse.Report.ConfigurationChange" Accessibility="Public" Target="System!System.Entity" Visible="true">
<Dependencies>
<DataWarehouseScript>Microsoft.SystemCenter.DataWarehouse.Report.Script.ConfigurationChange</DataWarehouseScript>
<ReportParameterControl>Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.RelativeDateTimePicker</ReportParameterControl>
<ReportParameterControl>Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.MonitoringObjectPicker</ReportParameterControl>
</Dependencies>
<ParameterBlock xmlns="http://schemas.microsoft.com/mom/reporting/2007/ReportParameterSettings" columns="3">
<Controls>
<Control type="Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.RelativeDateTimePicker">
<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>
</Control>
<Control type="Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.MonitoringObjectXmlPicker" columnSpan="2">
<ReportParameters>
<ReportParameter name="ObjectList">
<Prompt>Microsoft.SystemCenter.DataWarehouse.Report.Library!Microsoft.SystemCenter.DataWarehouse.Report.ParameterPrompt.ObjectList</Prompt>
</ReportParameter>
<ReportParameter name="ManagementGroupId" binding="GroupList"/>
</ReportParameters>
</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="ManagementGroupId">
<DataType>String</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>ManagementGroups</DataSetName>
<ValueField>ManagementGroupGuid</ValueField>
</DataSetReference>
</DefaultValue>
<AllowBlank>true</AllowBlank>
<Prompt>Management Group</Prompt>
<ValidValues>
<DataSetReference>
<DataSetName>ManagementGroups</DataSetName>
<ValueField>ManagementGroupGuid</ValueField>
<LabelField>ManagementGroupDefaultName</LabelField>
</DataSetReference>
</ValidValues>
<MultiValue>true</MultiValue>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate_BaseType">
<DataType>String</DataType>
<Prompt>[Start Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>[From]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetType">
<DataType>String</DataType>
<Prompt>[Start Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[Start Date Offset]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_BaseType">
<DataType>String</DataType>
<Prompt>[End Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>[To]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetType">
<DataType>String</DataType>
<Prompt>[End Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[End Date Offset]</Prompt>
</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>
<ReportParameter Name="ObjectList">
<DataType>String</DataType>
<Prompt>[Objects]</Prompt>
</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>
</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>Microsoft.SystemCenter.DataWarehouse.Report.Library</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.DataWarehouse.Report.ConfigurationChange</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>Microsoft.SystemCenter.DataWarehouse.Report.Library</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.DataWarehouse.Report.ConfigurationChange</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>RT.%</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="ObjectList">
<Fields>
<Field Name="ManagedEntityDefaultName">
<DataField>ManagedEntityDefaultName</DataField>
</Field>
<Field Name="Path">
<DataField>Path</DataField>
</Field>
<Field Name="DisplayName">
<DataField>DisplayName</DataField>
</Field>
<Field Name="ManagedEntityRowId">
<DataField>ManagedEntityRowId</DataField>
</Field>
<Field Name="ManagementGroupDefaultName">
<DataField>ManagementGroupDefaultName</DataField>
</Field>
<Field Name="ManagedEntityUse">
<DataField>ManagedEntityUse</DataField>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>Microsoft_SystemCenter_DataWarehouse_Report_Library_ReportObjectList</CommandText>
<QueryParameters>
<QueryParameter Name="@ObjectList">
<Value>=Parameters!ObjectList.Value</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
</QueryParameters>
</Query>
</DataSet>
<DataSet Name="ManagementGroups">
<Fields>
<Field Name="ManagementGroupGuid">
<DataField>ManagementGroupGuid</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="ManagementGroupDefaultName">
<DataField>ManagementGroupDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT ManagementGroupGuid, ManagementGroupDefaultName
FROM vManagementGroup
</CommandText>
</Query>
</DataSet>
<DataSet Name="ChangeData">
<Fields>
<Field Name="FromDateTime">
<DataField>FromDateTime</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="PropertyDefaultName">
<DataField>PropertyDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="OldValue">
<DataField>OldValue</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NewValue">
<DataField>NewValue</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ManagedEntityDefaultName">
<DataField>ManagedEntityDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ManagedEntityTypeGuid">
<DataField>ManagedEntityTypeGuid</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="DisplayName">
<DataField>DisplayName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Image">
<DataField>Image</DataField>
<rd:TypeName>System.Byte[]</rd:TypeName>
</Field>
<Field Name="ManagedEntityRowId">
<DataField>ManagedEntityRowId</DataField>
<rd:TypeName>System.Int32</rd:TypeName>
</Field>
<Field Name="Path">
<DataField>Path</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ManagementGroupGuid">
<DataField>ManagementGroupGuid</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="ManagementGroupDefaultName">
<DataField>ManagementGroupDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>Microsoft_SystemCenter_DataWarehouse_Report_Library_ConfigurationChangeReportDataGet</CommandText>
<QueryParameters>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@ObjectList">
<Value>=Parameters!ObjectList.Value</Value>
</QueryParameter>
<QueryParameter Name="@StartDate">
<Value>=Code.ToDbDate(Code.GetReportStartDate())</Value>
</QueryParameter>
<QueryParameter Name="@EndDate">
<Value>=Code.ToDbDate(Code.GetReportEndDate())</Value>
</QueryParameter>
</QueryParameters>
</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
</Script></Code>
<Width>8.5in</Width>
<Body><Script>
<ReportItems>
<List Name="ChangeReportList">
<Sorting>
<SortBy>
<SortExpression>=Fields!ManagementGroupDefaultName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!DisplayName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!ManagedEntityDefaultName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!FromDateTime.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
<ZIndex>5</ZIndex>
<DataElementOutput>Output</DataElementOutput>
<Left>0.15in</Left>
<DataSetName>ChangeData</DataSetName>
<ReportItems>
<Textbox Name="textbox29">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.4in</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.2in</Left>
<DataElementName>ManagementGroup</DataElementName>
<Height>0.2in</Height>
<Value>=Fields!ManagementGroupDefaultName.Value</Value>
</Textbox>
<Textbox Name="textbox24">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.4in</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>
<Left>0.15in</Left>
<DataElementName>Path</DataElementName>
<Height>0.2in</Height>
<Value>=Fields!Path.Value</Value>
</Textbox>
<Textbox Name="textbox25">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.4in</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>5</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.1in</Left>
<DataElementName>Type</DataElementName>
<Height>0.2in</Height>
<Value>=Fields!DisplayName.Value</Value>
</Textbox>
<Textbox Name="textbox27">
<DataElementOutput>Output</DataElementOutput>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Top>0.4in</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>4</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.05in</Left>
<DataElementName>Name</DataElementName>
<Height>0.2in</Height>
<Value>=Fields!ManagedEntityDefaultName.Value</Value>
</Textbox>
<Textbox Name="textbox22">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.3in</Top>
<Width>7.6875in</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>3</ZIndex>
<CanGrow>true</CanGrow>
<Left>0.3125in</Left>
<DataElementName>DisplayName2</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine2", "{0} {1}"), Fields!ManagementGroupDefaultName.Value, Code.NullFormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine2Path", "| {0}"), Fields!Path.Value))</Value>
</Textbox>
<Table Name="ChangeTable">
<ZIndex>2</ZIndex>
<DataElementOutput>Output</DataElementOutput>
<DataSetName>ChangeData</DataSetName>
<DetailDataElementName>Change</DetailDataElementName>
<Top>0.6in</Top>
<Width>7.97349in</Width>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox13">
<rd:DefaultName>textbox13</rd:DefaultName>
<DataElementOutput>Output</DataElementOutput>
<HideDuplicates>ChangeReportList_Details_Group</HideDuplicates>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Format>P2</Format>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>4</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>DateTime</DataElementName>
<Value>=Code.FormatDateTime("G", Code.ToReportDate(Fields!FromDateTime.Value))</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox5">
<rd:DefaultName>textbox5</rd:DefaultName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Format>P2</Format>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Type</DataElementName>
<Value>=IIF(Fields!PropertyDefaultName.Value Is Nothing,
Code.GetLocTable("LT_Table").GetString("RT.Data.Init", "[Initial Discovery]"),
IIF(Fields!OldValue.Value Is Nothing,
Code.GetLocTable("LT_Table").GetString("RT.Data.New", "[New Value]"),
IIF(Fields!NewValue.Value Is Nothing,
Code.GetLocTable("LT_Table").GetString("RT.Data.Delete", "[Delete Value]"),
Code.GetLocTable("LT_Table").GetString("RT.Data.Change", "[Change Value]"))))</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox6">
<rd:DefaultName>textbox6</rd:DefaultName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Format>P2</Format>
<TextAlign>Center</TextAlign>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>2</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>Property</DataElementName>
<Value>=Fields!PropertyDefaultName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="UpTimeSeconds">
<rd:DefaultName>UpTimeSeconds</rd:DefaultName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<BorderColor>
<Default>DarkGray</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>
<DataElementStyle>ElementNormal</DataElementStyle>
<ZIndex>1</ZIndex>
<CanGrow>true</CanGrow>
<DataElementName>OldValue</DataElementName>
<Value>=Fields!OldValue.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox18">
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<BorderColor>
<Default>DarkGray</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>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>NewValue</DataElementName>
<Value>=Fields!NewValue.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<Sorting>
<SortBy>
<SortExpression>=Fields!FromDateTime.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!PropertyDefaultName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
</Details>
<DetailDataCollectionName>Changes</DetailDataCollectionName>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
<Header>
<TableRows>
<TableRow>
<TableCells>
<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>9</ZIndex>
<CanGrow>true</CanGrow>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.DateTime", "[Date Time Column Title]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox4">
<rd:DefaultName>textbox4</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>8</ZIndex>
<CanGrow>true</CanGrow>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.ChangeType", "[Change Type Column Title]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox12">
<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>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.PropertyName", "[Property Name Column Title]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox16">
<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>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.OldValue", "[Old Value Column Title]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox20">
<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>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.NewValue", "[New Value Column Title]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.2in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>1.45in</Width>
</TableColumn>
<TableColumn>
<Width>1.06591in</Width>
</TableColumn>
<TableColumn>
<Width>1.8in</Width>
</TableColumn>
<TableColumn>
<Width>1.75758in</Width>
</TableColumn>
<TableColumn>
<Width>1.9in</Width>
</TableColumn>
</TableColumns>
<DataElementName>ChangeTable</DataElementName>
<Height>0.4in</Height>
<Left>0.05in</Left>
</Table>
<Image Name="image1">
<Sizing>FitProportional</Sizing>
<Top>0.1in</Top>
<Width>0.2in</Width>
<MIMEType>image/png</MIMEType>
<Source>Database</Source>
<Style/>
<ZIndex>1</ZIndex>
<Left>0.05in</Left>
<Height>0.3in</Height>
<Value>=Fields!Image.Value</Value>
</Image>
<Textbox Name="textbox3">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<Width>7.7in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<Left>0.3in</Left>
<DataElementName>DisplayName1</DataElementName>
<Height>0.25in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine1", "{0}: {1}"), Fields!DisplayName.Value, Fields!ManagedEntityDefaultName.Value)</Value>
</Textbox>
</ReportItems>
<Top>3in</Top>
<Width>8.1in</Width>
<Grouping Name="ChangeReportList_Details_Group">
<GroupExpressions>
<GroupExpression>=Fields!ManagedEntityRowId.Value</GroupExpression>
</GroupExpressions>
<DataElementName>Object</DataElementName>
<DataCollectionName>Objects</DataCollectionName>
</Grouping>
<DataElementName>DataTable</DataElementName>
</List>
<Rectangle Name="rectangle5">
<Left>0.15in</Left>
<ZIndex>4</ZIndex>
<Top>1.4in</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>3</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.65in</Top>
<Width>8.05in</Width>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.55in</Height>
</Rectangle>
<Rectangle Name="rectangle3">
<Left>0.15in</Left>
<ZIndex>2</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.2in</Top>
<Width>8.05in</Width>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.2in</Height>
</Rectangle>
<Rectangle Name="rectangle2">
<Left>0.15in</Left>
<ZIndex>1</ZIndex>
<ReportItems>
<Rectangle Name="rectangle6">
<ZIndex>14</ZIndex>
<Visibility>
<ToggleItem>objectsParameterTitle</ToggleItem>
</Visibility>
<Top>1.35in</Top>
<Height>0.05in</Height>
</Rectangle>
<Rectangle Name="rectangle1">
<ZIndex>13</ZIndex>
<Visibility>
<Hidden>=IIF(Parameters!Interactive.Value, True,False)</Hidden>
<ToggleItem>objectsParameterTitle</ToggleItem>
</Visibility>
<ReportItems>
<Line Name="line3">
<Top>0.04in</Top>
<Width>6.05in</Width>
<Style></Style>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
<ZIndex>1</ZIndex>
<Left>1.95in</Left>
<Height>0in</Height>
</Line>
<List Name="objectParameterList">
<Sorting>
<SortBy>
<SortExpression>=Fields!ManagementGroupDefaultName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!DisplayName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
<SortBy>
<SortExpression>=Fields!ManagedEntityDefaultName.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
<DataSetName>ObjectList</DataSetName>
<Visibility>
<Hidden>=IIF(Parameters!Interactive.Value, True,False)</Hidden>
<ToggleItem>objectsParameterTitle</ToggleItem>
</Visibility>
<ReportItems>
<Textbox Name="textbox43">
<Visibility>
<Hidden>=Fields!ManagedEntityUse.Value &lt;&gt; "Containment"</Hidden>
</Visibility>
<CanShrink>true</CanShrink>
<Width>6.05in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>3</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.ObjectUseContainment", "[All objects contained by:]")</Value>
</Textbox>
<Line Name="line1">
<Top>0.6in</Top>
<Width>6.05in</Width>
<Style></Style>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
<ZIndex>2</ZIndex>
<Left>1.95in</Left>
</Line>
<Textbox Name="textbox23">
<CanShrink>true</CanShrink>
<Top>0.4in</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>1</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<Height>0.19in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine2", "{0} {1}"), Fields!ManagementGroupDefaultName.Value, Code.NullFormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine2Path", "| {0}"), Fields!Path.Value))</Value>
</Textbox>
<Textbox Name="textbox10">
<CanShrink>true</CanShrink>
<Top>0.2in</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>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectFormatLine1", "{0}: {1}"), Fields!DisplayName.Value, Fields!ManagedEntityDefaultName.Value)</Value>
</Textbox>
</ReportItems>
<Top>0.05in</Top>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<DataInstanceElementOutput>NoOutput</DataInstanceElementOutput>
<Height>0.6in</Height>
</List>
</ReportItems>
<Top>0.65in</Top>
<Style></Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.7in</Height>
</Rectangle>
<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>12</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>11</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>10</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>1.4in</Top>
<MIMEType/>
<Source>External</Source>
<Style/>
<ZIndex>9</ZIndex>
<Value>../gradient_portrait.gif</Value>
</Image>
<Textbox Name="textbox14">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</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>8</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.95in</Left>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.ObjectsFormat", "{0}"), Code.FormatNumber("G", CountRows("ObjectList")))</Value>
</Textbox>
<Textbox Name="textbox11">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</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>7</ZIndex>
<CanGrow>true</CanGrow>
<Left>1.85in</Left>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="objectsParameterTitle">
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</Top>
<Width>1.85in</Width>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
<ZIndex>6</ZIndex>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.ObjectsLabel", "[Report Objects Label]")</Value>
</Textbox>
<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>5</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>4</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>3</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>2</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="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>1</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="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.45in</Top>
<Width>8.05in</Width>
<Height>1.45in</Height>
</Rectangle>
<Image Name="banner_image">
<Sizing>AutoSize</Sizing>
<Top>0.11042in</Top>
<Width>8.05in</Width>
<MIMEType/>
<Source>External</Source>
<Style/>
<Left>0.15in</Left>
<Height>0.53958in</Height>
<Value>../banner_portrait.jpg</Value>
</Image>
</ReportItems>
<Height>4.2in</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>=Code.FormatString(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>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.TimeZoneFormat", "{0}"), Parameters!TimeZoneName.Value)</Value>
</Textbox>
</ReportItems>
<Height>0.35in</Height>
<PrintOnLastPage>true</PrintOnLastPage>
</PageFooter>
</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.ObjectsLabel"/>
<ReportString ID="R.ObjectsFormat"/>
<ReportString ID="R.ObjectFormatLine1"/>
<ReportString ID="R.ObjectFormatLine2"/>
<ReportString ID="R.ObjectFormatLine2Path"/>
<ReportString ID="R.ObjectUseContainment"/>
<ReportString ID="RT.Column.DateTime"/>
<ReportString ID="RT.Column.ChangeType"/>
<ReportString ID="RT.Column.PropertyName"/>
<ReportString ID="RT.Column.OldValue"/>
<ReportString ID="RT.Column.NewValue"/>
<ReportString ID="RT.Data.Init"/>
<ReportString ID="RT.Data.New"/>
<ReportString ID="RT.Data.Delete"/>
<ReportString ID="RT.Data.Change"/>
</ReportStrings>
</Report>