如何把mshflexgrid控件的数据方便地用报表控件预览打印,mshflexgrid中的数据是
很多个表经过复杂的比较,查询才得到的,
什么报表控件比较好,data report ?水晶报表?
水晶报表很大,而且我不太熟悉,我怕系统在实际使用中出现授权等问题,或和vb6结合不好,各位高手使用中感觉如何?我是否要花点时间仔细看一下水晶报表?
是否它的功能要大很多?
很多个表经过复杂的比较,查询才得到的,
什么报表控件比较好,data report ?水晶报表?
水晶报表很大,而且我不太熟悉,我怕系统在实际使用中出现授权等问题,或和vb6结合不好,各位高手使用中感觉如何?我是否要花点时间仔细看一下水晶报表?
是否它的功能要大很多?
在数据库中临时建立一张表,把mshflexgrid中的数据反存到临时表中,然后再把临时表中的数据直接用报表显示出来,这样很麻烦,大家有何意见
http://nj.onlinedown.net/soft/7089.htm
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_mdbPUBmdb.Execute "delete * from tmpprint"
Dim Y1 As Integer
StrSql = "select * from tmpprint"
PUByiliaoRS.Open StrSql, PUBmdb, adOpenKeyset, adLockPessimisticMSG_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 Stringianswer = 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 IfEnd Sub