BPM Online: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
=BPM Online Advanced Filtering= | =BPM Online (OData) Advanced Filtering= | ||
Sometimes it is necessary to filter BPM Online in ways that are not possible through a SQL statement. You may use the 'Filter' virtual field to override the filter that is sent to the BPM OData web service. 'Filter' will show up as a field for all tables. It is possible to match on this column or perform a SmartLookup on it. In the value for this field you will supply the full filter in the OData Query format http://www.odata.org/documentation/odata-version-2-0/uri-conventions/#FilterSystemQueryOption. | Sometimes it is necessary to filter BPM Online in ways that are not possible through a SQL statement. You may use the 'Filter' virtual field to override the filter that is sent to the BPM OData web service. 'Filter' will show up as a field for all tables. It is possible to match on this column or perform a SmartLookup on it. In the value for this field you will supply the full filter in the OData Query format http://www.odata.org/documentation/odata-version-2-0/uri-conventions/#FilterSystemQueryOption. | ||
Revision as of 17:15, 3 January 2019
BPM Online (OData) Advanced Filtering
Sometimes it is necessary to filter BPM Online in ways that are not possible through a SQL statement. You may use the 'Filter' virtual field to override the filter that is sent to the BPM OData web service. 'Filter' will show up as a field for all tables. It is possible to match on this column or perform a SmartLookup on it. In the value for this field you will supply the full filter in the OData Query format http://www.odata.org/documentation/odata-version-2-0/uri-conventions/#FilterSystemQueryOption.
Filter Example
This is an example of a query you would supply in the Filter column when matching on it.
Account/Id eq guid'1de420aa-9577-46ac-8326-c3a566a58c3b'
Coded SmartLookup Example
This example would filter Contacts on the Contact's related Account ID, returning the Surname field.
ScriptedField=SmartLookup("ContactCollection", "Surname", "Filter = Account/Id eq guid'1de420aa-9577-46ac-8326-c3a566a58c3b'")
SQL SELECT Example
This example would filter for Products related to a single Order. This example would be used as your SQL Selection Statement when using BPM as your Origin.
SELECT * FROM OrderProductCollection WHERE Filter = 'Order/Id eq guid''e1d0c2ab-7d41-4e23-b040-3ba524778063'''