如何把mshflexgrid控件的内容方便地用报表控件预览打印,

skyzj 2003-08-22 06:32:44
如何把mshflexgrid控件的数据方便地用报表控件预览打印,mshflexgrid中的数据是
很多个表经过复杂的比较,查询才得到的,
什么报表控件比较好,data report ?水晶报表?
水晶报表很大,而且我不太熟悉,我怕系统在实际使用中出现授权等问题,或和vb6结合不好,各位高手使用中感觉如何?我是否要花点时间仔细看一下水晶报表?
是否它的功能要大很多?
...全文
79 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
aohan 2003-09-11
  • 打赏
  • 举报
回复
比较用一下下面的代码,应该会有所帮助,表名自己定吧
Private Sub CmdPrint_Click()
Dim str_mdb As String
CRptAcc.ReportFileName = App.Path & "\report\jzrbb.rpt"
str_mdb = "Driver={Microsoft Access Driver (*.mdb)};Uid=;Pwd=;Dbq= " & App.Path & "\report\report.mdb"
PUBmdb.Open str_mdb

PUBmdb.Execute "delete * from tmpprint"
Dim Y1 As Integer


StrSql = "select * from tmpprint"
PUByiliaoRS.Open StrSql, PUBmdb, adOpenKeyset, adLockPessimistic

MSG_RBB.Row = 0
MSG_RBB.Col = 0
Do While (Trim(MSG_RBB.Text) <> "")
PUByiliaoRS.AddNew
For Y1 = 0 To MSG_RBB.Cols - 2
MSG_RBB.Col = Y1
PUByiliaoRS.Fields(Y1) = Trim(MSG_RBB.Text)
Next Y1
PUByiliaoRS.Update
If MSG_RBB.Row < MSG_RBB.Rows - 1 Then
MSG_RBB.Row = MSG_RBB.Row + 1
MSG_RBB.Col = 0
Else
Exit Do
End If
Loop


'指定报表模板的数据来源
CRptAcc.DataFiles(0) = App.Path & "\report\report.mdb"
CRptAcc.Formulas(0) = "StrDate = '" & Left(Trim(StrBeging), 10) & "∽" & Left(Trim(StrEnd), 10) & " '"

Dim ianswer As String

ianswer = MsgBox("确认打印!", vbQuestion + vbYesNo, "系统提示")
If ianswer = vbYes Then
PUBmdb.Close
Set PUByiliaoRS = Nothing
On Error GoTo Prnerr:
CRptAcc.Action = 1
Exit Sub
Prnerr:
MsgBox "打印机错误"
Else
Set PUByiliaoRS = Nothing
PUBmdb.Close
End If

End Sub
killi 2003-09-11
  • 打赏
  • 举报
回复
关注ing。。。
Dublue 2003-09-11
  • 打赏
  • 举报
回复
不用,也不麻烦,就用datareport,在数据环境中建立command时用sql查询,一般都能搞定
abc10 2003-09-06
  • 打赏
  • 举报
回复
我是用PrintGrid打印预览控件
http://nj.onlinedown.net/soft/7089.htm
_西瓜皮_ 2003-09-06
  • 打赏
  • 举报
回复
用ACCESS打印.
skyzj 2003-08-23
  • 打赏
  • 举报
回复
是否可以这样做
在数据库中临时建立一张表,把mshflexgrid中的数据反存到临时表中,然后再把临时表中的数据直接用报表显示出来,这样很麻烦,大家有何意见
Alicky 2003-08-23
  • 打赏
  • 举报
回复
好难
skyzj 2003-08-23
  • 打赏
  • 举报
回复
是问题太难了吗?
还是人气不旺,每人愿意发表看法
hansblue 2003-08-22
  • 打赏
  • 举报
回复
帮你UP,不过人气好像不旺啊,我也想学习一下.
功能强大的免费VB打印控件(2010年5月7日修改),改正了原打印控件存的在缺陷,增加了VSFlexGrid表格的打印功能。 本控件系VB6.0编写,可直接打印VSFlexGrid表格、MSHFlexGrid表格的内容,并提供多种打印方式,分栏打印、横向跨页打印、工资条样式打印(可以把显示为0或空的内容打印)。本控件还可直接打印ListView控件、ADO记录、DAO记录、Datagrid控件Flexgrid控件内容 可完全按照VSFlex表格、MSHFlexGrid表格的显示进行打印,如果VSFlex表格、MSHFlexGrid表格中有图片,图片也会打印出来,如果有单元格合并,打印出来的结果单元格也是合并的。 控件提供textout函数输出文本内容,cellout函数输出一个单元格(与textout函数的区别是有边框),此两个函数都具有自动换页功能,即如果输出的文本大于1页,可以自动增加新页并打印到下一页。 控件还提供了输出图片的功能,使用CellOutPicture可能打印图片。 本控件可以打印眉页和页脚,还可以将打印内容(包括图片)保存为本控件专用的报表格式文件,以便以后打开预览打印(但不能更改页面格式)。 控件均以VB的内置单位TWIPS为计量单位,您可以使用本控件的cmtotwips方法将厘米换算成VB的twips,用mmtotwips将毫米换算成twips。 本次提供两个版的打印控件,简化版VB打印控件(有控件的源代码)与复杂版VB打印控件(功能更多,不提供源代码) 本控件附有VB使用实例,具体使用方法请参照实例。 如有疑问或建议,请联系 myyouping@hotmail.com myyouping@139.com
DownloadFilesservicedownload.htm 软件介绍: 版本: V2.0源码版概述: 本程序为通用打印程序,单据、会计凭证、发票清单、报表、任意复杂表格、合并表格如工矿企业合同都可以由系统提供的几个默 认打印对象组合打印。 DataGrid、DataTable、MSHFlexGrid等二维形式全部可以打印。 后期版本将陆续提供XML描述、SQL数据源的打印,并用管理器管理任意多个网格、文本对象、图象等,用户可以随意定义。 功能特点: 增加了:excle模板打印 打印预览、页面设置对话框 可以指定每个对象是否每页重复打印 可以调整套打 可以每页都显示当前页小计 可以为每页指定打印行数,小于等于0自适应,默认 可以打印装订线,分左装订和上装订,随意选择 打印有效区域矩阵,以在开发中参照 可以指定打印边框,分单边框,加粗单边框、双边框、加粗双边框等等 分页处理 背景颜色打印对象提供: 主标题 副标题 页顶(简单的一行三列打印样式,第一列居左,第三列居右,中间列居中) 网格头(任意行列数,正文网格主体之上的几行几列的标注说明) 网格标题(多层表头,任意合并,适应中国特点) 网格主体(清单、报表等等要打印的数据) 网格底(任意行列数) 页底(简单的一行三列打印样式,第一列居左,第三列居右,中间列居中)

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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