在水晶报表中筛选记录的三种解决方案……
2004-11-08 15:22
211 查看
目录:
一、解决方案一:报表数据访问使用推模型
二、解决方案二:记录选定公式运行时自定义
三、解决方案三:将参数合并到记录选定公式
----------------------------------
解决方案一:
报表数据访问使用推模型
需要开发人员编写代码以连接到数据库,执行 SQL 命令以创建与报表中的字段匹配的记录集或数据集,并且将该对象传递给报表。该方法使您可以将连接共享置入应用程序中,并在 Crystal Reports 收到数据之前先将数据筛选出来。
----------------------------------
解决方案二:
记录选定公式运行时自定义
1、通过查看器控件传递选定公式
[Visual Basic]
Dim SelectFormula As String
SelectFormula = "{客户.去年销售额} > " & textBox1().Text
crystalReportViewer1.SelectionFormula = SelectFormula
[C#]
string selectFormula;
selectFormula = "{客户.去年销售额} > " + textBox1.Text;
crystalReportViewer1.SelectionFormula = selectFormula;
[C++]
String* selectFormula;
selectFormula->Concat
("{客户.去年销售额} > ", textBox1->Text);
crystalReportViewer1->SelectionFormula = selectFormula;
2、通过报表对象传递选定公式
[Visual Basic]
Dim selectFormula As String
selectFormula = "{客户.去年销售额} > " & textBox1().Text
Report.DataDefinition.RecordSelectionFormula = selectFormula
[C#]
string selectFormula;
selectFormula = "{客户.去年销售额} > " + textBox1.Text;
Report.DataDefinition.RecordSelectionFormula = SelectFormula;
[C++]
String* selectFormula;
selectFormula->Concat
("{客户.去年销售额} > ", textBox1->Text);
Report->DataDefinition->RecordSelectionFormula = selectFormula;
3、刷新相应的报表,方法是使用以下代码行结束这段代码:
CrystalReportViewer1.RefreshReport()
该公式得以更新,将使用新的最小值(上年度的销售额)。
----------------------------------
解决方案三:
将参数合并到记录选定公式
参数字段不必放入报表中即可在记录或组选定公式中使用。创建参数字段,然后像插入其他字段那样将其输入到公式中。
用公式进行记录选定
若要减少从数据库服务器传输的数据量并改善性能,请将参数字段直接合并到记录选定公式中。
下面的记录选定公式提请用户输入销售配额,并只显示去年销售额超过销售配额的所有客户。
{客户.去年销售额} > {?SalesQuota}
需要开发人员编写代码在运行时传递参数值……
一、解决方案一:报表数据访问使用推模型
二、解决方案二:记录选定公式运行时自定义
三、解决方案三:将参数合并到记录选定公式
----------------------------------
解决方案一:
报表数据访问使用推模型
需要开发人员编写代码以连接到数据库,执行 SQL 命令以创建与报表中的字段匹配的记录集或数据集,并且将该对象传递给报表。该方法使您可以将连接共享置入应用程序中,并在 Crystal Reports 收到数据之前先将数据筛选出来。
----------------------------------
解决方案二:
记录选定公式运行时自定义
1、通过查看器控件传递选定公式
[Visual Basic]
Dim SelectFormula As String
SelectFormula = "{客户.去年销售额} > " & textBox1().Text
crystalReportViewer1.SelectionFormula = SelectFormula
[C#]
string selectFormula;
selectFormula = "{客户.去年销售额} > " + textBox1.Text;
crystalReportViewer1.SelectionFormula = selectFormula;
[C++]
String* selectFormula;
selectFormula->Concat
("{客户.去年销售额} > ", textBox1->Text);
crystalReportViewer1->SelectionFormula = selectFormula;
2、通过报表对象传递选定公式
[Visual Basic]
Dim selectFormula As String
selectFormula = "{客户.去年销售额} > " & textBox1().Text
Report.DataDefinition.RecordSelectionFormula = selectFormula
[C#]
string selectFormula;
selectFormula = "{客户.去年销售额} > " + textBox1.Text;
Report.DataDefinition.RecordSelectionFormula = SelectFormula;
[C++]
String* selectFormula;
selectFormula->Concat
("{客户.去年销售额} > ", textBox1->Text);
Report->DataDefinition->RecordSelectionFormula = selectFormula;
3、刷新相应的报表,方法是使用以下代码行结束这段代码:
CrystalReportViewer1.RefreshReport()
该公式得以更新,将使用新的最小值(上年度的销售额)。
----------------------------------
解决方案三:
将参数合并到记录选定公式
参数字段不必放入报表中即可在记录或组选定公式中使用。创建参数字段,然后像插入其他字段那样将其输入到公式中。
用公式进行记录选定
若要减少从数据库服务器传输的数据量并改善性能,请将参数字段直接合并到记录选定公式中。
下面的记录选定公式提请用户输入销售配额,并只显示去年销售额超过销售配额的所有客户。
{客户.去年销售额} > {?SalesQuota}
需要开发人员编写代码在运行时传递参数值……
相关文章推荐
- 水晶报表中筛选记录的三种解决方案
- 在水晶报表中筛选记录的三种解决方案……
- 在水晶报表中筛选记录的三种解决方案……
- [水晶报表]筛选记录三种解决方案
- 水晶报表的三种筛选方法
- Crystal 三种报表解决方案大对比:.NET 对象模型,报表应用服务器对象模型,水晶企业对象模型
- Crystal 三种报表解决方案大对比:.NET 对象模型,报表应用服务器对象模型,水晶企业对象模型
- 水晶报表 文件 xxxx{354234-523432-5235-325-2523}.rpt 文件内部出错:无法加载数据解决方案
- 部署水晶报表时的常见问题及解决方案
- 水晶报表部署的解决方案
- 部署水晶报表时的常见问题及解决方案整理
- vs2005 加载水晶报表时总是弹出数据库登陆窗体的解决方案
- 限定水晶报表每页显示记录条数
- 超高效提升水晶报表性能之下推记录选定 - 示例
- 水晶报表应用之登录失败及导出解决方案
- [水晶报表]重复记录显示一次
- [转载]部署水晶报表时的常见问题及解决方案
- 部署水晶报表时的常见问题及解决方案
- 部署水晶报表时的常见问题及解决方案
- VB.Net水晶报表:记录选择公式无效,显示出所有记录的解决方法