0 Replies - 1563 Views - Last Post: 18 January 2013 - 12:44 PM Rate Topic: -----

#1 gchatt10  Icon User is offline

  • New D.I.C Head

Reputation: 0
  • View blog
  • Posts: 1
  • Joined: 18-January 13

ASPX Crystal Reports next page automation

Posted 18 January 2013 - 12:44 PM

Hello all,

First let me say I know that there are probably hundreds of postings on the net that refer to asp and CR. I have looked for about a week trying things to no avail. If you have a web page that you think will help I would be very happy to check it out, but I have google'd this subject over and over again.

I am working on a asp/C# project that will take any crystal report and display it on a web page, that part is simple enough. In this project I am looking for simplicity, something that will run possible for days/weeks on end on any type of browser or OS. I am using CR XIR2, asp.net 4.0 and VS2010. My project will display a report and refresh the data and report on a set time period. I do not have a dataset in my project. The report connects directly to the SQL server and pulls the data. I have gotten the automated page refresh working with some javascript on the asp page, but I am having trouble automating the next page display. I am looking to rotate through the pages every two minutes or so and refresh the entire report every 10 mins or so. Here is my asp page:

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register TagPrefix="CR" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
    <script type="text/javascript">
        function timeClick() {
            var t = setTimeout("clickButton()", 180000);

        function clickButton() {
            var button = document.getElementById('RefreshButton');

<script type="text/javascript">
    function refreshClick() {
        var t = setTimeout("clickButton()", 180);

    function clickButton() {
        var button1 = document.getElementById('IconImg_CrystalReportViewer1_toptoolbar_nextPg');

<script type="text/C#" runat="server">
    public void CommandBtn_Click(object sender, CommandEventArgs e)

<%--<script type="text/C#" runat="server">
    public void Commandrefresh_Click(object sender, CommandEventArgs e)

<script type="text/javascript">
    window.onload = timeClick;
    <form id="form1" runat="server">
    <div style="display: none;">
        <asp:Button ID="RefreshButton" runat="server" onCommand="CommandBtn_Click" />
        <CR:CrystalReportViewer ID="CrystalReportViewer1" runat="server" AutoDataBind="True"
            Height="1039px" ReportSourceID="CrystalReportSource1" Width="901px" DisplayStatusbar="False" 
            HasDrilldownTabs="False" HasToggleGroupTreeButton="False" 
            HasToggleParameterPanelButton="False" ToolPanelView="None" />
        <CR:CrystalReportSource ID="CrystalReportSource1" runat="server">
            <Report FileName="CrystalReport1.rpt">

And here is my C# behind page:

using System;
using System.Data;
using System.Configuration;

using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using CrystalDecisions.Shared;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Web;

public partial class _Default : System.Web.UI.Page 
    private ReportDocument rpt;

    private void Page_Init(object sender, EventArgs e)
    protected void Page_Load(object sender, EventArgs e)

    private void ConfigureCrystalReports()
        rpt = new ReportDocument();
        string reportPath = Server.MapPath("CrystalReport1.rpt");
        ConnectionInfo connectionInfo = new ConnectionInfo();
        connectionInfo.DatabaseName = "*****";
        connectionInfo.UserID = "*****";
        connectionInfo.Password = "*****";
        SetDBLogonForReport(connectionInfo, rpt);
        CrystalReportViewer1.ReportSource = rpt;
    private void SetDBLogonForReport(ConnectionInfo connectionInfo, ReportDocument reportDocument)
        Tables tables = reportdocument.Database.Tables;
        foreach (CrystalDecisions.CrystalReports.Engine.Table table in tables)
            TableLogOnInfo tableLogonInfo = table.LogOnInfo;
            tableLogonInfo.ConnectionInfo = connectionInfo;

Is This A Good Question/Topic? 0
  • +

Page 1 of 1