Showing posts with label workflow. Show all posts
Showing posts with label workflow. Show all posts

Monday, March 9, 2015

Command Task in Informatica Powercenter Express



Command task runs a single shell command or starts an external executable program during the workflow. We can write  commands to delete reject files, copy a file, or archive target files. You can use workflow parameters and variables in the command.

When you run a workflow, the workflow passes input data to a Command task in parameters and variables. The Command task uses the input data to run the command. When the Command task finishes running, the task passes output data back to the workflow in variables.

The command syntax depends on whether the Data Integration Service runs on UNIX or Windows.
Windows Use any DOS or batch file.  For example, to copy a file from target folder to source folder
Copy C:\Informatica\PCExpress\tomcat\bin\target\xyz.txt C:\Informatica\PCExpress\tomcat\bin\source\xyz.txt
To create a batch file, write above command in a file and save the file as *.bat file. Then use the file in command task.
UNIX Use any UNIX command or shell script. For example, to copy a file from target folder to source folder
cp C:\Informatica\PCExpress\tomcat\bin\target\xyz.txt C:\Informatica\PCExpress\tomcat\bin\source\xyz.txt
To create a shell script, write above command in a file and save the file as *.sh file. Then use the file in command task.

Command Task Input
It is the data that passes into a Command task from workflow parameters and variables. Assign a Command task configuration property to task input to define the value of the property in a workflow parameter or variable.

Command Task Output
It is the data that passes from a Command task into workflow variables. Command task outputs include general outputs and task specific outputs. The Data Integration Service copies the Command task output values to workflow variables when the Command task completes.
If the task fails, the Data Integration Service copies the general task output values but not the task specific output values to workflow variables.
General outputs Includes output data produced by all tasks such as the task start time, end time, and whether the task successfully ran.
Command task outputs Includes data produced by the Command task when it runs the command.
Exit code returned by the command. A successful command returns 0. An unsuccessful command returns a non-zero value.
Standard error message returned by the command. By default, the first 1,024 characters of the error are returned. You can change the length of the standard error in the Command task advanced configuration properties.
Standard output returned by the command. By default, the first 1,024 characters of the output are returned. You can change the length of the standard output in the Command task advanced configuration properties.

Command Task Advanced Properties
The Advanced tab for a Command task includes properties that the task uses to run the command.
Working Directory
Directory from which to run the command. You can also specify the working directory in the command that you enter for the task. If you specify the directory in both locations, the directory specified in the command overrides the directory specified in this property.
Standard Output Length
Number of characters to return in the standard output for the command. Maximum is 32,768 characters. Default is 1024 characters.
Standard Error Length
Number of characters to return in the standard error for the command. Maximum is 4096 characters. Default is 1024 characters.

Saturday, February 28, 2015

Create, Deploy, Run a Workflow with Mapping Task and Monitor Workflow in Informatica




Workflow is a graphical representation of a set of events, tasks, and decisions that define a business process.  The Data Integration Service uses the instructions configured in the workflow to run the objects.

Workflow Objects
 A workflow object is an event, task, or gateway. You add objects as you develop a worklow in the editor. Workflow objects are non-reusable.

Event Starts or ends the workflow. An event represents something that happens when the workflow runs. The editor displays events as circles.  
Start  Represents the beginning of the workflow. A workflow must contain one Start event. 
End  Represents the end of the workflow. A workflow must contain one End event. 

Task  runs a single unit of work in the workflow, such as running a mapping, sending an email, or running a shell command. A task represents something that is performed during the workflow. The editor displays tasks as squares.
Assignment  Assigns a value to a user-defined workflow variable. 
Command  Runs a single shell command or starts an external executable program. 
Mapping  Runs a mapping. 
Notification  Sends an email notification to specified recipients.

 

Exclusive gateway splits and merges paths in the workflow based on how the Data Integration Service evaluates expressions in conditional sequence flows. An Exclusive gateway represents a decision made in the workflow. The editor displays Exclusive gateways as diamonds.

Workflow Deployment

When you develop a workflow in the Developer tool, you create a workflow definition. To run an instance of the workflow, you add the workflow definition to an application When you deploy a workflow, the Data Integration Service creates a separate set of run-time metadata in the Model repository for the workflow. If you make changes to a workflow definition in the Developer tool after you deploy it, you must redeploy the application that contains the workflow definition for the changes to take effect.

Steps to create a workflow

Create a workflow by clicking File > New > Workflow.

Add objects to the workflow and configure the object properties. Workflow object is an event, task, or gateway.

Connect objects with sequence flows to specify the order that the Data Integration Service runs the objects.

Define variables for the workflow to capture run-time information.

Validate the workflow to identify errors

Add the workflow to an application and deploy the application to the Data Integration Service.

Run an instance of the workflow from the deployed application using the infacmd wfs command line program.
infacmd wfs startWorkflow -dn MyDomain -sn MyDataIntSvs -un MyUser -pd MyPassword -a MyApplication -wf MyWorkflow -pf MyParameterFile.xml
We can also run the instance of the workflow from the deployed application from the Administrator tool.

Monitor the workflow instance run in the Monitoring tool in Informatica Administrator.

Mapping Task

Mapping task runs a mapping during a workflow. When you add a Mapping task to a workflow, you select a single mapping for the task to run.  When you change the mapping, the Model Repository Service tracks the effects of these changes on all Mapping tasks that include the mapping.

Mapping Task Input
Mapping task input is the data that passes into a Mapping task from workflow parameters and variables. On the Mapping task Input tab, you can assign the following information to workflow parameters or variables:
User-defined mapping parameters Assign a user-defined mapping parameter to task input to define the user-defined mapping parameter value in a workflow parameter value, workflow variable value, or literal value. The Input tab lists all parameters created for the mapping and for objects included in the mapping.
Mapping task configuration properties Assign a Mapping task configuration property to task input to define the value of the property in a workflow parameter or variable. The Advanced tab lists the Mapping task configuration properties.

Mapping Task Output
Mapping task output is the data that passes from a Mapping task into workflow variables. When you configure a Mapping task, you specify the task output values that you want to assign to workflow variables on the Output tab. The Data Integration Service copies the Mapping task output values to workflow variables when the Mapping task completes.
General Outputs include output data produced by all tasks such as the task start time, end time, and whether the task successfully ran.
Mapping Task Outputs include number of target rows processed, number of source rows processed and number of error rows.

Mapping Task Advanced Properties
The Advanced tab for a Mapping task includes properties that the task uses to run the mapping. You can also assign a configuration property to task input. Then in the Mapping task Input tab, you can assign the property to a workflow parameter or variable.
Default Date Time Format Date/time format the Data Integration Services uses when the mapping converts strings to dates. Select one of the predefined formats, or type a valid date format string.
Optimizer Level Controls the optimization methods that the Data Integration Service applies to a mapping as follows:
0 (None). The Data Integration Service does not optimize the mapping.
1 (Minimal). The Data Integration Service applies the early projection optimization method to the mapping.
2 (Normal). The Data Integration Service applies the early projection, early selection, pushdown, and predicate optimization methods to the mapping.
3 (Full). The Data Integration Service applies the early projection, early selection, pushdown, predicate, cost-based, and semi-join optimization methods to the mapping.
The property has an integer datatype. Default is 2 (Normal).
High Precision Runs the mapping with high precision. The property has a boolean datatype. Default is true.
Sort Order Order in which the Data Integration Service sorts character data in the mapping. The property has a string datatype. Default is Binary.
Override Tracing Level Overrides the tracing level for each transformation in the mapping. The tracing level determines the amount of information the Data Integration Service sends to the mapping log files. The property has a string datatype. Default is normal.