Code Naming Conventions
The Data Services objects should be named to make it as easy as possible to identify their function and object type. The following table contains the available objects in Data Services and their proposed naming convention.
Object | Naming Convention |
Project | PJ<Project Subject Area>_Batch |
Job (Batch/Real-time) | JB_<RICEFID>_<name> |
Work Flow | WF_<RICEFID>_<name> |
Data Flow | DF_<RICEFID>_<SubjectArea Segment>_<Action> |
Annotation | ANN_<RICEFID>_description |
Catch | CATCH_<RICEFID>_description |
Conditional | COND_<RICEFID>_description |
Datastore | DS_<SOURCETYPE._<SOURCENAME> |
Document | DOC_<RICEFID>_description |
DTD (Document Type Definition) | DTD_<RICEFID>_description |
File Format | FF_<RICEFID>_<ACTION>_DESCRIPTION |
Function | FUNC_<description> |
Script | SC_<RICEFID>_description |
Template Table | TT_<RICEFID>_description |
Try | TRY__<RICEFID>_description |
While Loop | While_description |
XML Message | XMLMSG_<RICEFID>_description |
XML Schema | XMLSCH_<RICEFID>_description |
XML Template | XMLTMPL_<RICEFID>_description |
Address_Enhancement Transform | AE_<RICEFID>_description |
Case Transform | Case_description |
Date_Generation Transform | DG_<RICEFID>_description |
Effective_Date Transform | ED_<RICEFID>_description |
Hierarchy_Flattening Transform | HF_<RICEFID>_description |
History_Preserving Transform | HP_<RICEFID>_description |
Key_Generation Transform | KG_<RICEFID>_description |
Map_CDC_Operation Transform | MC_<RICEFID>_description |
Map_Operation Transform | MO_<RICEFID>_description |
Match_Merge | MM_<RICEFID>_description |
Merge | MER_<RICEFID>_description |
Name_Parsing | NP_<RICEFID>_description |
Pivot | PIV__<RICEFID>_description |
Reverse Pivot | RPIV_<RICEFID>_description |
Query | QRY_<RICEFID>_description |
Row_Generation | RG_<RICEFID>_description |
SQL | SQL_<RICEFID>_description |
Table_Comparison | TC_<RICEFID>_description |
Other Naming Standards
The naming standards for other components which may be involved in the BOBJ DS process are below.
- Global Variables should be named with a prefix of “$GV_”.
- Local Variables should be named with a prefix of “$V_”
Project
Format: PJ_<Project Subject Area>_Batch
Example: PJ_PANGAEA-PHASE1-CONV_BATCH
Projects are the highest level of reusable object in Data Services. They allow you to group jobs that have dependent schedules or belong to the same application. DESCRIPTION is the general application. PJ is an abbreviation for Project. Batch suffix signifies that all ETL jobs in this conversion project execute in BATCH mode.
Job
Format: JB_<RICEFID>_TARGETSCHEMANAME
Example: JB_CV50001_SALES_LOAD
A job is a group of objects that you can schedule and execute together. Multiple jobs can be included in a single project. When naming a job, include a description of data managed within the job. In the example above, the job loads sales data to a data mart. JB is an abbreviation for Job. When designing jobs, you may want to limit the scope of the job to a particular area of your business, so that you can easily understand the purpose of the job from the name. Keeping the jobs limited in space also makes it easier to re-use the jobs in other projects.
Datastore
Format: DS_<SOURCETYPE._<SOURCENAME>
Example: DS_SAP_VR2
A Datastore provides connection information for a source or target database. Data Services is able to import metadata through the data store connection. The SOURCETYPE could SAP, TD for Teradata, ORCL for ORACLE and so on. SOURCENAME could be the schema name of the database or just a descriptive name for the source or target database. DS stands for datastore.
Workflow
Format: WF_<RICEFID>_TARGETTABLE
Example: WF_CV50002_SALES_DIM
WF_CV50007_CUSTOMER
Workflows can contain other workflows are well as dataflows. TARGETTABLE refers to the final table in the workflow that is being loaded. In instances where a workflow contains multiple workflows, it can refer to a category or group of tables. In the examples, WF_CV50002_SALES_DIM hold all the dimension table loads for the SALES data mart application. One of the workflows is the WF_CV50007_CUSTOMER, which loads only customer data. WF stands for workflow.
Dataflow
Format: DF_<RICEFID>__<SubjectArea Segment>_<Action>
Example: DF_CV50007_CUSTOMER_EXTRACTFILE
DF_CV50007_CUSTOMER_TRANSFORM
DF_CV50007_CUSTOMER_OUTPUTFILE
Dataflows are the lowest granularity objects in Data Services. Multiple dataflows can reside in a workflow. Dataflows hold the specific query or transformation that is being applied to the source data. TARGETTABLE refers to the specific table that the dataflow is loading. DF stands for dataflow. In the example, the Customer table data is extracted from file, data is transformed in the 2nd Data flow. In the 3rd Data flow, Customer Ouput File is generated for further processing.
Scripts
Format: SC_<RICEFID>__DESCRIPTION
Example: SC_CV50007_CLEANUP_TEMP_TABLES
Scripts can be created in Jobs or Workflows. They are singe-use objects and are not stored in the Data Services object library. They can be used to declare and assign variables, call a SQL function or perform SQL statements. DESCRIPTION can refer to the function or task that the script is performing or the name of a table that the script is loading. SC stands for script. Note: Dscriptive Names could include (SQL update table X, Print Message, etc.) This example describes a script that truncates the temp tables for the job.
Flat Files
Format: FF_<RICEFID>_<ACTION>_DESCRIPTION
Example: FF_CV50009_OUT_ORA_APPS_SALES_DETAIL
Flat files are data sources that are not in database table form. They are typically used in dataflows to create tables or as a source of metadata. The example describes the target table that the file will populate from the Oracle application. FF stands for flat file.
Tables
Format: DESCRIPTION
Example: KNA1
Tables can be used as a source or target in a dataflow. DESCRIPTION refers to the data content in table. The example describes the database table that will house CUSTOMER data.