Link to home
Start Free TrialLog in
Avatar of Larry Brister
Larry BristerFlag for United States of America

asked on

Crystal Viewer Timeout

On my web site my Crystal report viewer on "drill-down" reports is timing out after about 80 - 90 seconds.

Any ideas?
Avatar of Mike McCracken
Mike McCracken

What viewer are you using?

Most viewers con't have a timeout but the connection to the database might.

mlmcc
Avatar of Larry Brister

ASKER

VB Code attached
IIS Is set to 12,000 seconds timeout

These app keys are in the web.config
        <add key="CrystalImageCleaner-AutoStart" value="true"/>
        <add key="CrystalImageCleaner-Sleep" value="240000"/>
        <add key="CrystalImageCleaner-Age" value="240000"/>

This is the code for the viewer

HTML
<%@ Register Assembly="CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"
    Namespace="CrystalDecisions.Web" TagPrefix="CR" %>

<div>
        <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBind="true"
            ReportSourceID="CrystalReportSource1" ToolPanelWidth="1px" />
        <CR:CrystalReportSource ID="CrystalReportSource1" runat="server">
        </CR:CrystalReportSource>
    </div>
Public Sub getReport()
        Try
            _rpt = Request.QueryString("rpt")
            _id = Request.QueryString("id")

            Dim objConn1 As New SqlConnection
            Dim oCom As New SqlCommand
            Dim dr As SqlDataReader

            objConn1.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnPortal")
            oCom.Connection = objConn1
            objConn1.Open()
            oCom.CommandText = "sp_portal_CrystalReportUserAccessGet"
            oCom.CommandType = CommandType.StoredProcedure
            oCom.Parameters.Add(New SqlParameter("@userName", SqlDbType.NVarChar)).Value = Session("userName")
            oCom.Parameters.Add(New SqlParameter("@reportId", SqlDbType.Int)).Value = _id
            dr = oCom.ExecuteReader

            If dr.Read Then
                If Session("userName") = dr("username") And _rpt = dr("reportName") Then
                    CrystalReportSource1.Report.FileName = "~/reportsCrystal/" & _rpt
                    lblError.Text = ""
                Else
                    lblError.Text = "Report access = 'NONE'"
                End If
            Else
                lblError.Text = "Report access = 'NONE'"
            End If
            objConn1.Close()
        Catch ex As Exception
            lblError.Text = ex.Message
        End Try
    End Sub

Open in new window

WHen are you getting the timeout?

When you first display the report or on drill-down?

mlmcc
mlmcc:
It is after the report loads...and then sits without interraction for 60-80 seconds.

After that...when clicking on the report drill down it errors out
I don't know this for sure but a drill-down may use the postback and you may be losing the session variables like username and reportname

mlmcc
mlmcc:
I was thinking that myself...but the session timeouts on the server are huge, as thery are in my Web.Config...and the ReportName is called in the Request.QueryString

Web.Config
<httpRuntime maxRequestLength="999999" executionTimeout="21000"/>
<sessionState timeout="180"/>

URL
http://portal/reportsCrystal.aspx?rpt=rpS_SalesActivityRev.rpt&id=9
Can you navigate from page to page?

mlmcc
ASKER CERTIFIED SOLUTION
Avatar of Larry Brister
Larry Brister
Flag of United States of America image

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
Found own solution