Here is a concise idea about the Workflow Manager in Informatica.
1. Workflow: This is top level object and the entire task (process) for data loading has to be defined under the workflow. It is like a Mapping that integrates different kind of tasks as a Unit.
2. Task: A task is an individual process to perform a very specific activity during data loading. There are 10 different kinds of tasks that can be grouped under a Workflow:
This is a compulsory task for data loading.
A session is an instance of Mapping Program or in other words a running instance of a mapping is referred as Session. For one Mapping Program we can create one or more Sessions. Generally we require one session for one mapping but for Parallel data loading we may create multiple sessions.
To execute operating System Commands or Programs. For example: If we need to inform all the users about data loading process, we can write Shell Script at Operating System and execute them via 'Command Task' just before the session execution.
To send emails to users using Mail Server (if configured). This job can be done via Command Task also but Email Task is integrated part of Workflow Manager and is much simple compared to Command Task.
This task is used to evaluate condition based on other tasks' values to decide next course of actions. It is like IF statement.
This task is to control the flow of tasks within the Workflow. For example: If we need that control should not reach to specific task (like a Command Task) when a condition fails then we can use Control Task.
2.6 Event Wait:
This task is used to define an event and when the particular event fires (activates) then process continues.
2.7 Event Raise:
This task is used to fire (activate) an event forcefully.
This task is used to assign values to Parameters and Variables used within workflow.
This task is used to specify time of execution (delay) for a task.
This task is to define reusable Workflow. If we need to execute set of tasks again and again under different Workflows then it is better to define them as Worklet and use under different Workflows.
Three types of tasks (Session, Command and Email) can be defined as Reusable Tasks. Reusable task means: A task is created as an Independent Task and it is used within WorkFlow or Worklet. So if a task is created within workflow or worklet directly then it is non-reusable task.
So if we need a task to be executed once within a Workflow or Worklet then create it as non-reusable task otherwise create them as reusable (independent) task.
Worklet Task also can be defined as Reusable Task via separate Menu Interface.