Sunday 17 March 2013

Event Wait Task for Dynamically Changing File Names


Whenever we schedule an Informatica Workflow, most of the times even before the actual session can run, we need to check some prerequisites like, successful completion of source system data loads, arrival of source data files etc.  Informatica PowerCenter Workflow Manager provides task such as ‘Timer’, ‘Event Wait’, Event Raise’ for such validations and checks.  In this article lets see how we can configure ‘Event Wait’ task to check the existence for a file with dynamically changing name.

For the demonstration, lets consider a scenario, where we need to reads data from the daily sales file and load into a relational table.  This source file is supposed to be available daily at 08:00 PM with a naming standard ‘daily_sales_mm-dd-yyyy.csv’

Informatica Implementation

Here we will just concentrate on building the workflow.
As the first step, lets create the workflow and a workflow variable $$FileName as shown in below image.
    • $$FileName as NSTRING
Informatica Woekfloe Variable
Now Create an Assignment task and assign the value of the Variable as below. This variable will set the value of the file, to be waited dynamically.
  • $$FileName := 'daily_sales_' || TO_CHAR(SYSDATE,'MM-DD-YYYY') || '.csv' 
Informatica Assignment Task
Now we need to create an ‘Event Wait’ task to wait for the Source File, which has the dynamic name. We will be using the workflow variable created in the previous step for the same as shown down below.

Informatica Event Wait
Now we just need to add the session which reads data from the source file. You can use the same parameter for the source file.

Informatica Workflow
You can schedule the workflow to run daily 08:00 PM as the last step.
Informatica Scheduler

No comments:

Post a Comment