Normally if it should be 2007.00 and i wanted it to be 2007, I should use num yes.
But now it is 2007 in the database datetype in oracle but in oracle 11 it is internally stored as a timestamp.
I don't want to use and function, but just want that QV reads, hey its a date type, so i need to extract it as a date, not as a timestamp.
The time portion of a timestamp is the decimal part of the number so Floor(Timestamp) will get you just the date part. Date(Floor(Timestamp),'DD/MM/YYYY'), for example.
If you really don't want to use a function like this you could try changing the SET section at the top of the script:
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
Maybe that'll work.