Customizing sign-off workflow UI
The Sign-Off Module provides a configuration file,settings.js, 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 mra-product-control-ui/src/settings.js
Dynamically updating the Sign-off Toolbox
To perform workflow actions on the tasks, the Sign-Off 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 settings.js 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 MRA: ['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 avay |
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 | |
Specify how to display buttons that are not relevant for the current state of the workflow:true : hiddenfalse : just disabled |
hideDisabledButtons | |
Configure Sign-off 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 | |
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 | |
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 |
Server names for which sign-off is enabled/used (e.g. [“MRA”]) | expectedSignOffServerNames | |
List of pre-defined possible reasons for the adjustments (e.g. [“Wrong Market Data”, “Missing Trade”, “Wrong Input Data”, “Other”]) | adjustmentsReasons | |
Map input value key and the type of input required. e.g. If the key of input is “AsOfDate” - it will require date input. If it is “Currency”, it will have to be String input. Configuration will look like this: adjustmentsInput :{ Currency : “userInputTextValue”, Values: “userInputNumberValue”, AsOfDate : “userInputDate” } |
adjustmentsInput | |
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 |