You start by defining the sequence using the previous and upcoming events, for example: ESCALATED → APPROVE_WITH_FORM.
This means the officer must fill out the form before proceeding with the approval.
This officer form is used to capture a discounted price and require a file attachment before approving the application.
[
[
"ESCALATED-APPROVE_WITH_FORM",
{
"fields": [
{
"type": "sections",
"fieldGroup": [
{
"key": "pricingKh1Tl",
"props": { "label": "Set Price" },
"fieldGroup": [
{
"type": "block",
"key": "pricing5Fvg3",
"props": { "label": "Pricing" },
"fieldGroup": [
{
"type": "input",
"key": "OthernamesrT3ec",
"props": {
"label": "Discounted Price",
"placeholder": "Discounted Price"
},
"validation": {
"messages": { "required": "This field is required" }
}
},
{
"type": "customfileupload",
"key": "AttachmentlQVDE",
"props": {
"label": "File Attachment",
"required": true,
"placeholder": "Select file to upload",
"maximumUploadSize": 1000,
"minimumUploadSize": 1
},
"validation": {
"messages": {
"required": "This field is required",
"maximumUploadSize": "Maximum upload size exceeded",
"minimumUploadSize": "Minimum upload size not met"
}
}
}
]
}
]
}
]
}
]
}
]
]
This officer form requires the officer to upload an approval file (MOU approval file) as part of the approval process.
[
[
"ESCALATED-APPROVE_WITH_FORM",
{
"fields": [
{
"type": "sections",
"fieldGroup": [
{
"key": "MouapprovalfileKh1Tl",
"props": { "label": "MOU Approval File" },
"fieldGroup": [
{
"type": "block",
"key": "Uploadapprovalfile5Fvg3",
"props": { "label": "Upload Approval File" },
"fieldGroup": [
{
"type": "customfileupload",
"key": "AttachmentlQVDE",
"props": {
"label": "File Attachment",
"required": true,
"placeholder": "Select file to upload",
"maximumUploadSize": 1000,
"minimumUploadSize": 1
},
"validation": {
"messages": {
"required": "This field is required",
"maximumUploadSize": "Maximum upload size exceeded",
"minimumUploadSize": "Minimum upload size not met"
}
}
}
]
}
]
}
]
}
]
}
]
]