BPM Online: Difference between revisions

From Starfish ETL
Jump to navigation Jump to search
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'''