The datatype translations provided by Sybase specify that the thread attempting a translation where the source value exceeds the bounds of the target datatype should be stopped with the following error message:
E. 2007/12/14 11:14:54. ERROR #32055 DSI EXEC(135(1) snickers_dco.ora805) - /nrm/nrm.c(7023) Class Level translation for column/parameter 'datetimecol' failed. Source DTID is 'datetime'. Target DTID is 'rs_oracle_datetime'. Function String Class ID 'rs_oracle_function_class'. Value length is '21'; Maximum target length is '20'; The value is '99991231 23:59:59:010'
Typically, these are the most difficult translation problems to diagnose because there appears to be no problem with either the pairing of source/target datatypes or the value to be translated.
To diagnose this type of problem, you have to be familiar with the datatype value boundary limits of all the translated target datatypes. For example, to diagnose the error shown, you have to know that the upper boundary of an Oracle DATE value is 12/31/4712.
There are other options:
Use the maximum value of the datatype definition.
Use the minimum value for the datatype definition.
Use the default value for the datatype definition.
The only way you can specify these options is to edit the minimum and maximum boundary error action column values in each hds_xxx_udds.sql script and re-install the datatype definitions by re-executing the hds_xxx_udds.sql scripts in the RSSD.