Data Management: Cognos Data Manager (v8.3): ToDate Error

The ToDate function has an annoying feature whereby it will translate a DATE STRING that is NOT in the format provided AND it will get it WRONG!

e.g. it will translate ’09-09-09′ using $!MyDate := ToDate($inputString, ‘dd-mm-yyyy’) to 9-September-0009 instead of the expect ‘null’ which would normally happen for non-matching date strings.

The year 0009 (or the other possible years 0000-0099) can be detected using something like:
If ( ToInteger(!ToChar($!MyDate, ‘YYYY’)) < 1900) Then …reject it…
where 1900 can be changed to 0100 or higher depending on your needs.