Capture reject record both input

Six Stars

Capture reject record both input

Hello, I have scenario where I have capture both input reject records in two output and join is Inner join only. 

 

Input 1: As main input

1;AAA;in1
2;BBB;in1
2;DDD;in1
3;CCC;in1

 

Input 2 records: As Lookup Reject

1;AAA;in2
3;CCC;in2
4;DDD;in2

 

I want output is as follows:

Joined record: 3:CCC

 

Main Input reject:

2;BBB;in1
2;DDD;in1

 

Lookup Reject:

4;DDD;in2

 

When I tried using attached solution, I am getting only main reject but not getting lookup reject. In reject, getting null, Here is a output as follows,

.--+----+---.
| tLogRow_1 |
|=-+----+--=|
|id|str1|inp|
|=-+----+--=|
|1 |AAA |in2|
|3 |CCC |in2|
'--+----+---'

.--+----+---.
|IN1-Reject |
|=-+----+--=|
|id|str1|inp|
|=-+----+--=|
|2 |BBB |in1|
|2 |DDD |in1|
'--+----+---'

.--+----+---.
|IN2-Reject |
|=-+----+--=|
|id|str1|inp|
|=-+----+--=|
|null|null|null|
|null|null|null|
'--+----+---'

 

 

How to get solve this scenario getting both rejects in output?

 

Thanks,

Saggy

Sixteen Stars

Re: Capture reject record both input

You cannot do what you want to do in this way because the tMap is driven by one flow....the main flow. If there is no match with a lookup, you will not see the lookup value in any output. A way in which you can test for the missing lookup rows is to create another tMap, this time with the lookup data set as the main flow. Add your success row (from the previous tMap) as a lookup. Now use your catch rejects to show you the rows that did not match on your lookup in the first tMap and the rows that match will be the same as those which matched in the first tMap.

 

Employee

Re: Capture reject record both input

Please find attached job, that will handle lookup reject. you need to use 2 tmap to achieve this.

 

tmap_handling_lookup_rejects.JPG