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 54 Next »

The number inputs lets the user provide a number.

Decimal

Decimal inputs only lets the end-user type decimal numbers.

decimal
The return type is not guaranteed to be of type BigDecimal. Therefore, always cast to BigDecimal when you read the input value:
 Forms
def formFieldSet = api.createConfiguratorEntry()

formFieldSet.inputs = [
    api.inputBuilderFactory()
        .createUserEntry('decimal')
        .buildContextParameter()
]

return formFieldSet
 In input generation mode (syntax check mode)
api.inputBuilderFactory()
        .createUserEntry('decimal')
        .getInput()
 In header Logics
processor.addOrUpdateInput(
        'ROOT',
        api.inputBuilderFactory()
                .createUserEntry('decimal')
                .buildMap()
)
 Reading input value
Reading input value in a line-item logic.
def value = input.decimal as BigDecimal

Integer

Integer inputs only lets the end-user provide integers:

integer
 Forms
def formFieldSet = api.createConfiguratorEntry()

formFieldSet.inputs = [
    api.inputBuilderFactory()
        .createIntegerUserEntry('integer')
        .buildContextParameter()
]

return formFieldSet
 In input generation mode (syntax check mode)
api.inputBuilderFactory()
        .createIntegerUserEntry('integer', )
        .getInput()
 In header Logics
processor.addOrUpdateInput(
        'ROOT',
        api.inputBuilderFactory()
                .createIntegerUserEntry('integer')
                .buildMap()
)
 Reading input value
Reading input value in a line-item logic.
def value = input.integer as Integer

Minimum and Maximum Values

You can restrict the set of values that the end-user can provide to the input, by using the setMin() and setMax() methods:

api.inputBuilderFactory()
        .createIntegerUserEntry('NaturalNumber')
        .setMin(0)
        .getInput()
As at version 7.3, the input validation has not been implemented in the frontend application. However, you can still set these properties in the Groovy logic:
  • No labels