Dataset需要編譯
並且你的報表須以DataSet為數據源建立
 Dim conn As SqlConnection
 Dim da As SqlDataAdapter
 Dim strSQL As String conn = New SqlConnection()
 conn.ConnectionString = "User ID=sa; PWD=1234;Data Source=xxxx; Initial Catalog =xxxxx"
 conn.Open() strSQL = "Select * from TableName"     
 da = New SqlDataAdapter(strSQL, conn)
 Dim ds As New DataSet()                    
 da.Fill(ds, "TableName")                         Dim RptDoc As New ReportName()   
  RptDoc.SetDataSource(ds)                      
 ' 給RptDoc 指定數據,   
  CrystalView1.ReportSource = RptDoc      '給CrystalView指定數據
  CrystalView1.DataBind()
  conn.Close()

解决方案 »

  1.   

    我好象也是这样写的,但就是定义不了那个生成的Crystal report组件,这是我的源程序,之前以生成一个报表文件。我的crystal report 已注册。弄了好多天想不通。请多指教。
    dim conn as sqlconnection
    dim strconstring as string="Server=localhost;UID=sa;PWD=yangxu;Database=tianhai;Max Pool Size=300"
    conn=new sqlconnection(strconstring)
    conn.open()

    Dim MyCommand As SqlCommand
    MyCommand.Connection = conn
    MyCommand.CommandText = "Select danhao,nnumber from dbfrlcheck"
    MyCommand.CommandType = CommandType.Text
    Dim MyDA As SqlDataAdapter
    MyDA.SelectCommand = MyCommand
    Dim myDS As new Dataset1()
    MyDA.Fill(myDS, "dbfrlcheck") 
    Dim oRpt As  CrystalReport1()//这里出错,无法定义 crystalreport1();
    oRpt.SetDataSource(myDS)
      

  2.   

    你的 CrystalReport1是如何製作的? 你必須使用DataSet1為數據源建立
    是使用Vs.net中的Crystal Report製作的嗎?
      

  3.   

    是呀!我就是vs.net自带的crystal report做的,数据源是dataset1,在.aspx 中的crystalreportviewer编辑时是可加载dataset1,看到我的数据字段,但浏览就出错。
      

  4.   

    在解决方案浏览器中点击 crystalreport报表文件左边的加号就可以看到生成的类(如果有的话)。确定该类名与你程序中调用的类别相同。
      

  5.   

    你指的是crystalreport1.vb文件吗?这个我有!我也把crystalreport1.rpt作为WEB服务发布,生成了一个crystalreport1service.asmx文件,这对吗?
    还是应该生成别的?
      

  6.   

    我在类视图里看到有crystalreport1,还有dataset1,crystalreportservice,
    是否说明有该项类呢?如果他生成,能否在那个目录下看到?请指教。
      

  7.   

    我想.vb文件应该不是类文件,crystal report的类文件是自动生成的吗?还是要怎样?一头雾哦!!!!请高手搭救!!!
      

  8.   

    类视图中能看到 crystalreport1,说明已有相关的类生成。Dim oRpt As  CrystalReport1()
    这一句改成:
            Dim oRpt As New CrystalReport1()
      

  9.   

    我改了,还是老样,提示未定义类型CrystalReport1()!
      

  10.   

    crystalreport1()好象是自动生成的!是不是你的报表制作过程中有什么问题?