Introduction
The previous lecture outlined the configuration of contract logics, so that end-users could set up promotions. When a contract was approved, a price record was created out of every contract line item.
...
Tip |
---|
For further insights into the distinctions between our on-demand learning paths and instructor-led training, please click here. |
Labs in this section require a specific training partition to complete. To request your training partition please write a request on this email: m arosmaros.grman@pricefx.com.
The partition request can take a few days to be processed, once the verification is finished you will receive the credentials by email.
Promotions in
...
Quoting
When an end-user — typically a sales representative — create a quote in the Quoting, he/she may not be aware of
...
The second part is trivial in the special case where the promotion is a simple discount. Therefore, this part will be left out of this document, but will be covered in the laboratory exercise.
Finding Promotions
The first challenge is to find the promotions that applies to a given product. The quote logic will be querying the Price Records table, and as such, rely on the fact that the price records stores all the conditions that were set up on the contract line item. Common conditions are
Validity
The time period during which the promotion is valid. Stored in the (price record) fields validAfter
and expiryDate
.
Customer group
A set of customers that can benefit from the promotion. Technically, it is a filter for the Customer Master table. Stored in the (price record) field customerGroup
.
Product group
A set of products for which the promotion applies. Stored in the (price record) field productGroup
.
...
Tip |
---|
The same type of filter can be used in other contexts, such as in dashboards — to find the promotions related to specific products and customers. |
Summary
To apply promotions to quote line items, query the Price Record table. As an argument, provide a list of filters to find the applicable promotions. Common filters are
...
Code Block |
---|
filters << Filter.or( api.productToRelatedObjectsFilter("PR", productId), Filter.isNull("productGroup") ) filters << Filter.or( api.customerToRelatedObjectsFilter("PR", customerId), Filter.isNull("customerGroup") ) |
References
Developer Documentation
...
Older Training Materials
...
Accelerators (access based on credentials)
...