此报表根据指定时间间隔内的故障数显示前 N 个应用程序。
本报表是如何工作的?
“前 N 个应用程序”报表显示:
一个图表,根据其故障数显示前 N 个应用程序。
最后,有一个表根据指定时间间隔内的故障数详细列出了前 N 个应用程序:
序列号
应用程序名称
应用程序版本
故障数
平均每天故障数
Accessibility | Public |
Visible | True |
R.Description | 此报表根据在指定间隔内的故障数显示前 N 个应用程序。 | |
R.DescriptionTitle | 单击加号以查看此报表的完整描述 | |
R.GeneratedTimeLabel | 报告时间 | |
R.Graph.XAxisLabel | 序列号 | |
R.Graph.YAxisLabel | 故障数 | |
R.GraphTableLabel | 前 N 个应用程序报表摘要表 | |
R.GraphTitleLabel | 前 N 个应用程序图形 | |
R.NLabel | N | |
R.PageFormat | 第 {0} 页(共 {1} 页) | |
R.StartEndTimeFormat | 从 {0} 到 {1} | |
R.StartEndTimeLabel | 报表持续时间 | |
R.TableHeaderLine1 | 前 N 个应用程序 | |
R.TableSubHeaderLine1 | 基于指定间隔内故障数的前 N 个应用程序。 | |
R.TimeZoneFormat | 所有日期和时间都显示在 {0} 中 | |
R.Title | 客户端监视前 N 个应用程序报表 | |
RT.Column.ApplicationNameLabel | 应用程序名称 | |
RT.Column.ApplicationVersionLabel | 应用程序版本 | |
RT.Column.AverageCrashCountPerApplicationLabel | 每个应用程序的平均故障数 | |
RT.Column.AverageDailyCrashCountLabel | 平均每天故障数 | |
RT.Column.AverageDailyCrashCountPerApplicationLabel | 每个应用程序的平均每天故障数 | |
RT.Column.CrashCountLabel | 故障数 | |
RT.Column.SerialNumberLabel | 序列号 | |
RT.Column.TotalCrashCountLabel | 故障总数 |
<Report ID="Microsoft.SystemCenter.CM.AEM.Views.Internal.DataWarehouse.Report.TopNApplications" 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="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 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.TopNApplications.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="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="N">
<DataType>Integer</DataType>
<DefaultValue>
<Values>
<Value>10</Value>
</Values>
</DefaultValue>
<Prompt>[Top 'N' Applications]</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="TopNApplicationsChart">
<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 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>
<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>
<Min>1</Min>
<Margin>true</Margin>
<Visible>true</Visible>
</Axis>
</CategoryAxis>
<PointWidth>0</PointWidth>
<Left>0.15in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<ThreeDProperties/>
<DataSetName>ApplicationQuery</DataSetName>
<SeriesGroupings>
<SeriesGrouping>
<StaticSeries>
<StaticMember>
<Label>=Code.GetLocTable("LT_Table").GetString("RT.Legend.CrashCount", "[Crash Count]")</Label>
</StaticMember>
</StaticSeries>
</SeriesGrouping>
</SeriesGroupings>
<Top>2.45in</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]")</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>
<Min>0</Min>
<Margin>true</Margin>
<Visible>true</Visible>
<Scalar>true</Scalar>
</Axis>
</ValueAxis>
<ZIndex>7</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!CrashCount.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="textbox4">
<rd:DefaultName>textbox4</rd:DefaultName>
<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>
<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>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>
<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>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>ApplicationVersion</DataElementName>
<Value>=Fields!ApplicationVersion.Value</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox50">
<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>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>CrashCount</DataElementName>
<Value>=Code.FormatNumber("G", Fields!CrashCount.Value)</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox51">
<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>
<Format>#.00</Format>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>AverageDailyCrashCount</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!AverageDailyCrashCount.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="textbox3">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox3</rd:DefaultName>
<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>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.SerialNumberLabel", "[Serial Number]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox55">
<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!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>7</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="textbox59">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>6</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!CrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.CrashCountLabel", "[Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox60">
<DataElementOutput>NoOutput</DataElementOutput>
<ZIndex>5</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!AverageDailyCrashCount.Value</SortExpression>
</UserSort>
<Value>=Code.GetLocTable("LT_Table").GetString("RT.Column.AverageDailyCrashCountLabel", "[Average Daily Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.25in</Height>
</TableRow>
</TableRows>
<RepeatOnNewPage>true</RepeatOnNewPage>
</Header>
<TableColumns>
<TableColumn>
<Width>0.77in</Width>
</TableColumn>
<TableColumn>
<Width>3.84in</Width>
</TableColumn>
<TableColumn>
<Width>1.39in</Width>
</TableColumn>
<TableColumn>
<Width>1.11in</Width>
</TableColumn>
<TableColumn>
<Width>1.11in</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>
<Width>7.85in</Width>
<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 Data Table Header]"))</Value>
</Textbox>
<Textbox Name="textbox72">
<Left>0.35in</Left>
<DataElementOutput>Output</DataElementOutput>
<Top>0.25in</Top>
<Width>7.85in</Width>
<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 Data Table Sub-Header]"))</Value>
</Textbox>
</ReportItems>
<DataSetName>ApplicationQuery</DataSetName>
<Top>6.45in</Top>
<ZIndex>6</ZIndex>
<Width>8.22in</Width>
<Grouping Name="Object">
<GroupExpressions>
<GroupExpression>=""</GroupExpression>
</GroupExpressions>
</Grouping>
<DataElementName>TopNApplicationsDetail</DataElementName>
<DataInstanceElementOutput>NoOutput</DataInstanceElementOutput>
<Height>1.25in</Height>
</List>
<Rectangle Name="RptSpacerHeader">
<Left>0.15in</Left>
<Top>1.5in</Top>
<ZIndex>5</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]")</Value>
</Textbox>
</ReportItems>
<Top>0.75in</Top>
<ZIndex>4</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 Report gives an overview of non-availability of applications in a chosen timeframe.]")</Value>
</Textbox>
</ReportItems>
<Top>1.3in</Top>
<ZIndex>3</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>2</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="textbox10">
<Left>1.85in</Left>
<DataElementOutput>NoOutput</DataElementOutput>
<CanShrink>true</CanShrink>
<Top>0.45in</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.45in</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.45in</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.StartEndTimeFormat", "{0} - {1}"),
Code.FormatDateTime("g", Code.GetReportStartDate()),
Code.FormatDateTime("g", Code.GetReportEndDate())
) </Value>
</Textbox>
<Image Name="parameterBottomImage">
<Sizing>AutoSize</Sizing>
<MIMEType/>
<Top>0.7in</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.StartEndTimeLabel", "[Report Start/End Time Label]")</Value>
</Textbox>
</ReportItems>
<Top>1.55in</Top>
<ZIndex>1</ZIndex>
<Width>8.05in</Width>
<Height>0.75in</Height>
</Rectangle>
<Table Name="table2">
<Left>2.5in</Left>
<DataElementOutput>Output</DataElementOutput>
<DetailDataElementName>TopNApplicationsSummary</DetailDataElementName>
<DataSetName>ApplicationSummaryQuery</DataSetName>
<Top>5.6in</Top>
<Width>3.5in</Width>
<Details>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox16">
<DataElementOutput>Output</DataElementOutput>
<rd:DefaultName>textbox16</rd:DefaultName>
<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>
<BackgroundColor>Gainsboro</BackgroundColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>TotalCrashes</DataElementName>
<Value>=Code.FormatNumber("G", Fields!TotalCrashes.Value )</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox21">
<DataElementOutput>Output</DataElementOutput>
<rd:DefaultName>textbox21</rd:DefaultName>
<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>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
<BackgroundColor>Gainsboro</BackgroundColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>AverageCrashCountPerApplication</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!AverageCrashCountPerApplication.Value )</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox23">
<DataElementOutput>Output</DataElementOutput>
<rd:DefaultName>textbox23</rd:DefaultName>
<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>
<BackgroundColor>Gainsboro</BackgroundColor>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<DataElementStyle>ElementNormal</DataElementStyle>
<CanGrow>true</CanGrow>
<DataElementName>AverageDailyCrashCountPerApplication</DataElementName>
<Value>=Code.FormatNumber("N2", Fields!AverageDailyCrashCountPerApplication.Value )</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.21538in</Height>
</TableRow>
</TableRows>
</Details>
<DetailDataCollectionName>TopNApplicationsSummaryInfo</DetailDataCollectionName>
<Style>
<BorderColor>
<Default>DarkGray</Default>
</BorderColor>
</Style>
<Header>
<TableRows>
<TableRow>
<TableCells>
<TableCell>
<ColSpan>3</ColSpan>
<ReportItems>
<Textbox Name="textbox5">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox5</rd:DefaultName>
<ZIndex>6</ZIndex>
<Style>
<TextAlign>Center</TextAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingBottom>2pt</PaddingBottom>
<FontFamily>Tahoma</FontFamily>
<FontWeight>700</FontWeight>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
</Style>
<CanGrow>true</CanGrow>
<Value>=Code.GetLocTable("LT_Report").GetString("R.GraphTableLabel", "[Graph Table Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.26923in</Height>
</TableRow>
<TableRow>
<TableCells>
<TableCell>
<ReportItems>
<Textbox Name="textbox8">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox8</rd:DefaultName>
<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>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.TotalCrashCountLabel", "[Total Crash Count Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox12">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox12</rd:DefaultName>
<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>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.AverageCrashCountPerApplicationLabel", "[Average Crash Count Per Application Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
<TableCell>
<ReportItems>
<Textbox Name="textbox22">
<DataElementOutput>NoOutput</DataElementOutput>
<rd:DefaultName>textbox22</rd:DefaultName>
<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>
<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.AverageDailyCrashCountPerApplicationLabel", "[Average Daily Crash Count Per Application Column Label]")</Value>
</Textbox>
</ReportItems>
</TableCell>
</TableCells>
<Height>0.21538in</Height>
</TableRow>
</TableRows>
</Header>
<TableColumns>
<TableColumn>
<Width>1.07692in</Width>
</TableColumn>
<TableColumn>
<Width>1.21154in</Width>
</TableColumn>
<TableColumn>
<Width>1.21154in</Width>
</TableColumn>
</TableColumns>
<DataElementName>TopNApplicationsSummaryTable</DataElementName>
<Height>0.69999in</Height>
</Table>
</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.TopNApplications</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.TopNApplications</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 @StartDailyDate DateTime, @EndDailyDate DateTime
EXEC dbo.AemGetDailyAggregationDate @StartDate, @StartDailyDate out
EXEC dbo.AemGetDailyAggregationDate @EndDate, @EndDailyDate out
CREATE TABLE #TempTopNApps(
SerialNumber int identity(1, 1),
ApplicationName nvarchar(256),
ApplicationVersion nvarchar(256),
CrashCount int,
AverageDailyCrashCount float
)
INSERT INTO #TempTopNApps(ApplicationName, ApplicationVersion, CrashCount, AverageDailyCrashCount)
SELECT
UPPER(SUBSTRING(tbApp.ApplicationName, 1, 1)) + LOWER(SUBSTRING(tbApp.ApplicationName, 2, LEN(tbApp.ApplicationName))) AS ApplicationName
, LOWER(tbApp.ApplicationVersion) AS ApplicationVersion
, tbTemp.CrashCount
, tbTemp.AverageDailyCrashCount
FROM
(
SELECT TOP (@N)
vAppDaily.ApplicationRowId AS ApplicationRowId
, SUM(vAppDaily.CrashCount) AS CrashCount
, SUM(vAppDaily.CrashCount) * 1.0 / ABS(DATEDIFF(DAY, @StartDailyDate, @EndDailyDate)) AS AverageDailyCrashCount
FROM [CM].[vCMAemApplicationDaily] vAppDaily
WHERE DATEDIFF(DAY, @StartDailyDate, vAppDaily.[DateTime]) > = 0 AND
DATEDIFF(DAY, vAppDaily.[DateTime], @EndDailyDate) > 0
GROUP BY vAppDaily.ApplicationRowId
ORDER BY CrashCount DESC
) tbTemp
JOIN [dbo].AemApplication tbApp ON tbApp.ApplicationRowId = tbTemp.ApplicationRowId
ORDER BY tbTemp.CrashCount DESC
SELECT SerialNumber, ApplicationName, ApplicationVersion, CrashCount, AverageDailyCrashCount
FROM #TempTopNApps
DROP TABLE #TempTopNApps</CommandText>
<QueryParameters>
<QueryParameter Name="@N">
<Value>=Parameters!N.Value</Value>
</QueryParameter>
<QueryParameter Name="@StartDate">
<Value>=Code.ToDbDate(Code.GetReportStartDate())</Value>
</QueryParameter>
<QueryParameter Name="@EndDate">
<Value>=Code.ToDbDate(Code.GetReportEndDate())</Value>
</QueryParameter>
</QueryParameters>
<DataSourceName>DataWarehouseMain</DataSourceName>
</Query>
<Fields>
<Field Name="ApplicationName">
<DataField>ApplicationName</DataField>
</Field>
<Field Name="ApplicationVersion">
<DataField>ApplicationVersion</DataField>
</Field>
<Field Name="CrashCount">
<DataField>CrashCount</DataField>
</Field>
<Field Name="AverageDailyCrashCount">
<DataField>AverageDailyCrashCount</DataField>
</Field>
<Field Name="SerialNumber">
<DataField>SerialNumber</DataField>
</Field>
</Fields>
</DataSet>
<DataSet Name="ApplicationSummaryQuery">
<Query>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
<CommandText>IF (@N <= 0)
BEGIN
SET @N = 1
END
DECLARE @StartDailyDate DateTime, @EndDailyDate DateTime
EXEC dbo.AemGetDailyAggregationDate @StartDate, @StartDailyDate out
EXEC dbo.AemGetDailyAggregationDate @EndDate, @EndDailyDate out
SELECT SUM(CrashCount) AS TotalCrashes
, SUM(CrashCount) * 1.0 / COUNT(*) AS AverageCrashCountPerApplication
, SUM(AverageDailyCrashCount) * 1.0 / COUNT(*) AS AverageDailyCrashCountPerApplication
FROM
(
SELECT TOP (@N) vAppDaily.ApplicationRowId AS ApplicationRowId,
SUM(vAppDaily.CrashCount) AS CrashCount,
SUM(vAppDaily.CrashCount) * 1.0 / ABS(DATEDIFF(DAY, @StartDailyDate, @EndDailyDate)) AS AverageDailyCrashCount
FROM [CM].[vCMAemApplicationDaily] vAppDaily
WHERE DATEDIFF(DAY, @StartDailyDate, vAppDaily.[DateTime]) > = 0 AND
DATEDIFF(DAY, vAppDaily.[DateTime], @EndDailyDate) > 0
GROUP BY vAppDaily.ApplicationRowId
ORDER BY CrashCount DESC
) tbTemp</CommandText>
<QueryParameters>
<QueryParameter Name="@N">
<Value>=Parameters!N.Value</Value>
</QueryParameter>
<QueryParameter Name="@StartDate">
<Value>=Code.ToDbDate(Code.GetReportStartDate())</Value>
</QueryParameter>
<QueryParameter Name="@EndDate">
<Value>=Code.ToDbDate(Code.GetReportEndDate())</Value>
</QueryParameter>
</QueryParameters>
<DataSourceName>DataWarehouseMain</DataSourceName>
</Query>
<Fields>
<Field Name="TotalCrashes">
<DataField>TotalCrashes</DataField>
</Field>
<Field Name="AverageCrashCountPerApplication">
<DataField>AverageCrashCountPerApplication</DataField>
</Field>
<Field Name="AverageDailyCrashCountPerApplication">
<DataField>AverageDailyCrashCountPerApplication</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_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
</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.StartEndTimeLabel"/>
<ReportString ID="R.StartEndTimeFormat"/>
<ReportString ID="R.NLabel"/>
<ReportString ID="R.GraphTitleLabel"/>
<ReportString ID="R.Graph.XAxisLabel"/>
<ReportString ID="R.Graph.YAxisLabel"/>
<ReportString ID="R.GraphTableLabel"/>
<ReportString ID="RT.Column.TotalCrashCountLabel"/>
<ReportString ID="RT.Column.AverageCrashCountPerApplicationLabel"/>
<ReportString ID="RT.Column.AverageDailyCrashCountPerApplicationLabel"/>
<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.CrashCountLabel"/>
<ReportString ID="RT.Column.AverageDailyCrashCountLabel"/>
<ReportString ID="R.PageFormat"/>
<ReportString ID="R.TimeZoneFormat"/>
</ReportStrings>
</Report>