水晶报表可以通过web   service连接数据库吗? 
我想用一个web   service调用数据库返回一个DataSet,然后客户端的水晶报表得到这个DataSet再进行报表处理. 
不知道这样行不行,因为我看到的好多例子都是直接连接数据库的. 
如果可以,能给个例子看看吗?谢了.

解决方案 »

  1.   

    俺没用过水晶报表,但是webservice返回dataset肯定是可以的
      

  2.   

    肯定可以,水晶报表要在示图下设置,然后把DataSet设为报表的数据源即可,
    在示图里选择不同的图表形式(柱、折线等),设置显示数据,关系的X\Y轴的问题,我做过,刚找了半天没找到,sorry!
      

  3.   

    我只找到VB.net的代码(WinForm),你可以经此类推一下,C# 的web代码程序没找到,
      Function LoadDataSet(ByVal SQL As String) As DataSet'返回记录集的函数
            Dim conn As New Data.SqlClient.SqlConnection
            Dim adapter As New SqlClient.SqlDataAdapter
            conn.ConnectionString = sCn
            adapter = New SqlClient.SqlDataAdapter(SQL, conn)
            LoadDataSet = New DataSet
            adapter.Fill(LoadDataSet)
            adapter = Nothing
            conn.Close()
            conn = Nothing
        End Function    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim Myreport As New CyGhraphCount2
            Dim MydataSet As DataSet
            MydataSet = LoadDataSet(s)
            Myreport.SetDataSource(MydataSet.Tables(0))
            ReportViewer1.ReportSource = Myreport'把记录集作报表的
            ReportViewer1.Refresh()
        End Sub
      

  4.   

    http://www.codeproject.com/KB/cs/CreatingCrystalReports.aspx
    http://aspalliance.com/265_Crystal_Report_for_Visual_Studio_NET.all