VB程序员博客
01 17th, 2010
问题:水晶报表已经设置好了,但在vb程序中如何显示出这个报表,请高人指点,新手还请明示。
Getmarg "", "tj.rpt"
FrmRpt!Report1.SelectionFormula = "{pjx.glid}=" & Val(glid) & " and {pjx.username}='" & ComputerName & "'"
FrmRpt!Report1.Formulas(0) = "a='" & Zcdwname & "统计表" & "'"
FrmRpt!Report1.Formulas(1) = "dw='" & Zcdwname & "'"
FrmRpt!Report1.Destination = 0
On Error Resume Next
FrmRpt!Report1.Action = 1
Sub Getmarg(title As String, filename As String)
Dim ssn As New ADODB.Recordset
ssn.Open "select * from report where title='" & title & "' and printer_type='" & PrinterSet & "'", cn
If Not ssn.EOF Then
FrmRpt!Report1.ReportFileName = ReportPath & ssn("filename")
FrmRpt!Report1.MarginLeft = ssn("marginleft")
FrmRpt!Report1.MarginTop = ssn("margintop")
Else
FrmRpt!Report1.ReportFileName = ReportPath & filename
End If
FrmRpt!Report1.Connect = "DSN=" & DsnName & ";UID=" & DatabaseLoginUid & ";PWD=" & DatabaseUserPwd & ";"
ssn.Close: Set ssn = Nothing
End Sub
01 6th, 2010
现在我在学习软件的打包。工程语言是VB6.0;水晶报表版本是V9.2简体中文版;打包工具是Installshield 2008简体中文版。
软件的打包需要“水晶报表的合并安装模块”,因为我不懂英文,所以我无法到水晶报表的官方网站去下载,所以我到这里来求助大家了,请有心的朋友能传一份给我,谢谢。我的邮箱是:xieyudada@163.com
我现在使用的水晶报表的版本是V9.2简体中文版,请问后面的版本有没有中文版的呢?比如10、11或12版等?如果有的话请告诉我一下下载地址,谢谢。
另外我现在使用水晶报表还碰到一个问题,在此请教。就是在调试工程的时候,打开“打印预览”窗体,调用水晶报表时会跳出警告:
"0×3c2ce642"指令引用的”0×00720111”内存。该内存不能为”read”。
或
"0×3c2ce670"指令引用的”0×00720111”内存。该内存不能为”written”。
我到网上看了帖子,有人只是简单的说了下,说是水晶报表的安装包的问题,要下载个新的就可以了。我抓瞎了,我不知道这个什么安装包到哪里下载,下载下来后又怎么操作呢?谢谢各位老师能够来帮助我。谢谢。
不好意思,我对我们论坛不太了解,请问图表区的路径是什么?然后怎么才能找到阿泰老师呢?当然,我依然希望能在这里有朋友能够帮到我,谢谢。
在。net板块下。
他一直在。
05 5th, 2009
頁頭 : id:3002
id1:20090101001
______________________________________________________
group by id1 為隱藏
______________________________________________________
prod amt
明細: 001 12
002 13
_______________________________________________________
頁腳: amt合計: 15
現在不知道這AMT合計怎么做出來
up
是你做的有问题吧,我过去没碰到过
這是老大咯問題
有人知道麼?
up
04 3rd, 2009
如题
Dim oApp As New CRAXDRT.Application
Dim oRpt As CRAXDRT.Report
Dim reportName As String
reportName = App.Path & "
eportquotation.rpt" '定义要引用的rpt文件
Set oRpt = oApp.OpenReport(reportName, 1)
oRpt.DiscardSavedData
oRpt.EnableParameterPrompting = False
oRpt.ParameterFields.GetItemByName("client_code").AddCurrentValue (cls.ClientModel.ClientCode)
oRpt.ParameterFields.GetItemByName("client_name").AddCurrentValue (cls.ClientModel.ClientName)
oRpt.ParameterFields.GetItemByName("quotation_code").AddCurrentValue (cls.QuotationCode)
oRpt.ParameterFields.GetItemByName("quotation_date").AddCurrentValue (g_Turn_Dtm_Str(cls.QuotationDate))
oRpt.ParameterFields.GetItemByName("client_person").AddCurrentValue cls.ClientModel.Linkman
oRpt.ParameterFields.GetItemByName("client_phone").AddCurrentValue cls.ClientModel.Phone
oRpt.ParameterFields.GetItemByName("client_fax").AddCurrentValue cls.ClientModel.Fax
oRpt.ParameterFields.GetItemByName("client_email").AddCurrentValue cls.ClientModel.Email
oRpt.ParameterFields.GetItemByName("client_address").AddCurrentValue cls.ClientModel.Address
oRpt.ParameterFields.GetItemByName("employee_name").AddCurrentValue cls.EmployeeModel.EmployeeName
oRpt.ParameterFields.GetItemByName("employee_phone").AddCurrentValue cls.EmployeeModel.Phone
oRpt.ParameterFields.GetItemByName("employee_fax").AddCurrentValue cls.EmployeeModel.Fax
oRpt.ParameterFields.GetItemByName("employee_email").AddCurrentValue cls.EmployeeModel.Email
oRpt.DataBase.SetDataSource cls.QuotationDetailRst '连接水晶报表和数据源
oRpt.ReadRecords
Dim frm As New frmPrint
frm.CRViewer1.ReportSource = oRpt
frm.CRViewer1.Refresh
frm.CRViewer1.ViewReport
frm.Show
————————————————–
报表中显示上面的那几个参数,含有中文的就乱码,
但是oRpt.DataBase.SetDataSource cls.QuotationDetailRst 数据集中的中文就没问题
我晕!!!知道了,我太糊涂了,是自体,我把参数的自体定为 Arial 了!!!不乱码才怪,换成宋体就好了
03 11th, 2009
我用的代码是:
Dim txta As TextObject
txta = oRpt.ReportDefinition.ReportObjects.Item("text11")
txta.Text = frmLogin.Text1.Text
数据库连接省略,想要将对话框frmlogin的text1的值赋给水晶报表的text11,为什么出错?谢谢!
就parameter是什么意思?
就是你定义参数,然后给参数传值一定不会错的
txta.text 是只读属性
赋值是
txta.SetText 方法
不过在vb里好像是不能
txta = oRpt.ReportDefinition.ReportObjects.Item("text11")
这样的吧
可以这样
Dim txta As TextObject
Set txta = objCRReport.Sections(1).ReportObjects.Item(1)
txta.SetText "zzz"
和这样
http://www.cnblogs.com/babyt/archive/2007/12/26/1016076.html
谢谢阿泰,这个问题困扰我很长时间了,用你的办法解决了。
我怎么给你奖励分呀?
这个页面上有“结贴去”这个按钮,点进去后,在后面的黄色框里输入每个人的得分,然后点 结贴 就可以了
11 24th, 2008
vb6.0中水晶报表上的sql表达式编辑器不见了
之前还用过,一段时间后重新修改这个程序的时候突然发现这个程序中的sql表达式编辑器变成了不可用状态,为什么呢?
此处生成了a.rpt文件
做过如下试验:
1.在此就程序基础上,重新建立一个CrystalReport,里面的sql表达式仍然不可以用.
2.重新新建一个程序,再新建一个报表,里面的sql是好用的。但是同样导入此a.rpt文件仍然不好用。
请高手解释,谢谢
我更新过了,可是仍然不存在
11 8th, 2008
本来是这样,我在“公式工作室”的 “格式化公式”的 “详细资料”里,我建立了 “在以下内容之前新建页”,我建立了一个公式,其中用道了这样一个条件,当
{out_pdf.OrderNo} <>{out_pdf.OrderNo} ,结果没不行,我认为是应该类似于
String orderno
orderno={out_pdf.OrderNo}
{out_pdf.OrderNo} <>{out_pdf.OrderNo}
所以先求的 orderno
请大家帮忙,我的想法对吗
要是不对,我该怎么做。
谢谢!!
条件绝对不是这么写的,你另想别的条件
up
多谢大家,!!
你用分组吧,那样能解决的
10 8th, 2008
我用vb开发了一个水晶报表打印程序, 原来使用的水晶报表11的版本, 我直接引用了几个水晶报表的Activex控件就可以了, 但是现在将水晶报表升级到了2008以后我发现兵没有出现2008版本的activex控件可供引用, 能否帮忙列出在vb中调用水晶报表2008所需要引用的链接库, 我在水晶报表11中一共引用了三个链接库, 在vb中显示的分别是Crystal report activex designer runtime library 11/crystal report activex designer design and runtime library 11/crystal report activex designer library 11,这样我就可以定义
Public crxDataBaseTable As CRAXDRT.DatabaseTable
Public crxApplication As New CRAXDRT.Application
Public CPProperty As CRAXDRT.ConnectionProperty
Public Report As CRAXDRT.Report
但是现在我在2008版本中找不到可以定义这些的链接库, 请高手指点一二,
09 25th, 2008
水晶报表中显示字段的顺序问题?如何为字段排序
是这样的,我数据库中顺序是1,2,3,4,5,筛选后为1,2,3在datagrid中,但是打印到水晶报表中就成了1,3,2了,怎么办呀。我把datagrid的记录集传给水晶报表,应该显示的是与datagrid相同的1,2,3顺序的3条记录呀!(备注:我在水晶报表中没用用函数,没有用group)。谢谢
09 25th, 2008
水晶报表中显示字段的顺序问题?如何为字段排序
是这样的,我数据库中顺序是1,2,3,4,5,筛选后为1,2,3在datagrid中,但是打印到水晶报表中就成了1,3,2了,怎么办呀。我把datagrid的记录集传给水晶报表,应该显示的是与datagrid相同的1,2,3顺序的3条记录呀!(备注:我在水晶报表中没用用函数,没有用group)。谢谢