The Stored Procedure Transformation in Informatica helps you to use or call Stored procedures inside the Informatica Workflow. Using this transformation you can perform an operation like Drop or Recreate Indexes, Check for Space in a Database, performing Complex Calculations.
In this article, we will show you, How to use this Informatica Stored procedure Transformation to Rollback the passing records with an example.
For this Informatica Stored Procedure Transformation example, we are going to use SP Source and Destination tables. From the below screenshot you can see that the Source table has 15 records and Destination table is Empty.
and the Stored procedure that we are going to use is:
TIP: We explained everything about the Stored procedure and its functionalities in SQL Server tutorial. I suggest you refer Stored Procedures article to understand the topic.
Stored Procedure Transformation in Informatica Example
In this example, we will show you, How to use Stored Procedure Transformation in Informatica to call stored procedure inside a Informatica Workflow. Before we start configuring, First let me connect with the Informatica repository service.
In order to do so, we have to provide the Informatica Admin Console credentials. So, Please provide the appropriate Username and Password, and click the Connect button.
TIP: Here you have to provide the Admin Username and password that you specified while installing the Informatica Server.
Step 1: Source Definition for Stored Procedure Transformation in Informatica
Once you connected successfully, Please navigate to Source Analyzer and define your Sources. In this example, we are using Sp Source table from SQL Server database as our source definitions. Please refer Database Source in Informatica to understand the steps involved in creating source definition
Step 2: Create Target Definition for Stored Procedure Transformation
Please navigate to Target Designer to define the Target. In this example, we are using the existing SQL table (SP Destination) as our target definition. You can refer to Create Target Table to understand the process of creating a target definition
Step 3: Create Mapping for Informatica Stored Procedure Transformation
To create a new mapping, Please navigate to Mappings menu in Menu Bar and select the Create.. option.
Once you select the Create.. option, a new Mapping Name window will be opened as shown below. Let me provide m_StoreProc as the mapping name and click OK button.
TIP: Please refer Informatica Mapping article to understand the procedure to create Mapping
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. I suggest you refer the Source Qualifier Transformation article.
Step 3(a): Create Informatica Stored Procedure Transformation
In order to create Stored Procedure Transformation in Informatica, Please navigate to Transformation menu in Menu Bar. Next, select the Create.. option
Selecting the Create.. option will open the Create Transformation window as shown below. Please select the Stored procedure Transformation from the drop-down list and provide a unique name (sp_Testing) and click on Create button
Clicking the Create button will pop up a new window called Import Stored Procedure. Please select the ODBC connection that will connect with the Informatica Source. This is where our Stored procedure is created. In order to create new ODBC Connection, please refer Informatica ODBC Connection article.
From the below screenshot you can observe that we are selecting the spUpdateCust stored procedure.
By clicking OK will create a Stored Procedure Transformation for you. As you can see from the below screenshot, it has three ports: Return_value, EmpId, and New Income
Next, Drag and drop the target definition (SPDestination) from Targets folder to the mapping designer.
Next, we are connecting the EmpId from Source Qualifier to Stored Procedure Transformation. Because spUpdateCust accepts one input parameter (EmpId) to return New Income output.
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 Stored Procedure Transformation name.
- Description: Use this place to provide a valid description of this transformation.
Below screenshot shows you the available options in the Informatica stored procedure transformation Ports tab:
- Port Name: List of available column names. Use New column button to add new columns, scissors button to delete the unwanted columns.
- I: Stored Procedure Transformation Input columns.
- O: Here, Columns that are check-marked are the Stored Procedure Transformation Output columns.
Within the properties tab, click on the Arrow button beside the Connection Information type, and use the Connection variable $Source. This is because we used the Stored procedure that exists in information Source.
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 Store procedure transformation with target definition.
Before we close the Mapping, Let us Save, and Validate the mapping by going to Mapping Menu bar, and select the Validate option.
Step 4: Create Workflow for Stored Procedure Transformation in Informatica
After you finish creating the Mapping, we have to create the workflow for it. PowerCenter Workflow manager provides two approaches to create a workflow.
In this Informatica Stored Procedure Transformation example, we will create the Workflow manually. To do so, Please navigate to Workflows Menu and select the Create option.
This will open Create Workflow window as shown below. Please provide the unique name (wf_StoredProc) and leave the default settings.
Once we created the workflow, our next step is to create a session task for our mapping.
Step 4(a): Create Session for Stored procedure Transformation in Informatica
There are two types of sessions in Informatica:
For this Informatica Stored Procedure Transformation example, we created a Non-reusable Session. In order to create Non-reusable Session, Please navigate to Tasks Menu and select the Create option as shown below.
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 be opened. Here you have to select the mapping that you want to associate with this session i.e., m_Storedproc.
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 $Source variable. So, click on the Arrow we marked below, and select the Informatica Source as the source information.
$Target connection value: This property will store the relational target information in $Target variable. So, click on the Arrow we marked below, and select the Informatica 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 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 of a Stored Procedure Transformation. To do so, click on the SP_Testing present in the Transformations folder.
Next, navigate to Workflows Menu and select the Validate option to validate the Workflow.
Now, Let me start the Workflow. To do so, navigate to the Workflows menu, and select the Start Workflow option.
Thank You for Visiting Our Blog