Maybe I misunderstood your problem, but specifying in your informat that you only use the first 10 characters should behave in the same way with dates and datetimes, as in the example :
DATA _null_;
FORMAT sasdate date9.;
isodate="2005-12-23T07:23:11";
sasdate=INPUT(isodate, IS8601DA10.);
PUT sasdate=;
isodate="2005-12-23";
sasdate=INPUT(isodate, IS8601DA10.);
PUT sasdate=;
RUN;
Regards.
Olivier