Customization Changes
This content applies solely to Robotic Workforce Manager, which must be purchased separately from the Appian base platform. This content was written for Appian 21.3 and may not reflect the interfaces or functionality of other Appian versions.

Introduction

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 Business Exceptions page, there is a sub-tab and 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.

Creating a business exception process

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:

  1. Duplicate the following objects, but update their name and contents (if a constant object) to be specific to your business 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)
  2. Add the value of the duplicate of RWM_BUSINESS_EXCCEPTION_NAME_TEMPL to RWM_BUSINESS_EXCEPTION_NAME_LIST
  3. Add the RWM Business Exception Initialization process model as a subprocess call to an Appian process that encounters the business exception.
  4. Add the following inputs into the subprocess node:
    • 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
  5. Open your interface rule duplicated from 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.
  6. Replace rule 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.
  7. In your duplicate of RWM Business Exception Template, set as parameter process variables any variables that are needed from the duplicate of RWM_FM_businessException.
  8. You can optionally add in extra nodes for any additional operations.
  9. In your duplicate of 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.
  10. Update 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.
  11. Repeat the changes made to the duplicate of RWM_FM_businessException in the duplicate of RWM_RD_businessException.
  12. Update 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!

Automation Planner

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 module:

  • Customizing Roles
    • Customizing Role Name
    • Customizing Members
  • Customizing Status
    • Modifying Status Name
    • Adding New Status
  • Adding New Approval in Workflow

Request New RPA Process

The workflow of the RWM core application is illustrated below.

user_guide_request_rpa_process

Rationale

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.

Given below are instructions on how to customize the workflow.

Customizing Roles

Refer to - Security and Role-Based Access which is fully configurable.

Customizing Status

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.

Modifying Status Name

  • 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.
Adding Status

It has three steps:

  1. Adding to status list constant
  2. Adding to status index constant
  3. Adding to the status in rwm_lookup_status table

Adding to status list constant

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:

  • 1 - RWM_VAL_DEP_MAN_STATUS_REQUEST
  • 2 - RWM_VAL_DEP_MAN_STATUS_BIZ_COE_REVIEW
  • 3 - RWM_VAL_DEP_MAN_STATUS_TEC_COE_ANALYSIS
  • 4 - RWM_VAL_DEP_MAN_BUDGET_APPROVAL
  • 5 - RWM_VAL_DEP_MAN_STATUS_IN_DEV
  • 6 - RWM_VAL_DEP_MAN_STATUS_IN_PROD
  • 7 - RWM_VAL_DEP_MAN_STATUS_AI_REVIEW

If any new approval should be introduced, one constant should be created with the index as value. And all the status constants after this new status needs to be updated with value+1.

  • Do not delete the status constants since it drives the entire Request New RPA Process workflow.

Adding a New Step in Workflow

This section explains at a high level how to add a new step in the workflow.

  1. Adding a new step to the status
  2. Updating the Approval Interface
Adding a new step to the status

Refer to the section Adding Status.

Updating the Approval Interface

The existing interface - RWM_DM_FORM_requestNewRPAProcess is common for the below stages as they have the same content for review:

  • Business COE Review
  • Technical COE Review
  • Budget Approval
  • Start Project

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.

General Customization

The Charts, Grids, and Dashboards that are part of the Control Center module can be customized in the RWM application.

While customizing, the following points need to be followed:

All the below content will be overwritten while upgrading the application to the newer version. To handle it, below suggestions can be followed:

  • If the Appian version is 19.2, The DevOps can be used to see the difference between objects in the environments. The new version of the application can be compared with the customized environment.
  • It is recommended to make a copy of the existing object (Rule/Interface/Query Entity) and make the corresponding changes.

Charts/Grids

  • Colors can be customized.
  • The label of the chart content 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.

Dashboards

  • New charts, grids, other contents can be added.
  • Additional Dashboards can be added.

These are all the general guidelines for items that should not be customized.

  • Do not change the type of any columns in any CDT.
  • Do not change any of the CDT names.
  • Do not change the type of any columns in any table.
  • Do not change any of the table names.
  • Do not change the script for any View.
  • Do not change the script for any Stored Procedure.
  • Do not change the script for any Function.

For general guidelines on customization please refer to Backward Compatible Design: Planning for Subsequent Deployments.

Database support

Customize the RWM application to support Oracle DB apart from MySQL cloud DB.

Open in Github Built: Fri, Aug 12, 2022 (10:01:45 AM)

On This Page

FEEDBACK