none
What ActiveX control, DLLs, whatever, are required for the reportviewer control? RRS feed

  • Question

  • We've written a WPF app that uses Microsoft's ReportViewer control. This has worked fine, until we get to the point of installing it onto a user's machine. If the user isn't in the machine's local Administrators group, it cannot be installed. It always complains about the ReportViewer not being installed and requiring administrative rights to get it installed. And this is a major showstopper.

    We've had a meeting about this today and hit upon the idea of pushing out the necessary control(s) via GPO. So the question is, what is/are the necessary GPO's??

    Currently, we're using Visual Studio 2015. This is a WPF app so the control is for Windows, however I think it would be good to ask for the Web version as well.


    Rod

    Tuesday, June 20, 2017 9:30 PM

Answers

  • I think I know what is going on, the reference to the Microsoft.ReportViewer.Design dll is most likely causing the issue. It is only used for displaying the design surface for the control in Visual Studio and it does have references to Visual Studio dlls. I don't think you need to reference it explicitly to get it to work in Visual Studio and I know for sure you don't need it for you runtime application. Can you try removing the Design dll reference and also remove it from you ClickOnce publish settings and see if that solves the issue. Thanks!
    • Marked as answer by Rod at Work Thursday, July 13, 2017 8:40 PM
    Wednesday, July 12, 2017 7:31 PM
    Moderator

All replies

  • How are you installing the ReportViewer control to the user's machine, are you using the ReportViewer redistributable (note this also has a dependency on the SQL Server Types redist)? Prior to VS2017 that was the primary method for installing the ReportViewer, this method also places the controls in the GAC. If the redist is what is causing the issue you can try to latest Nuget packages which is the new/current way we will be shipping the ReportViewer control. Using the nuget package will allow you to drop the ReportViewer assembies as part of your setup and they don't need to be installed in the GAC. One last thing the ActiveX control only applies to the ASP.NET ReportViewer and it also only applies to versions earlier than VS2017/nuget, in the latest versions there is no longer any ActiveX.
    Friday, July 7, 2017 5:42 PM
    Moderator
  • Thank you Matthew for your response.

    It has been a few weeks now since I worked on it. I'm pretty sure that I tried adding the ReportViewer control through the NuGet Package Manager console. I was careful to choose version 14 when I did that. When trying to install it on a Surface 2 running Windows 10 Enterprise, it still insists that I must install it into the GAC.


    Rod

    Monday, July 10, 2017 2:43 PM
  • Couple questions

    1. You mention that this is a WPF app, how are you deploying it XCopy, Window Store, MSI or something else?
    2. Are you rendering reports using Local or Server mode?
    3. Can you provide the exact error that your getting? I don't think I've ever seen and error that mentions you have to GAC a control, I'm curious how this is manifesting.

    Thanks!

    Tuesday, July 11, 2017 11:50 PM
    Moderator
  • Hi Matthew,

    1. We're using ClickOnce deployment.
    2. I believe you'd say we're trying to use local mode. We've got the ReportViewer control hosted within a WindowsFormsHost control in the WPF app.
    3. Here's a screen capture of the error:


    Rod

    Wednesday, July 12, 2017 2:59 PM
  • Interesting, I don't think that error has anything to do with the ReportViewer that dll is a VSSDK dll. I searched through our source for the control and I don't see any references to it. Can you take a look at the csproj files for your app and see if anything is referencing it? Thanks!
    Wednesday, July 12, 2017 5:20 PM
    Moderator
  • That is interesting. Per your request I've got the .csproj file open. I don't see the Microsoft.VisualStudio.Diagnostics.Assert assembly mentioned anywhere in it. But your question makes me wonder if my problem might somehow be in the .csproj. I know this is length, but here's the entire .csproj file:

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
      <PropertyGroup>
        <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
        <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
        <ProjectGuid>{03F9B100-2DFE-4550-891A-AD6CE5A0E429}</ProjectGuid>
        <OutputType>WinExe</OutputType>
        <RootNamespace>TryNewReportViewer2017</RootNamespace>
        <AssemblyName>TryNewReportViewer2017</AssemblyName>
        <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
        <FileAlignment>512</FileAlignment>
        <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
        <WarningLevel>4</WarningLevel>
        <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
        <IsWebBootstrapper>false</IsWebBootstrapper>
        <SccProjectName>SAK</SccProjectName>
        <SccLocalPath>SAK</SccLocalPath>
        <SccAuxPath>SAK</SccAuxPath>
        <SccProvider>SAK</SccProvider>
        <PublishUrl>D:\Shares\TryNewReportViewer\</PublishUrl>
        <Install>true</Install>
        <InstallFrom>Unc</InstallFrom>
        <UpdateEnabled>true</UpdateEnabled>
        <UpdateMode>Foreground</UpdateMode>
        <UpdateInterval>7</UpdateInterval>
        <UpdateIntervalUnits>Days</UpdateIntervalUnits>
        <UpdatePeriodically>false</UpdatePeriodically>
        <UpdateRequired>false</UpdateRequired>
        <MapFileExtensions>true</MapFileExtensions>
        <InstallUrl>\\mymachine\TryNewReportViewer\</InstallUrl>
        <ApplicationRevision>14</ApplicationRevision>
        <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
        <UseApplicationTrust>false</UseApplicationTrust>
        <PublishWizardCompleted>true</PublishWizardCompleted>
        <BootstrapperEnabled>true</BootstrapperEnabled>
      </PropertyGroup>
      <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
        <PlatformTarget>AnyCPU</PlatformTarget>
        <DebugSymbols>true</DebugSymbols>
        <DebugType>full</DebugType>
        <Optimize>false</Optimize>
        <OutputPath>bin\Debug\</OutputPath>
        <DefineConstants>DEBUG;TRACE</DefineConstants>
        <ErrorReport>prompt</ErrorReport>
        <WarningLevel>4</WarningLevel>
      </PropertyGroup>
      <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
        <PlatformTarget>AnyCPU</PlatformTarget>
        <DebugType>pdbonly</DebugType>
        <Optimize>true</Optimize>
        <OutputPath>bin\Release\</OutputPath>
        <DefineConstants>TRACE</DefineConstants>
        <ErrorReport>prompt</ErrorReport>
        <WarningLevel>4</WarningLevel>
      </PropertyGroup>
      <PropertyGroup>
        <ManifestCertificateThumbprint>A463A39FFDB708E5F8A2B9CD2ED20474D6812655</ManifestCertificateThumbprint>
      </PropertyGroup>
      <PropertyGroup>
        <ManifestKeyFile>TryNewReportViewer2017_TemporaryKey.pfx</ManifestKeyFile>
      </PropertyGroup>
      <PropertyGroup>
        <GenerateManifests>true</GenerateManifests>
      </PropertyGroup>
      <PropertyGroup>
        <SignManifests>false</SignManifests>
      </PropertyGroup>
      <ItemGroup>
        <Reference Include="Microsoft.ReportViewer.Common, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.Common.dll</HintPath>
        </Reference>
        <Reference Include="Microsoft.ReportViewer.DataVisualization, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.DataVisualization.dll</HintPath>
        </Reference>
        <Reference Include="Microsoft.ReportViewer.Design, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.Design.dll</HintPath>
        </Reference>
        <Reference Include="Microsoft.ReportViewer.ProcessingObjectModel, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.ProcessingObjectModel.dll</HintPath>
        </Reference>
        <Reference Include="Microsoft.ReportViewer.WinForms, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80\lib\net40\Microsoft.ReportViewer.WinForms.dll</HintPath>
        </Reference>
        <Reference Include="Microsoft.SqlServer.Types, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
          <HintPath>..\packages\Microsoft.SqlServer.Types.14.0.314.76\lib\net40\Microsoft.SqlServer.Types.dll</HintPath>
        </Reference>
        <Reference Include="System" />
        <Reference Include="System.Data" />
        <Reference Include="System.Drawing" />
        <Reference Include="System.Windows.Forms" />
        <Reference Include="System.Xml" />
        <Reference Include="Microsoft.CSharp" />
        <Reference Include="System.Core" />
        <Reference Include="System.Xml.Linq" />
        <Reference Include="System.Data.DataSetExtensions" />
        <Reference Include="System.Net.Http" />
        <Reference Include="System.Xaml">
          <RequiredTargetFramework>4.0</RequiredTargetFramework>
        </Reference>
        <Reference Include="UIAutomationProvider" />
        <Reference Include="WindowsBase" />
        <Reference Include="PresentationCore" />
        <Reference Include="PresentationFramework" />
        <Reference Include="WindowsFormsIntegration" />
      </ItemGroup>
      <ItemGroup>
        <ApplicationDefinition Include="App.xaml">
          <Generator>MSBuild:Compile</Generator>
          <SubType>Designer</SubType>
        </ApplicationDefinition>
        <Compile Include="SqlServerTypes\Loader.cs" />
        <Page Include="MainWindow.xaml">
          <Generator>MSBuild:Compile</Generator>
          <SubType>Designer</SubType>
        </Page>
        <Compile Include="App.xaml.cs">
          <DependentUpon>App.xaml</DependentUpon>
          <SubType>Code</SubType>
        </Compile>
        <Compile Include="MainWindow.xaml.cs">
          <DependentUpon>MainWindow.xaml</DependentUpon>
          <SubType>Code</SubType>
        </Compile>
      </ItemGroup>
      <ItemGroup>
        <Compile Include="Properties\AssemblyInfo.cs">
          <SubType>Code</SubType>
        </Compile>
        <Compile Include="Properties\Resources.Designer.cs">
          <AutoGen>True</AutoGen>
          <DesignTime>True</DesignTime>
          <DependentUpon>Resources.resx</DependentUpon>
        </Compile>
        <Compile Include="Properties\Settings.Designer.cs">
          <AutoGen>True</AutoGen>
          <DependentUpon>Settings.settings</DependentUpon>
          <DesignTimeSharedInput>True</DesignTimeSharedInput>
        </Compile>
        <EmbeddedResource Include="Properties\Resources.resx">
          <Generator>ResXFileCodeGenerator</Generator>
          <LastGenOutput>Resources.Designer.cs</LastGenOutput>
        </EmbeddedResource>
        <None Include="packages.config" />
        <None Include="Properties\Settings.settings">
          <Generator>SettingsSingleFileGenerator</Generator>
          <LastGenOutput>Settings.Designer.cs</LastGenOutput>
        </None>
        <None Include="TryNewReportViewer2017_TemporaryKey.pfx" />
      </ItemGroup>
      <ItemGroup>
        <None Include="App.config" />
      </ItemGroup>
      <ItemGroup>
        <Content Include="SqlServerTypes\readme.htm" />
        <Content Include="SqlServerTypes\x64\msvcr120.dll">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
        <Content Include="SqlServerTypes\x64\SqlServerSpatial140.dll">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
        <Content Include="SqlServerTypes\x86\msvcr120.dll">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
        <Content Include="SqlServerTypes\x86\SqlServerSpatial140.dll">
          <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </Content>
      </ItemGroup>
      <ItemGroup>
        <BootstrapperPackage Include=".NETFramework,Version=v4.5.2">
          <Visible>False</Visible>
          <ProductName>Microsoft .NET Framework 4.5.2 %28x86 and x64%29</ProductName>
          <Install>true</Install>
        </BootstrapperPackage>
        <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
          <Visible>False</Visible>
          <ProductName>.NET Framework 3.5 SP1</ProductName>
          <Install>false</Install>
        </BootstrapperPackage>
      </ItemGroup>
      <ItemGroup>
        <PublishFile Include="Microsoft.VisualStudio.Text.Logic">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Assembly</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHS\Microsoft.ReportViewer.Common.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHS\Microsoft.ReportViewer.DataVisualization.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHS\Microsoft.ReportViewer.Design.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHS\Microsoft.ReportViewer.WinForms.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHT\Microsoft.ReportViewer.Common.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHT\Microsoft.ReportViewer.DataVisualization.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHT\Microsoft.ReportViewer.Design.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-CHT\Microsoft.ReportViewer.WinForms.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANS\Microsoft.ReportViewer.Common.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANS\Microsoft.ReportViewer.DataVisualization.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANS\Microsoft.ReportViewer.Design.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANS\Microsoft.ReportViewer.WinForms.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANT\Microsoft.ReportViewer.Common.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANT\Microsoft.ReportViewer.DataVisualization.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANT\Microsoft.ReportViewer.Design.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
        <PublishFile Include="zh-HANT\Microsoft.ReportViewer.WinForms.resources">
          <Visible>False</Visible>
          <Group>
          </Group>
          <TargetPath>
          </TargetPath>
          <PublishState>Exclude</PublishState>
          <IncludeHash>True</IncludeHash>
          <FileType>Satellite</FileType>
        </PublishFile>
      </ItemGroup>
      <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    </Project>


    Rod

    Wednesday, July 12, 2017 7:23 PM
  • I think I know what is going on, the reference to the Microsoft.ReportViewer.Design dll is most likely causing the issue. It is only used for displaying the design surface for the control in Visual Studio and it does have references to Visual Studio dlls. I don't think you need to reference it explicitly to get it to work in Visual Studio and I know for sure you don't need it for you runtime application. Can you try removing the Design dll reference and also remove it from you ClickOnce publish settings and see if that solves the issue. Thanks!
    • Marked as answer by Rod at Work Thursday, July 13, 2017 8:40 PM
    Wednesday, July 12, 2017 7:31 PM
    Moderator
  • Matthew, I'm also wondering why there's 2 BootstrapperPackages in my .csproj file. One is for .NET Framework 4.5.2 and the other is for .NET Farmework 3.5 SP1. Why are both referenced in my .csproj file? Does it make a difference?

    Rod

    Thursday, July 13, 2017 3:52 PM
  • Most likely this is Visual Studio auto-detecting dependencies for you, the Report Viewer is currently compiled for 3.5, so it can work on both runtimes, and most likely it is adding the .NET 3.5 framework due to that. Since your app is compiled for 4.5.2 you can just remove that entry. 

    Did you get past the GAC error by removing the Designer dlls?

    Thursday, July 13, 2017 5:48 PM
    Moderator
  • Hi Matthew,

    Well, finally success!! At first I excluded Microsoft.ReportViewer.Design.dll from publishing. That didn't do it. Next I removed Microsoft.ReportViewer.Design.dll from the project's references. That did it!!

    First, I hope this gets fixed in a future update to VS 2017, because although this works (and I'm going to document it for my benefit), I think it likely that some others may not come across this workaround.

    The other thing I'm concerned about is that I want to be sure we can still design a report, in a WinForms or WPF app, without Microsoft.ReportViewer.Design.dll. The app I wrote was just a proof-of-concept thing. All I did was put the RepotrViewer control on the WPF app (wrapped in a WindowsFormsHost control), just to see if it would come up. This has been a good test and I believe I've proved this will work. It would make it more difficult if we can't design the report within VS 2017. I'll ask about this in another post.


    Rod

    Thursday, July 13, 2017 8:49 PM
  • Hi Matthew,

    I've been asked by my coworkers a question I don't know. The only ones who would is someone with Microsoft. You're with Microsoft, so I'm going to ask you. Why is it that this new ReportViewer control only works with VS 2017 (and presumably higher)?


    Rod

    Friday, July 14, 2017 2:40 PM
  • No problem, hopefully I can answer but I have a couple questions for you; what do you mean by the new control only works with the new VS and beyond? Are you talking about the Report design time experience (RDL/RDLC) or the Control design time experience (control on the Form designer)?

    If you mean the control design time experience, I did a test with the VS2017 control in VS2015 and it worked. As I mentioned there is some quirks with the toolbox and the fact the VS has already loaded the older version of the control in memory but it works. The main problem is that previous versions of the controls were GACed and had explicit version references inside VS, so it can get confused which version to use. This can be solved with some binding redirects but in general you shouldn't have to do that. However since we moved to Nuget this should slowly go away since VS will not be tied to a specific version of the control.

    For report design it is a slightly different problem in that the Report Designer is tied to a specific release of Reporting Services and only supports specific schemas. We have work on our backlog to make it easier to target specific versions of RDL in the designer but it's a ways out and I don't think that is the issue your running into. 

    If the above doesn't answer you question let me know what issues your running into or what your trying to do and I can help troubleshoot. Thanks!

    Friday, July 14, 2017 11:18 PM
    Moderator
  • Very good question, Matthew. The best answer I can give is that I read there was a new ReportViewer control that came with VS 2017. Therefore, I concluded it was only useable by VS 2017. Looks like, strictly speaking, I may be wrong. However, it also looks like there might be some gotcha's if we used the new ReportViewer control with VS 2015. Is there a blog post detailing these gotchas?

    For myself, I've used SSRS for several years before coming to my current job. So I'm used to using the Report Designer, generating RDL files, renaming them to RDLC is I wanted to run the report locally, etc. However, my coworkers are not used to working with the Report Designer. Instead, they prefer the generate the XML that the RDL file is comprised of.

    As an aside, I know that the "next big thing", as far as reporting goes, is Power BI. Does the Report Viewer work with Power BI files  in things like WPF, WinForms or ASP.NET apps? Or is some other control used instead?


    Rod

    Monday, July 17, 2017 2:55 PM
  • No there's no blog post at least not that I am aware of; however, setting up a blog has been on my todo list for a while so I'll see if I can get one setup and post some info on it, thanks for the suggestion/idea.

    To your question about ReportViewer and PowerBI, developer support for Power BI Report Server (PBIX) reports is something we are working on, however it will likely be different than how is it implemented for traditional RDL reports. RDL and PBIX reports have very different rendering stacks and the ReportViewer in it's current form doesn't make sense for PBIX. That said we would like to follow similar patterns to what PowerBI.com does for embedding reports, so you can probably expect something similar to that. If you have requests or suggestions on what you would like to see we have a site for submitting/voting for features to work on here, feel free to post your ideas or let me know i'd love to get your input. Thanks!

    Monday, July 17, 2017 9:49 PM
    Moderator