Ugh. I have been fighting rounding problems in my SSIS package since yesterday morning. I have traced the rounding problem back to what appears to be an undesired rounding of a decimal to the tenths place when retrieving data via OLE DB Source
and I can't figure out how to fix that.
I have a Source database which is Sybase. There is a table (let's call it "foo"). In the "foo" table there is a column (let's call it "amount"). For a given row in the "foo" table, the "amount"
column equals exactly 1.875.
When my OLE DB source retrieves the data it retrieves the value of "amount" for that row as 1.9 instead of 1.875.
If I use an MS Access app to connect to that same Sybase database via ODBC and retrieve that exact same row from the "foo" table the value of "amount" is correctly retreived as 1.875.
I have tried playing with the advanced settings of my OLE DB source and setting the source column type to double precision float instead of just float (DT_R8 vs DT_R4) to no success. When I preview the data (or run the SSIS package) the value is retreived
as 1.9 instead of 1.875.
Any help on why this is happening would be appreciated. It is causing me a real headache (and inaccurate data results as well)
View Complete Post