QQ群
3912688
探讨C#技术

解决方案 »

  1.   


     你可以动态的、自由的生成你需要的报表源(如DataTable),然后传给报表即可。
     只要报表格式是固定的,数据内容可以有很大自由度...
      

  2.   

    我是用DATASET来装载报表源
    代码如下:
    SqlConnection adoSqlConnection;
    SqlDataAdapter adoSqlDataAdapter;
    string connectionString= "";
    connectionString = "Server=localhost;Database=data;";
    connectionString += "User ID=sa;Password=123456";

    adoSqlConnection = new SqlConnection(connectionString);string sqlString = "";
    sqlString = "Select *  From consumer";
    adoSqlDataAdapter = new SqlDataAdapter(sqlString, adoSqlConnection);DataSet dSet = new DataSet();
    CrystalReport1 crReportDocument;

    adoSqlDataAdapter.Fill(dSet, "consumer");

    crReportDocument = new CrystalReport1();CrystalReportViewer1.ReportSource=crReportDocument;现在我不想报表得出是记录表.
    我想在报表显示出来的是记录数count.
    我应该如何做法
      

  3.   

    Dim opt As New CrystalReport1
            Dim ds As New DataSet
            Dim da As New SqlDataAdapter("select * from orders", "data source=(local);integrated security=true;initial catalog=northwind")
            da.Fill(ds, "Orders")
            opt.SetDataSource(ds.Tables("Orders"))
            Dim txt As CrystalDecisions.CrystalReports.Engine.TextObject
            txt = opt.ReportDefinition.ReportObjects.Item("Text1")
            txt.Text = "Crystal Report Header"
            Me.CrystalReportViewer1.ReportSource = opt
      

  4.   

    to: chNET(有神论者) ( ) 
    是的.多个表指的是数据库中的表
      

  5.   


     这样:
     无论从多少表取数据,你都在程序里把你要的数据动态的生成一个DataTable,之前你的水晶报表的格式要根据这个DataTable的结构设计,最后将这个DataTable传递给报表即可...
      

  6.   

    see:
    http://www.microsoft.com/china/community/Column/26.mspx