Page 1 of 1

warnings...is it ok to ignore them?

Posted: Wed Feb 09, 2005 11:32 am
by Jay
Hi All,

I am getting similar warnings in all the 4 PX jobs i am developing.

Source table has EMPLOYEE_NBR in Numeric(8,0).

compareEmployeeTables: When checking operator: On input data set 0: When binding input interface field "EMPLOYEE_NBR" to field "EMPLOYEE_NBR": Implicit conversion from source type "int32" to result type "decimal[8,0]": Possible range limitation

Is there anyway to overcome these warnings ?

Is it ok to ignore such warnings, since the jobs run fine ?

Thanks
Jay

Posted: Wed Feb 09, 2005 11:35 am
by Jay
Database is Oracle 8.1.7.4.0

I read somewhere in this forum that its how Oracle organises its data and there is some problem for Datastage to read them.

Posted: Wed Feb 09, 2005 11:50 am
by Jay
Staging Oracle DB = Oracle9i Enterprise Edition Release 9.2.0.4.0

Target Oracle DB = Oracle8i Enterprise Edition Release 8.1.7.4.0

Is this a problem ?

Posted: Thu Feb 10, 2005 1:56 am
by ArndW
Jay,

no, DS does not have a problem using the 2 versions of Ora, the development is quite transparent to that.

Posted: Thu Feb 10, 2005 3:33 am
by memrinal
So will it be okay to ignore such warnings

Posted: Thu Feb 10, 2005 4:05 am
by ArndW
Memrinal - In my opinion it is not OK to ignore these warnings. I would prefer to do a cast or conversion to the data type that the job expects to avoid the warnings and accept the performance hit that this might entail.

I do this for future maintenance - if I now get into the "ignore warnings" mode for a job I will ignore any warnings in the future and would most certainly miss any new warnings that might occur, which could be really serious ones.

Posted: Thu Feb 10, 2005 4:09 am
by battaliou
Your job will run ok, but this is not best practice in EE as you should specifically define type conversions. I think you will find a slight gain in performance on your job too.

Posted: Thu Feb 10, 2005 5:18 am
by memrinal
Thanks Arndw and battaliou,
The point about future maintainace is very valid and one must take care.

Posted: Thu Feb 10, 2005 2:48 pm
by Jay
Thanks all....i tried everything and am still getting the warnings...so me and my teammates are deciding to ignore the warnings for the time being...

Posted: Thu Feb 10, 2005 2:58 pm
by ray.wurlod
A 32-bit integer (int32) can not fit into a Decimal(8,0) column. These integers can have up to 10 digits - the largest integer is 2147483647.

That's why DataStage issues you with a warning. What you're trying to do may have catastrophic consequences for large enough integers (such as a segmentation violation).

Posted: Mon Feb 14, 2005 5:02 pm
by T42
Do a "StringToDecimal(Right(field, 8))" within a transformer stage if you must squeeze it within the Number[8,0] field.

Yes, StringToDecimal. Within DataStage EE, Integer is interchangeable with String. Decimal is not.

To date, I have been able to eliminate ALL BUT ONE WARNING MESSAGE for my jobs. The one warning message? A Remote DB2 warning message that I am still trying to plug in.

Yes, I even fixed the partition warnings. And the column propagation warnings. There is absolutely no reason why you can not do what I did. It is simply good development practice.