Can you explain, in a bit more detail what is wrong or what is the format of your Oracle date. For example, in some relational databases, dates are not just dates (month, day, year) but they are stored as "date/time" values (month,day,year,hour,minutes,seconds).
When you show the function (todate(&date,'J') can you explain what the 3 major components of the function are or what they do:
Is this an Oracle-specific function??? If so, what does the entire function do? What is the entire SQL statement or query in which this function appears? Are you trying to convert this SQL query from Oracle SQL to SAS PROC SQL???