Stored Procedure Transformation in Informatica

The Stored Procedure Transformation in Informatica helps you to use or call Stored procedures inside the Informatica Workflow. Using this transformation, you can operate Drop or Recreate Indexes, Check for Space in a Database, performing Complex Calculations.

This article shows how to use this Informatica Stored procedure Transformation to Rollback the passing records with an example. For this example, we are going to use SP Source and Destination tables.

Data in Source and Destination Tables

And the Stored procedure that we are going to use is:

Stored Procedure that we use

From the above screenshot, you can see, that the stored procedure has one input parameter and one output parameter

TIP: We explained everything about the Stored procedure and its functionalities in the SQL Server tutorial. I suggest you refer Stored Procedures article to understand the topic.

Stored Procedure Transformation in Informatica Example

Let us see how to use Stored Procedure Transformation in Informatica to call stored procedures inside a Workflow. Before we start configuring, First, let me connect with the Informatica repository service.

To do so, we have to provide the Admin Console credentials. So, Please provide the appropriate Username and Password you specified while installing the Server.

Source Definition for Stored Procedure Transformation in Informatica

Once you connected successfully, Please navigate to Source Analyzer and define your Sources. Here, we are using the Sp Source table from the SQL database as our source definitions. Please refer Database Source to understand the steps in creating source definition

Stored Procedure Transformation Source Analyzer 3

Create Target Definition for Stored Procedure Transformation

Please navigate to Target Designer to define the Informatica Stored Procedure Transformation Target. In this example, we are using the existing table (SP Destination) as our target definition. You can refer to Create Target Table to understand the process of creating a target definition

Target Designer for Stored Procedure Transformation

Create Mapping for Informatica Stored Procedure Transformation

To create a new mapping, Please navigate to the Mappings menu in Menu Bar and select the Create.. option.

Create a Mapping for Stored Procedure Transformation

Once you select the Create.. option, a new Mapping Name window will open. Let me provide m_StoreProc as the mapping name and click the OK button.

TIP: Please refer Mapping article to understand the procedure to create Mapping

Assign Mapping Name

Drag and drop the SP Source from Sources folder to the mapping designer. Once you drag the source, Power Center Designer will automatically create the Source Qualifier Transformation (default transformation) for you.

Mapping Designer 7

Create Informatica Stored Procedure Transformation

To create Stored Procedure Transformation in Informatica, Please navigate to the Transformation menu in Menu Bar. Next, select the Create.. option

Create Transformation option 8

Selecting the Create.. option will open the Create Transformation window. Please select the Stored procedure Transformation from the drop-down list and provide a unique name (sp_Testing) and click on Create button

Select Stored Procedure Transformation in informatica 9

Clicking the Create button will pop up a new window called Import Stored Procedure. Please select the ODBC connection that will connect with the Source. It is where our Stored procedure was created. To create a new ODBC Connection, please refer to the ODBC Connection article.

From the below screenshot, see that we are selecting the spUpdateCust stored procedure.

Import Stored Procedure into Informatica 10

By clicking OK will create a Informatica Stored Procedure Transformation for you. As you can see from the below screenshot, it has three ports: Return_value, EmpId, and New Income

SP Mapping Designer 11

Next, Drag and drop the target definition (SPDestination) from the Targets folder to the mapping designer.

sp transformation mapping 12

Next, we are connecting the EmpId from Source Qualifier to Transformation. Because spUpdateCust accepts one input parameter (EmpId) to return New Income output.

sp Transformation mapping 13

Double click on the Informatica Stored Procedure Transformation to see and alter the properties. Below screenshot shows you the list of available properties in the Transformation tab:

  • Select Transformation: By default, it will select the transformation you selected (or clicked on).
  • Rename: This button helps you to rename the Transformation name.
  • Description: Use this place to provide a valid description of this transformation.
edit sp transformation 14

Below screenshot shows you the available options in the Informatica stored procedure transformation Ports tab:

  • Port Name: List of available column names. Use the New column button to add new columns, scissors button to delete the unwanted columns.
  • I: Input columns.
  • O: Here, Columns that are check-marked are the Output columns.
edit sp Transformation 15

Within the properties tab, click on the Arrow button beside the Connection Information type, and use the Connection variable $Source because we used the SP that exists in information Source.

Relational Connection Browser

Drag and drop all the fields that exist in source qualifier Transformation to target definition. Please use the Autolink.. option to connect them. Next, connect the NewIncome field in transformation with target definition.

Stored Procedure Transformation in Informatica 17

Before we close the Mapping, Let us Save, and Validate the mapping by going to Mapping Menu bar, and select the Validate option.

Create Workflow

After you finish creating the Informatica Stored Procedure Transformation Mapping, we have to create the workflow for it. PowerCenter Workflow manager provides two approaches to create a workflow.

In this example, we will create the Workflow manually. To do so, Please navigate to Workflows Menu and select the Create option.

It opens the Create Workflow window. Please provide the unique name (wf_StoredProc) and leave the default settings.

Create Stored Procedure Transformation Workflow

Once we created the workflow, our next step is to create a session task for our mapping.

Create Session for Stored procedure Transformation in Informatica

There are two types of sessions:

For this Informatica Stored Procedure Transformation example, we created a Non-reusable Session. To create Non-reusable Session, Please navigate to Tasks Menu and select the Create option.

Create task for Stored Procedure Transformation 20

Please provide a unique name for this session. Here, we are naming it as s_StoredProc. Once you click on the Create button, a new window called Mappings will open. Here you have to select the Mapping that you want to associate with this session, i.e., m_Storedproc.

Select Stored Procedure Transformation in Informatica mapping

Double click on the Session task will open the Edit Tasks window. Within Properties Tab

$Source connection value: This property will store the relational source information in the $Source variable. So, click on the Arrow we marked below, and select the Source as the source information.

$Target connection value: This property will store the relational target information in the $Target variable. So, click on the Arrow we marked below, and select the Target as the Target information.

Within the mappings tab, we have to configure the Source and Target Connections. First, let us configure the source connections by clicking on the SQ_SPSource source present in the Sources folder.

Within the Connections, click on the Arrow button beside the Relational type. And use the Connection variable that we created in our previous step i.e., $Source

Now, we have to configure the Informatica Stored Procedure Transformation Target Connection. So, click on the SPDestination present in the Targets folder. Within the Connections, click on the Arrow button beside the Relational type, and use the Connection variable $Target

Here, we can also configure the connection information. To do so, click on the SP_Testing present in the Transformations folder.

Connection Information

Next, navigate to Workflows Menu and select the Validate option to validate the Workflow.

Start Stored Procedure Transformation in Informatica workflow

Now, Let me start the Informatica Stored Procedure Transformation Workflow. To do so, navigate to the Workflows menu and select the Start Workflow option.

Start sp transformation workflow task

Let us open the Management Studio and write the following SQL Query.

Destination Table