User Defined Columns (UDC)#
Features of User Defined Columns#
Note: UDC’s used in where clauses and find blocks, or as the 1st column of an LOV, can result in performance degradation. UDC’s are meant to contain supplemental information.
Steps to Set up a new User Defined Column#
The following steps need to be followed to add a new column.
A. In Personality#
- Have all users sign out of system
- In IMCD form – add the new column with a column usage of “User Defined Column”. Ensure that Data Type, Domain Name and Length are all entered at a minimum. Review other columns for samples, as needed.
- Exit from the Personality system
B. In the Database #
In SQL*Plus as the P2K user:
- Set up the session audit information
BEGIN
P2K_PMSESSION.LOGIN('SQ','Modifying code in the database - put name here');
DBMS_SESSION.SET_ROLE(p2k_pmsec.smsr(user));
END;
/
- Add the column to the database
ALTER TABLE P2K_xx_xxxxxx ADD (COLUMN_NAME COLUMN_TYPE);
- where xx_xxxxxx is the table name
- where COLUMN_NAME is the new column name
- where COLUMN_TYPE is the data type of the new column: DATE, NUMBER, NUMBER(10,4), VARCHAR2(30), etc.
Sample:
ALTER TABLE P2K_HR_ASSIGNMENT_DETAILS ADD (ANNIVERSARY_MONTH VARCHAR2(16));
- Multiple columns can be added using this script before running and moving onto the next stage of processing.
- Rebuild the workflow triggers:
@DB_RECOMPILE.sql
@SEED_CREATE_BIUD.sql
- Close the session
BEGIN
p2k_pmsession.logoff;
END;
/
You may now exit SQL*Plus
C. Restart the application#
- On your Oracle Application server (OAS or WebLogic) restart the container for this application. If you have a separate HLAppResources instance in WebLogic, this must also be restarted
- This is required because the column definitions are only loaded at start up.
- Sign in to the Personality system
- The new column is now available to be used in form definitions (IMFD) or workflow (IMUC) or for any other purpose
BEST PRACTICES for User Defined Columns#
- Create the Column on IMCD with a number range in excess of 9000
- Identify the column in the database with a name prefix that is unique to your organization (.e.g BEN_DUE_DATE rather than just DUE_DATE)
- User Defined Columns are recommended over User Defined Fields if you are going to use them for any processing (where clauses, workflow, approvals, loading, etc.). If you are just storing data to be reported on, user defined fields may be sufficient to the task.
- Lexicons that are associated to a User Defined Column must be prefixed with "X_" (.e.g X_CUST_VALUE rather than CUST_VALUE)
- The name of the User Defined Column should not start with a number. Depending on its planned usage in the application, this will cause errors that are not apparent with initial or form setup and usage (usercalcs).
Click to create a new notes page
Screen captures are meant to be indicative of the concept being presented and may not reflect the current screen design.
If you have any comments or questions please email the Wiki Editor
All content © High Line Corporation