Thursday 24 April 2014

Aggregation without using aggregator transformation in informatica



Aggregation without using aggregator transformation in informatica
Here the scenario is to find the sum of salary department wise.
My source is
Deptno
Sal
20
800
30
1600
30
1250
20
2975
30
1250
30
2850
10
2450
20
3000
10
5000
30
1500
20
1100
30
950
20
3000
10
1300

And my target will be

Deptno
Sal
10
8750
20
10875
30
9400

Solution:
  Algorithm
1. Import source
2. If the source is relational database table apply sorting in the source qualifier. If the source is flat file take a sorter and pass ports from source into the sorter transformation and checked Deptno as key and select ascending in the Direction option. ( even though the source from relational database  you can take a sorter transformation for sorting but the sorting in the source qualifier will increase performance).
3. Take an expression transformation and drag Deptno and Sal ports from the sorter or source qualifier which one you are using.
4. And do like

5. Take another sorter and apply 

6. Again take a expression transformation and apply

7. Take a filter transformation and apply filter condition as FLAG_O =1  as

8. Pass the ports from filter into the target.

That’s it. The final mapping will look like this.

3 comments: