【问题标题】:Use existing crystal Report with a new dataset将现有水晶报表与新数据集一起使用
【发布时间】:2013-04-25 20:13:31
【问题描述】:

我正在尝试绑定我已经创建的水晶报告,这意味着我有.rpt 文件。现在我正在使用 Add-reports - existing item 将它添加到我的应用程序中。该报告是基于 oracle 表视图创建的。在我的程序中,我创建了一个动态数据集,其中包含此报告所需的所有字段。现在我需要找到一种方法来使用这个现有的.rpt 文件并从数据集中解析我的数据以创建pdf 格式的报告。
我知道如何将报告导出到pdf。但我不知道如何使用这个.rpt 文件并通过它解析我的数据集数据。

这是我目前的代码

using System;
using  System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Oracle.DataAccess.Client;
using System.Data;
using CrystalDecisions.CrystalReports.Engine;


namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        string connetionString = null;
        OracleConnection connection;
        OracleDataAdapter OracleAdapter;
        DataSet ds = new DataSet();
        string firstSql = null;
       // string secondSql = null;

        connetionString = "blah blah
        firstSql = "select * from STATEMENT_DomESTIC";
       // secondSql = "Select * from DOM_DETAILS";
        connection = new OracleConnection(connetionString);
        try
        {
            connection.Open();
            OracleAdapter = new OracleDataAdapter(firstSql, connection);
            OracleAdapter.Fill(ds, "domestic_header");
            OracleAdapter.SelectCommand.CommandText = secondSql;
            OracleAdapter.Fill(ds, "domestic_detail");
            OracleAdapter.Dispose();
            connection.Close();

           // GridView1.DataSource = ds;
           // GridView1.DataBind();


        }

        catch (Exception ex)
        {


        }
    }
}
}

我对此进行了研究,但找不到可以做到这一点的好例子。

【问题讨论】:

    标签: c# crystal-reports dataset


    【解决方案1】:

    您需要使用 Crystal 提供的 ReportDocument 对象。比如……

    ReportDocument reportDoc = new ReportDocument();
    reportDoc.Load("YourReportName");  //or path to your report
    reportDoc.SetDataSource(ds);
    

    这是否符合您的要求?

    【讨论】:

    • 这让我开始了。谢谢 我会让你知道结果如何。
    • 当然,我自己最近一直在使用 Crystal .NET API。绝对是一个学习的过程。如果您还需要什么,请告诉我。
    • 我按照你说的做了,然后添加了导出选项以将报告导出为 pdf。但我没有得到任何地方。我收到错误提示数据库登录失败。但我没有使用数据库作为来源。 reportDoc.SetDataSource(ds);将数据源更改为数据集?我对么 ?如果是这样,它不应该抛出未连接到数据库的错误
    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 2013-03-19
    • 2012-04-17
    • 2012-08-18
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    • 2010-10-28
    相关资源
    最近更新 更多