Page 2 of 2

Posted: Mon Aug 30, 2010 10:56 pm
by tanaya.deshpande@tieto.co
In my job 1 row(or many ) is giving implicit conversion error .

how can I find the row which is causing trouble in thousand and millions of rows.The column which is having the error is not any key,can accept nulls and has datatype float.

this is the warning :

Copy_of_MAXIMO_WORKORDER: When checking operator: When binding output interface field "ABBESTDOWNTIME" to field "ABBESTDOWNTIME": Implicit conversion from source type "dfloat" to result type "sfloat": Possible range/precision limitation. [api\interface_rep.C:6183]


this is the error:

Copy_of_MAXIMO_WORKORDER,0: (aptoci.C:460). Message: ORA-01438: value larger than specified precision allowed for this column
[aptoci.C:1011]


The problem lies in oracle source .

Posted: Tue Aug 31, 2010 12:17 am
by ray.wurlod
Perhaps an IsValid test for data type "sfloat" (Float) on that dfloat (Double) column in a Transformer stage?

Posted: Tue Aug 31, 2010 5:24 am
by tanaya.deshpande@tieto.co
the job does not use transformer


this is the design its simple mapping

oracle->filter->sqlserver

The thing is when I am filtering data on a value (in oracle query iam giving condition where the <columnname> <> <value>)its finishing ok but

if I remove this condition the job aborts

if I run using condition columnname> = <value> then too the job aborts by giving error value too large for the described precition

Posted: Tue Aug 31, 2010 6:59 am
by HariK
Tanaya, do the following check.

select max(your_column_name) from your_oracle_table;

check the result whether it fits into range of SFLOAT.