Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 81 Next »

The product and customer inputs let the user pick a set of existing products and customers from the master data. The two inputs work in the same way, just use different tables for data selection.

Product

The product filter allows the user to provide a set of products as an input. The end user can either select products from a list, or provide a filter that will be used to query the product master table.

product fixed product dynamic
 Forms
def formFieldSet = api.createConfiguratorEntry()

formFieldSet.inputs = [
    api.inputBuilderFactory()
        .createProductGroupEntry('productGroup')
        .buildContextParameter()
]

return formFieldSet
 In input generation mode (input generation mode)
api.inputBuilderFactory()
        .createProductGroupEntry('productGroup')
        .getInput()
 In header Logics
processor.addOrUpdateInput(                 //❶
        'ROOT',
        api.inputBuilderFactory()
                .createProductGroupEntry('productGroup')
                .buildMap()
)

❶ the processor can be one of the quoteProcessor, cProcessor, etc., which references subclasses of the CalculableLineItemCollectionBuilder

 Reading input value
Reading input value in a line-item logic.
def value = input.productGroup as Map

Customer

The customer filter allows the user to provide a set of customers as an input. The end user can either select customers from a list, or provide a filter that will be used to query the customer master table.

customer fixed customer dynamic
 Forms
def formFieldSet = api.createConfiguratorEntry()

formFieldSet.inputs = [
    api.inputBuilderFactory()
        .createCustomerGroupEntry('customerGroup')
        .buildContextParameter()
]

return formFieldSet
 In input generation mode (input generation mode)
api.inputBuilderFactory()
        .createCustomerGroupEntry('customerGroup', )
        .getInput()
 In header Logics
processor.addOrUpdateInput(                 //❶
        'ROOT',
        api.inputBuilderFactory()
                .createCustomerGroupEntry('customerGroup')
                .buildMap()
)

❶ the processor can be one of the quoteProcessor, cProcessor, etc., which references subclasses of the CalculableLineItemCollectionBuilder

 Reading input value
Reading input value in a line-item logic.
def value = input.customerGroup as Map
  • No labels