Link to home
Start Free TrialLog in
Avatar of Member_2_6587680
Member_2_6587680Flag for United States of America

asked on

CR Viewer 2013 performance

I have an issue with Crystal Report Viewer 2013 on how it runs under IE11.
I installed SAP Crystal Reports runtime engine for .NET framework on our web server (Win 2008 64-bit) and created simple web test (Login.asp, RunReport.aspx).
Login.asp form submits parameters and pass them in RunReport.aspx where Crystal Viewer is called.
Test works, but when report generates multiple pages, page navigation (clicking "Next page" or "Previous page") courses browser history to grow.
As a result to get back to Login.asp using browser back button as many clicking required as how many pages you visited in the report.
Changing Zoom also generates extra page in history.
I tried to run this test under Chrome and experienced performance I need, visited pages were not added to browser history.
Will appreciate any advice on how to achieve the same effect when using IE.
Thanks.
Avatar of Mike McCracken
Mike McCracken

Is that the viewer provided as an application from SAP or just the viewer from the .Net version of Crystal?

mlmcc
Avatar of Member_2_6587680

ASKER

.Net version of Crystal
What happens when you simply close the report?

Issues with how it uses IE are probably questions SAP will have to answer.

mlmcc
I do that, here is my VBScript code below. But I will try to contact SAP as you recommend, it makes sense.
Thank you for quick response on my question.

<script language="vbscript" runat="server">
    Dim crystalReport As New ReportDocument()
    Sub Page_Init(sender As Object, e As EventArgs)
        Dim conString As String = "Server=XXX;Database=XXX;User Id=XXX;Password=XXX;"
        Dim strSQL As String = Request.Form("sqlString")
        Dim strReportName As String = Request.Form("rptnameString")
        If Not IsPostBack Then 
           Session("strSQL") = strSQL
           Session("strReportName") = strReportName
        End If
        Dim conn = New SqlConnection(conString)
        Dim adapter As SqlDataAdapter = New SqlDataAdapter(Session("strSQL"), conn)
        Dim DS As DataSet = New DataSet
        adapter.Fill(Session("strReportName"))
        crystalReport.Load(Server.MapPath(Session("strReportName")))
        crystalReport.SetDataSource(DS)
        CrystalReportViewer1.ReportSource = crystalReport
    End Sub
    Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
        crystalReport.Close()
        crystalReport.Dispose()
    End Sub
</script>

Open in new window

SOLUTION
Avatar of Mike McCracken
Mike McCracken

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I see Don Williams answered you question and you have to use sessions and the postback to avoid the issue.  His comment doesn't solve the issue since he suggests searching for postback and session in the Knowledge Base