2017-06-29 3 views
0

Ich hoffe, dass jemand eine Vorstellung davon hat, was ich gerade erlebe.v14.0 Web Report Viewer Control zeigt den Berichtsteil nicht an

Ich habe im Laufe der Jahre mit verschiedenen Versionen des Report Viewer-Steuerelements (sowohl WinForms als auch Web) gearbeitet und gerade damit begonnen, die neueste HTML5-basierte Version in einem ASP.NET-Projekt zu verwenden.

Meine Umgebung ist wie folgt: Dev Laptop mit Windows 7 und SQL Server 2014 einschließlich SSRS. Verschiedene Remote-Server mit Reporting Services 2008R2, 2014 und 2016.

Ich habe diese Lernprogrammseite aus den Microsoft-Dokumentationen verfolgt: https://docs.microsoft.com/en-us/sql/reporting-services/application-integration/using-the-webforms-reportviewer-control, und habe eine Seite eingerichtet, die auf Remote-Server-Berichte zeigt.

-Code Behind:

protected void Page_Init(object sender, EventArgs e) 
{ 
    if (!Page.IsPostBack) 
    {     
     rv14.ProcessingMode = ProcessingMode.Remote; 
     ServerReport serverReport = rv14.ServerReport; 

     // A 2016 Report 
     serverReport.ReportServerUrl = new Uri("http://2016server/reportserver"); 
     serverReport.ReportPath = "/Sports"; 

     // A 2014 Report 
     // serverReport.ReportServerUrl = new Uri("http://2014server/reportserver"); 
     // serverReport.ReportPath = "/SQL2014DemoReports/VertBar"; 

     // A 2008R2 Report 
     // serverReport.ReportServerUrl = new Uri("http://2008R2server/Reportserver"); 
     // serverReport.ReportPath = "/DemoReports/VertBar"; 

    } 
} 

ASPX

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Reports.aspx.cs" Inherits="WebNew.Reports" %>  
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %> 

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title>Reports</title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> 
     <rsweb:ReportViewer ID="rv14" runat="server" Width="100%" Height="100%"></rsweb:ReportViewer> 
    </form> 
</body> 
</html> 

Wenn ich die Seite ausführen, die neue HTML-basierte Toolbar macht und ich bekomme und ich erhalte den "Laden" Mini-Dialog zeigen, aber dann nichts. Kein Berichtskörper gerendert Der im Code unkommentierte Bericht ist eine einfache Liste von Sportarten, die ein paar Seiten lang und nicht komplex sind.

Ich kann sagen, dass der Server kontaktiert und geantwortet wurde, als ich die Paginierung Kontrolle sehe, dass es mehr als eine Seite gibt, und wenn ich dann eine der Export-Steuerelemente, wie PDF verwenden, das PDF hat Renderausgabe korrekt korrigieren.

Es wird einfach nicht auf meiner Webseite angezeigt.

Ich habe versucht IE (11), Chrome (58) und Firefox (49) und alle zeigen das gleiche Verhalten. Es spielt keine Rolle, auf welchen Server ich abziele oder ob ich mich mit meiner lokalen Instanz verbinde.

Hat jemand dieses Verhalten gesehen, irgendwelche Hinweise darauf, was passieren könnte, oder eine gute Möglichkeit zu versuchen, zu debuggen?

Vielen Dank

Antwort

1

OK, so stolperte ich über eine Lösung zu dem, was ich sah. Es scheint, dass das Problem damit zu tun hat, was der Betrachter enthält.

Wenn ich den Viewer in ein DIV umgebe und seine Höhe auf 100 vertikale Höhe einstelle, zeigt der Viewer seinen Inhalt korrekt an. Zuvor musste es effektiv in einem Container der Höhe Null gewesen sein.

Arbeits ASPX Code sieht wie folgt aus:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title>2016 Report Viewer Test</title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <asp:ScriptManager ID="ScriptManager1" runat="server"> 
     </asp:ScriptManager> 
     <div style="height:100vh">    
      <rsweb:ReportViewer 
       ID="rv14" 
       runat="server" 
       Width="100%" 
       Height="100%"> 
      </rsweb:ReportViewer> 
     </div> 
    </form> 
</body> 
</html> 

hoffe, das hilft jemand einen Tag. :-)

0

Fügen Sie dies hinzu, arbeitete für mich.

rv14.SizeToReportContent = true; 
Verwandte Themen