Microsoft.Virtualization.2016.Reports.PowerSavings.rdl (ReportResource)

Element properties:

TypeReportResource
File NameMicrosoft.Virtualization.2016.Reports.PowerSavings.rdl
AccessibilityInternal

Source Code:

<ReportResource ID="Microsoft.Virtualization.2016.Reports.PowerSavings.rdl" FileName="Microsoft.Virtualization.2016.Reports.PowerSavings.rdl" Accessibility="Internal" HasNullStream="false" MIMEType="application/octet-stream"/>

File Content: Microsoft.Virtualization.2016.Reports.PowerSavings.rdl

<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">

<Body><Script>
<ReportItems>
<Textbox Name="textboxReportTitle_tmp">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Title", "Power Savings Report")</Value>
<Style></Style>
<FontFamily>Verdana</FontFamily>
<FontSize>11pt</FontSize>
<FontWeight>Bold</FontWeight>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>1.13139in</Top>
<Left>0.04201in</Left>
<Height>0.25in</Height>
<Width>10.42778in</Width>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Color>LightGrey</Color>
<Width>0.25pt</Width>
</Border>
<BackgroundColor>WhiteSmoke</BackgroundColor>
<BackgroundImage>
<Source>External</Source>
<Value>/Microsoft Operations Manager Reporting/Images/9Inch_Banner.png</Value>
<BackgroundRepeat>Clip</BackgroundRepeat>
</BackgroundImage>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textboxDescription_tmp">
<CanGrow>true</CanGrow>
<ToggleImage>
<InitialState>true</InitialState>
</ToggleImage>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Description", "This report shows power savings acheived due to dynamic optimization through Virtual machine manager for the specified time period and a selected host group.")</Value>
<Style></Style>
<FontFamily>Verdana</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>1.73139in</Top>
<Left>0.04201in</Left>
<Height>0.375in</Height>
<Width>10.42778in</Width>
<ZIndex>1</ZIndex>
<Visibility>
<Hidden>true</Hidden>
<ToggleItem>textboxDescriptionHeading_tmp</ToggleItem>
</Visibility>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Color>LightGrey</Color>
</Border>
<BackgroundColor>GhostWhite</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textboxDescriptionHeading_tmp">
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Title.Description", "Description")</Value>
<Style></Style>
<FontFamily>Verdana</FontFamily>
<FontSize>8pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>1.45361in</Top>
<Left>0.0559in</Left>
<Height>0.25in</Height>
<Width>10.41389in</Width>
<ZIndex>2</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Color>LightGrey</Color>
</Border>
<BackgroundColor>WhiteSmoke</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Rectangle Name="rectangle2">
<ReportItems>
<Textbox Name="textbox1">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.GeneratedTimeLabel", "Report duration")</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.05875in</Top>
<Left>0.01389in</Left>
<Height>0.2in</Height>
<Width>1.82569in</Width>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox2">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>:</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.05875in</Top>
<Left>1.86389in</Left>
<Height>0.2in</Height>
<Width>0.1in</Width>
<ZIndex>1</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="objectsParameterTitle">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.SelectedHostGroup", "Selected host group")</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.31153in</Top>
<Left>0.00903in</Left>
<Height>0.2in</Height>
<Width>1.82569in</Width>
<ZIndex>2</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox11">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>:</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.31153in</Top>
<Left>1.86111in</Left>
<Height>0.2in</Height>
<Width>0.1in</Width>
<ZIndex>3</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox14ObjectsCount">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Parameters!SelectedHostGroup.Label</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.32264in</Top>
<Left>1.97778in</Left>
<Height>0.21389in</Height>
<Width>8.45in</Width>
<ZIndex>4</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="ReportGeneratedTime11">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<DataElementStyle>Element</DataElementStyle>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetReportStartDate() &amp; " - " &amp; Code.GetReportEndDate()</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.06666in</Top>
<Left>1.99028in</Left>
<Height>0.2in</Height>
<Width>8.4375in</Width>
<ZIndex>5</ZIndex>
<DataElementName>Created</DataElementName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<DataElementOutput>ContentsOnly</DataElementOutput>
<Top>2.13417in</Top>
<Left>0.04201in</Left>
<Height>0.56848in</Height>
<Width>10.42778in</Width>
<ZIndex>3</ZIndex>
<Style /></Style>
</Rectangle>
<Image Name="image1">
<Source>Embedded</Source>
<Value>banner_landscape</Value>
<Sizing>Fit</Sizing>
<Top>0.00777in</Top>
<Left>0.01701in</Left>
<Height>1.06806in</Height>
<Width>10.45278in</Width>
<ZIndex>4</ZIndex>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
</Style>
</Image>
<Textbox Name="textbox53">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<DataElementStyle>Element</DataElementStyle>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=CStr(CInt(Sum(Fields!MinsSaved.Value, "PowerSavingHours")/60))</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>18pt</FontSize>
<FontWeight>Bold</FontWeight>
<Format>#,0.00;(#,0.00)</Format>
<Color>Red</Color>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Left</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<Top>2.78251in</Top>
<Left>2.02117in</Left>
<Height>0.60042in</Height>
<Width>8.4375in</Width>
<ZIndex>5</ZIndex>
<DataElementName>Aggregation</DataElementName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="objectsParameterTitle2">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.TotalHours", "Total computer hours saved")</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>2.92153in</Top>
<Left>0.02465in</Left>
<Height>0.2in</Height>
<Width>1.82569in</Width>
<ZIndex>6</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox12">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>:</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>2.92153in</Top>
<Left>1.87673in</Left>
<Height>0.2in</Height>
<Width>0.1in</Width>
<ZIndex>7</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox5">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.Details", "Details")</Value>
<Style /></Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName>
<Top>3.53782in</Top>
<Left>0.02465in</Left>
<Height>0.25in</Height>
<Width>2.65625in</Width>
<ZIndex>8</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="TablixPowerSaving">
<TablixBody>
<TablixColumns>
<TablixColumn>
<Width>3.52651in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.98252in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.92002in</Width>
</TablixColumn>
<TablixColumn>
<Width>1.29167in</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.HostName", "Host Name")</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="Textbox8">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.FromTime", "From Time")</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="Textbox12">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.ToTime", "To Time")</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>
<TablixCell>
<CellContents>
<Textbox Name="Textbox30">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.MinsSaved", "Hours Saved")</Value>
<Style></Style>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox30</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="Textbox23">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!HostName.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value />
<Style /></Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox23</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>
<TablixCell>
<CellContents>
<Textbox Name="Textbox25">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!FromTime.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value />
<Style /></Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox24</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>
<TablixCell>
<CellContents>
<Textbox Name="Textbox28">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!ToTime.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value />
<Style /></Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox25</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>
<TablixCell>
<CellContents>
<Textbox Name="Textbox31">
<CanGrow>true</CanGrow>
<UserSort>
<SortExpression>=Fields!MinsSaved.Value</SortExpression>
</UserSort>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value />
<Style /></Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox31</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="HostName">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!HostName.Value</Value>
<Style></Style>
<Format>MM/dd/yyyy</Format>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<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="FromTime">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!FromTime.Value</Value>
<Style /></Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Left</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<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="ToTime">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!ToTime.Value</Value>
<Style /></Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Left</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<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="Textbox32">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=CStr(Floor(Fields!MinsSaved.Value/60)) &amp; ":" &amp; IIf(Fields!MinsSaved.Value mod 60 &lt; 10, "0", "") &amp; CStr(Fields!MinsSaved.Value mod 60)</Value>
<Style /></Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Left</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox32</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 />
<TablixMember />
</TablixMembers>
</TablixColumnHierarchy>
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
</TablixMember>
<TablixMember>
<Group Name="Details2" />
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
<FixedColumnHeaders>true</FixedColumnHeaders>
<NoRowsMessage>
=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 2016 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.")
</NoRowsMessage>
<DataSetName>PowerSavingHours</DataSetName>
<Top>3.83921in</Top>
<Left>0.0331in</Left>
<Height>0.75in</Height>
<Width>8.72072in</Width>
<ZIndex>9</ZIndex>
<Visibility>
<Hidden>true</Hidden>
<ToggleItem>Textbox5</ToggleItem>
</Visibility>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
</Style>
</Tablix>
<Textbox Name="objectsParameterTitle3">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Code.GetLocTable("LT_Report").GetString("R.TotalHours", "Total computer hours saved")</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>4.64477in</Top>
<Left>5.68139in</Left>
<Height>0.2in</Height>
<Width>1.63819in</Width>
<ZIndex>10</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox13">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>:</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>4.64477in</Top>
<Left>7.34597in</Left>
<Height>0.2in</Height>
<Width>0.1in</Width>
<ZIndex>11</ZIndex>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="textbox54">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<DataElementStyle>Element</DataElementStyle>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=CStr(Floor(Sum(Fields!MinsSaved.Value, "PowerSavingHours")/60)) &amp; ":" &amp; IIf(Sum(Fields!MinsSaved.Value, "PowerSavingHours") mod 60 &lt; 10, "0", "") &amp; CStr(Sum(Fields!MinsSaved.Value, "PowerSavingHours") mod 60)</Value>
<Style></Style>
<FontFamily>Tahoma</FontFamily>
<FontSize>9pt</FontSize>
<Format>#,0.00;(#,0.00)</Format>
</Style>
</TextRun>
</TextRuns>
<Style></Style>
<TextAlign>Left</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<Top>4.64477in</Top>
<Left>7.47791in</Left>
<Height>0.2in</Height>
<Width>1.28401in</Width>
<ZIndex>12</ZIndex>
<DataElementName>Aggregation</DataElementName>
<DataElementOutput>Output</DataElementOutput>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<Height>4.88675in</Height>
<Style /></Style>
</Script></Body>
<Width>10.76541in</Width>
<Page>
<PageFooter>
<Height>0.31249in</Height>
<PrintOnFirstPage>true</PrintOnFirstPage>
<PrintOnLastPage>true</PrintOnLastPage>
<ReportItems>
<Textbox Name="textbox1DateTime_tmp">
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=String.Format(Code.GetLocTable("LT_Report").GetString("R.FooterMessage", "All dates and times shown in {0}"), Parameters!TimeZoneName.Value)</Value>
<Style></Style>
<FontFamily>Verdana</FontFamily>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style /></Style>
</Paragraph>
</Paragraphs>
<Top>0.01389in</Top>
<Left>0.0559in</Left>
<Height>0.25in</Height>
<Width>7.40625in</Width>
<DataElementOutput>NoOutput</DataElementOutput>
<Style></Style>
<Border>
<Color>LightGrey</Color>
</Border>
<TopBorder>
<Style></Style>None</Style>
</TopBorder>
<BottomBorder>
<Style></Style>None</Style>
</BottomBorder>
<LeftBorder>
<Style></Style>None</Style>
</LeftBorder>
<BackgroundColor>WhiteSmoke</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</ReportItems>
<Style></Style>
<Border>
<Style></Style>None</Style>
</Border>
</Style>
</PageFooter>
<LeftMargin>1in</LeftMargin>
<RightMargin>1in</RightMargin>
<TopMargin>1in</TopMargin>
<BottomMargin>1in</BottomMargin>
<Style /></Style>
</Page>
<AutoRefresh>0</AutoRefresh>
<DataSources>
<DataSource Name="DataWarehouseMain">
<DataSourceReference>OpsMgrDataWare</DataSourceReference>
<rd:SecurityType>None</rd:SecurityType>
<rd:DataSourceID>dc5999a4-1606-4b3d-87df-703f38a16afa</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.2016.Reports</Value>
</QueryParameter>
<QueryParameter Name="@ReportSystemName">
<Value>Microsoft.SystemCenter.VirtualMachineManager.2016.Report.PowerSavings</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="HostGroups">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>SELECT vManagedEntity.DisplayName AS HostGroupName,
vManagedEntity.ManagedEntityRowId AS HostGroupRowId FROM
vManagedEntity
INNER JOIN vManagedEntityType
ON vManagedEntityType.ManagedEntityTypeRowId = vManagedEntity.ManagedEntityTypeRowId
WHERE vManagedEntityType.ManagedEntityTypeRowId
IN
(
SELECT
vMET.ManagedEntityTypeRowId
FROM vManagedEntityType AS vMET
INNER JOIN vManagementPack AS vMP
ON vMP.ManagementPackRowId = vMET.ManagementPackRowId
WHERE
(vMET.ManagedEntityTypeSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.HostGroup')
AND (vMP.ManagementPackSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.Discovery')
AND (vMP.PublicKeyToken = '31bf3856ad364e35')
)
</CommandText>
</Query>
<Fields>
<Field Name="HostGroupName">
<DataField>HostGroupName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="HostGroupRowId">
<DataField>HostGroupRowId</DataField>
<rd:TypeName>System.Int32</rd:TypeName>
</Field>
</Fields>
</DataSet>
<DataSet Name="VMHostTypeRowId">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<CommandText>
SELECT vMET.ManagedEntityTypeRowId
FROM vManagedEntityType AS vMET INNER JOIN
vManagementPack AS vMP ON vMP.ManagementPackRowId = vMET.ManagementPackRowId
WHERE (vMET.ManagedEntityTypeSystemName IN (N'Microsoft.SystemCenter.VirtualMachineManager.2016.HyperVHost',
N'Microsoft.SystemCenter.VirtualMachineManager.2016.ESXHost', N'Microsoft.SystemCenter.VirtualMachineManager.2016.XenServerHost')) AND
(vMP.ManagementPackSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.Discovery') AND
(vMP.PublicKeyToken = '31bf3856ad364e35')
</CommandText>
</Query>
<Fields>
<Field Name="ManagedEntityTypeRowId">
<DataField>ManagedEntityTypeRowId</DataField>
<rd:TypeName>System.Int32</rd:TypeName>
</Field>
</Fields>
</DataSet>
<DataSet Name="PowerSavingHours">
<Query>
<DataSourceName>DataWarehouseMain</DataSourceName>
<QueryParameters>
<QueryParameter Name="@HostGroupId">
<Value>=Parameters!SelectedHostGroup.Value</Value>
</QueryParameter>
<QueryParameter Name="@UTCStartDate1">
<Value>=Parameters!UTCStartDate1.Value</Value>
</QueryParameter>
<QueryParameter Name="@StartDate1">
<Value>=Parameters!StartDate1.Value</Value>
<rd:UserDefined>true</rd:UserDefined>
</QueryParameter>
<QueryParameter Name="@UTCEndDate1">
<Value>=Parameters!UTCEndDate1.Value</Value>
</QueryParameter>
</QueryParameters>
<CommandText>
CREATE TABLE #TempPowerSavingHours
(
HostName NVARCHAR(MAX),
FromTime DATETIME,
ToTime DATETIME,
MinsSaved INT
)


---------------------------------------------------------------
-- calculate the time difference in UTC and Current Time
---------------------------------------------------------------
DECLARE @DateDiff AS INT;
SET @DateDiff = DATEDIFF(MINUTE , @UTCStartDate1, @StartDate1);

Declare @ObjectList xml
Set @ObjectList = '&lt;Data&gt;&lt;Objects&gt;&lt;Object Use="Containment"&gt;' + CONVERT(nvarchar, @HostGroupId) + '&lt;/Object&gt;&lt;/Objects&gt;&lt;/Data&gt;'

CREATE TABLE #TempReportObjectList
(
ManagedEntityRowid INT
)

INSERT INTO #TempReportObjectList
EXEC [dbo].[Microsoft_SystemCenter_DataWarehouse_Report_Library_ReportObjectListParse]
@ObjectList = @ObjectList,
@StartDate = @UTCStartDate1,
@EndDate = @UTCEndDate1


-- Variables for previous row
DECLARE @PreHostName NVARCHAR(MAX)
DECLARE @PreDataPointTime DATETIME
DECLARE @PrePowerState INT

-- Variables for Current row
DECLARE @CurHostName NVARCHAR(MAX)
DECLARE @CurDataPointTime DATETIME
DECLARE @CurPowerState INT

DECLARE @FromTime DATETIME
DECLARE @ToTime DATETIME

DECLARE @SavedMins INT
SET @SavedMins = 0

DECLARE @MyCursor CURSOR

SET @MyCursor = CURSOR FAST_FORWARD
FOR
SELECT HostName, DataPointTime,PowerState
FROM
(
SELECT
vManagedEntity.ManagedEntityTypeRowId AS ManagedEntityTypeRowId,
MAX(vManagedEntity.ManagedEntityRowId) AS ManagedEntityRowId,
vPerformanceRuleInstance.InstanceName AS HostName,
Perf.vPerfRaw.DateTime AS DataPointTime,
Perf.vPerfRaw.SampleValue AS PowerState
FROM Perf.vPerfRaw
INNER JOIN vPerformanceRuleInstance
ON vPerformanceRuleInstance.PerformanceRuleInstanceRowId = vPerfRaw.PerformanceRuleInstanceRowId
INNER JOIN vRule
ON vRule.RuleRowId = vPerformanceRuleInstance.RuleRowId
INNER JOIN
(
SELECT vManagedEntity.DisplayName AS VMMServerName,
vManagedEntity.ManagedEntityRowId AS VMMServerRowId FROM
vManagedEntity
INNER JOIN vManagedEntityType
ON vManagedEntityType.ManagedEntityTypeRowId = vManagedEntity.ManagedEntityTypeRowId
WHERE vManagedEntityType.ManagedEntityTypeRowId =
(
SELECT
vMET.ManagedEntityTypeRowId AS ManagedEntityTypeRowId
FROM vManagedEntityType AS vMET
INNER JOIN vManagementPack AS vMP
ON vMP.ManagementPackRowId = vMET.ManagementPackRowId
WHERE
(vMET.ManagedEntityTypeSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.VMMManagementServer')
AND (vMP.ManagementPackSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.Discovery')
AND (vMP.PublicKeyToken = '31bf3856ad364e35')
)
)AS VMMServer
ON VMMServer.VMMServerRowId = Perf.vPerfRaw.ManagedEntityRowId
INNER JOIN vManagedEntity
ON vManagedEntity.DisplayName = vPerformanceRuleInstance.InstanceName
INNER JOIN #TempReportObjectList
ON #TempReportObjectList.ManagedEntityRowid = vManagedEntity.ManagedEntityRowId
WHERE vRule.RuleSystemName = 'Microsoft.SystemCenter.VirtualMachineManager.2016.VMHostPowerStateCollections'
AND
(
vManagedEntity.ManagedEntityTypeRowId IN
(
SELECT
vMET.ManagedEntityTypeRowId
FROM vManagedEntityType AS vMET
INNER JOIN vManagementPack AS vMP
ON vMP.ManagementPackRowId = vMET.ManagementPackRowId
WHERE
(
vMET.ManagedEntityTypeSystemName IN
(
N'Microsoft.SystemCenter.VirtualMachineManager.2016.HyperVHost',
N'Microsoft.SystemCenter.VirtualMachineManager.2016.ESXHost',
N'Microsoft.SystemCenter.VirtualMachineManager.2016.XenServerHost'
)
)
AND (vMP.ManagementPackSystemName = N'Microsoft.SystemCenter.VirtualMachineManager.2016.Discovery')
AND (vMP.PublicKeyToken = '31bf3856ad364e35')
)
)
AND (Perf.vPerfRaw.DateTime &gt;= @UTCStartDate1)
AND (Perf.vPerfRaw.DateTime &lt;= @UTCEndDate1)
GROUP BY vManagedEntity.ManagedEntityTypeRowId, vPerformanceRuleInstance.InstanceName, Perf.vPerfRaw.DateTime, Perf.vPerfRaw.SampleValue

) AS PowerStateTable ORDER BY HostName

OPEN @MyCursor

-- Perform the first fetch.
FETCH NEXT FROM @MyCursor
INTO @CurHostName,@CurDataPointTime , @CurPowerState

SET @PreHostName = @CurHostName
SET @PrePowerState = @CurPowerState
SET @PreDataPointTime = @CurDataPointTime

-- Only when Power State is 0 (PowerOff), then note down the FromTime when Power off start
IF @CurPowerState = 0
SET @FromTime = @CurDataPointTime


-- Check @@FETCH_STATUS to see if there are any more rows to fetch.
WHILE @@FETCH_STATUS = 0
BEGIN
-- Get the next row
FETCH NEXT FROM @MyCursor
INTO @CurHostName,@CurDataPointTime, @CurPowerState

-- check if new rows should be generated
IF @CurHostName = @PreHostName
BEGIN
IF @PrePowerState &lt;&gt; @CurPowerState
IF @PrePowerState = 0 AND @CurPowerState = 1
BEGIN
SET @ToTime = @PreDataPointTime
SET @SavedMins = DATEDIFF(MINUTE, @FromTime, @ToTime)
INSERT INTO #TempPowerSavingHours VALUES (@PreHostName, @FromTime, @ToTime, @SavedMins)
END
ELSE
-- The collection rule records a sample at the end of its time interval, so FromTime should be previous datapoint's time
SET @FromTime = @PreDataPointTime
END
-- means two different hosts
ELSE
BEGIN
-- Check the PowerState of previous row
IF @PrePowerState = 0 -- Generate one new row for the previous host
BEGIN
SET @ToTime = @PreDataPointTime
SET @SavedMins = DATEDIFF(MINUTE, @FromTime, @ToTime)
INSERT INTO #TempPowerSavingHours VALUES (@PreHostName, @FromTime, @ToTime, @SavedMins)
END
IF @CurPowerState = 0
SET @FromTime = @PreDataPointTime
END

-- Set Previous variables
SET @PreHostName = @CurHostName
SET @PrePowerState = @CurPowerState
SET @PreDataPointTime = @CurDataPointTime
END

-- If the host is powered-off, there is no transition from Powerstate.
-- We need to account for that capture the total saved time.
IF @PrePowerState = 0
BEGIN
SET @SavedMins = DATEDIFF(MINUTE, @FromTime, @PreDataPointTime)
IF @SavedMins &gt; 0
INSERT INTO #TempPowerSavingHours VALUES (@PreHostName, @FromTime, @PreDataPointTime, @SavedMins)
END

CLOSE @MyCursor
DEALLOCATE @MyCursor

SELECT HostName, DATEADD(Minute, @DateDiff,FromTime) AS FromTime, DATEADD(Minute, @DateDiff, ToTime) AS ToTime, MinsSaved FROM #TempPowerSavingHours WHERE MinsSaved &gt; 0

DROP TABLE #TempPowerSavingHours

DROP TABLE #TempReportObjectList
</CommandText>
</Query>
<Fields>
<Field Name="HostName">
<DataField>HostName</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FromTime">
<DataField>FromTime</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="ToTime">
<DataField>ToTime</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="MinsSaved">
<DataField>MinsSaved</DataField>
<rd:TypeName>System.Int32</rd:TypeName>
</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="StartDate_BaseType">
<DataType>String</DataType>
<DefaultValue>
<Values>
<Value>FirstDayMonth</Value>
</Values>
</DefaultValue>
<Prompt>[Start Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>From</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetType">
<DataType>String</DataType>
<Prompt>[Start Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="StartDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[Start Date Offset]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_BaseType">
<DataType>String</DataType>
<Prompt>[End Date Base]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_BaseValue">
<DataType>DateTime</DataType>
<Prompt>To</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetType">
<DataType>String</DataType>
<Prompt>[End Date Offset Type]</Prompt>
</ReportParameter>
<ReportParameter Name="EndDate_OffsetValue">
<DataType>Integer</DataType>
<AllowBlank>true</AllowBlank>
<Prompt>[End Date Offset]</Prompt>
</ReportParameter>
<ReportParameter Name="TimeZone">
<DataType>String</DataType>
<Prompt>Time Zone</Prompt>
</ReportParameter>
<ReportParameter Name="TimeZoneName">
<DataType>String</DataType>
<Nullable>true</Nullable>
<AllowBlank>true</AllowBlank>
<Prompt>Time Zone Name</Prompt>
</ReportParameter>
<ReportParameter Name="VMHostTypeRowId">
<DataType>Integer</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>VMHostTypeRowId</DataSetName>
<ValueField>ManagedEntityTypeRowId</ValueField>
</DataSetReference>
</DefaultValue>
<Prompt>VMHostTypeRowId</Prompt>
<Hidden>true</Hidden>
<ValidValues>
<DataSetReference>
<DataSetName>VMHostTypeRowId</DataSetName>
<ValueField>ManagedEntityTypeRowId</ValueField>
<LabelField>ManagedEntityTypeRowId</LabelField>
</DataSetReference>
</ValidValues>
<MultiValue>true</MultiValue>
</ReportParameter>
<ReportParameter Name="UTCStartDate1">
<DataType>DateTime</DataType>
<DefaultValue>
<Values>
<Value>=Code.ToDbDate(Code.GetReportStartDate())</Value>
</Values>
</DefaultValue>
<Hidden>true</Hidden>
</ReportParameter>
<ReportParameter Name="StartDate1">
<DataType>DateTime</DataType>
<DefaultValue>
<Values>
<Value>=Code.GetReportStartDate()</Value>
</Values>
</DefaultValue>
<Prompt>StartDate1</Prompt>
<Hidden>true</Hidden>
<ValidValues>
<ParameterValues>
<ParameterValue>
<Value>=Code.GetReportStartDate()</Value>
<Label>ReportStartDate</Label>
</ParameterValue>
</ParameterValues>
</ValidValues>
</ReportParameter>
<ReportParameter Name="UTCEndDate1">
<DataType>DateTime</DataType>
<DefaultValue>
<Values>
<Value>=Code.ToDbDate(Code.GetReportEndDate())</Value>
</Values>
</DefaultValue>
<AllowBlank>true</AllowBlank>
</ReportParameter>
<ReportParameter Name="SelectedHostGroup">
<DataType>Integer</DataType>
<DefaultValue>
<DataSetReference>
<DataSetName>HostGroups</DataSetName>
<ValueField>HostGroupRowId</ValueField>
</DataSetReference>
</DefaultValue>
<Prompt>Selected host group</Prompt>
<ValidValues>
<DataSetReference>
<DataSetName>HostGroups</DataSetName>
<ValueField>HostGroupRowId</ValueField>
<LabelField>HostGroupName</LabelField>
</DataSetReference>
</ValidValues>
</ReportParameter>
</ReportParameters>
<Code><Script>
Const LocTableStringQuery As String = "R/S[@N='{0}']/text()"

Const TimeZoneParameterName As String = "TimeZone"
Const SD_BaseTypeParameterName As String = "StartDate_BaseType"
Const SD_BaseValueParameterName As String = "StartDate_BaseValue"
Const SD_OffsetTypeParameterName As String = "StartDate_OffsetType"
Const SD_OffsetValueParameterName As String = "StartDate_OffsetValue"
Const ED_BaseTypeParameterName As String = "EndDate_BaseType"
Const ED_BaseValueParameterName As String = "EndDate_BaseValue"
Const ED_OffsetTypeParameterName As String = "EndDate_OffsetType"
Const ED_OffsetValueParameterName As String = "EndDate_OffsetValue"
Const IsRelativeTimeSupported As Boolean = False
Const TimeTypeParameterName As String = "TimeType"
Const TimeWeekMapParameterName As String = "TimeWeekMap"

Dim LocTables As System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)
Dim ReportTimeZone As Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation
Dim ReportStartDate As DateTime
Dim ReportEndDate As DateTime
Dim ReportTime As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime
Dim ReportCulture As System.Globalization.CultureInfo
Dim ParameterProcessor As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor

Protected Overrides Sub OnInit()
LocTables = new System.Collections.Generic.Dictionary(Of String, Microsoft.EnterpriseManagement.Reporting.XmlStringTable)()
ReportTimeZone = Nothing
ReportStartDate = DateTime.MinValue
ReportEndDate = DateTime.MinValue
ReportTime = Nothing
ReportCulture = System.Globalization.CultureInfo.GetCultureInfo(Report.User("Language"))
ParameterProcessor = New Microsoft.EnterpriseManagement.Reporting.ParameterProcessor(ReportCulture)
End Sub

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

Public Function GetReportLocLanguageCode() As String
Return ReportCulture.ThreeLetterWindowsLanguageName
End Function

Public Function GetLocTable(Name As String) As Microsoft.EnterpriseManagement.Reporting.XmlStringTable
Dim LocTable As Microsoft.EnterpriseManagement.Reporting.XmlStringTable

If Not LocTables.TryGetValue(Name, LocTable) Then
LocTable = New Microsoft.EnterpriseManagement.Reporting.XmlStringTable(LocTableStringQuery, Report.Parameters(Name).Value)
LocTables.Add(Name, LocTable)
End If

Return LocTable
End Function

Public Function GetReportTimeZone() As Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation
If IsNothing(ReportTimeZone) Then ReportTimeZone = Microsoft.EnterpriseManagement.Reporting.TimeZoneCoreInformation.FromValueString(Report.Parameters(TimeZoneParameterName).Value)
Return ReportTimeZone
End Function

Public Function ToDbDate(ByVal DateValue As DateTime) As DateTime
return GetReportTimeZone.ToUniversalTime(DateValue)
End Function

Public Function ToReportDate(ByVal DateValue As DateTime) As DateTime
return GetReportTimeZone.ToLocalTime(DateValue)
End Function

Public Function GetReportStartDate() As DateTime
If (ReportStartDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_BaseTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(SD_OffsetTypeParameterName).Value, Report.Parameters(SD_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
Else
ReportStartDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(SD_BaseTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(SD_OffsetTypeParameterName).Value, Report.Parameters(SD_OffsetValueParameterName).Value)
End if
End If
return ReportStartDate
End Function

Public Function GetReportEndDate() As DateTime
If (ReportEndDate = DateTime.MinValue) Then
If (IsRelativeTimeSupported) Then
ReportEndDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(ED_BaseTypeParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, Report.Parameters(ED_OffsetTypeParameterName).Value, Report.Parameters(ED_OffsetValueParameterName).Value, Report.Parameters(TimeTypeParameterName).Value)
If IsBusinessHours(GetReportTimeFilter()) Then ReportEndDate = ReportCulture.Calendar.AddDays(ReportEndDate, 1)
Else
ReportEndDate = ParameterProcessor.GetDateTime(ToReportDate(DateTime.UtcNow), Report.Parameters(ED_BaseTypeParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, Report.Parameters(ED_OffsetTypeParameterName).Value, Report.Parameters(ED_OffsetValueParameterName).Value)
End if
End If
return ReportEndDate
End Function

Public Function GetReportTimeFilter() As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime
If IsNothing(ReportTime) Then ReportTime = New Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime(Report.Parameters(TimeTypeParameterName).Value, Report.Parameters(SD_BaseValueParameterName).Value, Report.Parameters(ED_BaseValueParameterName).Value, CStr(Join(Report.Parameters(TimeWeekMapParameterName).Value, ",")))
return ReportTime
End Function

Public Function IsBusinessHours(Value As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime) As Boolean
return (Not IsNothing(Value)) And (Value.TimeType = Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTimeType.Business)
End Function

Public Function FormatDateTime(Format As String, Value As DateTime) As String
return Value.ToString(Format, ReportCulture)
End Function

Public Function FormatNumber(fieldValue, formatString) as String
if (fieldValue is Nothing)
FormatNumber = "Not Available"
else
FormatNumber = Format(fieldValue,formatString)
end if
End Function


Public Function FormatString(Format As String, ParamArray Values() as Object) As String
return String.Format(ReportCulture, Format, Values)
End Function

Public Function NullFormatString(Format As String, Value as String) As String
return IIF(String.IsNullOrEmpty(Value), String.Empty, String.Format(ReportCulture, Format, Value))
End Function

Public Function FormatBusinessHours(Format As String, Value As Microsoft.EnterpriseManagement.Reporting.ParameterProcessor.RelativeTime) As String
Dim result As String

If IsBusinessHours(Value) Then

Dim firstDay As DayOfWeek
Dim days As System.Collections.Generic.List(Of String)

firstDay = ReportCulture.DateTimeFormat.FirstDayOfWeek
days = new System.Collections.Generic.List(Of String)()

For loopDay As DayOfWeek = DayOfWeek.Sunday To DayOfWeek.Saturday
Dim day As DayOfWeek
day = CType((CInt(loopDay) + CInt(firstDay)) Mod 7, DayOfWeek)

If value.WeekMap.Contains(day) Then days.Add(ReportCulture.DateTimeFormat.GetAbbreviatedDayName(day))
Next loopDay

result = FormatString(Format, DateTime.Today.Add(Value.StartTime).ToString(ReportCulture.DateTimeFormat.ShortTimePattern), DateTime.Today.Add(Value.EndTime).ToString(ReportCulture.DateTimeFormat.ShortTimePattern), String.Join(",", days.ToArray()))

Else
result = String.Empty
End if

return result
End Function

Public Function BuildXmlValueList(ByVal ValueList() As Object) As String
Return Microsoft.EnterpriseManagement.Reporting.MultiValueParameter.ToXml("Data", "Value", ValueList)
End Function
</Script></Code>
<EmbeddedImages>
<EmbeddedImage Name="banner_landscape">
<MIMEType>image/png</MIMEType>
<ImageData>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
BP5zBKCg08X9P/fYKDAJkAAJkAAJkAAJkMB/lYCfr680rFdbypYuqS7robL57+1y4OBhOX/hkpy/eEmuBF1T1+88xo09SH8PVOvyNf15RX+i+Phk1iPW9FztzFmNtT2jld07dxjlHG7bndRdnYUESCBlBNw6den6foFCRVJ2F2uTAAmQAAmQAAmQAAmQAAmkmgBc2osWLqQu65FySePRoYhfuHRZ43ev67noERrje0kV8SjJoopurpw5JWvWrOYYNpSz6iqfTV2acURbRioReuzbwBef0yz0p6Rnrz72M80zkoyUhQQyMoHTJ4/bXNxr1kn5eXAZeWCUjQRIgARIgARIgARIgAT+SwTgyh6gSvqNG8Hq/n5DY7I9JJMmvIKbO5LLubm76jFPXsbqDkUdCr5lQV+1dJFJhlaxclX5c/UKeWPIR/KXJg47efyIDHj9nXTFgORxo0Z+YuK8F86fI/v27DZZxmfNX6qbCrazy1lIgASSR2DTX2uooCcPFWuRAAmQAAmQAAmQAAmQwJ0hAPf265oM7Zoq6qFhobbjqfTsZijmMXq8Wt7cedTVPVMcYf76c7WULf+grF25VC5cOG+OmqpRu560bNMuXYVGMrb6tSrb+yhbvoJ89/1kKUgP3XTlzsbvTQJU0O/N58pRkQAJkAAJkAAJkAAJ3GcE1q1ZKfUaNJaxoz6TCpWq6fFrIvv37pLefQekKwlkVZ83d5bAvR1Kef2GjTNk4rp0hcDGSSCNCNxU0GvXT6Mm2QwJkAAJkAAJkAAJkAAJkAAJkAAJkEBKCWzasFaYJC6l1FifBEiABEiABEiABEiABEiABEiABNKYwOlTx3nMWhozZXMkQAIkQAIkQAIkQAIkQAIkQAIkkCoCxoKev2DhVN3Mm0iABEiABEiABEiABEiABEiABEiABG6fwJlTJ2hBv32MbIEESIAESIAESIAESIAESIAESIAEbp+A6+03wRZIgARIgARIgARIgARIgARI
gARIgARul4DNxb0AXdxvFyTvJwESIAESIAESIAESIAESIAESIIHUEjhzmi7uqWXH+0iABEiABEiABEiABEiABEiABEggTQnQxT1NcbIxEiABEiABEiABEiABEiABEiABEkgdAePinq9AodTdzbtIgARIgARIgARIgARIgARIgARIgARum8DZ0yeZxf22KbIBEiABEiABEiABEiABEiABEiABEkgDAnRxTwOIbIIESIAESIAESIAESIAESIAESIAEbpeAzcU9P13cbxck7ycBEiABEiABEiABEiABEiABEiCB1BI4e4Yu7qllx/tIgARIgARIgARIgARIgARIgARIIE0JuPw8fVbMutXL07RRNkYCJEACJEACJEACJEACJEACJEACJJB8AvUaNhWjoCf/FtYkARIgARIgARIgARIgARIgARIgARJIDwL/B0fRBrjku4ShAAAAAElFTkSuQmCC</ImageData>
</EmbeddedImage>
</EmbeddedImages>
<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>82d0143e-b033-4c1d-897e-9520db271a11</rd:ReportID>
</Report>