Modifying an existing filter formula

Parent Previous Next

 

Report Application Server .NET SDK Developer Guide

Modifying an existing filter formula

See Also 

 







Existing filter formulas in a report can be modified two ways:

Visual Basic

Private Sub ModifyFilterUsingSetText(ByVal rcd As ISCDReportClientDocument)
 Dim dataDefController As DataDefController = rcd.DataDefController
 Dim recordFilterController As FilterController = dataDefController.RecordFilterController
 recordFilterController.SetFormulaText("{Customer.Last_Years_Sales} > 200000")
End Sub

C#

private void ModifyFilterUsingSetText(ISCDReportClientDocument rcd)
{
 DataDefController dataDefController = rcd.DataDefController;
 FilterController recordFilterController = dataDefController.RecordFilterController;
 recordFilterController.SetFormulaText("{Customer.Last_Years_Sales} > 200000");
}

This method completely replaces the existing filter formula with the new string.

Visual Basic

Private Sub ModifyFilterUsingFilterItems(ByVal rcd As ISCDReportClientDocument)
 Dim dataDefController As DataDefController = rcd.DataDefController
 Dim recordFilterController As FilterController = dataDefController.RecordFilterController
 Dim oldRecordFilter As Filter = rcd.DataDefController.DataDefinition.RecordFilter
 Dim newRecordFilter As Filter = oldRecordFilter.Clone(True) 
 newRecordFilter.FreeEditingText = "{Customer.Last_Years_Sales} > 200000"
 recordFilterController.Modify(newRecordFilter)
End Sub

C#

private void ModifyFilterUsingFilterItems(ISCDReportClientDocument rcd)
{
 DataDefController dataDefController = rcd.DataDefController;
 FilterController recordFilterController = dataDefController.RecordFilterController;
 Filter oldRecordFilter = rcd.DataDefController.DataDefinition.RecordFilter;
 Filter newRecordFilter = oldRecordFilter.Clone(true);
 newRecordFilter.FreeEditingText = "{Customer.Last_Years_Sales} > 200000";
 recordFilterController.Modify(newRecordFilter);
}

This method allows you to select and change the fields, values, and operators of the existing formula.

NoteNote

When the report is programmatically opened as a ReportClientDocument object, the formula is parsed into a FilterItems collection. However, if the formula is too complex to be parsed, the FilterItems collection remains empty and the string representation of the formula can be retrieved and set using the FreeEditingText property of the Filter class instead.

This list includes the namespaces used by the sample code:

See Also

© 2021 SAP AG. All rights reserved.

http://www.sap.com/sapbusinessobjects/

Support services

http://service.sap.com/bosap-support/

Created with the Personal Edition of HelpNDoc: Easily create HTML Help documents