在水晶报表中筛选记录的三种解决方案……
2003-11-19 12:21
225 查看
目录:
一、解决方案一:报表数据访问使用推模型
二、解决方案二:记录选定公式运行时自定义
三、解决方案三:将参数合并到记录选定公式
----------------------------------
解决方案一:
报表数据访问使用推模型
需要开发人员编写代码以连接到数据库,执行 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 对象模型,报表应用服务器对象模型,水晶企业对象模型
- 水晶报表的三种筛选方法
- 部署水晶报表时的常见问题及解决方案
- 水晶报表应用之登录失败及导出解决方案
- 水晶报表学习记录之二(数据库登陆问题)
- 摸索水晶报表时犯错记录
- VS水晶报表升级问题记录
- 部署水晶报表时的常见问题及解决方案
- [水晶报表]重复记录显示一次
- 遇到两个水晶报表的问题及解决方案
- VB.Net水晶报表:记录选择公式无效,显示出所有记录的解决方法
- 水晶报表自定义打印非完美解决方案 .
- 水晶报表编写高效记录选定公式的策略 -Crystal Reports
- 水晶报表使用学习记录(一)
- 水晶报表怎么在WEB页面上进行数据筛选!