此報表根據應用程式於指定時間間隔內的成長及解決率,顯示比率較高的前 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>