[{TableOfContents }]
!!!NAMING STANDARDS AND CONVENTIONS
The intention of this document is to help people understand the discipline used for coming up with function names, etc. as well as show changes or new items.  

!!Entity - Table Names
Entities are identified in the [Entity Relationship Diagrams|ERD] as a singular name (i.e. DEPARTMENT).  The table name can be derived from the entity name on the diagram by noting this name, and the module that the ERD reflects (HR, PR, etc.) which is CM (Common Definitions) for DEPARTMENT.

The table name is assembled by the prefix (P2K_), the module abbreviation (CM_) and then the entity name in plural (DEPARTMENTS) thus: P2K_CM_DEPARTMENTS.
If the entity name has multiple words then these are separated by underscores (i.e. P2K_PR_PAY_LINE_DETAILS)
If the plural of the entity name is an irregular ending, then the correct pluralization applies (i.e. P2K_HR_IDENTITIES from the IDENTITY entity)

!!View Names
View names are similarly constructed to table names but it is differentiated as a view by the inclusion of a letter "V" at the beginning of the third section.  For example, P2K_HR_EMPLOYMENTS is a table name, P2K_HR_VEMPLOYMENTS is a view that references this table and P2K_HR_IDENTITIES together.

!!Function Names
!Professional Interface
The first character indicates the type of function
||Character||Type of Function
|C|Copy screen e.g. [CBCG]
|D|Date (Calendar) controlled screen eg [DAAL]
|E|Embedded screen e.g. [EALR]
|F|Find screen e.g. [FIND_MGREAS]
|I|Interactive screen e.g. [IEAS]
|L|Load program e.g. [LMTD]
|M|Dialog screen e.g. [MAAL]
|P|PA screen e.g. [PEAS]
|R|Report program (does not normally update data) e.g. [RDEN]
|U|Update program (usually produces a report as well) e.g. [UPCALC]
|V|View only screen e.g. [VEEP]
|X|Extract program e.g. [XMFN]

The second letter indicates the module that this function belongs to (.e.g  M = Ad[m|]inistration P = [P|]ayroll etc.)\\
The rest of the letters are a useful mnemonic of what the function is intended to do.  For interactive screens, it is often the [table alias|Table_Alias] of the table primarily maintained (e.g. IEID is an [I|]nteractive screen that maintains the [EID|] table, UPCALC is an [U|]pdate process for [P|]ayroll [CALC|]ulation)

!Self Service Interface
#First character (W) indicates the function is a Self Service function. \\
#The second letter indicates the type of Self Service role that would make use of the function.\\
#* "WA" - Administrator, and/or Web Site Administrator and/or Human Resource Administrator 
#* "WC" - Candidate role
#* "WE" - Employee role
#* "WG" - General  e.g [WGDPC] (View Employees By Position)
#* "WM" - Manager role
#* "WP" - Public e.g [WPRPO] (potential candidate could search for open postings through a link on a client's website)
#* "WR" - Recruiter role
#* "WS" - Scheduler role
#* "WV" - Approver role
#The third letter references the product the function is found within, for example the 'B' in WEBEN indicates WEBEN is tied to the Benefits module. The rest of the letters are a useful mnemonic of what the function is intended for, for example the 'EN' in WEBEN indicates WEBEN is for enrollments. 
!!Lexicon Names
Lexicons that are provided as part of the system start with "X_" and then have the name of the field that they are associated to.  There are cases where a lexicon name does not correspond to the field name it is referenced from, but this is usually when there is another field that would utilize the same set of values.

!!Product Modules
Each technical product module (SS aside) has a 2 character code and a single character mode which are shown in the chart below.  Both of these are used in different aspects within the system.
Note that technical product modules may vary from license product modules (or business groupings) as they are different views of the world.

||Product Module||2 Char Code||1 Char Code
|System Configuration|	AM|	M
|Attendance Control|	AT|	A
|Benefits Administration|	BE|	B
|Common Definitions|	CM|	D
|Training and Development (TD)	|CP|	C
|Conversion|	CV|	V
|Forecasting and Costing|	FC|	F
|Human Resources|	HR|	E
|Labor Relations|	LR|	L
|Payroll|	PR|	P
|Recruitment|	RE|	R
|Pension System	|RX|	X
|Salary Administration|	SA|	S
|Safety and Health|	SH|	H
|Time Scheduling|	TS|	T
General Utilities	UT	U

!!Business Roles
In the Self Service environment functionality is naturally grouped by Business Roles and each of these business roles is assigned a single character code which is used in function names to easily recognize which role the function belongs to.

In the chart below we show each single character followed by what they mean as well as IF they have physical Business Role in the roles table and whether that role gets automatically or manually assigned to users.

Automatically assigned roles should NOT be physically granted to users as the system will grant them to them IF they qualify.
||Character||For||Business Role||Assigned How
|A|HR Administrator|WWW_HRADMIN|Manually
|C|Candidates|WWW_CANDIDATE|Manually – 1 user only
|E|Employees|WWW_EMPLOYEE|Manually
|G|General Use|	N/A  |	
|M|Managers|WWW_MANAGER|Manually
|P|Publicly Available|WWW_PUBLIC|Manually – 1 user only
|R|Recruiters|WWW_RECRUITER|Automatically
|S|Schedulers|WWW_SCHEDULER|Automatically
|V|Approvers|N/A|	

!!Function Naming Convention (IMFN)
The standard naming convention is for functions to start with a single character that dictates what type of function it is – see chart below.
!Professional
In the professional interface the next 3 or 4 characters (sometimes more) are normally taken as an abbreviation of what the function does or from the alias of the table that drives the function.

!Self Service
In self service though the function type character is always ‘W’ for web component.  The second character here comes from the section above on Business Roles to dictate where or by whom this function is used.
The remaining characters are similar in nature to that of the professional interface.

!Function Types
Supplied functions normally start with one of the characters shown in the chart below which designates what that function is used for.  Note that there are some exceptions to the rules when there are one off items but the majority conform to this standard.

Type	Character	Meaning
Screens		
*	C	For deep Copying records
*	D	Date/Calendar driven screens
	I	Normal Interactive screens
*	M	Pop up Dialog screens
*	P	Personnel Action (PA) based screens
	V	View only screens
	W	Self Service designated function
Reports		
+	L	Load Processes
	R	Non-Update Reports
	U	Update Processes
+	X	Extract Processes
* - New or meaning change for ePersonality
+ - New or meaning change with Windward Reports project.

!!Oracle Reports versus Windward
For Oracle Reports the standard report file name was composed of the 2 character product code, an underscore, the function name and then “.rdf”.
For Windward the template file name no longer contains the product code.  Thus the structure is simple function name and then “.rtf”.
For example: AT_RAAC.rdf (in Oracle) and RAAC.rtf (in Windward)





[{If var='loginstatus' contains 'authenticated'

----
![Discussion|Edit:Internal.NAMING+CONVENTION] 	
[{InsertPage page='Internal.NAMING+CONVENTION' default='Click to create a new discussion page'}] 	

}]