+ -
当前位置:首页 → 问答吧 → vb水晶报表问题

vb水晶报表问题

时间:2011-09-10

来源:互联网

都是照着网上教程做的  
有一command代码如下:
Private Sub Command9_Click()
Dim cn As New ADODB.Connection '定义数据库的连接
Dim rst As New ADODB.Recordset
  cn.ConnectionString = "Provider=sqloledb;Data Source=10.90.2.71;Initial Catalog=cabcis;User Id=sa;Password=1111;"
  cn.Open
  rst.CursorLocation = adUseClient
  rst.Open "SELECT max(a.a_1310), max(a.a_1550), b.contract_no , b.len_PRINT, b.cable_type , b.segment_no, b.print_no, b.drum_no,b.groupindexkl FROM cable_fiber as a INNER JOIN final_cab_main as b ON a.sheath_no = b.sheath_no WHERE b.sheath_no= '" & Trim(Text2.Text) & "' group by b.contract_no , b.len_PRINT, b.cable_type , b.segment_no, b.print_no, b.drum_no,b.groupindexkl", cn, adOpenDynamic, adLockOptimistic
  CrystalReport1.Database.SetDataSource rst, 3, 1
  Form1.Show  
End Sub

在FORM1中代码如下:
Private Sub Form_Load()
Dim oApp As New CRAXDRT.Application
Dim oRpt As CRAXDRT.Report
  Set oRpt = oApp.OpenReport(App.Path & "\Report1.rpt", 1)
  oRpt.Database.SetDataSource rst 
  oRpt.ReadRecords
  CRViewer91.ReportSource = oRpt
  CRViewer91.Refresh
  CRViewer91.ViewReport
  Screen.MousePointer = vbDefault
End Sub

现在问题是:

报表显示的是数据库中全部的内容,好像sql语句的where没有起到作用,不知哪里的问题,麻烦高人解答一下。

祝中秋快乐!

作者: goodxushi   发布时间: 2011-09-10

建议在数据库单独运行下sql,看看返回。

作者: patrickkong   发布时间: 2011-09-10

热门下载

更多