選擇公式執行階段自訂
您可以使用選擇公式來篩選您要包含在報表中的資料錄。您也可以指定群組和排序資料的欄位。
下列範例讓使用者在執行階段修改報表的選擇公式。這項作業可透過檢視器控制項或報表引擎來完成。關於選擇方法之詳細資訊,請參閱決定檢視器或報表引擎自訂。
若要在執行階段修改資料
建立報表,其使用使用範例資料庫 xtreme.mdb 中客戶資料表的報表)。
加入選擇公式 (包含下列公式):
{Customer.Last Year's Sales} > 11000.00
這個公式會傳回去年銷售量大於 $11,000.00 的客戶資料錄。
將 Text Box 和 Button 控制項加入表單。
使用者輸入最小值以顯示文字方塊中的去年銷售量,並按一下 Button 控制項將它傳送。
按兩下 Button 控制項以指定 Click 事件的程式碼。根據您使用的語言和引擎,請從下列範例中插入適當的程式碼。
透過檢視器控制項傳遞選擇公式
[Visual Basic]
Dim SelectFormula As String SelectFormula = "{Customer.Last Year's Sales} > " & textBox1().Text crystalReportViewer1.SelectionFormula = SelectFormula
[C#]
string selectFormula; selectFormula = "{Customer.Last Year's Sales} > " + textBox1.Text; crystalReportViewer1.SelectionFormula = selectFormula;
[C++]
String* selectFormula; selectFormula->Concat ("{Customer.Last Year's Sales} > ", textBox1->Text); crystalReportViewer1->SelectionFormula = selectFormula;
[VJ#]
String selectFormula; selectFormula = "{Customer.Last Year's Sales} > " + TextBox1.get_Text(); crystalReportViewer1.set_SelectionFormula(selectFormula);
透過報表物件傳遞選擇公式
[Visual Basic]
Dim selectFormula As String selectFormula = "{Customer.Last Year's Sales} > " & textBox1().Text Report.DataDefinition.RecordSelectionFormula = selectFormula
[C#]
string selectFormula; selectFormula = "{Customer.Last Year's Sales} > " + textBox1.Text; Report.DataDefinition.RecordSelectionFormula = SelectFormula;
[C++]
String* selectFormula; selectFormula->Concat ("{Customer.Last Year's Sales} > ", textBox1->Text); Report->DataDefinition->RecordSelectionFormula = selectFormula;
[VJ#]
String selectFormula; selectFormula = "{Customer.Last Year's Sales} > " + TextBox1.get_Text(); Report.get_DataDefinition().set_RecordSelectionFormula(selectFormula);
使用下列程式碼結束此程式碼區段以重新整理對應的報表:
CrystalReportViewer1.RefreshReport()
公式將更新,使用新的去年銷售量最小值。
請參閱
Web Form Viewer 的 SelectionFormula 屬性 | Windows Form Viewer 的 SelectionFormula 屬性