请教datareport 急!!! 应该可以,查一个HELP, 最好是MSDN 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不用dataenvironment来实现分组好象不可能。 用临时表定义一个全局变量record看看下面代码,希望有点帮助Dim recde As ADODB.Recordset'打印按钮Private Sub Command4_Click()On Error Resume Next'建立打印数据源集合Data_printFor i = 1 To ListView2.ListItems.Count - 1 With recde .AddNew !field1 = ListView2.ListItems(i).Text !field2 = CSng(ListView2.ListItems(i).SubItems(1)) !field3 = CSng(ListView2.ListItems(i).SubItems(2)) !field4 = CSng(ListView2.ListItems(i).SubItems(3)) !field5 = CSng(ListView2.ListItems(i).SubItems(4)) !field6 = CSng(ListView2.ListItems(i).SubItems(5)) !field7 = CSng(ListView2.ListItems(i).SubItems(6)) !field8 = CSng(ListView2.ListItems(i).SubItems(7)) !field9 = CSng(ListView2.ListItems(i).SubItems(8)) .Update End WithNext iSet DataReport1.DataSource = recdeDataReport1.ShowEnd Sub'建立打印数据源集合Private Sub Data_print()Set recde = New ADODB.RecordsetWith recde .Fields.Append "Field1", adVarChar, 10 .Fields.Append "Field2", adSingle .Fields.Append "Field3", adSingle .Fields.Append "Field4", adSingle .Fields.Append "Field5", adSingle .Fields.Append "Field6", adSingle .Fields.Append "Field7", adSingle .Fields.Append "Field8", adSingle .Fields.Append "Field9", adSingle .CursorLocation = adUseClientEnd With recde.OpenEnd Sub 众合打表(原傻瓜打表)支持这种打印要求http://www.uepoch.com/http://sgreport.yeah.net 报表设计期间先用dataenvironment设计好报表的结构。再在程序运行期间更改dataenvironment的数据库连接和数据集,sql 用data shape 格式。下面代码可供参靠: ... cn_rpt_cnstr = "Provider=MSDataShape.1;Persist Security Info=True;Data Source=" cn_rpt_cnstr = cn_rpt_cnstr & serv & ";User ID=sa;Password=" + psd + ";Initial Catalog=" + my_db + ";Data Provider=SQLOLEDB.1" det_rpt.cn_rpt.CursorLocation = adUseClient det_rpt.cn_rpt.CommandTimeout = 10 det_rpt.cn_rpt.connectionstring = cn_rpt_cnstr det_rpt.cn_rpt.Open det_rpt.Commands.Item("rpt_fhtj_Grouping").commandtext = "SHAPE {SELECT * FROM v_sell_fhtj " + query_sql + "} AS rpt_fhtj COMPUTE rpt_fhtj BY 'depart','name','guige'" det_rpt.rsrpt_fhtj_Grouping.Source = "SHAPE {SELECT * FROM v_sell_fhtj " + query_sql + "} AS rpt_fhtj COMPUTE rpt_fhtj BY 'depart','name','guige'"' det_rpt.rsrpt_fhtj_Grouping.ActiveConnection = det_rpt.cn_rpt' det_rpt.rsrpt_fhtj_Grouping.Open det_rpt.Commands.Item("rpt_fhtj_Grouping").ActiveConnection = det_rpt.cn_rpt det_rpt.Commands.Item("rpt_fhtj_Grouping").Execute drt_fhtj_03.Show 1 ... On Error GoTo lable_0 det_rpt.rsrpt_fhtj_Grouping.Close det_rpt.cn_rpt.Closelable_0: Err.Clearend sub 关于VB, 从Excel表中复制数据到MSHflexgrid或msflexgrid的问题 dreamweaver连接access数据库的问题 在线求救急等 问有关条码编写的问题 关于一个水库水纹的曲线问题 请教一个ADO的问题,代码如下 大家帮我看看这个像法怎么写 :我统计了一下数据库中的数据,在数据库中随机取了一条记录。我怎样将这个记录取到窗体上来呢? 求助,提示类型不匹配 关于界面的问题 在做数据库时,增加记录时如何检查该记录是否已经存在,且效率较高 VB的问题 怎样使生成的exe 文件一开始就最大化?>
定义一个全局变量record
看看下面代码,希望有点帮助
Dim recde As ADODB.Recordset
'打印按钮
Private Sub Command4_Click()
On Error Resume Next'建立打印数据源集合
Data_printFor i = 1 To ListView2.ListItems.Count - 1
With recde
.AddNew
!field1 = ListView2.ListItems(i).Text
!field2 = CSng(ListView2.ListItems(i).SubItems(1))
!field3 = CSng(ListView2.ListItems(i).SubItems(2))
!field4 = CSng(ListView2.ListItems(i).SubItems(3))
!field5 = CSng(ListView2.ListItems(i).SubItems(4))
!field6 = CSng(ListView2.ListItems(i).SubItems(5))
!field7 = CSng(ListView2.ListItems(i).SubItems(6))
!field8 = CSng(ListView2.ListItems(i).SubItems(7))
!field9 = CSng(ListView2.ListItems(i).SubItems(8))
.Update
End With
Next i
Set DataReport1.DataSource = recde
DataReport1.Show
End Sub'建立打印数据源集合
Private Sub Data_print()
Set recde = New ADODB.Recordset
With recde
.Fields.Append "Field1", adVarChar, 10
.Fields.Append "Field2", adSingle
.Fields.Append "Field3", adSingle
.Fields.Append "Field4", adSingle
.Fields.Append "Field5", adSingle
.Fields.Append "Field6", adSingle
.Fields.Append "Field7", adSingle
.Fields.Append "Field8", adSingle
.Fields.Append "Field9", adSingle
.CursorLocation = adUseClient
End With
recde.Open
End Sub
http://www.uepoch.com/
http://sgreport.yeah.net
下面代码可供参靠:
...
cn_rpt_cnstr = "Provider=MSDataShape.1;Persist Security Info=True;Data Source="
cn_rpt_cnstr = cn_rpt_cnstr & serv & ";User ID=sa;Password=" + psd + ";Initial Catalog=" + my_db + ";Data Provider=SQLOLEDB.1"
det_rpt.cn_rpt.CursorLocation = adUseClient
det_rpt.cn_rpt.CommandTimeout = 10
det_rpt.cn_rpt.connectionstring = cn_rpt_cnstr
det_rpt.cn_rpt.Open
det_rpt.Commands.Item("rpt_fhtj_Grouping").commandtext = "SHAPE {SELECT * FROM v_sell_fhtj " + query_sql + "} AS rpt_fhtj COMPUTE rpt_fhtj BY 'depart','name','guige'"
det_rpt.rsrpt_fhtj_Grouping.Source = "SHAPE {SELECT * FROM v_sell_fhtj " + query_sql + "} AS rpt_fhtj COMPUTE rpt_fhtj BY 'depart','name','guige'"
' det_rpt.rsrpt_fhtj_Grouping.ActiveConnection = det_rpt.cn_rpt
' det_rpt.rsrpt_fhtj_Grouping.Open
det_rpt.Commands.Item("rpt_fhtj_Grouping").ActiveConnection = det_rpt.cn_rpt
det_rpt.Commands.Item("rpt_fhtj_Grouping").Execute
drt_fhtj_03.Show 1
...
On Error GoTo lable_0
det_rpt.rsrpt_fhtj_Grouping.Close
det_rpt.cn_rpt.Close
lable_0:
Err.Clear
end sub