我用水晶報表本身做好了報表,保存成了文件。
Set Report = CryReport.OpenReport("d:\ball_price.rpt", 1)
CRViewer.ReportSource = Report
CRViewer.ViewReport
CRDesignerCtrl.ReportObject = Report用VB可以打開已寫好的水晶報表,現在我要改數據庫連接,因為我連的是SQL數據庫。在VB裡面如何更改水晶報表的連接。
report.OpenSubreport 有一個這樣的屬性,但我不會用。                 謝謝

解决方案 »

  1.   

    dim rs as ADODB.Recordsetrs.open "Select * from tablename","DSN=dsnname;UID=sa;PWD=;".adOpenStatic
    Set Report = CryReport.OpenReport("d:\ball_price.rpt", 1)
    Report.DataBase.SetDataSource=rs
    Report.DataBase.Verify
    CRViewer.ReportSource = Report
    CRViewer.ViewReport
    CRDesignerCtrl.ReportObject = Report
      

  2.   

    不好意思,有笔误。dim rs as New ADODB.Recordsetrs.open "Select * from tablename","DSN=dsnname;UID=sa;PWD=;".adOpenStatic
    Set Report = CryReport.OpenReport("d:\ball_price.rpt", 1)
    Report.DataBase.SetDataSource=rs
    Report.DataBase.Verify
    CRViewer.ReportSource = Report
    CRViewer.ViewReport
    CRDesignerCtrl.ReportObject = Report
      

  3.   

    dim rs as New ADODB.Recordsetrs.open "Select * from tablename","DSN=dsnname;UID=sa;PWD=;",adOpenStatic '这是连接数据库的语句,根据你的数据库和报表的设计而定
    Set Report = CryReport.OpenReport("d:\ball_price.rpt", 1)
    Report.DataBase.SetDataSource=rs
    Report.DataBase.Verify
    CRViewer.ReportSource = Report
    CRViewer.ViewReport
    CRDesignerCtrl.ReportObject = Report
      

  4.   

    Report.DataBase.SetDataSource=rs
    這句編譯都通不過