want to capture data which is causing error

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

tanaya.deshpande@tieto.co
Participant
Posts: 94
Joined: Sun Jul 18, 2010 11:35 pm

Post 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 .
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Perhaps an IsValid test for data type "sfloat" (Float) on that dfloat (Double) column in a Transformer stage?
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
tanaya.deshpande@tieto.co
Participant
Posts: 94
Joined: Sun Jul 18, 2010 11:35 pm

Post 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
HariK
Participant
Posts: 68
Joined: Thu May 17, 2007 1:50 am

Post 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.
Post Reply