Complex field filtering based on multiple attributes

Enable a UCCnetMessageReceive collaboration object to filter Catalogue Item Notifications based on a complex set of field criteria.

Filter rules

To enable a UCCnetMessageReceive collaboration object to filter Catalogue Item Notifications based on a complex set of field criteria, create an external text file that includes the complex filtering information. Specify the path and name of the file in the UCCnetMessageReceive collaboration object's COMPLEX_FILTER_FILE configuration property. This file can contain any number of sections on which the collaboration will filter, each section containing a fully qualified business object attribute and a comma-delimited list of valid values for the attribute. The collaboration object can search on multiple attribute name/value pairs combined with an AND separator, or on mutually exclusive groups of attribute name/value pairs separated by a NEXT separator. A file must be composed as follows:

Processing

The UCCnetMessageReceive collaboration object reads through the Complex Filter File until it finds an attribute name/value pair that is satisfied by the attribute name/value contained in the business object being processed. If the business object passes complex filtering, the collaboration object processes it normally. If the business object does not pass complex filtering, the collaboration handles it according to the value specified in the FILTER_FAIL_RESPONSE configuration property. If no file is specified in the COMPLEX_FILTER_FILE property, all items are accepted for further processing by the collaboration object. If an item satisfies the conditions of multiple filters, only the first filter in the file is ever considered.
notificationDetail.catalogueItemNotification.catalogueItem.tradeItem. \ 
tradeItemInformation.informationProviderOfTradeItem.informationProvider.gln 
00011112222333 
AND 
notificationDetail.catalogueItemNotification.catalogueItem.tradeItem. \ 
tradeItemInformation.classificationCategoryCode.additionalClassification[0]. \ 
additionalClassificationCategoryCode 
0001.001.001 
NEXT 
notificationDetail.catalogueItemNotification.catalogueItem.tradeItem. \ 
tradeItemInformation.informationProviderOfTradeItem.informationProvider.gln 
00011112222334 
AND 
notificationDetail.catalogueItemNotification.catalogueItem.tradeItem. \ 
tradeItemInformation.classificationCategoryCode.additionalClassification[0]. \ 
additionalClassificationCategoryCode 
0001.001.005 
END
The collaboration object checks if the business object being processed has a gln attribute value of 00011112222333 and an additionalClassificationCategoryCode attribute value of 0001.001.001. If it does, the business object is accepted and collaboration object processing continues.

If these first filter conditions were not satisfied, the collaboration object now proceeds to the attribute name/value following the NEXT separator. It checks if the business object has a gln value of 00011112222334 and an additionalClassificationCategoryCode attribute value of 0001.001.005. If it does, the business object is accepted and collaboration object processing continues. If it does not, the collaboration ends processing.

Parent topic: Filtering publication requests before business processing