This content applies solely to Connected Onboarding, which must be purchased separately from the Appian base platform. This content was written for Appian 23.3 and may not reflect the interfaces or functionality of other Appian versions. |
The Connected Onboarding solution is designed to be customized to your organization's particular needs. The various interfaces in the out-of-the box solution contain dropdown lists. Some dropdown values such as Onboarding Type and Product Type, a business user can change in the Connected FS Settings Site. However, if you need to modify a dropdown field that is not accessible through Connected FS Settings, you can modify the values by modifying reference data tables. For example, you can add or delete values that display in the Address Type dropdown list.
This page outlines how to modify the values that can be chosen from dropdown lists in the various interfaces of the Connected Onboarding solution.
See the Reference Data Tables page for descriptions of the table structures.
Dropdown values that cannot be set in the Connected FS Settings site are stored in the AS_IO_R_DATA
table. Updating this table allows you control what dropdown values and lists display to end users moving through the Onboarding process. See the Connected Onboarding only reference data table on the Reference Data Tables page for a description of the table structure.
To add a value to a dropdown list:
AS_IO_R_DATA
table.NULL
. There is a default AUTO_INCREMENT
setting on this table, so that any new rows you insert with a NULL
primary key will begin at 100,000 and increment from there.After the row is inserted, this value will be available in any of the dropdown lists that have the same reference TYPE
as the value you inserted.
To add a new dropdown value, you could use the following SQL statement, replacing the values in brackets (< >) with your data. Note that this example uses MySQL syntax.
1
2
3
INSERT INTO `AS_IO_R_DATA` (`R_DATA_ID`, `LABEL`, `TYPE`, `CODE`, `IS_ACTIVE`, `CREATED_BY`, `CREATED_DATETIME`, `MODIFIED_BY`, `MODIFIED_DATETIME`)
VALUES (null, '<New Label>', '<Type>', '<Code>', 1, '<Username>', CURRENT_TIMESTAMP(), '<Username>', CURRENT_TIMESTAMP()),
(null, '<New Label>', '<Type>', '<Code>', 1, '<Username>', CURRENT_TIMESTAMP(), '<Username>', CURRENT_TIMESTAMP());
If there is a value in a dropdown list that is no longer needed, deactivate the value by changing the IS_ACTIVE
value in the AS_IO_R_DATA
from 1 (true) to 0 (false).
Note: Deactivating an Onboarding status or task status is not recommended, as it will negatively affect other aspects of the solution.
After the update is made, this value will no longer display in any dropdown list. The value will still display for already active and historical data.
Note: Deleting data from the table is not recommended except during initial set up. If the solution is already in use, deleting data rather than deactivating it may cause issues.
To deactivate a dropdown value, you could use the following SQL statement. Replace <ID Being Updated>
with the R_DATA_ID value. For example, to deactivate the FEE_RATE_MONTHLY in the following example table, <ID Being Updated>
with the R_DATA_ID
value.
R_DATA_ID | LABEL | TYPE | CODE | IS_ACTIVE |
---|---|---|---|---|
24 | FeeRate.lbl_Annual | Fee Rate | FEE_RATE_ANNUAL | 1 |
25 | FeeRate.lbl_Monthly | Fee Rate | FEE_RATE_MONTHLY | 1 |
Note that this example uses MySQL syntax.
1
UPDATE AS_IO_R_DATA SET IS_ACTIVE = 0 WHERE R_DATA_ID = <ID Being Updated>
If you want to add a new dropdown list, you need to create a new dropdown list type.
There are two main steps to add a new dropdown list:
AS_IO_R_DATA
table. See Adding new dropdown values for instructions on how to add new rows.
TYPE
column, enter a name for the new dropdown list, such as Entity Region.CODE
column, enter a short prefix to associate with the new dropdown list type, along with a number to give it a unique identifier. For example, ENTITY_REGION_ASIA.After a new dropdown list type has been added to the AS_IO_R_DATA
table, it will need a constant to point to it in order to be used in interfaces.
AS_IO_REF_TYPE_
<NEW_DROPDOWN_LIST_TYPE>
. For example AS_IO_REF_TYPE_ENTITY_REGION
.
TYPE
column of the AS_IO_R_DATA
table. For example, if the name in the TYPE
column is Entity Region, the value here must be the same.After the dropdown list constant has been created, the list is ready to be used by the AS_IO_QE_getRefDataByType
rule. This rule pulls all of the reference data onto the interface that needs a reference value. AS_IO_QE_getRefDataByType
takes in typelist—an array of text—corresponding to the type values in the database you need to use.
To pull in the Fee Rate or Entity Type dropdown lists, you would use the rule as shown below:
1
2
3
4
5
6
7
8
9
local!refData: rule!AS_IO_QE_getRefDataByType(
typelist: {
/* Request Status */
cons!AS_IO_REF_TYPE_FEE_RATE,
/* Onboarding Type */
cons!AS_IO_REF_TYPE_ENTITY_TYPE
}
)
As shown in the example, you can pass in either text or a constant of type text with the corresponding dropdown list type.
Tip: Remember that AS_IO_QE_getRefDataByType
is a query. In order to minimize the number of queries, it is best practice to avoid calling your reference data in sub-interfaces. Instead, query for all of the reference data on the main form and pass it to the sub-interfaces using rule inputs.
If you are using Connected Onboarding in multiple languages, the reference data needs to be internationalized in order to show the user the dropdown values in their native language.
To do so, you will only need one entry in the AS_IO_R_DATA
table for each value, but you will need to have a bundle (or document file) based on the default language that the user has selected.
The LABEL
column of AS_IO_R_DATA
will act as a key for the application to show the proper label based on which bundle is selected. The LABEL
consists of <bundleName>
.<labelName>
.
For example, the LABEL
FeeRate.lbl_Annual has a bundle called FeeRate and a label name lbl_Annual.
R_DATA_ID | LABEL | TYPE | CODE | IS_ACTIVE |
---|---|---|---|---|
23 | FeeRate.lbl_Annual | Fee Rate | FEE_RATE_ANNUAL | 1 |
The FeeRate_en_US
bundle will show the following:
1
2
3
4
...
lbl_Annual=Annual
lbl_Monthly=Monthly
...
The FeeRate_es
bundle will show the following:
1
2
3
4
...
lbl_Annual=Anual
lbl_Monthly=Mensual
...
Both dropdown values use the same LABEL
to reference the correct translation.
After the additional translations are in the bundle, end users will be able to view the dropdown values in their native language.
If you are adding a new language, you will also need to update the labels and the initial KYC screening questions in the application to use the language. See the Solutions Hub User Guide for how to do this.
There are several other tables that contain reference data that appear in lists. The information stored in these tables are universal and shouldn't change often. However, if you ever have to change the list of countries, currencies, industry classification codes, or states, refer to the below tables.
Modifying Dropdown Lists