my report has the same data everytime I access it

In my web app, my report has the same data everytime I access it. I DO NOT have the Save Data with Report checked.  The only data that comes up is the data that gets displayed in design time.

I am updating my parameters but when i trace the stored procedure calls the parameters are not updated.

The data doesn't update whether I use crystal viewer or generate the report in pdf.

I am using crystal 9 advanced, Windows 2003, SQL Server. I have been at this for sometime now and cannot get it figured out!

Any help would be great.

Thanks, Jordan


using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Collections.Specialized;
using System.Configuration;

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

using JHS.App.Reports.CrystalFiles;

namespace JHS.App.Reports
{
      /// <summary>
      /// Summary description for InmateReport.
      /// </summary>
      public class InmateReport : System.Web.UI.Page
      {

            protected ReportDocument crReportDocument = new CustomerGeneralReport();

            protected string _ID1;
            protected string _ID2;
            protected string _ID3;

            protected string url;

            ConnectionInfo crConnectionInfo;
            TableLogOnInfo crtableLogoninfo;
            protected CrystalDecisions.Web.CrystalReportViewer CrystalReportViewer1;
            Tables crTables;

            private void Page_Load(object sender, System.EventArgs e)
            {
                  // Put user code to initialize the page here

                  url = ConfigurationSettings.AppSettings["URL"];
                  Response.Expires=-1;

                  try
                  {

                  HttpContext ctx = HttpContext.Current;
                  HttpCookie inCookie = ctx.Request.Cookies["2JHS3"];
                  if(inCookie != null)
                  {
                        _ID1= inCookie.Values["ID1"].ToString();
                        _ID2= inCookie.Values["ID2"].ToString();
                        _ID3= inCookie.Values["ID3"].ToString();
                  }


                        crConnectionInfo = new ConnectionInfo();
                        crReportDocument.SetParameterValue("@param1", _ID1);
                        crReportDocument.SetParameterValue("@param2", _ID2);
                        crReportDocument.SetParameterValue("@param3", _ID3);

      
                        crConnectionInfo.ServerName = ConfigurationSettings.AppSettings["SERVER_NAME"];
                        crConnectionInfo.DatabaseName = ConfigurationSettings.AppSettings["DBNAME"];
                        crConnectionInfo.UserID = ConfigurationSettings.AppSettings["USERID"];
                        crConnectionInfo.Password = ConfigurationSettings.AppSettings["PASSWORD"];

                        crTables = crReportDocument.Database.Tables;

                        //Loop through each table in the report and apply the
                        //LogonInfo information
                        foreach (CrystalDecisions.CrystalReports.Engine.Table crTable in crTables)
                        {
                              crtableLogoninfo = crTable.LogOnInfo;
                              crtableLogoninfo.ConnectionInfo = crConnectionInfo;
                              crTable.ApplyLogOnInfo(crtableLogoninfo);
                              crTable.Location = crConnectionInfo.DatabaseName + ".dbo." + crTable.Location.Substring(crTable.Location.LastIndexOf(".") + 1);
                        }

                        CrystalReportViewer1.ReportSource = crReportDocument;
                        CrystalReportViewer1.Visible = true;
                        /*
                        System.IO.Stream st;
                        st = crReportDocument.ExportToStream(ExportFormatType.PortableDocFormat);

                        Response.ClearContent();
                        Response.ClearHeaders();
                        Response.Expires=-1;
                        Response.ContentType = "application/PDF";
                        byte[] b = new byte[st.Length];
                        st.Read(b,0,(int) st.Length);
                        Response.BinaryWrite(b);
                        crReportDocument.Close();
                        Response.Flush();
                        Response.Close();
                        */
                  }
                        catch (FormatException ex)
                  {
                        Response.Write(ex.ToString());
      }
jrmcdonaAsked:
Who is Participating?
 
frodomanCommented:
It looks like you're getting the parameter values from a cookie.  Have you verified that the values in your code are changing correctly?  I'm thinking there could be a caching problem in your browser that may be sending the old params?
0
 
jrmcdonaAuthor Commented:
Well, some weird stuff is going on.

I was opening my reports in a new browswer, which I do on my production server currently and everything is great.

I set up a new server with Windows 2003 and things are acting up now.

I changed my reports to not spawn a new window and I also just now added:

crReportDocument.Refresh();

This has made my reports work just great. However, when I return to spawning the reports in a new window the cookies are not being found. I don't understand at all what is causing that.  It works fine.  I am wondering if it has something to do with 2003 and IIS6?

THanks,
Jordan

0
 
Arnee_SenthilCommented:
I think the problem is not with the execution of Crystal Rpt. Its due to some default options set during designing of Crystal Rpt.

If you used ADO/RDO/DAO to design a report, you need to paste a SQL qry during design time.
While executing this query thro Crystal report to bring "Data Fields" in to the report, Cr-Rpt Designer connects to DB and executes the SQL that you used during design time. That SQL may return a set of data, and that data will always be displayed in the Report during runtime. (I THINK THIS IS THE PROBLEM YOU ARE FACING)

* To rectify it open the report in Open the Rpt in "32 bit Crystal Report Designer".
* Verify the option in "File Menu>>> Save Data with Report".
   By default this is in checked state.
   Uncheck this option and execute as you did before.


This will solve the issue.

Arnee...
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.