I wonder if someone could tell me if there is a better way to accomplish what I'm trying to do. I'm having trouble specifying a specific reject reason for a data set when a lookup fails in the tMap component (if a tMap contains several lookups and all are inner joins, then there is apparently no way to know which lookup failed and caused the record to be rejected). My solution is to use a series of tMaps and each tMap only contains one lookup - which makes it easy to add a column to the reject output and specify a reject reason : i.e. : "Invalid Customer Number!" when the Customer Number tMap fails.
My solution is to use one tMap component for each lookup. This makes it possible to know why the lookup failed and append a "reject reason" field to the output. I have included a screenshot of the relevant job flow which shows how the data is flowing through a series of tMaps, with a tFileOutput for the rejects. This seems to be a cumbersome way of doing it, and now I have to find a way to merge all of those files back together (tUnite does not work in this case for some reason).
Is it possible to identify which lookup a record failed on in a tMap component which contains several lookups?
Here's an example:
If I have input with three fields:
Customer Number, Customer Type, Region
and I want to perform lookups on all 3 fields so that I can convert each into an ID field (as is normal with referential integrity), like this:
CUSTOMER_ID, TYPE_ID, REGION_ID
Is it possible to do all of this in one tMap AND also to know for example if a record is rejected whether it was rejected due to Invalid Customer Number, Invalid Type, or Invalid Region?
It seems to me like if we do it all in one tMap then when a record is rejected we won't be able to know what was the specific reason that it failed.
Thanks,
Joe
Hi Sabrina,
I'm trying to save the reject data into a table on oracle. But no matter what output that i use, always come back the line with error as primary key. See my example:
I have a table with 3 columns: id, name, email
1
NAME 1
name1@email.com
- Line: 0
2
NAME 2
name1@email.com
- Line: 1
3
NAME 3
name1@email.com
- Line: 2
4
NAME 4
name1@email.com
- Line: 3
So, when i tried to save the data, i have an error with ID, because is not a number. What can i do to take it off the line with "Line errors"?