Customizing sign-off workflow UI
The Sign-Off Module provides a configuration file, SignOffSettings.ts, that contains the configuration for the default sign-off workflow UI that you can customize to suit your requirements.
The file is stored in the delivered source code for the UI, in /signoff-ui/src/configurations/SignOffSettings.ts
Dynamically updating the Task Toolbox
To perform workflow actions on the tasks, the Task Toolbox widget enables and disables the relevant buttons (for example, Initiate, Approve, and Reject) for the workflow type assigned to the task. These buttons are defined as endpoints in the SignOffSettings.ts configuration file. You can use this file to dynamically update the workflow type for different user groups by configuring and adding any buttons and endpoints that you want to trigger.
The following table summarizes the extensions and customizations available.
Element | Customization | Property |
---|---|---|
Workflow | Add or change states in the status transition flow | signOffTaskStatusNames |
Set the servers and relevant Cubes that are available for sign-off. The object key is the server name and the value is the array of Cubes to use within that server. For example MR: ['VaR-ES Cube', 'Sensitivity Cube'] For each server listed, you must also set additional configurations in the env.js file. See Configuring multiple servers for sign-off in env.js |
signOffServers | |
Config that maps to the Activiti config on the backend. In the default, 4-eyes has a two-step approval and Simple only requires one approver who can approve straight away |
signOffWorkFlowMap | |
Actions that are allowed for different roles for different workflow types. You must map this to the Activiti config in the backend. See Customizing sign-off backend. | signOffRoleActionMap | |
Configure Task Toolbox widget. * Create buttons that perform certain actions in the workflow depending on the user role. Example In 4-eyes workflow: Allow examiners to initiate, request approval and cancel request. Restrict managers to approve/reject buttons. Buttons are enabled depending on the status of the task: actionStatusesAllowed. Endpoint is part of the URL: https://activePivotSignOffServer:9090/sign-off-process-instance/{endpoint} * For each button, set the isPrimary property to specify how the button is to be displayed:* true : as its own separate button* false : it is added to the More… dropdown |
signOffButtonInformation | |
Server names for which sign-off is enabled/used (e.g. [“MR”]) | availableApplicationServers | |
Status Info | Set the status for the first action with the daily task. The REST call to get to this status starts an instance for the selected as-of-date. | startDailyProgressStatus |
Colors and percentages for the statuses in the Task Completion widget | signOffStatusProgress | |
Sign-off task instance statuses for which text will appear red to indicate that something has failed | failedStatuses | |
Status in sign-off task audit that is assigned after Taking snapshot/Rollback is performed after the first initial snapshot (all adjustments are deleted) | rollbackStatus | |
Boolean value to hide irrelevant buttons in the toolbox instead of disabling them. For example, if the status is Request approval, the “Request approval” button would be hidden as it would not be available for that status. |
areWorkflowButtonsHidden | |
Sign-off task definition statuses for which archiving is enabled | allowedStatusForArchive | |
Sign-off task definition statuses for which publishing is enabled | allowedStatusForPublish | |
Sign-off task definition statuses for which deletion is enabled | allowedStatusForDelete | |
Sign-off task definition statuses for which editing is enabled | allowedStatusForEdit | |
Adjustments | What information to display in an adjustments pop-over, e.g. [“TradeId, “Book”, “Desk”]. Used to only show important information without overcrowding the bookmark with all available information from the location. |
adjustmentsPopoverInformationDisplay |
Remove the ability to change ValidFrom date in the popover when creating the adjustment. Possible values are true and false which you can change in the env.js file. |
isValidFromDisabledForAdjustments |