怎样实现datareport只打印查询到的记录

s2010 2008-06-23 03:45:49
用 adodc+datagrid 控件 已经实现查询的功能
但打印的时候打印的是全部的数据记录
我已经调试了几天了
头都晕了
肯请哪位高手出来帮我远程处理. 万分感谢
本人刚学VB不久 QQ252370909 TEL 15817577080 在线等
...全文
108 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
SUMING0102 2008-07-09
  • 打赏
  • 举报
回复
直接用 DATAENVIROMENT.RSCOMMAD.OPEN"SELECT * FROM "
vbman2003 2008-06-23
  • 打赏
  • 举报
回复
甚至可以自己创建记录集来绑定报表打印:

'自己定义记录集
  Dim rst As New Recordset
With rst
.Fields.Append "name", adBSTR, 255 '设置字段名称和属性
.Fields.Append "origin", adBSTR, 255
.CursorType = adOpenStatic
.LockType = adLockOptimistic
.Open
End With
'给记录集添加数据
rst.AddNew
rst.Fields(0) = Text1.Text
rst.Fields(1) = Text2.Text
rst.Update

'设定报表相关控件的属性
DataReport1.Sections("Section1").Controls("Label2").Caption = "介绍:"
DataReport1.Sections("Section1").Controls("Text1").DataField = "name"
DataReport1.Sections("Section1").Controls("Label3").Caption = "前往办理:"
DataReport1.Sections("Section1").Controls("Text2").DataField = "origin"

'设置报表数据源
Set DataReport1.DataSource = rst
DataReport1.Show
vbman2003 2008-06-23
  • 打赏
  • 举报
回复
datareport的数据源,只要是一个记录集就行,所以不要用DE
这方面的示例,你在论坛上搜索一下吧,许多的......
s2010 2008-06-23
  • 打赏
  • 举报
回复
使用VB自帶的datareport打印設計的
vbman2003 2008-06-23
  • 打赏
  • 举报
回复
Set DataReport1.DataSource = DataEnvironment2.rsCommand2 不要这句

不要用DE,直接
Set DataReport1.DataSource =adodc1
s2010 2008-06-23
  • 打赏
  • 举报
回复
公共模快
Public PublicStr As String
Public FrmStrs As String
Public Name1 As String
Public AdoRs As New ADODB.Recordset
Public AdoRs1 As New ADODB.Recordset
Public AdoRs2 As New ADODB.Recordset
Public Sub main()
PublicStr = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=Cservice"
End Sub

查詢和打印的 源碼 adodc + datagrid
打印 dataenvironment +datareport

Dim str As String
Private Sub Combo1_Click()
Select Case Combo1.Text
Case "出廠編號"
str = "m_ccbh1"
Case "機身編號"
str = "m_jsbh2"
Case "客戶名稱"
str = "m_khmc3"
Case "代理商名稱"
str = "m_dlmc4"
End Select
End Sub

Private Sub Command1_Click() ′查詢
On Error Resume Next
If Combo1.Text = "" Then
MsgBox "請先設置查詢條件", 64, "查詢信息設置"
Else
Adodc1.RecordSource = "select * from tb_jqpz where (" & Trim(str) & " " & "like '%" + Trim(Text1.Text) + "%')order by m_jsbh2"
Adodc1.Refresh
Call datagrid1_title
End If




End Sub

Private Sub Command2_Click() '打印

On Error Resume Next
If Combo1.Text = "" Then
MsgBox "請先設置查詢條件", 64, "查詢信息設置"
Else
Adodc1.RecordSource = "select * from tb_jqpz where (" & Trim(str) & " " & "like '%" + Trim(Text1.Text) + "%')order by m_jsbh2"
Adodc1.Refresh
Call datagrid1_title
DataEnvironment2.rsCommand2.Open "select * from tb_jqpz where (" & Trim(str) & " " & "like '%" + Trim(Text1.Text) + "%'),cnn,adopenkeyset"
If DataEnvironment2.rsCommand2.RecordCount > 0 Then

DataReport1.Show 1


Else
MsgBox "沒有要打印的相關信息", 48
DataEnvironment2.rsCommand2.Close


End If
End If

End Sub

Private Sub DataGrid1_Click()

End Sub

Private Sub Form_Load()
Call main
Adodc1.ConnectionString = PublicStr
Adodc1.RecordSource = "select * from tb_jqpz"
Set DataGrid1.DataSource = Adodc1
Set DataReport1.DataSource = DataEnvironment2.rsCommand2

Call datagrid1_title
For i = 0 To Adodc1.Recordset.Fields.Count - 3
Combo1.AddItem DataGrid1.Columns(i).Caption
Next i


End Sub
Sub datagrid1_title()
DataGrid1.Columns(0).Caption = "出廠編號"
DataGrid1.Columns(1).Caption = "機身編號"
DataGrid1.Columns(2).Caption = "客戶名稱"
DataGrid1.Columns(3).Caption = "代理商名稱"
DataGrid1.Columns(4).Caption = "機器類型"
DataGrid1.Columns(5).Caption = "出廠日期"
DataGrid1.Columns(6).Caption = "系統品牌"
DataGrid1.Columns(7).Caption = "系統型號"
DataGrid1.Columns(8).Caption = "侍服放大器規格"
DataGrid1.Columns(9).Caption = "控制板品牌"
DataGrid1.Columns(10).Caption = "控制板規格"
DataGrid1.Columns(11).Caption = "主軸馬達規格"
DataGrid1.Columns(12).Caption = "X軸馬達規格號"
DataGrid1.Columns(13).Caption = "Y軸馬達規格號"
DataGrid1.Columns(14).Caption = "Z軸馬達規格"
DataGrid1.Columns(15).Caption = "主軸品牌"
DataGrid1.Columns(16).Caption = "主軸型式"
DataGrid1.Columns(17).Caption = "主軸轉速"
DataGrid1.Columns(18).Caption = "主軸剛珠"
DataGrid1.Columns(19).Caption = "皮帶規格"
DataGrid1.Columns(20).Caption = "主軸馬達皮帶規格"
DataGrid1.Columns(21).Caption = "主軸皮帶規格"
DataGrid1.Columns(22).Caption = "導螺桿品牌"
DataGrid1.Columns(23).Caption = "X軸螺桿規格"
DataGrid1.Columns(24).Caption = "Y軸螺桿規格"
DataGrid1.Columns(25).Caption = "Z軸螺桿規格"
DataGrid1.Columns(26).Caption = "線軌品牌"
DataGrid1.Columns(27).Caption = "X軸線軌規格"
DataGrid1.Columns(28).Caption = "Y軸線軌規格"
DataGrid1.Columns(29).Caption = "Z軸線軌規格"
DataGrid1.Columns(30).Caption = "刀庫品牌"
DataGrid1.Columns(31).Caption = "刀庫規格"
DataGrid1.Columns(32).Caption = "打刀缸品牌"
DataGrid1.Columns(33).Caption = "打刀缸規格"
DataGrid1.Columns(34).Caption = "自動平衡品牌"
DataGrid1.Columns(35).Caption = "氮氣油壓缸規格"
DataGrid1.Columns(36).Caption = "排削機品牌"
DataGrid1.Columns(37).Caption = "排削機規格"
DataGrid1.Columns(38).Caption = "切削水泵品牌"
DataGrid1.Columns(39).Caption = "切削水泵規格"
DataGrid1.Columns(40).Caption = "貳點組合品牌"
DataGrid1.Columns(41).Caption = "貳點組合規格"
DataGrid1.Columns(42).Caption = "壓力表品牌"
DataGrid1.Columns(43).Caption = "壓力表規格"
DataGrid1.Columns(44).Caption = "熱交換器品牌"
DataGrid1.Columns(45).Caption = "熱交換器規格"
DataGrid1.Columns(46).Caption = "主開關品牌"
DataGrid1.Columns(47).Caption = "主開關規格"
DataGrid1.Columns(48).Caption = "I0板品牌"
DataGrid1.Columns(49).Caption = "IO板規格"
DataGrid1.Columns(50).Caption = "繼電器品牌"
DataGrid1.Columns(51).Caption = "繼電器規格"
DataGrid1.Columns(52).Caption = "PMG手輪品牌"
DataGrid1.Columns(53).Caption = "PMG手輪規格"
DataGrid1.Columns(54).Caption = "密碼鎖品牌"
DataGrid1.Columns(55).Caption = "密碼鎖規格"
DataGrid1.Columns(56).Caption = "第四軸品牌"
DataGrid1.Columns(57).Caption = "第四軸規格"
DataGrid1.Columns(58).Caption = "馬達規格"
DataGrid1.Columns(59).Caption = "油冷機品牌"
DataGrid1.Columns(60).Caption = "油冷極規格"
DataGrid1.Columns(61).Caption = "沖削水泵品牌"
DataGrid1.Columns(62).Caption = "沖削水泵規格"
DataGrid1.Columns(63).Caption = "光學尺品牌"
DataGrid1.Columns(64).Caption = "光學尺規格"
DataGrid1.Columns(65).Caption = "油水分離器品牌"
DataGrid1.Columns(66).Caption = "油水分離器規格"
DataGrid1.Columns(67).Caption = "工件測量器品牌"
DataGrid1.Columns(68).Caption = "工件測量器規格"
DataGrid1.Columns(69).Caption = "刀具測量品牌"
DataGrid1.Columns(70).Caption = "刀具測量器規格"
DataGrid1.Columns(71).Caption = "其它"

End Sub

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧