代码之家  ›  专栏  ›  技术社区  ›  Smiley

使用C#Question的CrystalReport和存储过程

  •  0
  • Smiley  · 技术社区  · 15 年前

    我有一个需要生成报告的应用程序。但是,我不知道如何使用基于查询的CrystalReport生成报告。假设我只需要从数据库生成一个报告,其中显示select查询返回的值。我以前从来没有用过水晶报表,所以我是新手。

    谢谢大家:)

    编辑:

    ConnectionString myConnString = new ConnectionString();
    string connString = myConnString.getConnectionString();
    SqlConnection connSearch = new SqlConnection(connString);
    connSearch.Open();
    
    SqlCommand cmdLoad = new SqlCommand("Search", connSearch);
    cmdLoad.CommandType = CommandType.StoredProcedure;
    
    cmdLoad.Parameters.Add(new SqlParameter("@AccountID", currentUser));
    cmdLoad.Parameters.Add(new SqlParameter("@PeriodID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@PriceID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@ExpenseID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@InventoryID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@ProductInID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@ProductOutID", " "));
    cmdLoad.Parameters.Add(new SqlParameter("@PeriodMonth", periodMonth.Trim().ToUpper()));
    cmdLoad.Parameters.Add(new SqlParameter("@PeriodYear", periodYear));
    
    SqlDataReader read = cmdLoad.ExecuteReader();
    
    DataSet ds = new DataSet();
    DataTable dt = new DataTable("Results");
    ds.Tables.Add(dt);
    ds.Load(read, LoadOption.PreserveChanges, ds.Tables[0]);
    
    
    CrystalReport1 crystal = new CrystalReport1();
    crystal.SetDataSource(ds);
    crystalReportViewer1.ReportSource = crystal;
    
    connSearch.Close();
    connSearch.Dispose();
    

    crystal.SetDataSource(ds); 线路。

    有人帮我吗?:)

    2 回复  |  直到 15 年前
        1
  •  1
  •   G Berdal    15 年前

    Crystal Reports是一个功能非常强大的工具,广泛应用于世界各地的办公室。

    CrystalReportViewer将生成一个用户友好的界面,使您能够将报告导出为所有常用格式。

    回答您的问题:

    如果我是你,我会通读这本书 white papers 先熟悉一下报道。

    在将数据集绑定到报表并检查表是否存在之前,请尝试调试该数据集。

        2
  •  0
  •   James Gaunt    15 年前

    好吧,这并不是一个真正的答案,但我的建议是,在你深入研究之前,先把水晶报告扔掉。。。。这只是一个痛苦的世界。

    用HTML创建自己的报表,导出到excel很简单,如果需要,还可以使用免费工具导出到PDF,甚至可以使用.Net图表。