[{TableOfContents }]

!!!Define User Procedure
A [procedure|PROCEDURE] is a type of user definable function that links together two or more system functions into a business procedure or workflow. 

Procedures may be used to enforce a work flow. That is, users can be stepped through the various screens and report functions that are required to complete a task. 

Typically, complex processes like enrolling employees into benefit plans, multiple record changes like getting married, or post-hire processes are good candidates for definition as a procedure. 

The procedure form is divided into two parts: a "header" component that defines general aspects of the procedure and the "procedure steps" component that defines the individual functions that make up the procedure.

The step information has some overflow information below.

The definition data for the Define User Procedure screen is stored in the [P2K_AM_FUNCTIONS], [P2K_AM_EXECUTION_RIGHTS] and [P2K_AM_PROCEDURE_STEPS] tables.
\\ \\
----
!!Procedure Header
;[Procedure Name|FUNCTION_NAME]:This field is a code that uniquely identifies the [procedure|PROCEDURE] (e.g. NEWHIRE).  Procedure Name is a mandatory 30 character alphanumeric field assigned by you.  Procedure Names should not contain any spaces or special characters such as !, @, #, $, %, ^, &, *, ?, /, \, etc.  Dashes (-) and underscores (_) are allowed.

;[Description|DESCRIPTION]:This field describes the purpose of the [procedure|PROCEDURE].  

;[Product|PRODUCT_CODE]:This field identifies the module that the [procedure|PROCEDURE] belongs to (e.g. CM, HR, AT, BE,PR, ...). 

;[Subject Table|TABLE_NAME]:This field identifies the main context of the [procedure|PROCEDURE] (e.g. [P2K_HR_IDENTITIES] indicates that the procedure is related to a person).  This field is not currently functional. \\ \\
----
!!Procedure Steps tab
;[Seq #|STEP_SEQUENCE]: This field is used to order the [procedure|PROCEDURE] steps. The value does not matter; it is the order that counts.  It is advisable to increment the step sequences by 10 to allow for insertion of new steps.  

;[Function Name|FUNCTION_NAME]:This field identifies the function that the [procedure|PROCEDURE] step invokes (e.g. [IEID]).  

;[Description|DESCRIPTION]:This field describes the function that the [procedure|PROCEDURE] step invokes (e.g. Maintain Identity Information).  This field defaults from the Function Name that is entered.

;[Mandatory|MANDATORY]: This field is a toggle that indicates whether the [procedure|PROCEDURE] step is mandatory.

;[Display Find|DISPLAY_FIND]: If this toggle is ON, the Find line will show on the procedure, thus allowing users to select or change the focus of the procedure.

!Procedure Step Overflow

;[Create Allowed|CREATE_ALLOWED]:This field is a toggle that indicates whether the [procedure|PROCEDURE] step can insert records.

;[Retrieve Allowed|RETRIEVE_ALLOWED]:This field is a toggle that indicates whether the [procedure|PROCEDURE] step can display records.

;[Update Allowed|UPDATE_ALLOWED]:This field is a toggle that indicates whether the [procedure|PROCEDURE] step can update records.

;[Delete Allowed|DELETE_ALLOWED]:This field is a toggle that indicates whether the [procedure|PROCEDURE] step can delete records.

;[Command|PROCEDURE_COMMAND]:This field contains special commands that get executed as part of the [procedure|PROCEDURE].  

!!Execution Rights tab
;[Role|ROLE_NAME]: This field identifies a role with specific execution rights to the procedure.

;[User|USER_NAME]: This field identifies a user with specific execution rights to the procedure.

;[Create Allowed|CREATE_ALLOWED]:This field is a toggle that indicates whether the role or user can create a procedure

;[Retrieve Allowed|RETRIEVE_ALLOWED]:This field is a toggle that indicates whether the role or user can view a procedure

;[Update Allowed|UPDATE_ALLOWED]:This field is a toggle that indicates whether the role or user can update a procedure

;[Delete Allowed|DELETE_ALLOWED]:This field is a toggle that indicates whether the role or user can delete a procedure

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

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

}]