Host Group Disk Space Forecasting

Microsoft.Virtualization.Reports.ForecastMachineGroupDiskSpace (Report)

Element properties:

AccessibilityPublic
VisibleFalse

Report Localization:

R.FCChartDisk Space Usage ForecastDisk Space Usage Forecast
R.FC.YAxisUsed Disk Space In \%Used Disk Space In \%
R.FC.XAxisTime LineTime Line
R.Legend.Limit95\% Forecast Confidence Interval95\% Forecast Confidence Interval
R.Legend.TSDataHistorical DataHistorical Data
R.Legend.FCDataForecast Data
R.FCTblDisk Space Usage Forecast(\%)Disk Space Usage Forecast (\%)
R.DateDateDate
R.UsedSpaceUsed Disk Space(\%)Used Disk Space (\%)
R.DeviationStandard DeviationStandard Deviation
R.MBChartDisk Used/Total MBytesDisk Used/Total megabytes
R.MBChart.YAxisMBMegabytes
R.MBChart.XAxisTime LineTime Line
R.Legend.UsedMBUsed SpaceUsed Space
R.Legend.TotalMBTotal SpaceTotal Space
R.MBTblDisk Used/Total MBytesDisk Used/Total MBytes
R.MBTblUsedMBUsed Disk Space(MB)Used Disk Space (in megabytes)
R.MBTblTotalSpaceTotal SpaceTotal Space
R.NoEnoughDataMsgWarning: Not enough Historical data provided for this sub report. Try to change the date range for historic data or the forecast granularity for this sub report.Warning: Not enough Historical data provided for this sub report. Try to change the date range for historic data or the forecast granularity for this sub report.
R.ErrorMessage.Cause.3There is not enough historical data to generate forecasting data, at least 2 historical data points are necessary.

Source Code:

<Report ID="Microsoft.Virtualization.Reports.ForecastMachineGroupDiskSpace" Accessibility="Public" Visible="false">
<Definition>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<Body><Script>
<ReportItems>
<Chart Name="ChartDiskUsedAndTotalMBytes">
<ChartCategoryHierarchy>
<ChartMembers>
<ChartMember>
<Group Name="ChartDiskUsedAndTotalMBytes_CategoryGroup">
<GroupExpressions>
<GroupExpression>=Fields!DataPointDateTime.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!DataPointDateTime.Value</Value>
</SortExpression>
</SortExpressions>
<Label>=Fields!DataPointDateTime.Value</Label>
</ChartMember>
</ChartMembers>
</ChartCategoryHierarchy>
<ChartSeriesHierarchy>
<ChartMembers>
<ChartMember>
<Label>Used Space</Label>
</ChartMember>
<ChartMember>
<Label>Total Space</Label>
</ChartMember>
</ChartMembers>
</ChartSeriesHierarchy>
<ChartData>
<ChartSeriesCollection>
<ChartSeries Name="UsedSpace">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=Sum(Fields!UsedSpace.Value)</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Legend.UsedMB", "Used Space")</LegendText>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
<ChartSeries Name="TotalSpace">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=Sum(Fields!TotalSpace.Value)</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Legend.TotalMB", "Total Space")</LegendText>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
</ChartSeriesCollection>
</ChartData>
<ChartAreas>
<ChartArea Name="Default">
<ChartCategoryAxes>
<ChartAxis Name="Primary">
<Style></Style>
<Border>
<Color>Gray</Color>
<Width>1.5pt</Width>
</Border>
<FontSize>8pt</FontSize>
<Format>MM/dd/yyyy</Format>
</Style>
<ChartAxisTitle>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.MBChart.XAxis", "Time Line")</Caption>
<Style></Style>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Enabled>False</Enabled>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<Angle>-30</Angle>
<LabelsAutoFitDisabled>true</LabelsAutoFitDisabled>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
<ChartAxis Name="Secondary">
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
<ChartAxisTitle>
<Caption>Axis Title</Caption>
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Enabled>False</Enabled>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Location>Opposite</Location>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
</ChartCategoryAxes>
<ChartValueAxes>
<ChartAxis Name="Primary">
<Style></Style>
<Border>
<Color>Gray</Color>
<Width>1.5pt</Width>
</Border>
<FontSize>8pt</FontSize>
<Format>#,0;(#,0)</Format>
</Style>
<ChartAxisTitle>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.MBChart.YAxis", "MB")</Caption>
<Style></Style>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Interlaced>true</Interlaced>
<InterlacedColor>Lavender</InterlacedColor>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<PreventLabelOffset>true</PreventLabelOffset>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
<ChartAxis Name="Secondary">
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
<ChartAxisTitle>
<Caption>Axis Title</Caption>
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Location>Opposite</Location>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
</ChartValueAxes>
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
</Style>
</ChartArea>
</ChartAreas>
<ChartLegends>
<ChartLegend Name="Default">
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<FontSize>8pt</FontSize>
</Style>
<Position>BottomCenter</Position>
<DockOutsideChartArea>true</DockOutsideChartArea>
<ChartLegendTitle>
<Caption/>
<Style></Style>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextAlign>Center</TextAlign>
</Style>
</ChartLegendTitle>
<HeaderSeparatorColor>Black</HeaderSeparatorColor>
<ColumnSeparatorColor>Black</ColumnSeparatorColor>
</ChartLegend>
</ChartLegends>
<ChartTitles>
<ChartTitle Name="Default">
<Caption>=Code.GetLocTable("LT_Report").GetString("R.MBChart", "Disk Used/Total MBytes")</Caption>
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<FontWeight>Bold</FontWeight>
<TextAlign>General</TextAlign>
<VerticalAlign>Top</VerticalAlign>
</Style>
</ChartTitle>
</ChartTitles>
<Palette>BrightPastel</Palette>
<ChartBorderSkin>
<Style></Style>
<BackgroundColor>Gray</BackgroundColor>
<BackgroundGradientType>None</BackgroundGradientType>
<Color>White</Color>
</Style>
</ChartBorderSkin>
<ChartNoDataMessage Name="NoDataMessage">
<Caption>
=Code.GetLocTable("LT_Report").GetString("R.ErrorMessage", "No data is available for this report. Possible causes include") &amp; ":"
&amp; VbCrLf &amp; "-- "&amp;
Code.GetLocTable("LT_Report").GetString("R.ErrorMessage.Cause.1", "The performance rules for the report have not been enabled in the System Center Virtual Machine Manager 2012 Monitoring Management Pack. For more information, see the description at the top of the report.")
&amp; VbCrLf &amp; "-- "&amp;
Code.GetLocTable("LT_Report").GetString("R.ErrorMessage.Cause.2", "No computers match your selection criteria. Review your selection criteria to ensure that they are not too restrictive.")
</Caption>
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<TextAlign>Left</TextAlign>
<VerticalAlign>Top</VerticalAlign>
</Style>
</ChartNoDataMessage>
<DataSetName>DiskUsedAndTotalMBytes</DataSetName>
<Left>5.55227in</Left>
<Height>3.5in</Height>
<Width>5.42672in</Width>
<ToolTip>DiskUsedAndTotalMBytes</ToolTip>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>White</BackgroundColor>
<BackgroundGradientType>None</BackgroundGradientType>
</Style>
</Chart>
<Textbox Name="Textbox_DiskUsedAndTotalMBytes">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.MBTbl", "Disk Used/Total MBytes")</Value>
<Style></Style>
<Color>Blue</Color>
</Style>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<Top>3.54167in</Top>
<Left>5.55227in</Left>
<Height>0.25in</Height>
<Width>5.42672in</Width>
<ZIndex>1</ZIndex>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Tablix Name="TablixDiskUsedAndTotalMBytes">
<TablixBody>
<TablixColumns>
<TablixColumn>
<Width>1.80891in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.80891in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.80891in</Width>
</TablixColumn>
</TablixColumns>
<TablixRows>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox65">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Date", "Date")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox65</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox67">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.MBTblUsedMB", "Used Disk Space(MB)")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox67</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox69">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.MBTblTotalSpace", "Total Space")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox69</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox71">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!DataPointDateTime.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox71</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox72">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!UsedSpace.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox72</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox73">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!TotalSpace.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox73</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="DataPointDateTime1">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!DataPointDateTime.Value</Value>
<Style/>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>DataPointDateTime1</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="UsedSpace">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!UsedSpace.Value</Value>
<Style></Style>
<Format>#,0.00;(#,0.00)</Format>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>UsedSpace</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="TotalSpace">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!TotalSpace.Value</Value>
<Style></Style>
<Format>#,0.00;(#,0.00)</Format>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>TotalSpace</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
</TablixRows>
</TablixBody>
<TablixColumnHierarchy>
<TablixMembers>
<TablixMember/>
<TablixMember/>
<TablixMember/>
</TablixMembers>
</TablixColumnHierarchy>
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<Group Name="Details2"/>
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
<NoRowsMessage>=Code.GetLocTable("LT_Report").GetString("R.ErrorMessage", "No data is available for this report.")</NoRowsMessage>
<DataSetName>DiskUsedAndTotalMBytes</DataSetName>
<Top>3.84723in</Top>
<Left>5.55227in</Left>
<Height>0.75in</Height>
<Width>5.42673in</Width>
<ZIndex>2</ZIndex>
<Visibility>
<Hidden>true</Hidden>
<ToggleItem>Textbox_DiskUsedAndTotalMBytes</ToggleItem>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
</Style>
</Tablix>
<Chart Name="ChartDiskSpaceUsageForecasting">
<ChartCategoryHierarchy>
<ChartMembers>
<ChartMember>
<Group Name="Chart4_CategoryGroup2">
<GroupExpressions>
<GroupExpression>=Fields!SeriesTime.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!SeriesTime.Value</Value>
</SortExpression>
</SortExpressions>
<Label>=Fields!SeriesTime.Value</Label>
</ChartMember>
</ChartMembers>
</ChartCategoryHierarchy>
<ChartSeriesHierarchy>
<ChartMembers>
<ChartMember>
<Label>Series Standard Deviation</Label>
</ChartMember>
<ChartMember>
<Label>Series Data</Label>
</ChartMember>
<ChartMember>
<Label>Series Standard Deviation</Label>
</ChartMember>
<ChartMember>
<Label/>
</ChartMember>
</ChartMembers>
</ChartSeriesHierarchy>
<ChartData>
<ChartSeriesCollection>
<ChartSeries Name="Series">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=IIF((Fields!SeriesData.Value + 2 * Fields!SeriesStandardDeviation.Value) &gt; 100, 100, (Fields!SeriesData.Value + 2 * Fields!SeriesStandardDeviation.Value))</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<ToolTip>Upper Limit Prediction</ToolTip>
<Style></Style>
<Border>
<Color>Blue</Color>
<Style></Style>Dotted</Style>
<Width>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount(), "1.5pt", "0pt")</Width>
</Border>
<Color>Blue</Color>
</Style>
<ChartMarker>
<Style></Style>
<Color>Purple</Color>
</Style>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Legend.Limit", "95% Forecast Confidence Interval")</LegendText>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
<ChartSeries Name="SeriesData">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=Switch(Fields!SeriesData.Value &gt; 100, 100,
Fields!SeriesData.Value &lt; 0, 0,
Fields!SeriesData.Value &lt;= 100 , Fields!SeriesData.Value,
Fields!SeriesData.Value &gt;=0, Fields!SeriesData.Value)</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<Style></Style>
<Border>
<Width>1.5pt</Width>
</Border>
<Color>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount(), "Blue", "Red")</Color>
</Style>
<ChartMarker>
<Type>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount(), "Square", "None")</Type>
<Style></Style>
<Color>Purple</Color>
</Style>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Legend.TSData", "Historical Data")</LegendText>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
<ChartSeries Name="Series1">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=IIF((Fields!SeriesData.Value - 2 * Fields!SeriesStandardDeviation.Value) &lt; 0, 0, (Fields!SeriesData.Value - 2 * Fields!SeriesStandardDeviation.Value))</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<Style></Style>
<Border>
<Color>Blue</Color>
<Style></Style>Dotted</Style>
<Width>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount(), "1.5pt", "0pt")</Width>
</Border>
<Color>Blue</Color>
</Style>
<ChartMarker>
<Style/>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Title", "95% Forecast Confidence Interval")</LegendText>
<Hidden>true</Hidden>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
<ChartSeries Name="Series2">
<ChartDataPoints>
<ChartDataPoint>
<ChartDataPointValues>
<Y>=0</Y>
</ChartDataPointValues>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
<Style></Style>
<Border>
<Color>Blue</Color>
<Width>0.5pt</Width>
</Border>
<Color>Blue</Color>
</Style>
<ChartMarker>
<Style/>
</ChartMarker>
<DataElementOutput>Output</DataElementOutput>
</ChartDataPoint>
</ChartDataPoints>
<Type>Line</Type>
<Style/>
<ChartEmptyPoints>
<Style/>
<ChartMarker>
<Style/>
</ChartMarker>
<ChartDataLabel>
<Style/>
</ChartDataLabel>
</ChartEmptyPoints>
<ChartItemInLegend>
<LegendText>=Code.GetLocTable("LT_Report").GetString("R.Legend.FCData", "Forecast Data")</LegendText>
</ChartItemInLegend>
<ValueAxisName>Primary</ValueAxisName>
<CategoryAxisName>Primary</CategoryAxisName>
<ChartSmartLabel>
<CalloutLineColor>Black</CalloutLineColor>
<MinMovingDistance>0pt</MinMovingDistance>
</ChartSmartLabel>
</ChartSeries>
</ChartSeriesCollection>
</ChartData>
<ChartAreas>
<ChartArea Name="Default">
<ChartCategoryAxes>
<ChartAxis Name="Primary">
<Style></Style>
<Border>
<Color>Gray</Color>
<Width>1.5pt</Width>
</Border>
<FontSize>8pt</FontSize>
<Format>MM/dd/yyyy</Format>
</Style>
<ChartAxisTitle>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.FC.XAxis", "Time Line")</Caption>
<Style></Style>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Enabled>False</Enabled>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<Angle>-30</Angle>
<PreventLabelOffset>true</PreventLabelOffset>
<AllowLabelRotation>None</AllowLabelRotation>
<LabelsAutoFitDisabled>true</LabelsAutoFitDisabled>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
<ChartAxis Name="Secondary">
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
<ChartAxisTitle>
<Caption>Axis Title</Caption>
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Enabled>False</Enabled>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Location>Opposite</Location>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
</ChartCategoryAxes>
<ChartValueAxes>
<ChartAxis Name="Primary">
<Style></Style>
<Border>
<Color>Gray</Color>
<Width>1.5pt</Width>
</Border>
<FontSize>8pt</FontSize>
<Format>#,0;(#,0)</Format>
</Style>
<ChartAxisTitle>
<Caption>=Code.GetLocTable("LT_Report").GetString("R.FC.YAxis", "Used Disk Space In %")</Caption>
<Style></Style>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</ChartAxisTitle>
<IntervalType>Number</IntervalType>
<ChartMajorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Interlaced>true</Interlaced>
<InterlacedColor>Lavender</InterlacedColor>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
<ChartAxis Name="Secondary">
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
<ChartAxisTitle>
<Caption>Axis Title</Caption>
<Style></Style>
<FontSize>8pt</FontSize>
</Style>
</ChartAxisTitle>
<ChartMajorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
</Border>
</Style>
</ChartMajorGridLines>
<ChartMinorGridLines>
<Style></Style>
<Border>
<Color>Gainsboro</Color>
<Style></Style>Dotted</Style>
</Border>
</Style>
</ChartMinorGridLines>
<ChartMinorTickMarks>
<Length>0.5</Length>
</ChartMinorTickMarks>
<CrossAt>NaN</CrossAt>
<Location>Opposite</Location>
<Minimum>NaN</Minimum>
<Maximum>NaN</Maximum>
<ChartAxisScaleBreak>
<Style/>
</ChartAxisScaleBreak>
</ChartAxis>
</ChartValueAxes>
<Style></Style>
<BackgroundColor>=IIF(Fields!SeriesStandardDeviation.Value &gt; 0, "Khaki", "AliceBlue")</BackgroundColor>
<BackgroundGradientType>None</BackgroundGradientType>
</Style>
</ChartArea>
</ChartAreas>
<ChartLegends>
<ChartLegend Name="Default">
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<FontSize>8pt</FontSize>
</Style>
<Position>BottomCenter</Position>
<DockOutsideChartArea>true</DockOutsideChartArea>
<ChartLegendTitle>
<Caption/>
<Style></Style>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextAlign>Center</TextAlign>
</Style>
</ChartLegendTitle>
<HeaderSeparatorColor>Black</HeaderSeparatorColor>
<ColumnSeparatorColor>Black</ColumnSeparatorColor>
</ChartLegend>
</ChartLegends>
<ChartTitles>
<ChartTitle Name="Default">
<Caption>=Code.GetLocTable("LT_Report").GetString("R.FCChart", "Disk Space Usage Forecast")</Caption>
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<FontWeight>Bold</FontWeight>
<TextAlign>General</TextAlign>
<VerticalAlign>Top</VerticalAlign>
</Style>
</ChartTitle>
</ChartTitles>
<Palette>BrightPastel</Palette>
<ChartBorderSkin>
<Style></Style>
<BackgroundColor>Gray</BackgroundColor>
<BackgroundGradientType>None</BackgroundGradientType>
<Color>White</Color>
</Style>
</ChartBorderSkin>
<ChartNoDataMessage Name="NoDataMessage">
<Caption>=Code.GetLocTable("LT_Report").GetString("R.ErrorMessage.Cause.3", "There is no enough historical data to generate forecasting data, at least 2 historical data points are necessary.")</Caption>
<Style></Style>
<BackgroundGradientType>None</BackgroundGradientType>
<TextAlign>Left</TextAlign>
<VerticalAlign>Top</VerticalAlign>
</Style>
</ChartNoDataMessage>
<DataSetName>DiskSpaceUsageForecasting</DataSetName>
<Top>0.01389in</Top>
<Height>3.5in</Height>
<Width>5.46839in</Width>
<ZIndex>3</ZIndex>
<Visibility>
<Hidden>=IIF(Code.GetHistoricalDataPointsCount() &gt; 1, False, True)</Hidden>
</Visibility>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>White</BackgroundColor>
<BackgroundGradientType>None</BackgroundGradientType>
</Style>
</Chart>
<Textbox Name="Textbox_DiskSpaceUsageorecast">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.FCTbl", "Disk Space Usage Forecast(%)")</Value>
<Style></Style>
<Color>Blue</Color>
</Style>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<Top>3.54167in</Top>
<Height>0.25in</Height>
<Width>5.45504in</Width>
<ZIndex>4</ZIndex>
<Visibility>
<Hidden>=IIF(Code.GetHistoricalDataPointsCount() &gt; 1, False, True)</Hidden>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Tablix Name="TablixDiskIO2">
<TablixBody>
<TablixColumns>
<TablixColumn>
<Width>1.81835in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.81835in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.81835in</Width>
</TablixColumn>
</TablixColumns>
<TablixRows>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox6">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Date", "Date")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox9">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.UsedSpace", "Used Disk Space(%)")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox8</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<VerticalAlign>Bottom</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox13">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Deviation", "Standard Deviation")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox12</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>Lavender</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox26">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!SeriesTime.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox23</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox27">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!SeriesData.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox24</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox28">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!SeriesStandardDeviation.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value/>
<Style/>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox25</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.25in</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="SeriesTime2">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!SeriesTime.Value</Value>
<Style></Style>
<Format>MM/dd/yyyy</Format>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>SeriesTime</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount() , "Khaki", "No Color")</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="SeriesData2">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Switch(Fields!SeriesData.Value &gt; 100, 100,
Fields!SeriesData.Value &lt; 0, 0,
Fields!SeriesData.Value &lt;= 100 , Fields!SeriesData.Value,
Fields!SeriesData.Value &gt;=0, Fields!SeriesData.Value)</Value>
<Style></Style>
<Format>#,0.00;(#,0.00)</Format>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>SeriesData</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount() , "Khaki", "No Color")</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="SeriesStandardDeviation2">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!SeriesStandardDeviation.Value</Value>
<Style/>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>SeriesStandardDeviation</rd:DefaultName>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Style></Style>Solid</Style>
</Border>
<BackgroundColor>=IIF(RowNumber("DiskSpaceUsageForecasting") &gt; Code.GetHistoricalDataPointsCount() , "Khaki", "No Color")</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
</TablixRows>
</TablixBody>
<TablixColumnHierarchy>
<TablixMembers>
<TablixMember/>
<TablixMember/>
<TablixMember/>
</TablixMembers>
</TablixColumnHierarchy>
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<Group Name="Details3"/>
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
<FixedColumnHeaders>true</FixedColumnHeaders>
<NoRowsMessage>=Code.GetLocTable("LT_Report").GetString("R.ErrorMessage.Cause.3", "There is no enough historical data to generate forecasting data, at least 2 historical data points are necessary.")</NoRowsMessage>
<DataSetName>DiskSpaceUsageForecasting</DataSetName>
<Top>3.84723in</Top>
<Height>0.75in</Height>
<Width>5.45505in</Width>
<ZIndex>5</ZIndex>
<Visibility>
<Hidden>true</Hidden>
<ToggleItem>Textbox_DiskSpaceUsageorecast</ToggleItem>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
</Style>
</Tablix>
<Textbox Name="Textbox1">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.ErrorMessage.Cause.3", "There is no enough historical data to generate forecasting data, at least 2 historical data points are necessary.")</Value>
<Style/>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox1</rd:DefaultName>
<Top>0.01389in</Top>
<Height>0.90625in</Height>
<Width>5.46839in</Width>
<ZIndex>6</ZIndex>
<Visibility>
<Hidden>=IIF(Code.GetHistoricalDataPointsCount() &gt; 1, True, False)</Hidden>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox3">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.NoEnoughDataMsg", "Warning: Not enough Historical data provided for this sub report. Try to change the date range for historic data or the forecast granularity for this sub report.")</Value>
<Style></Style>
<Color>Red</Color>
</Style>
</TextRun>
</TextRuns>
<Style/>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox3</rd:DefaultName>
<Top>4.6389in</Top>
<Height>0.25694in</Height>
<Width>10.97899in</Width>
<ZIndex>7</ZIndex>
<Visibility>
<Hidden>=IIF(Code.GetHistoricalDataPointsCount() &gt;= 10, True, False)</Hidden>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<Height>4.96875in</Height>
<Style/>
</Script></Body>
<Width>10.9809in</Width>
<Page>
<LeftMargin>1in</LeftMargin>
<RightMargin>1in</RightMargin>
<TopMargin>1in</TopMargin>
<BottomMargin>1in</BottomMargin>
<Style/>
</Page>
<AutoRefresh>0</AutoRefresh>
<DataSources>
<DataSource Name="AnalysisServiceDS">
<ConnectionProperties>
<DataProvider>OLEDB-MD</DataProvider>
<ConnectString>="Data Source=" &amp; Parameters!AnalysisServerName.Value &amp; ";Initial Catalog=VMMAnalysisServerDB"</ConnectString>
</ConnectionProperties>
<rd:SecurityType>None</rd:SecurityType>
<rd:DataSourceID>2550f803-0ce8-46b2-a171-81303f7e7a43</rd:DataSourceID>
</DataSource>
<DataSource Name="DataWarehouseMain">
<DataSourceReference>OpsMgrDataWare</DataSourceReference>
<rd:SecurityType>None</rd:SecurityType>
<rd:DataSourceID>205a8894-1fc0-4210-9677-19ae89875210</rd:DataSourceID>
</DataSource>
</DataSources>
<DataSets>
<DataSet Name="LT_Report_Query">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<QueryParameters>
<QueryParameter Name="@ManagementGroupGuid">
<Value>=Code.GetCallingManagementGroupId()</Value>
</QueryParameter>
<QueryParameter Name="@ManagementPackSystemName">
<Value>Microsoft.SystemCenter.VirtualMachineManager.2012.Reports</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.Virtualization.Reports.ForecastMachineGroupDiskSpace</Value>
</QueryParameter>
<QueryParameter Name="@LanguageCode">
<Value>=Code.GetReportLocLanguageCode()</Value>
</QueryParameter>
<QueryParameter Name="@Scope">
<Value>R.%</Value>
</QueryParameter>
</QueryParameters>
<CommandType>StoredProcedure</CommandType>
<CommandText>ReportDisplayStringGet</CommandText>
</Query>
<Fields>
<Field Name="ValueXml">
<DataField>XML_F52E2B61-18A1-11d1-B105-00805F49916B</DataField>
</Field>
<Field Name="ValueName">
<Value>="R"</Value>
</Field>
</Fields>
</DataSet>
<DataSet Name="ManagementGroups">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT ManagementGroupGuid, ManagementGroupDefaultName FROM vManagementGroup</CommandText>
</Query>
<Fields>
<Field Name="ManagementGroupGuid">
<DataField>ManagementGroupGuid</DataField>
<rd:TypeName>System.Guid</rd:TypeName>
</Field>
<Field Name="ManagementGroupDefaultName">
<DataField>ManagementGroupDefaultName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
</DataSet>
<DataSet Name="DiskSpaceUsageTimeSeries">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<QueryParameters>
<QueryParameter Name="@UTCStartDate1">
<Value>=Parameters!UTCStartDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@StartDate1">
<Value>=Parameters!StartDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@UTCEndDate1">
<Value>=Parameters!UTCEndDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@ObjectList">
<Value>=Parameters!ObjectList.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@TotalMemoryPropertyID">
<Value>=Parameters!TotalMemoryPropertyID.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@VMHostTypeRowId">
<Value>=Parameters!VMHostTypeRowId.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@ForecastGranularity">
<Value>=Parameters!ForecastGranularity.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
</QueryParameters>
<CommandType>StoredProcedure</CommandType>
<CommandText>Microsoft_SystemCenter_VirtualMachineManager_Report_ForecastMachineGroupDataTimeSeries</CommandText>
</Query>
<Fields>
<Field Name="DiskSpaceUsageTimeSeries">
<DataField>DiskSpaceUsageTimeSeries</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
</Fields>
</DataSet>
<DataSet Name="DiskSpaceUsageForecasting">
<Query>
<DataSourceName>AnalysisServiceDS</DataSourceName>
<CommandText>=IIF(Code.GetHistoricalDataPointsCount() &gt; 1, Code.FormatAnalysisStoredProcCommandText(), Code.StaticAnalysisStoredProcCommandText())</CommandText>
</Query>
<Fields>
<Field Name="SeriesTime">
<DataField>SeriesTime</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
<Field Name="SeriesData">
<DataField>SeriesData</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
<Field Name="SeriesStandardDeviation">
<DataField>SeriesStandardDeviation</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
</Fields>
</DataSet>
<DataSet Name="DiskUsedAndTotalMBytes">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<QueryParameters>
<QueryParameter Name="@UTCStartDate1">
<Value>=Parameters!UTCStartDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@StartDate1">
<Value>=Parameters!StartDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@UTCEndDate1">
<Value>=Parameters!UTCEndDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@ObjectList">
<Value>=Parameters!ObjectList.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@TotalMemoryPropertyID">
<Value>=Parameters!TotalMemoryPropertyID.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@VMHostTypeRowId">
<Value>=Parameters!VMHostTypeRowId.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@ForecastGranularity">
<Value>=Parameters!ForecastGranularity.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
</QueryParameters>
<CommandType>StoredProcedure</CommandType>
<CommandText>Microsoft_SystemCenter_VirtualMachineManager_Report_ForecastMachineGroupHostResourceData</CommandText>
</Query>
<Fields>
<Field Name="DataPointDateTime">
<DataField>DataPointDateTime</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
<Field Name="UsedSpace">
<DataField>UsedSpace</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
<Field Name="TotalSpace">
<DataField>TotalSpace</DataField>
<rd:UserDefined>true</rd:UserDefined>
</Field>
</Fields>
</DataSet>
</DataSets>
<ReportParameters>
<ReportParameter Name="LT_Report">
<DataType>String</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>LT_Report_Query</DataSetName>
<ValueField>ValueXml</ValueField>
</DataSetReference>
</DefaultValue>
<Hidden>true</Hidden>
<ValidValues>
<DataSetReference>
<DataSetName>LT_Report_Query</DataSetName>
<ValueField>ValueXml</ValueField>
<LabelField>ValueName</LabelField>
</DataSetReference>
</ValidValues>
</ReportParameter>
<ReportParameter Name="ManagementGroupId">
<DataType>String</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>ManagementGroups</DataSetName>
<ValueField>ManagementGroupGuid</ValueField>
</DataSetReference>
</DefaultValue>
<AllowBlank>true</AllowBlank>
<Prompt>ManagementGroupId</Prompt>
<Hidden>true</Hidden>
<ValidValues>
<DataSetReference>
<DataSetName>ManagementGroups</DataSetName>
<ValueField>ManagementGroupGuid</ValueField>
<LabelField>ManagementGroupDefaultName</LabelField>
</DataSetReference>
</ValidValues>
<MultiValue>true</MultiValue>
</ReportParameter>
<ReportParameter Name="ForecastGranularity">
<DataType>Integer</DataType>
<Prompt>Forecast Granularity</Prompt>
</ReportParameter>
<ReportParameter Name="UTCStartDate1">
<DataType>DateTime</DataType>
<Prompt>[UTCStartDate]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate1">
<DataType>DateTime</DataType>
<Prompt>[StartDate]</Prompt>
</ReportParameter>
<ReportParameter Name="UTCEndDate1">
<DataType>DateTime</DataType>
<Prompt>[EndDate]</Prompt>
</ReportParameter>
<ReportParameter Name="ObjectList">
<DataType>String</DataType>
<Prompt>[Objects]</Prompt>
</ReportParameter>
<ReportParameter Name="TotalMemoryPropertyID">
<DataType>String</DataType>
<Prompt>TotalMemoryPropertyID</Prompt>
</ReportParameter>
<ReportParameter Name="VMHostTypeRowId">
<DataType>String</DataType>
<Prompt>VMHostTypeRowId</Prompt>
</ReportParameter>
<ReportParameter Name="DiskSpaceUsageTimeSeries">
<DataType>String</DataType>
<Nullable>true</Nullable>
<DefaultValue>
<DataSetReference>
<DataSetName>DiskSpaceUsageTimeSeries</DataSetName>
<ValueField>DiskSpaceUsageTimeSeries</ValueField>
</DataSetReference>
</DefaultValue>
<AllowBlank>true</AllowBlank>
<Prompt>DiskSpaceUsageTimeSeries</Prompt>
<Hidden>true</Hidden>
<ValidValues>
<DataSetReference>
<DataSetName>DiskSpaceUsageTimeSeries</DataSetName>
<ValueField>DiskSpaceUsageTimeSeries</ValueField>
<LabelField>DiskSpaceUsageTimeSeries</LabelField>
</DataSetReference>
</ValidValues>
</ReportParameter>
<ReportParameter Name="AnalysisServerName">
<DataType>String</DataType>
<Prompt>AnalysisServerName</Prompt>
</ReportParameter>
</ReportParameters>
<Code><Script>
Const LocTableStringQuery As String = "R/S[@N='{0}']/text()"
Const TimeSeriesParameterName As String = "DiskSpaceUsageTimeSeries"

Public Function FormatAnalysisStoredProcCommandText() As String
Dim TimeSeries As String() = Report.Parameters(TimeSeriesParameterName).Value.Split(";")
Dim DatePointCount As Integer = TimeSeries.Length
Dim ForecastPointCount As Integer = (DatePointCount - 1) * 0.3
Return "CALL AnalysisStoredProc.GetTimeSeriesForecast('" + Report.Parameters(TimeSeriesParameterName).Value + "', " + ForecastPointCount.ToString() + ");"
End Function

Public Function StaticAnalysisStoredProcCommandText() As String
Return "CALL AnalysisStoredProc.GetTimeSeriesForecast('01/1900, 0;02/1900,0', 1);"
End Function

Public Function GetHistoricalDataPointsCount() As Integer
If Report.Parameters(TimeSeriesParameterName).Value Is Nothing Then
Return 0
End If
Dim TimeSeries As String() = Report.Parameters(TimeSeriesParameterName).Value.Split(";")
Return TimeSeries.Length - 1
End Function

Dim LocTables As System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)
Dim ReportCulture As System.Globalization.CultureInfo

Protected Overrides Sub OnInit()
LocTables = New System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)()
ReportCulture = System.Globalization.CultureInfo.GetCultureInfo(Report.User("Language"))
End Sub

Public Function GetCallingManagementGroupId() As String
Return Microsoft.EnterpriseManagement.Reporting.ReportingConfiguration.ManagementGroupId
End Function

Public Function GetLocTable(ByVal Name As String) As Microsoft.EnterpriseManagement.Reporting.XmlStringTable
If (LocTables is Nothing) then
LocTables = New System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)()
End If
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 GetReportLocLanguageCode() As String
If (ReportCulture is Nothing) then
ReportCulture = System.Globalization.CultureInfo.GetCultureInfo(Report.User("Language"))
End If
Return ReportCulture.ThreeLetterWindowsLanguageName
End Function

Public Function BuildXmlValueList(ByVal ValueList() As Object) As String
Return Microsoft.EnterpriseManagement.Reporting.MultiValueParameter.ToXml("Data", "Value", ValueList)
End Function
</Script></Code>
<Language>=User!Language</Language>
<CodeModules>
<CodeModule>Microsoft.EnterpriseManagement.Reporting.Code, Version=6.0.0.0, Culture=neutral</CodeModule>
</CodeModules>
<rd:ReportUnitType>Inch</rd:ReportUnitType>
<rd:ReportID>f9cc7ee7-4514-48fb-a636-d339eeb28f08</rd:ReportID>
</Report>
</Definition>
<ReportStrings>
<ReportString ID="R.FCChart"/>
<ReportString ID="R.FC.YAxis"/>
<ReportString ID="R.FC.XAxis"/>
<ReportString ID="R.Legend.Limit"/>
<ReportString ID="R.Legend.TSData"/>
<ReportString ID="R.Legend.FCData"/>
<ReportString ID="R.FCTbl"/>
<ReportString ID="R.Date"/>
<ReportString ID="R.UsedSpace"/>
<ReportString ID="R.Deviation"/>
<ReportString ID="R.MBChart"/>
<ReportString ID="R.MBChart.YAxis"/>
<ReportString ID="R.MBChart.XAxis"/>
<ReportString ID="R.Legend.UsedMB"/>
<ReportString ID="R.Legend.TotalMB"/>
<ReportString ID="R.MBTbl"/>
<ReportString ID="R.MBTblUsedMB"/>
<ReportString ID="R.MBTblTotalSpace"/>
<ReportString ID="R.NoEnoughDataMsg"/>
<ReportString ID="R.ErrorMessage.Cause.3"/>
</ReportStrings>
</Report>