• Active Transformation.
• It is used to filter the data like the filter transformation.
• Router allows to filter with multiple conditions and project data to multiple targets.
• Unlike the Filter, Router allows rejected data also. It captures the rejected data in a default group.
• Router allows one input and sends it to many outputs.
Steps:
Define Source
Define Targets (multiple targets).
Create the mapping .Drag Source (EMP) and Targets (Dim_EMP,DIM_EXP,DIM_RANK for practice only) to the Mapping Designer.
In the Transformation Menu select ROUTER and click on Create. Give the name as T_ROUT.
Click on Create and then Done.
Project the required ports from the Source Qualifier to Router. An INPUT GROUP is prepared.
Edit the
Router and go to Groups Tab.
Add a
new Group.
Note: When we add a new group for the first time, by default it
prepares a default group. Default group is created only once.
Add
another Group NEWGROUP1.
Give Group names and then specify the group filter condition.
Apply and then OK.
All the Groups (INPUT, DEPTNO10, SAL_GT_2000, DEFAULT) can now be seen in Router.
Default Group contains the rejected data.
Example:
EMPNO
|
EMPNAME
|
SAL
|
DEPTNO
|
1
|
X
|
2000
|
10
|
2
|
Y
|
3000
|
10
|
3
|
Z
|
4000
|
20
|
4
|
A
|
3000
|
10
|
Condition1: Deptno = 10 -> 3 records satisfy the 4th record goes to the Default Group.
Condition2: Sal > 2000 the record in the Default Group satisfies this condition and so it is now removed.
Rejected record is now 1 X 2000 10
Note: For a record in the default Group it should satisfy neither condition.
Now Project the required ports from ROUTER OUTPUT to Multiple TARGETS.
We can also project the default data if needed.
Save the repository.
Define the Session,workflow,Start workflow and preview the data.
Note: In Router Transformation we may get more no. of records in the Target than the source.
Example: Source Rows 14, Target Rows 16
(See the screen shot)
In a router if group1 is dept>10 and group2 is dept>20 ..and incoming value has dept=30..which grooup it will fall?
ReplyDeleteIt will go to both groups
DeleteSubba,
DeleteBoth the group
why grp 1?
ReplyDelete