В этом отчете приведены N основных приложений, отобранных на основе частоты увеличения и разрешения этих приложений за определенный промежуток времени.
Назначение отчета
В отчете увеличения и разрешения N основных приложений представлено следующее:
Диаграмма, отображающая N основных приложений на основе процентиля роста, вычисленного по двум указанным интервалам времени.
Наконец, есть таблица с подробными сведениями о N основных приложениях, составленными на основе процентиля роста количества аварийных завершений за один временной интервал по отношению к другому:
Серийный номер
Имя приложения
Версия приложения
Количество аварийных завершений за последний интервал времени
Среднее количество ежедневных аварийных завершений за последний интервал времени
Количество аварийных завершений за первый интервал времени
Среднее количество ежедневных аварийных завершений за первый интервал времени
Процентиль роста количества аварийных завершений от первого интервала времени к последнему
Accessibility | Public |
Visible | True |
R.CurrentStartEndTimeFormat | От {0} до {1} | |
R.CurrentStartEndTimeLabel | Текущий интервал отчета | |
R.Description | В этом отчете приведены N основных приложений, отобранных на основе частоты увеличения и разрешения этих приложений за определенный промежуток времени. | |
R.DescriptionTitle | Нажмите знак плюс, чтобы просмотреть полное описание для данного отчета. | |
R.GeneratedTimeLabel | Время отчета | |
R.Graph.XAxisLabel | Серийный номер | |
R.Graph.YAxisLabel | Процентное увеличение количества аварийных завершений | |
R.GraphTitleLabel | График увеличения и разрешения N основных приложений | |
R.NLabel | N | |
R.PageFormat | Страница {0} из {1} | |
R.PreviousStartEndTimeFormat | От {0} до {1} | |
R.PreviousStartEndTimeLabel | Предыдущий интервал отчета | |
R.TableHeaderLine1 | Увеличение и разрешение N основных приложений | |
R.TableSubHeaderLine1 | N основных приложений, отобранных на основе частоты увеличения и разрешения этих приложений за определенный промежуток времени. | |
R.TimeZoneFormat | Все записи даты и времени показаны в {0} | |
R.Title | Отчет об увеличении и разрешении N основных приложений наблюдения за клиентами | |
RT.Column.ApplicationNameLabel | Имя приложения | |
RT.Column.ApplicationVersionLabel | Версия приложения | |
RT.Column.CrashCountPercentileIncreaseLabel | Процентное увеличение количества аварийных завершений | |
RT.Column.CurrentAverageDailyCrashCountLabel | Среднее количество ежедневных аварийных завершений за текущий интервал | |
RT.Column.CurrentCrashCountLabel | Количество аварийных завершений за текущий интервал | |
RT.Column.PreviousAverageDailyCrashCountLabel | Среднее количество ежедневных аварийных завершений за предыдущий интервал | |
RT.Column.PreviousCrashCountLabel | Количество аварийных завершений за предыдущий интервал | |
RT.Column.SerialNumberLabel | Сер. № |
<Report ID="Microsoft.SystemCenter.CM.AEM.Views.Internal.DataWarehouse.Report.TopNApplicationsGrowth" Accessibility="Public" Target="AEMLib!Microsoft.SystemCenter.CM.AEM.CrashListener" Visible="true">
<Dependencies>
<DataWarehouseDataSet>Microsoft.SystemCenter.CM.AEM.Views.Internal.DataWarehouse.AemDataSet</DataWarehouseDataSet>
<ReportParameterControl>Reporting!Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.RelativeDateTimePicker</ReportParameterControl>
<ReportParameterControl>Reporting!Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.NumericUpDown</ReportParameterControl>
</Dependencies>
<ParameterBlock xmlns="http://schemas.microsoft.com/mom/reporting/2007/ReportParameterSettings" columns="6">
<Controls>
<Control rowSpan="4" columnSpan="2" 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="CurrentIntervalStartDate_BaseType" binding="EndDate_BaseType"/>
<ReportParameter name="CurrentIntervalStartDate_BaseValue" binding="EndDate_BaseValue">
<Prompt>Microsoft.SystemCenter.ClientMonitoring.Views.Internal!Microsoft.SystemCenter.ClientMonitoring.Views.Internal.Report.TopNApplicationsGrowth.ParameterPrompt.CurrentIntervalStartDate</Prompt>
</ReportParameter>
<ReportParameter name="CurrentIntervalStartDate_OffsetType" binding="EndDate_OffsetType"/>
<ReportParameter name="CurrentIntervalStartDate_OffsetValue" binding="EndDate_OffsetValue"/>
<ReportParameter name="PreviousIntervalStartDate_BaseType" binding="StartDate_BaseType"/>
<ReportParameter name="PreviousIntervalStartDate_BaseValue" binding="StartDate_BaseValue">
<Prompt>Microsoft.SystemCenter.ClientMonitoring.Views.Internal!Microsoft.SystemCenter.ClientMonitoring.Views.Internal.Report.TopNApplicationsGrowth.ParameterPrompt.PreviousIntervalStartDate</Prompt>
</ReportParameter>
<ReportParameter name="PreviousIntervalStartDate_OffsetType" binding="StartDate_OffsetType"/>
<ReportParameter name="PreviousIntervalStartDate_OffsetValue" binding="StartDate_OffsetValue"/>
</ReportParameters>
</Control>
<Control rowSpan="1" columnSpan="1" type="Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.NumericUpDown">
<ReportParameters>
<ReportParameter name="IntervalDurationInDays">
<Prompt>Microsoft.SystemCenter.ClientMonitoring.Views.Internal!Microsoft.SystemCenter.ClientMonitoring.Views.Internal.Report.TopNApplicationsGrowth.ParameterPrompt.IntervalDurationInDays</Prompt>
</ReportParameter>
</ReportParameters>
</Control>
<Control rowSpan="1" columnSpan="1" type="Microsoft.SystemCenter.DataWarehouse.Report.ParameterControl.NumericUpDown">
<ReportParameters>
<ReportParameter name="N">
<Prompt>Microsoft.SystemCenter.ClientMonitoring.Views.Internal!Microsoft.SystemCenter.ClientMonitoring.Views.Internal.Report.TopNApplicationsGrowth.ParameterPrompt.N</Prompt>
</ReportParameter>
</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">
<DataSourceReference>Data Warehouse Main</DataSourceReference>
<rd:DataSourceID>e4235c51-407f-4065-8519-a1e57374bc45</rd:DataSourceID>
</DataSource>
</DataSources>
<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="CurrentIntervalStartDate_BaseType">
<DataType>String</DataType>
<Prompt>[Current Interval Start Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="CurrentIntervalStartDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>[Current Interval Start Date]</Prompt>
</ReportParameter>
<ReportParameter Name="CurrentIntervalStartDate_OffsetType">
<DataType>String</DataType>
<Prompt>[Current Interval Start Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="CurrentIntervalStartDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[Current Interval Start Date Offset]</Prompt>
</ReportParameter>
<ReportParameter Name="PreviousIntervalStartDate_BaseType">
<DataType>String</DataType>
<Prompt>[Previous Interval Start Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="PreviousIntervalStartDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>[Previous Interval Start Date]</Prompt>
</ReportParameter>
<ReportParameter Name="PreviousIntervalStartDate_OffsetType">
<DataType>String</DataType>
<Prompt>[Previous Interval Start Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="PreviousIntervalStartDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[Previous Interval Start 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="N">
<DataType>Integer</DataType>
<DefaultValue>
<Values>
<Value>10</Value>
</Values>
</DefaultValue>
<Prompt>[Top 'N' Applications Growth And Resolution]</Prompt>
</ReportParameter>
<ReportParameter Name="IntervalDurationInDays">
<DataType>Integer</DataType>
<DefaultValue>
<Values>
<Value>7</Value>
</Values>
</DefaultValue>
<Prompt>[Interval Duration in Days]</Prompt>
</ReportParameter>
</ReportParameters>
<rd:DrawGrid>true</rd:DrawGrid>
<InteractiveWidth>8.5in</InteractiveWidth>
<rd:GridSpacing>0.05in</rd:GridSpacing>
<rd:SnapToGrid>true</rd:SnapToGrid>
<Body>
<ReportItems>
<Chart Name="ApplicationGrowthChart">
<Legend>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BackgroundColor>White</BackgroundColor>
<BackgroundGradientEndColor>Gainsboro</BackgroundGradientEndColor>
<BackgroundGradientType>TopBottom</BackgroundGradientType>
</Style>
<Position>BottomRight</Position>
<Layout>Table</Layout>
</Legend>
<Subtype>Plain</Subtype>
<Title>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.GraphTitleLabel", "[Top N Applications Growth and Resolution Graph]")</Caption>
<Style>
<FontFamily>tahoma</FontFamily>
<FontWeight>700</FontWeight>
<FontSize>8pt</FontSize>
</Style>
</Title>
<Height>3in</Height>
<CategoryAxis>
<Axis>
<Title>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.Graph.XAxisLabel", "[Serial Number]")</Caption>
</Title>
<Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
<MajorGridLines>
<ShowGridLines>true</ShowGridLines>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
</MajorGridLines>
<MinorGridLines>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
</MinorGridLines>
<MajorTickMarks>Outside</MajorTickMarks>
<Min>1</Min>
<Margin>true</Margin>
<Visible>true</Visible>
</Axis>
</CategoryAxis>
<PointWidth>0</PointWidth>
<Left>0.125in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<ThreeDProperties/>
<DataSetName>ApplicationQuery</DataSetName>
<SeriesGroupings>
<SeriesGrouping>
<StaticSeries>
<StaticMember>
<Label>=Code.GetLocTable("LT_Table").GetString("RT.Legend.CrashCountPercentileIncrease", "[Crash Count Percentile Increase]")</Label>
</StaticMember>
</StaticSeries>
</SeriesGrouping>
</SeriesGroupings>
<Top>2.65in</Top>
<PlotArea>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<BackgroundColor>White</BackgroundColor>
<BackgroundGradientEndColor>Gainsboro</BackgroundGradientEndColor>
<BackgroundGradientType>TopBottom</BackgroundGradientType>
</Style>
</PlotArea>
<ValueAxis>
<Axis>
<Title>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.Graph.YAxisLabel", "[Crash Count Percentile Increase]")</Caption>
<Style>
<FontFamily>tahoma</FontFamily>
<FontWeight>600</FontWeight>
<FontSize>8pt</FontSize>
</Style>
</Title>
<Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
<MajorGridLines>
<ShowGridLines>true</ShowGridLines>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
</MajorGridLines>
<MinorGridLines>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
</Style>
</MinorGridLines>
<MajorTickMarks>Outside</MajorTickMarks>
<CrossAt>0</CrossAt>
<Margin>true</Margin>
<Visible>true</Visible>
<Scalar>true</Scalar>
</Axis>
</ValueAxis>
<ZIndex>6</ZIndex>
<Type>Bar</Type>
<Width>8.25in</Width>
<CategoryGroupings>
<CategoryGrouping>
<DynamicCategories>
<Grouping Name="appNameVerGroup">
<DataElementOutput>NoOutput</DataElementOutput>
<GroupExpressions>
<GroupExpression>=Fields!SerialNumber.Value</GroupExpression>
</GroupExpressions>
</Grouping>
<Label>=Fields!SerialNumber.Value.ToString()</Label>
</DynamicCategories>
</CategoryGrouping>
</CategoryGroupings>
<Palette>SemiTransparent</Palette>
<ChartData>
<ChartSeries>
<DataPoints>
<DataPoint>
<DataValues>
<DataValue>
<Value>=Sum(Fields!CrashCountPercentileIncrease.Value)</Value>
</DataValue>
</DataValues>
<DataLabel>
<Style>
<FontFamily>Tahoma</FontFamily>
<FontWeight>600</FontWeight>
<FontSize>8pt</FontSize>
</Style>
<Visible>true</Visible>
</DataLabel>
<Style>
<BackgroundColor>CornflowerBlue</BackgroundColor>
<BackgroundGradientEndColor>Blue</BackgroundGradientEndColor>
<BackgroundGradientType>TopBottom</BackgroundGradientType>
</Style>
<Marker>
<Size>6pt</Size>
</Marker>
<DataElementOutput>NoOutput</DataElementOutput>
</DataPoint>
</DataPoints>
</ChartSeries>
</ChartData>
<Style>
<BackgroundColor>White</BackgroundColor>
</Style>
</Chart>
<List Name="list1">
<DataElementOutput>Output</DataElementOutput>
<Left>0.15in</Left>
<ReportItems>
<Image Name="image1">
<Sizing>AutoSize</Sizing>
<Left>0.05in</Left>
<MIMEType>image/png</MIMEType>
<Top>0.05in</Top>
<ZIndex>3</ZIndex>
<Width>0.25in</Width>
<Source>External</Source>
<Style>
<PaddingLeft>4pt</PaddingLeft>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingTop>2pt</PaddingTop>
</Style>
<Height>0.4in</Height>
<Value>../reports_icon.png</Value>
</Image>
<Table Name="ApplicationsTable">
<DataElementOutput>Output</DataElementOutput>
<DetailDataElementName>Application</DetailDataElementName>
<DataSetName>ApplicationQuery</DataSetName>
<Top>0.45in</Top>
<ZIndex>2</ZIndex>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox19">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>7</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>SerialNumber</DataElementName>
<Value>=Code.FormatNumber("G", Fields!SerialNumber.Value)</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox46">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>6</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>ApplicationName</DataElementName>
<Value>=Fields!ApplicationName.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox47">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>5</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>ApplicationVersion</DataElementName>
<Value>=Fields!ApplicationVersion.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox12">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>4</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>CurrentCrashCount</DataElementName>
<Value>=Code.FormatNumber("G", Fields!CurrentCrashCount.Value)</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox13">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>3</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Format>#.00</Format>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>CurrentAverageDailyCrashCount</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!CurrentAverageDailyCrashCount.Value )</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox16">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>2</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>PreviousCrashCount</DataElementName>
<Value>=Code.FormatNumber("G", Fields!PreviousCrashCount.Value)</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox17">
<DataElementOutput>Output</DataElementOutput>
<ZIndex>1</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Format>#.00</Format>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>PreviousAverageDailyCrashCount</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!PreviousAverageDailyCrashCount.Value )</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox50">
<DataElementOutput>Output</DataElementOutput>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<PaddingLeft>2pt</PaddingLeft>
<BorderWidth>
<Default>0.5pt</Default>
</BorderWidth>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>CrashCountPercentileIncrease</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!CrashCountPercentileIncrease.Value) & "%"</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.45in</Height>
</TableRow>
</TableRows>
<Sorting>
<SortBy>
<SortExpression>=Fields!SerialNumber.Value</SortExpression>
<Direction>Ascending</Direction>
</SortBy>
</Sorting>
</Details>
<DetailDataCollectionName>Applications</DetailDataCollectionName>
<Header>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox18">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox18</rd:DefaultName>
<ZIndex>15</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.SerialNumberLabel", "[Serial Number Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox55">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>14</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ApplicationName.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.ApplicationNameLabel", "[Application Name Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox56">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>13</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ApplicationVersion.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.ApplicationVersionLabel", "[Application Version Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox10">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>12</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!CurrentCrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.CurrentCrashCountLabel", "[Current Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox11">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>11</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!CurrentAverageDailyCrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.CurrentAverageDailyCrashCountLabel", "[Current Average Daily Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox14">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>10</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!PreviousCrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.PreviousCrashCountLabel", "[Previous Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox15">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>9</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!PreviousAverageDailyCrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.PreviousAverageDailyCrashCountLabel", "[Previous Average Daily Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox59">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>8</ZIndex>
<Style>
<BorderStyle>
<Default>Solid</Default>
</BorderStyle>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<BorderColor>
<Default>DimGray</Default>
</BorderColor>
<BackgroundColor>Gray</BackgroundColor>
<Color>White</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!CrashCountPercentileIncrease.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.CrashCountPercentileIncreaseLabel", "[Crash Count Precentile Increase Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.25in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>0.55in</Width>
</TableColumn>
<TableColumn>
<Width>2.7in</Width>
</TableColumn>
<TableColumn>
<Width>1in</Width>
</TableColumn>
<TableColumn>
<Width>0.8in</Width>
</TableColumn>
<TableColumn>
<Width>0.8in</Width>
</TableColumn>
<TableColumn>
<Width>0.8in</Width>
</TableColumn>
<TableColumn>
<Width>0.8in</Width>
</TableColumn>
<TableColumn>
<Width>0.8in</Width>
</TableColumn>
</TableColumns>
<DataElementName>ApplicationsTable</DataElementName>
<Height>0.7in</Height>
</Table>
<Textbox Name="textbox36">
<Left>0.35in</Left>
<DataElementOutput>Output</DataElementOutput>
<Top>0.05in</Top>
<rd:DefaultName>textbox36</rd:DefaultName>
<ZIndex>1</ZIndex>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>AttributeNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Name</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.TableHeaderLine1", "[Top N Applications Growth And Resolution Data Table Header]")) </Value>
</Textbox>
<Textbox Name="textbox72">
<Left>0.35in</Left>
<DataElementOutput>Output</DataElementOutput>
<Top>0.25in</Top>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>AttributeNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Path</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.TableSubHeaderLine1", "[Top N Applications Growth And Resolution Data Table Sub-Header]"))</Value>
</Textbox>
</ReportItems>
<DataSetName>ApplicationQuery</DataSetName>
<Top>5.75in</Top>
<ZIndex>5</ZIndex>
<Width>8.25in</Width>
<Grouping Name="Object">
<GroupExpressions>
<GroupExpression>=""</GroupExpression>
</GroupExpressions>
</Grouping>
<DataElementName>TopNApplicationsGrowthAndResolutionDetails</DataElementName>
<Height>1.25in</Height>
</List>
<Rectangle Name="RptSpacerHeader">
<Left>0.15in</Left>
<Top>1.5in</Top>
<ZIndex>4</ZIndex>
<Width>8.05in</Width>
<Style>
<BorderStyle>
<Bottom>Solid</Bottom>
</BorderStyle>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.05in</Height>
</Rectangle>
<Rectangle Name="RptHeader">
<Left>0.15in</Left>
<ReportItems>
<Textbox Name="reportDescriptionTitle">
<DataElementOutput>NoOutput</DataElementOutput>
<Top>0.3in</Top>
<ZIndex>1</ZIndex>
<Width>8in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<VerticalAlign>Middle</VerticalAlign>
<Color>DimGray</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.DescriptionTitle", "[Click on plus sign to see a full description for this report]")</Value>
</Textbox>
<Textbox Name="reportTitle">
<Left>0.2in</Left>
<DataElementOutput>Output</DataElementOutput>
<Top>0.05in</Top>
<Width>7.8in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<FontSize>11pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Title</DataElementName>
<Height>0.25in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Title", "[Top N Applications Growth And Resolution]")</Value>
</Textbox>
</ReportItems>
<Top>0.75in</Top>
<ZIndex>3</ZIndex>
<Width>8.05in</Width>
<Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.55in</Height>
</Rectangle>
<Rectangle Name="RptExtdHeader">
<Left>0.15in</Left>
<ReportItems>
<Textbox Name="reportDescription">
<Left>0.2in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<Width>7.8in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Description", "[The Top N Applications Growth And ResolutionReport gives an overview of trend of non-availability of applications over period of time..]") </Value>
</Textbox>
</ReportItems>
<Top>1.3in</Top>
<ZIndex>2</ZIndex>
<Visibility>
<ToggleItem>reportDescriptionTitle</ToggleItem>
<Hidden>true</Hidden>
</Visibility>
<Width>8.05in</Width>
<Style>
<BackgroundColor>Gainsboro</BackgroundColor>
</Style>
<Height>0.2in</Height>
</Rectangle>
<Image Name="banner_image">
<Sizing>AutoSize</Sizing>
<Left>0.15in</Left>
<MIMEType/>
<Top>0.1in</Top>
<ZIndex>1</ZIndex>
<Width>8.05in</Width>
<Source>External</Source>
<Style/>
<Height>0.64583in</Height>
<Value>../banner_portrait.jpg</Value>
</Image>
<Rectangle Name="RptParamHeader">
<Left>0.15in</Left>
<ReportItems>
<Textbox Name="textbox4">
<Left>1.95in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</Top>
<ZIndex>12</ZIndex>
<Width>6.05in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>
=Code.FormatString(
Code.GetLocTable("LT_Report").GetString("R.PreviousStartEndTimeFormat", "{0} - {1}"),
Code.FormatDateTime("g", Code.GetReportPreviousStartDate()),
Code.FormatDateTime("g", Code.GetReportPreviousStartDate().AddDays(Parameters!IntervalDurationInDays.Value))
)
</Value>
</Textbox>
<Textbox Name="textbox5">
<Left>1.85in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</Top>
<ZIndex>11</ZIndex>
<Width>0.1in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox8">
<Left>0.25in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</Top>
<ZIndex>10</ZIndex>
<Width>1.6in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.PreviousStartEndTimeLabel", "[Report Previous Start/End Time Label]")</Value>
</Textbox>
<Textbox Name="textbox3">
<Left>1.85in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.65in</Top>
<ZIndex>9</ZIndex>
<Width>0.1in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox6">
<Left>1.95in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.65in</Top>
<ZIndex>8</ZIndex>
<Width>6.05in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.FormatNumber("G", Parameters!N.Value)</Value>
</Textbox>
<Textbox Name="textbox9">
<Left>0.25in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.65in</Top>
<ZIndex>7</ZIndex>
<Width>1.6in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.NLabel", "[N Label]")</Value>
</Textbox>
<Textbox Name="textbox28">
<Left>1.95in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<ZIndex>6</ZIndex>
<Width>6.05in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>
=Code.FormatString(
Code.GetLocTable("LT_Report").GetString("R.CurrentStartEndTimeFormat", "{0} - {1}"),
Code.FormatDateTime("g", Code.GetReportCurrentStartDate()),
Code.FormatDateTime("g", Code.GetReportCurrentStartDate().AddDays(Parameters!IntervalDurationInDays.Value))
)
</Value>
</Textbox>
<Image Name="parameterBottomImage">
<Sizing>AutoSize</Sizing>
<MIMEType/>
<Top>0.95in</Top>
<ZIndex>5</ZIndex>
<Source>External</Source>
<Style/>
<Value>../gradient_portrait.gif</Value>
</Image>
<Textbox Name="ReportGeneratedTime">
<Left>1.95in</Left>
<DataElementOutput>Output</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<ZIndex>4</ZIndex>
<Width>6.05in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>Created</DataElementName>
<Height>0.2in</Height>
<Value>=Code.FormatDateTime("g", Code.ToReportDate(DateTime.UtcNow))</Value>
</Textbox>
<Textbox Name="textbox7">
<Left>1.85in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<ZIndex>3</ZIndex>
<Width>0.1in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox2">
<Left>1.85in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<ZIndex>2</ZIndex>
<Width>0.1in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>:</Value>
</Textbox>
<Textbox Name="textbox1">
<Left>0.25in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.05in</Top>
<ZIndex>1</ZIndex>
<Width>1.6in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.GeneratedTimeLabel", "[Report Generated Time Label]")</Value>
</Textbox>
<Textbox Name="textbox26">
<Left>0.25in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.25in</Top>
<Width>1.6in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Height>0.2in</Height>
<Value>=Code.GetLocTable("LT_Report").GetString("R.CurrentStartEndTimeLabel", "[Report Current Start/End Time Label]")</Value>
</Textbox>
</ReportItems>
<Top>1.55in</Top>
<Width>8.05in</Width>
<Height>1in</Height>
</Rectangle>
</ReportItems>
<Height>7.75in</Height>
</Body>
<rd:ReportID>8f50a391-ada0-4f57-9df7-47abe174f994</rd:ReportID>
<DataSets>
<DataSet Name="LT_Report_Query">
<Query>
<CommandType>StoredProcedure</CommandType>
<CommandText>ReportDisplayStringGet</CommandText>
<QueryParameters>
<QueryParameter Name="@ManagementGroupGuid">
<Value>=Code.GetCallingManagementGroupId()</Value>
</QueryParameter>
<QueryParameter Name="@ManagementPackSystemName">
<Value>Microsoft.SystemCenter.ClientMonitoring.Views.Internal</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.CM.AEM.Views.Internal.DataWarehouse.Report.TopNApplicationsGrowth</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>R.%</Value>
</QueryParameter>
</QueryParameters>
<DataSourceName>DataWarehouseMain</DataSourceName>
</Query>
<Fields>
<Field Name="ValueXml">
<DataField>XML_F52E2B61-18A1-11d1-B105-00805F49916B</DataField>
</Field>
<Field Name="ValueName">
<Value>="LT"</Value>
</Field>
</Fields>
</DataSet>
<DataSet Name="LT_Table_Query">
<Query>
<CommandType>StoredProcedure</CommandType>
<CommandText>ReportDisplayStringGet</CommandText>
<QueryParameters>
<QueryParameter Name="@ManagementGroupGuid">
<Value>=Code.GetCallingManagementGroupId()</Value>
</QueryParameter>
<QueryParameter Name="@ManagementPackSystemName">
<Value>Microsoft.SystemCenter.ClientMonitoring.Views.Internal</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.CM.AEM.Views.Internal.DataWarehouse.Report.TopNApplicationsGrowth</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>RT.%</Value>
</QueryParameter>
</QueryParameters>
<DataSourceName>DataWarehouseMain</DataSourceName>
</Query>
<Fields>
<Field Name="ValueXml">
<rd:TypeName>System.String</rd:TypeName>
<DataField>XML_F52E2B61-18A1-11d1-B105-00805F49916B</DataField>
</Field>
<Field Name="ValueName">
<Value>="LT"</Value>
</Field>
</Fields>
</DataSet>
<DataSet Name="ApplicationQuery">
<Query>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
<CommandText>IF (@N <= 0)
BEGIN
SET @N = 1
END
DECLARE @CurrentIntervalStartDailyDate DateTime, @CurrentIntervalEndDailyDate DateTime
EXEC dbo.AemGetDailyAggregationDate @CurrentIntervalStartDate, @CurrentIntervalStartDailyDate out
SET @CurrentIntervalEndDailyDate = DATEADD(DAY, @IntervalDurationInDays, @CurrentIntervalStartDailyDate)
DECLARE @PreviousIntervalStartDailyDate DateTime, @PreviousIntervalEndDailyDate DateTime
EXEC dbo.AemGetDailyAggregationDate @PreviousIntervalStartDate, @PreviousIntervalStartDailyDate out
SET @PreviousIntervalEndDailyDate = DATEADD(DAY, @IntervalDurationInDays, @PreviousIntervalStartDailyDate)
CREATE TABLE #TempApplicationDailyData(
ApplicationRowId int,
[DateTime] datetime,
CrashCount int,
AverageDailyCrashCount float
)
INSERT INTO #TempApplicationDailyData
SELECT
vAppDaily.ApplicationRowId AS ApplicationRowId
, @CurrentIntervalStartDailyDate
, SUM(vAppDaily.CrashCount) AS CrashCount
, SUM(vAppDaily.CrashCount) * 1.0 / @IntervalDurationInDays AS AverageDailyCrashCount
FROM [CM].[vCMAemApplicationDaily] vAppDaily
WHERE DATEDIFF(DAY, @CurrentIntervalStartDailyDate, vAppDaily.[DateTime]) > = 0 AND
DATEDIFF(DAY, vAppDaily.[DateTime], @CurrentIntervalEndDailyDate) > 0
GROUP BY vAppDaily.ApplicationRowId
INSERT INTO #TempApplicationDailyData
SELECT
vAppDaily.ApplicationRowId AS ApplicationRowId
, @PreviousIntervalStartDailyDate
, SUM(vAppDaily.CrashCount) AS CrashCount
, SUM(vAppDaily.CrashCount) * 1.0 / @IntervalDurationInDays AS AverageDailyCrashCount
FROM [CM].[vCMAemApplicationDaily] vAppDaily
WHERE DATEDIFF(DAY, @PreviousIntervalStartDailyDate, vAppDaily.[DateTime]) > = 0 AND
DATEDIFF(DAY, vAppDaily.[DateTime], @PreviousIntervalEndDailyDate) > 0
GROUP BY vAppDaily.ApplicationRowId
INSERT INTO #TempApplicationDailyData
SELECT
t1.ApplicationRowId AS ApplicationRowId
, @CurrentIntervalStartDailyDate
, NULL
, 0
FROM #TempApplicationDailyData t1
WHERE NOT EXISTS (
SELECT *
FROM #TempApplicationDailyData t2
WHERE t2.ApplicationRowId = t1.ApplicationRowId
AND t2.[DateTime] = @CurrentIntervalStartDailyDate
)
INSERT INTO #TempApplicationDailyData
SELECT
t1.ApplicationRowId AS ApplicationRowId
, @PreviousIntervalStartDailyDate
, NULL
, 0
FROM #TempApplicationDailyData t1
WHERE NOT EXISTS (
SELECT *
FROM #TempApplicationDailyData t2
WHERE t2.ApplicationRowId = t1.ApplicationRowId
AND t2.[DateTime] = @PreviousIntervalStartDailyDate
)
UPDATE #TempApplicationDailyData
SET CrashCount = NULL
WHERE CrashCount = 0;
CREATE TABLE #TempTopNAppsGrowthData(
ApplicationName nvarchar(256),
ApplicationVersion nvarchar(256),
CurrentCrashCount int,
CurrentAverageDailyCrashCount float,
PreviousCrashCount int,
PreviousAverageDailyCrashCount float,
CrashCountPercentileIncrease float
)
CREATE TABLE #TempTopNAppsGrowthDataWithId(
SerialNumber int identity(1, 1),
ApplicationName nvarchar(256),
ApplicationVersion nvarchar(256),
CurrentCrashCount int,
CurrentAverageDailyCrashCount float,
PreviousCrashCount int,
PreviousAverageDailyCrashCount float,
CrashCountPercentileIncrease float
)
INSERT INTO #TempTopNAppsGrowthData(
ApplicationName,
ApplicationVersion,
CurrentCrashCount,
CurrentAverageDailyCrashCount,
PreviousCrashCount,
PreviousAverageDailyCrashCount,
CrashCountPercentileIncrease)
SELECT TOP (@N)
UPPER(SUBSTRING(tbApp.ApplicationName, 1, 1)) + LOWER(SUBSTRING(tbApp.ApplicationName, 2, LEN(tbApp.ApplicationName))) AS ApplicationName
, LOWER(tbApp.ApplicationVersion) AS ApplicationVersion
, ISNULL(t2.CrashCount, 0) AS CurrentCrashCount
, t2.AverageDailyCrashCount AS CurrentAverageDailyCrashCount
, ISNULL(t1.CrashCount, 0) AS PreviousCrashCount
, t1.AverageDailyCrashCount AS PreviousAverageDailyCrashCount
, ISNULL(
(t2.CrashCount - t1.CrashCount) * 100.00 / t1.CrashCount,
ISNULL(t2.CrashCount * 100.00 / t2.CrashCount,
ISNULL(t1.CrashCount * -100.00 / t1.CrashCount, 0.00))) AS CrashCountPercentileIncrease
FROM #TempApplicationDailyData t1
JOIN #TempApplicationDailyData t2 ON t1.ApplicationRowId = t2.ApplicationRowId
JOIN [dbo].AemApplication tbApp ON t1.ApplicationRowId = tbApp.ApplicationRowId
WHERE t2.[DateTime] = @CurrentIntervalStartDailyDate
AND t1.[DateTime] = @PreviousIntervalStartDailyDate
ORDER BY CrashCountPercentileIncrease DESC
DROP TABLE #TempApplicationDailyData
INSERT INTO #TempTopNAppsGrowthDataWithId(
ApplicationName,
ApplicationVersion,
CurrentCrashCount,
CurrentAverageDailyCrashCount,
PreviousCrashCount,
PreviousAverageDailyCrashCount,
CrashCountPercentileIncrease)
SELECT
ApplicationName
, ApplicationVersion
, CurrentCrashCount
, ROUND(CurrentAverageDailyCrashCount, 2) AS CurrentAverageDailyCrashCount
, PreviousCrashCount
, ROUND(PreviousAverageDailyCrashCount, 2) AS PreviousAverageDailyCrashCount
, ROUND(CrashCountPercentileIncrease, 2) AS CrashCountPercentileIncrease
FROM #TempTopNAppsGrowthData
ORDER BY ApplicationName ASC, ApplicationVersion DESC
DROP TABLE #TempTopNAppsGrowthData
SELECT
SerialNumber
, ApplicationName
, ApplicationVersion
, CurrentCrashCount
, CurrentAverageDailyCrashCount
, PreviousCrashCount
, PreviousAverageDailyCrashCount
, CrashCountPercentileIncrease
FROM #TempTopNAppsGrowthDataWithId
DROP TABLE #TempTopNAppsGrowthDataWithId</CommandText>
<QueryParameters>
<QueryParameter Name="@N">
<Value>=Parameters!N.Value</Value>
</QueryParameter>
<QueryParameter Name="@CurrentIntervalStartDate">
<Value>=Code.ToDbDate(Code.GetReportCurrentStartDate())</Value>
</QueryParameter>
<QueryParameter Name="@PreviousIntervalStartDate">
<Value>=Code.ToDbDate(Code.GetReportPreviousStartDate())</Value>
</QueryParameter>
<QueryParameter Name="@IntervalDurationInDays">
<Value>=Parameters!IntervalDurationInDays.Value</Value>
</QueryParameter>
</QueryParameters>
<DataSourceName>DataWarehouseMain</DataSourceName>
</Query>
<Fields>
<Field Name="ApplicationName">
<DataField>ApplicationName</DataField>
</Field>
<Field Name="ApplicationVersion">
<DataField>ApplicationVersion</DataField>
</Field>
<Field Name="CurrentCrashCount">
<DataField>CurrentCrashCount</DataField>
</Field>
<Field Name="CurrentAverageDailyCrashCount">
<DataField>CurrentAverageDailyCrashCount</DataField>
</Field>
<Field Name="PreviousCrashCount">
<DataField>PreviousCrashCount</DataField>
</Field>
<Field Name="PreviousAverageDailyCrashCount">
<DataField>PreviousAverageDailyCrashCount</DataField>
</Field>
<Field Name="CrashCountPercentileIncrease">
<DataField>CrashCountPercentileIncrease</DataField>
</Field>
<Field Name="SerialNumber">
<DataField>SerialNumber</DataField>
</Field>
</Fields>
</DataSet>
</DataSets>
<CodeModules>
<CodeModule>Microsoft.EnterpriseManagement.Reporting.Code, Version=6.0.0.0, Culture=neutral</CodeModule>
</CodeModules>
<Code>
Const LocTableStringQuery As String = "R/S[@N='{0}']/text()"
Const TimeZoneParameterName As String = "TimeZone"
Const SD_CI_BaseTypeParameterName As String = "CurrentIntervalStartDate_BaseType"
Const SD_CI_BaseValueParameterName As String = "CurrentIntervalStartDate_BaseValue"
Const SD_CI_OffsetTypeParameterName As String = "CurrentIntervalStartDate_OffsetType"
Const SD_CI_OffsetValueParameterName As String = "CurrentIntervalStartDate_OffsetValue"
Const SD_PI_BaseTypeParameterName As String = "PreviousIntervalStartDate_BaseType"
Const SD_PI_BaseValueParameterName As String = "PreviousIntervalStartDate_BaseValue"
Const SD_PI_OffsetTypeParameterName As String = "PreviousIntervalStartDate_OffsetType"
Const SD_PI_OffsetValueParameterName As String = "PreviousIntervalStartDate_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 ReportCurrentStartDate As DateTime
Dim ReportPreviousStartDate 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
ReportCurrentStartDate = DateTime.MinValue
ReportPreviousStartDate = 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 GetReportCurrentStartDate() As DateTime
If (ReportCurrentStartDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportCurrentStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_CI_BaseTypeParameterName).Value, Report.Parameters(SD_CI_BaseValueParameterName).Value, Report.Parameters(SD_CI_OffsetTypeParameterName).Value, Report.Parameters(SD_CI_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
Else
ReportCurrentStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_CI_BaseTypeParameterName).Value, Report.Parameters(SD_CI_BaseValueParameterName).Value, Report.Parameters(SD_CI_OffsetTypeParameterName).Value, Report.Parameters(SD_CI_OffsetValueParameterName).Value)
End if
End If
return ReportCurrentStartDate
End Function
Public Function GetReportPreviousStartDate() As DateTime
If (ReportPreviousStartDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportPreviousStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_PI_BaseTypeParameterName).Value, Report.Parameters(SD_PI_BaseValueParameterName).Value, Report.Parameters(SD_PI_OffsetTypeParameterName).Value, Report.Parameters(SD_PI_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
Else
ReportPreviousStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_PI_BaseTypeParameterName).Value, Report.Parameters(SD_PI_BaseValueParameterName).Value, Report.Parameters(SD_PI_OffsetTypeParameterName).Value, Report.Parameters(SD_PI_OffsetValueParameterName).Value)
End if
End If
return ReportPreviousStartDate
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 Double) 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
</Code>
<Width>8.5in</Width>
<DataElementStyle>ElementNormal</DataElementStyle>
<InteractiveHeight>11in</InteractiveHeight>
<Language>en-US</Language>
<PageFooter>
<ReportItems>
<Textbox Name="textbox62">
<Left>6.5in</Left>
<Top>0.1in</Top>
<ZIndex>1</ZIndex>
<Width>1.7in</Width>
<Style>
<TextAlign>Right</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Color>DimGray</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.PageFormat", "[{0}/{1}]"), Globals!PageNumber, Globals!TotalPages)</Value>
</Textbox>
<Textbox Name="textbox63">
<Left>0.15in</Left>
<Top>0.1in</Top>
<Width>6.25in</Width>
<Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
<Color>DimGray</Color>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Value>=Code.FormatString(Code.GetLocTable("LT_Report").GetString("R.TimeZoneFormat", "[{0}]"), Parameters!TimeZoneName.Value)</Value>
</Textbox>
</ReportItems>
<Height>0.2875in</Height>
<PrintOnLastPage>true</PrintOnLastPage>
<PrintOnFirstPage>true</PrintOnFirstPage>
</PageFooter>
</Report>
</Definition>
<ReportStrings>
<ReportString ID="R.Title"/>
<ReportString ID="R.DescriptionTitle"/>
<ReportString ID="R.Description"/>
<ReportString ID="R.GeneratedTimeLabel"/>
<ReportString ID="R.CurrentStartEndTimeLabel"/>
<ReportString ID="R.CurrentStartEndTimeFormat"/>
<ReportString ID="R.PreviousStartEndTimeLabel"/>
<ReportString ID="R.PreviousStartEndTimeFormat"/>
<ReportString ID="R.NLabel"/>
<ReportString ID="R.GraphTitleLabel"/>
<ReportString ID="R.Graph.XAxisLabel"/>
<ReportString ID="R.Graph.YAxisLabel"/>
<ReportString ID="R.TableHeaderLine1"/>
<ReportString ID="R.TableSubHeaderLine1"/>
<ReportString ID="RT.Column.SerialNumberLabel"/>
<ReportString ID="RT.Column.ApplicationNameLabel"/>
<ReportString ID="RT.Column.ApplicationVersionLabel"/>
<ReportString ID="RT.Column.CurrentCrashCountLabel"/>
<ReportString ID="RT.Column.CurrentAverageDailyCrashCountLabel"/>
<ReportString ID="RT.Column.PreviousCrashCountLabel"/>
<ReportString ID="RT.Column.PreviousAverageDailyCrashCountLabel"/>
<ReportString ID="RT.Column.CrashCountPercentileIncreaseLabel"/>
<ReportString ID="R.PageFormat"/>
<ReportString ID="R.TimeZoneFormat"/>
</ReportStrings>
</Report>