The concepts of workflow require that users understand the principals of the application and have the knowledge and capabilities to write [UserCalcs|USERCALC]. It is also important to recognize the needs of your business in order to determine if workflow is applicable.  It may be useful to have SQL knowledge to write Completion Clauses

The set up required to integrate workflow is not complex. Basically, there are two screens required for set up, they are: Define Workflow Actions [IMWA] and Define User Calculations [IMUC]. The difficulty arises mainly from the complexity of the UserCalc and the completion clause. However, not all workflow actions are complicated and it depends on a client's business requirements.

Workflow triggers are initiated when a record is inserted, updated or deleted from the database.  Each [table|WORKFLOW PRODUCTS] that is enabled for workflow will have a [data base trigger|DATA BASE TRIGGER] configured.

* [USERCALCS in Workflows]
* [Tables that Workflow acts on|WORKFLOW PRODUCTS]\\ \\

!!!Workflow Action
----
A workflow action is the result of a key event. Some key events can include a salary/wage increase or hiring/
terminating an employee. These events require specific actions to occur, thereby driving the workflow process.
*[Define Workflow Action|IMWA]
**[Completion Clause|IMWA#Completion Clause]
**[Workflow Logs|IMWA#Workflow Logs]
*[WF Emails That Cannot Be Sent|WF Emails That Cannot Be Sent]
*[Nagging Work Flow Log Emails|NAGGING_WORKFLOW_LOG_EMAILS]
*[Report on Workflow Actions|REPORT_ON_WORKFLOW_ACTIONS]
*[Emailing Batched Workflow Logs|EMAILING_BATCHED_WORKFLOW_LOGS] \\  \\

!!!UserCalcs and Workflow
----
This section should only act as a supplemental aid to the already existing [User Calculations|USERCALC] section. Its intent is to explain some new features that have been developed as a result of the integration
of workflow into system. Please reference the [User Calculations|USERCALC] section for more detail on the
other UserCalc items.

With the integration of workflow into the system, UserCalcs have the ability, in addition to their previous
functionality, to allow for workflow action events to occur under specific conditions. Examples of such events
include: issuing an email, alerting users of specific tasks and taking the user to that particular screen to
complete the task. Workflow action events are only processed through UserCalcs.

!Purpose of UserCalcs
A UserCalc is a set of instructions, defined by the user, which trigger specific actions or
operations to take place.

They are a powerful feature that allows for customization of the application to a high degree.
UserCalcs can perform various operations, such as arithmetic calculations, comparisons of
different items, date checks and calculations, issue warning messages and workflow action
events.

UserCalcs can be simple or quite complex.

!Workflow
The activation of a workflow trigger results in the initiation of a UserCalc. Once the UserCalc is
initiated, the workflow action events are called from within the UserCalc.

*[How to Plan a Workflow UserCalc|HOW_TO_PLAN_A_WORKFLOW_USERCALC]
*[UserCalc Conventions|USERCALC_CONVENTIONS]
*[UserCalc Types|USERCALC TYPES]%%information Workflow is only concerned with Calculation types.%% 
 
!!!Define User Calcs
----
The other component of workflow requires setting up the UserCalc to incorporate the action event created in [IMWA]. The integration of workflow required some additional functionality that was not previously available to UserCalcs. This section should be used as a supplemental aid to the User Calculations manual and is not to be used in place of it. Please refer to the [User Calculations|USERCALC] section for a more thorough explanation of UserCalcs and their functionality.   
*[Define Workflow UserCalc|DEFINE_WF_USERCALC] 
**[Lines Tab|DEFINE_WF_USERCALC#Lines Tab]
!!!Publish User Calculations
----
The putting of UserCalcs into production is controlled in Publish User Calculations [IMUCA]. The administration of UserCalcs also involves an expanded knowledge of the status of UserCalcs. Please refer to the [User Calculations|USERCALC] section for a more detailed explanation. 

%%information Once a workflow UserCalc has been put "In Production" to stop it from firing you not only have to "UNPUBLISH" it but also then set its status back to "Under Construction".%%

*[Publishing UserCalcs|PUBLISHING_USERCALCS]
!!! View Execution Logs & Details 
----
*[View Execution Logs & Details|VIEW_EXECUTION_LOGS]
*[VMEX]
!!!Required Set Up
----
*[IMST Setup for Workflow|IMST_SETUP_FOR_WF]
!!!Functions for Forecasting and Costing
----
Here are some other points or information to help make your use of workflow a success.
%%information Once a Workflow UserCalc has been put "In Production", to stop it from firing you not only have to "UNPUBLISH" it but also then you need to set its status back to be "Under Construction".%%	

*[UserCalc Usage - Secondary WF|USERCALC_USAGE_SECONDARY_WF]	
*[Comparison of Null Values|COMPARISON_OF_NULL_VALUES]
!!!Workflow Samples 
----
* [A New Hire Workflow Procedure|WF SAMPLE 01]
* [Print Screens of Workflow Action Setup|WF SAMPLE 02]
* [Set Up Of Workflow Usercalc|WF SAMPLE 03]
* [Update the Job Seniority Date Field|WF SAMPLE 04]
* [Send An Email To The Manager At Specific Time Intervals|WF SAMPLE 05]
* [Sending An Email To A Specific Identity|WF SAMPLE 06]
* [Update A Field|WF SAMPLE 07]
!!!Available WF Custom Functions
----
*[For All Workflow Products|AVAILABLE_WF_CUSTOM_FUNCTIONS]		
*[For Workflow Product - WF_AAL|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_AAL]		
*[For Workflow Product - WF_EASD|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_EASD]			
*[For Workflow Product - WF_EEM|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_EEM]		
*[For Workflow Product - WF_RAP|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_RAP]		
*[For Workflow Product - WF_RASE|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_RASE]			
*[For Workflow Product - WF_RCA|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_RCA]		
*[For Workflow Product - WF_SPA|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_SPA]		
*[For Workflow Product - WF_TRE|AVAILABLE_WF_CUSTOM_FUNCTIONS#For Work Flow Product - WF_TRE]