...
Paste code macro | ||||
---|---|---|---|---|
| ||||
def rebateTypeName = "RebateOnSale" //Name of existing Rebate Type
def customerId = "CD-00001" //ID of existing customer
def inputFieldOnRebateType = "Rebate discount %" //name of input field on the Rebate Type
def lineItemId = "1234567890" //this should be generated by random generator such as api.uuid(), but ok for first understanding
def agreementLabel = api.stringUserEntry("Agreement Name")
//create a builder for new Agreement, and setup the important header input fields
builder = ratBuilder.fromParams([
"label" : agreementLabel,
"startDate" : api.parseDate("yyyy-MM-dd", "2017-01-01"),
"endDate" : api.parseDate("yyyy-MM-dd", "2017-12-31"),
"payoutDate": api.parseDate("yyyy-MM-dd", "2018-02-01"),
"targetDate": api.parseDate("yyyy-MM-dd", "2016-12-01"), //calculationDate
])
//set the value of "Customer(s)" input on header level
builder.addOrUpdateInput("ROOT", [
"label" : "Customer(s)",
"name" : "CustomerGroup",
"type" : InputType.CUSTOMERGROUP,
"value" : [
"customerFieldLabel": "Customer Id",
"customerFieldName" : "customerId",
"customerFieldValue": customerId
],
"valueHint": customerId
])
//create new line with given existing contract type and setting a value of its input field
builder.addLineItemWithId(lineItemId, rebateTypeName)
.addOrUpdateInput(lineItemId, [
"name" : inputFieldOnRebateType,
"label": inputFieldOnRebateType,
"type" : InputType.USERENTRY,
"value": 10
])
builder.build() |
...