The RWM application was deprecated with Appian 24.1. The application will no longer be updated or pre-installed for new Appian Cloud sites with Appian RPA enabled. RWM will be removed in a future release and we encourage customers to use the Operations Console to manage robots instead. |
Robotic Workforce Manager (RWM) is built on Appian's low-code platform and is as flexible as any application developed in Appian. In order to make sure your application remains scalable and aligns with best practices, this page guides you through some of the most common changes.
This guide intends to provide expert Appian designers with the best practices, guidelines, and recommendations for configuring RWM.
In the Control Center, on the Exceptions page, you can view statistics around business exceptions. Because business exceptions vary from organization to organization based on the Business Process Management (BPM) Appian processes created, the situations that generate business exceptions, as well as the content, can vary significantly. Thus, customization is necessary to display these exceptions.
RWM includes a business exception sub-process example described below to provide a standard process and case management interface. However, you aren't required to use this process for a business exception, as any process will work.
The following objects will be modified:
RWM_closedBusinessExceptions
RWM_FM_BusinessExceptionCollection
RWM_BUSINESS_EXCEPTION_NAME_LIST
To create a new business exception process:
RWM Business Exception Template
RWM_BUSINESS_EXCEPTION_NAME_TEMPL
RWM_BUSINESS_EXCEPTION_CASE_TITLE_TEMPL
RWM_FM_businessException
RWM_buttonLayoutForBusinessException
RWM_RD_businessException
RWM_PM_BUSINESS_EXCEPTION_CASE_MANAGEMENT
(populate this with process model duplicated from RWM Business Exception Template
)RWM_BUSINESS_EXCCEPTION_NAME_TEMPL
to RWM_BUSINESS_EXCEPTION_NAME_LIST
RWM Business Exception Initialization
process model as a subprocess call to an Appian process that encounters the business exception.businessExceptionId
: the unique identifier of the business exception case, which should be a foreign key to an ID of a separately created business exception table.businessExceptionName
: pass in the constant duplicated from RWM_BUSINESS_EXCEPTION_NAME_TEMPL
.caseTitle
: pass in the constant duplicated from RWM_BUSINESS_EXCEPTION_CASE_TITLE_TEMPL
.RWM_FM_businessException
, and update the section that contains text Custom Template
with your business exception's page contents. You can fetch necessary details using businessExceptionId
in the caseDetails
input.RWM_buttonLayoutForBusinessException
with your duplicate of it. Create local variables if extra values need to be stored from the previous step, and pass those into this this duplicate of RWM_buttonLayoutForBusinessException
.RWM Business Exception Template
, set as parameter process variables any variables that are needed from the duplicate of RWM_FM_businessException
.RWM_buttonLayoutForBusinessException
, update the process model constant in a!startProcess
with your constant duplicated from RWM_PM_BUSINESS_EXCEPTION_CASE_MANAGEMENT
, and input any values that are parameters of your duplicate of RWM Business Exception Template
.RWM_FM_BusinessExceptionCollection
with the interface duplicated from RWM_FM_businessException
in the bottom array, the third parameter of displayvalue
, passing in any relevant inputs, and the constant duplicated from RWM_BUSINESS_EXCEPTION_NAME_TEMP
in the top array, second parameter of displayvalue
.RWM_FM_businessException
in the duplicate of RWM_RD_businessException
.RWM_closedBusinessExceptions
with the interface duplicated from RWM_RD_businessException
in the bottom array, the third parameter of displayvalue
, passing in any relevant inputs, and the constant duplicated from RWM_BUSINESS_EXCEPTION_NAME_TEMP
in the top array, second parameter of displayvalue
.You have now created a custom business exception that is tailored to your organization's process and will appear in the exceptions report!
In the Automation Planner, Request New RPA Process is a process to request a new RPA automation. Using this feature, the requestor or a member of the CoE can track the specific automation request until the request is taken to production.
The below customizations are possible within the Automation Planner:
The workflow of the RWM core application is illustrated below.
Every organization has its own approval hierarchy to onboard any RPA process. The approval built in this application can be customized as per the Organization needs.
This section describes how to customize the workflow.
Refer to - Security and Role-Based Access which is fully configurable.
The process has the following statuses for each step in the workflow. These values are mentioned in the constant - RWM_VAL_PROCESS_STATUS
and RWM Database - RWM_LOOKUP_STATUS
table.
The value of the constant can be changed to update the status name. It will be changed in the new version of the application is imported in the environment.
It has three steps:
RWM_lookup_status
table
The status needs to be added in the constants RWM_VAL_PROCESS_STATUS
and RWM_LOOKUP_STATUS
.
Adding to status index constant
There is another set of constants which has the index of each status. Information is given below:
RWM_VAL_DEP_MAN_STATUS_REQUEST
RWM_VAL_DEP_MAN_STATUS_BIZ_COE_REVIEW
RWM_VAL_DEP_MAN_STATUS_TEC_COE_ANALYSIS
RWM_VAL_DEP_MAN_BUDGET_APPROVAL
RWM_VAL_DEP_MAN_STATUS_IN_DEV
RWM_VAL_DEP_MAN_STATUS_IN_PROD
RWM_VAL_DEP_MAN_STATUS_AI_REVIEW
If any new approval should be introduced, one constant should be created with the index as value. All status constants after this new status need to be updated with value + 1.
Do not delete the status constants since it drives the entire Request New RPA Process workflow.
This section explains at a high level how to add a new step in the workflow.
Refer to the section Adding Status.
The existing interface - RWM_DM_FORM_requestNewRPAProcess
is common for the below stages as they have the same content for review:
The status field in the process input is the driving factor to show the feedback given by the previous approver. For the new stage, the comment section should be added and configured to conditionally shown based on the stage.
If additional data points are required, create an additional CDT with one to one mapping to the solution CDT and add the new data points there. This will require an additional query entity and write to datastore. This will make the future upgrade more difficult as several of the solution objects such as process models and interfaces must also be updated to accommodate the new data.
Do not introduce any new fields in the user interface. The reason for this is that when updating the application, the user interface being imported will not have this field, and this field will need to be manually re-created with each application update. To avoid this issue, the interface can be copied and that can be used in the User Input Task instead.
Do not change the solution CDT (RWM_PROCESS_ONBOARDING
, RWM_PROCESS
, RWM_VALUE_ASSESSMENT
) because they will be overwritten by the next version of the RWM application.
The charts, grids, and dashboards that are part of the Control Center site can be customized in the RWM application.
Customized content will be overwritten while upgrading the application to the newer version. To avoid this:
Chart colors and labels can be customized.
Do not change the View/Stored Procedure content. If any database content is changed that can override the current functionality of the charts and that also may have an impact on other functionalities if they were reused.
New charts, grids, and dashboards can be added.
These are all the general guidelines for items that should not be customized.
See Preparing to Upgrade RWM to see whether a specific object can be modified or not.
For general guidelines on customization please refer to Backward Compatible Design: Planning for Subsequent Deployments.
Customize the RWM application to support Oracle DB apart from MySQL cloud DB.
Customization Changes