VB.Net水晶报表:记录选择公式无效,显示出所有记录的解决方法

本文介绍了解决VS2010环境下水晶报表记录选择公式失效的问题,通过删除特定代码解决了编译后报表显示所有记录的情况。

[原]VB.Net水晶报表:记录选择公式无效,显示出所有记录的解决方法

2013-12-28阅读256 评论0

水晶报表从vs2005-vs2008升级到vs2010时候,

在vs2010里面预览是正确的,包括输入参数,显示的记录也是正确的。

但是编译后打开报表却会显示出所有记录。也就是记录选择公式不起作用。

开始以为是开发环境有问题,还是水晶报表报表兼容问题。重新安装vs2010,Crystal Reports13.0.5 都不行。

查找了很多网站终于找到了
再里面有个链接到:

里面提示把:Form1.Designer.vb|cs的下面两句删除掉。

this.crystalReportViewer.SelectionFormula = ""

this.crystalReportViewer.ViewTimeSelectionFormula = ""


VB是:



Me.crystalReportViewer.SelectionFormula = ""

Me.crystalReportViewer.ViewTimeSelectionFormula = ""


经过测试,终于搞定了。



PS:项目是2012年修改升级过来。又遇到这个问题了。哎。
VB.NET中使用水晶报表进行报表开发,主要涉及以下几个关键步骤: 1. **安装与配置水晶报表环境** 在开始开发之前,需要确保已正确安装水晶报表运行时和设计器。水晶报表通常作为SAP的独立产品提供,支持与Visual Studio集成[^1]。安装完成后,需在ASP.NET项目中添加对水晶报表组件的引用,如`CrystalDecisions.CrystalReports.Engine`、`CrystalDecisions.Shared`等。 2. **创建报表文件(.rpt)** 使用Visual Studio中的“新建项”功能,选择水晶报表”模板来创建一个新的`.rpt`文件。随后会打开水晶报表设计器界面,允许开发者设计报表布局并绑定数据源[^2]。 3. **设置数据源连接** 水晶报表支持多种类型的数据源,包括但不限于SQL Server、Oracle、Access、OLE DB、ODBC等[^4]。可以在报表设计器中通过“数据库专家”来选择合适的数据源,并建立相应的连接字符串。 4. **设计报表结构** 在报表设计器中,可以通过拖拽字段的方式将所需数据字段放置到报表的不同节区,例如页眉(Page Header)、细节(Details)、页脚(Page Footer)等区域。此外,还可以插入图表、子报表公式字段等内容以丰富报表展示效果[^2]。 5. **绑定数据并在VB.NET代码中加载报表** 在VB.NET应用程序中,可以使用以下方式加载并显示报表: ```vb.net Dim report As New ReportDocument() report.Load(Server.MapPath("~/Reports/YourReport.rpt")) ' 设置数据集或数据表作为数据源 Dim ds As DataSet = GetDataFromDatabase() ' 自定义方法获取数据 report.SetDataSource(ds) ' 将报表绑定到CrystalReportViewer控件 CrystalReportViewer1.ReportSource = report ``` 上述代码展示了如何从服务器路径加载报表文件,并将其数据源设置为一个数据集对象,最后通过`CrystalReportViewer`控件呈现给用户[^1]。 6. **参数化查询与动态报表生成** 如果希望根据用户的输入或其他条件动态改变报表内容,则可以利用水晶报表提供的参数功能。先在报表中定义参数字段,然后在VB.NET代码中传递实际值: ```vb.net Dim paramFields As New ParameterFields() Dim paramField As New ParameterField() Dim discreteVal As New ParameterDiscreteValue() paramField.Name = "YourParameterName" discreteVal.Value = "ParameterValue" paramField.CurrentValues.Add(discreteVal) paramFields.Add(paramField) CrystalReportViewer1.ParameterFieldInfo = paramFields ``` 7. **导与打印功能实现** 水晶报表还提供了丰富的导选项,支持PDF、Excel、Word等多种格式。开发者可以通过编程方式触发导操作或将此功能集成进Web页面供用户自行选择。同时,也可以启用内置的打印按钮让用户直接打印当前报表内容[^4]。 8. **异常处理与性能优化** 在实际部署应用时,应注意处理可能现的各种错误情况,比如数据库连接失败、无效的数据源等问题。另外,对于大型数据集或者复杂计算较多的报表,建议采用分页加载、缓存机制等方式提升响应速度和用户体验。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值