【问题标题】:Crystal report is not showing data using Asp.netCrystal 报表不使用 Asp.net 显示数据
【发布时间】:2012-12-03 21:29:56
【问题描述】:

我正在使用 Asp.net 4.0 和 Sap 水晶报表,我的问题是绑定数据集后无法在 reportViewer 上显示数据。

下面是我的 Aspx 设计器代码

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="productRepot.aspx.cs" Inherits="ProductionPlanning1.productRepot" %>

<%@ Register Assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral,    PublicKeyToken=692fbea5521e1304"
Namespace="CrystalDecisions.Web" TagPrefix="CR" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

<asp:Label ID="prdt_Label1" runat="server" Text="ProductID"></asp:Label>
<asp:TextBox ID="matrl_TextBox" runat="server"></asp:TextBox>

<asp:Button ID="rpt_Button1" runat="server" Text="PrintProduct" 
    onclick="rpt_Button1_Click"></asp:Button>
<CR:CrystalReportViewer ID="product_CrystalReportViewer1" runat="server" 
    AutoDataBind="true"></CR:CrystalReportViewer>

</asp:Content>

产品报告.aspx.cs

  protected void rpt_Button1_Click(object sender, EventArgs e)
    {
        //DataSet2 DS2 = new DataSet2();
        //Fyp_1.Product pp = new Fyp_1.Product();
        //DS2.Tables.Add(pp.GetProduct(Convert.ToInt16(matrl_TextBox.Text)).Copy());
        //DS2.Tables[0].TableName = "Product";
        //CrystalReportProduct TR = new CrystalReportProduct();
        //TR.SetDataSource(DS2);
        //product_CrystalReportViewer1.ReportSource = TR;
        //product_CrystalReportViewer1.DataBind();

        GenerateReport();




        //DataSet ds = new DataSet();
        //BookTicket_Class BT = new BookTicket_Class();
           //ds.Tables.Add(BT.GetBookTicketReport(Convert.ToInt16(TicketNO_TextBox.Text)).Copy());
        //ds.Tables[0].TableName = "BookTicket";
        //TicketReport TR = new TicketReport();
        //TR.SetDataSource(ds);
        //CrystalReportViewer1.ReportSource = TR;
        //CrystalReportViewer1.DataBind();
    }

    protected void GenerateReport()
    {
        SqlConnection sqlConn = new SqlConnection(@"Data Source=PROZECK-   PC\R2MSSQLSERVER;Initial Catalog=FYP;Integrated Security=True");

        SqlCommand comd;
        comd = new SqlCommand();
        comd.Connection = sqlConn;
        comd.CommandType = CommandType.StoredProcedure;
        comd.CommandText = "spgetproductNEW";



        comd.Parameters.Add("@MaterialID", SqlDbType.Int);
      //  int VAL = Convert.ToInt32(matrl_TextBox.Text);
        if (matrl_TextBox.Text.Trim() != "")
            comd.Parameters[0].Value = Convert.ToInt32(matrl_TextBox.Text);
        else
            comd.Parameters[0].Value = DBNull.Value;




        SqlDataAdapter sqlAdapter = new SqlDataAdapter();
        sqlAdapter.SelectCommand = comd;

        DataSet2 DS2 = new DataSet2();
        sqlAdapter.Fill(DS2, "Product");

        //oRpt.SetDataSource(ds);

        //CrystalReportViewer1.Visible = true;

        //CrystalReportViewer1.ReportSource = oRpt;
        CrystalReportProduct TR = new CrystalReportProduct();
        TR.SetDataSource(DS2);
        product_CrystalReportViewer1.ReportSource = TR;
       // product_CrystalReportViewer1.DataBind();




    }
}

下面是给你描述问题的截图。

但是当我在水晶报表设计器中检查数据时,它会显示数据

我的第一个绑定数据的代码是这个然后我把它改成上面我粘贴的代码

        DataSet2 DS2 = new DataSet2();
        Fyp_1.Product pp = new Fyp_1.Product();
        DS2.Tables.Add(pp.GetProduct(Convert.ToInt16(matrl_TextBox.Text)).Copy());
        DS2.Tables[0].TableName = "Product";
        CrystalReportProduct TR = new CrystalReportProduct();
        TR.SetDataSource(DS2);
        product_CrystalReportViewer1.ReportSource = TR;
        product_CrystalReportViewer1.DataBind();

【问题讨论】:

    标签: asp.net visual-studio-2010 c#-4.0 crystal-reports


    【解决方案1】:

    我认为你只是错过了最后的电话; product_CrystalReportViewer1.Refresh();

    【讨论】:

      【解决方案2】:

      您需要删除引用的 crystalReport.web dll,然后添加最新版本的 crystalReport.web dll 才能正常工作。

      【讨论】:

        【解决方案3】:

        我也遇到了同样的问题,我终于明白了 这是解决方案

        转到 webform1.aspx-->源 还有这个

        之后转到以下路径 C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319 在这里你看到“ Crystalreportviewers13 ”复制这个文件夹

        右击你的项目

        我们在 FILEEXPLORER 中看到了 OPEN FILE 点击它你可以在这里粘贴你的 crystalreportviewers13

        之后转到文件并关闭 当前解决方案已成功关闭。 下一个转到文件->最近的文件和项目从这里打开你的解决方案::))

        也见我的评论

        【讨论】:

        • 转到 webform1.aspx-->源和这个
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多