Oracle provide BNE_INTEGRATOR_UTILS.UPSERT_INTERFACE_COLUMN api to Insert / Update new/ existing column in Web ADI. Follow below check list to achieve functionality without any issues.
- Identify the column needs to be added. Add the column in Interface method. If interface method is table, add column in table or if it is procedure then add column in procedure and so on...
- Add column in Integrator Interface using API - Even though column added in Interface method such as Table / Procedure /Function, it will not reflect in Web ADI interface. To make effective use API 'BNE_INTEGRATOR_UTILS.UPSERT_INTERFACE_COLUMN' and add column.
BNE_INTEGRATOR_UTILS.UPSERT_INTERFACE_COLUMN (
P_APPLICATION_ID IN NUMBER,
P_INTERFACE_CODE IN VARCHAR2,
P_SEQUENCE_NUM IN NUMBER,
P_INTERFACE_COL_TYPE IN NUMBER,
P_INTERFACE_COL_NAME IN VARCHAR2,
P_ENABLED_FLAG IN VARCHAR2,
P_REQUIRED_FLAG
IN VARCHAR2,
P_DISPLAY_FLAG IN VARCHAR2,
P_FIELD_SIZE IN
NUMBER,
P_DEFAULT_TYPE IN VARCHAR2,
P_DEFAULT_VALUE IN VARCHAR2,
P_SEGMENT_NUMBER IN NUMBER,
P_GROUP_NAME IN VARCHAR2,
P_OA_FLEX_CODE IN VARCHAR2,
P_OA_CONCAT_FLEX IN VARCHAR2,
P_READ_ONLY_FLAG IN VARCHAR2,
P_VAL_TYPE IN VARCHAR2,
P_VAL_ID_COL IN VARCHAR2,
P_VAL_MEAN_COL IN VARCHAR2,
P_VAL_DESC_COL IN VARCHAR2,
P_VAL_OBJ_NAME IN VARCHAR2,
P_VAL_ADDL_W_C IN VARCHAR2,
P_DATA_TYPE IN NUMBER,
P_NOT_NULL_FLAG IN VARCHAR2,
P_VAL_COMPONENT_APP_ID IN NUMBER,
P_VAL_COMPONENT_CODE IN VARCHAR2,
P_SUMMARY_FLAG IN VARCHAR2, P_MAPPING_ENABLED_FLAG IN VARCHAR2,
P_PROMPT_LEFT IN VARCHAR2,
P_PROMPT_ABOVE IN VARCHAR2,
P_USER_HINT IN VARCHAR2,
P_USER_HELP_TEXT IN VARCHAR2,
P_LANGUAGE IN VARCHAR2,
P_SOURCE_LANG IN VARCHAR2,
P_OA_FLEX_NUM IN VARCHAR2,
P_OA_FLEX_APPLICATION_ID IN NUMBER,
P_DISPLAY_ORDER IN NUMBER, P_UPLOAD_PARAM_LIST_ITEM_NUM IN NUMBER,
P_EXPANDED_SQL_QUERY IN VARCHAR2,
P_LOV_TYPE IN VARCHAR2,
P_OFFLINE_LOV_ENABLED_FLAG IN VARCHAR2,
P_VARIABLE_DATA_TYPE_CLASS IN VARCHAR2,
P_USER_ID IN NUMBER);
--// Example :
CALL BNE_INTEGRATOR_UTILS.UPSERT_INTERFACE_COLUMN (
20016, 'XXTEST_XINTG_INTF1', 5, 1, 'P_VENDOR_ID', 'Y', 'Y', 'Y',
NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','JAVA',NULL,NULL,NULL,NULL,NULL, 2,'N',20016,'XXTEST_XINTG_INTF1_C5_COMP','N',
'Y','Supplier','Supplier',NULL,NULL,'US','US',NULL,NULL,5,5,NULL,NULL,NULL,NULL,0);
Make sure P_SEQUENCE_NUM , P_DISPLAY_ORDER , P_UPLOAD_PARAM_LIST_ITEM_NUM in same order.
P_DATA_TYPE will have value 1 for Number and 2 for Varchar2
- Add column in Interface Upload Parameter List :- Newly added columns will not be added in Interface Upload Parameter list. If user skip this step, will lead to following error 'ArrayIndexOutOfBoundsException'
- Re order newly added column in Web ADI layout.

Thank you so much for sharing this. Helped me alot.
ReplyDeleteCould you please let me know how to add column in in Interface Upload Parameter List.
ReplyDelete