I have a column from an input file row5.DATE_OF_BIRTH with the date pattern set as: "dd-MM-yyyy"
The output column has also the same date pattern set.
I am trying to compare the date from row5.DATE_OF_BIRTH to 01-01-1900.
If it is less than "01-01-1990" or null, I want to null the output value, else I want to use the date in row5.DATE_OF_BIRTH.
Please could you help.
Solved! Go to Solution.
Should work with something like that:
row5.DATE_OF_BIRTH == null || TalendDate.compareDate(row5.DATE_OF_BIRTH,
TalendDate.parseDate("dd-MM-yyyy", "01-01-2010", "dd-MM-yyyy)) < 0) ? null : row5.DATE_OF_BIRTH
Hope this helps.
Thanks for the response,
this doesn't seem to work.
I also added double quotes to dd-MM-yyyy.
I get an error (object is not an instance of declaring class)
You're right, the correct syntax is:
row5.DATE_OF_BIRTH == null || TalendDate.compareDate(row5.DATE_OF_BIRTH, TalendDate.parseDate("dd-MM-yyyy", "01-01-1990", "dd-MM-yyyy")) < 0) ? null : row5.DATE_OF_BIRTH
Can you share your tMap with the schemas?
This worked .
I had to remove the final "dd-MM-yyyy" from TalendDate.parseDate("dd-MM-yyyy", "01-01-1990", "dd-MM-yyyy")) to make it work.
Would you happen to know how i can limit the output of a row to 50chars even though the input may be 300charrs?
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Part 2 of a series on Context Variables
Learn how to do cool things with Context Variables
Find out how to migrate from one database to another using the Dynamic schema