IBM UniVerse to SQL 2008 SSIS
I have a SQL 2008 Server (not R2) on a Windows 2007 server with Service Pack 2 - 32bit - .NET 3.5 SP1
I have an IBM Universe RDBMS and I know next to nothing about the server it's on. I'm using the UniVerse ODBC Driver
On the SQL 2008 Server I created a table named testClientCodes
On the IBM there's a table named CLIENTS
I created an SSIS Project and created an OLE DB connection to the sql server. I created an ADO.NET Connection using an ODBC source. All connections test successfully.
So I put the ADO.NET connection on as the source and wrote the following sql statement: SELECT CLIENT_CODE FROM CLIENTS WHERE STATUS1 = 'CCC'
I put the OLE DB connection on as the destination and set the table and the 1 column mapping.
When I try to run this simple simple simple process (it's just a testing deal to figure out what this problem is), I get the following error output before the whole studio finally just crashes..
SSIS package "Package.dtsx" starting.
Information: 0x4004300A at Data Flow Component, SSIS.Pipeline: Validation phase is beginning.
Warning: 0x802092A7 at Data Flow Component, Destination for LMCVSQL1 NEWCP [1]: Truncation may occur due to inserting data from data flow column "CLIENT_CODE" with a length of 254 to database column "vchClientCode" with a length of 50.
Information: 0x4004300A at Data Flow Component, SSIS.Pipeline: Validation phase is beginning.
Warning: 0x802092A7 at Data Flow Component, Destination for LMCVSQL1 NEWCP [1]: Truncation may occur due to inserting data from data flow column "CLIENT_CODE" with a length of 254 to database column "vchClientCode" with a length of 50.
Information: 0x40043006 at Data Flow Component, SSIS.Pipeline: Prepare for Execute phase is beginning.
Information: 0x40043007 at Data Flow Component, SSIS.Pipeline: Pre-Execute phase is beginning.
Information: 0x4004300C at Data Flow Component, SSIS.Pipeline: Execute phase is beginning.
Error: 0xC0209029 at Data Flow Component, ADO NET Source [18]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "component "ADO NET Source" (18)" failed because error code 0x80131937 occurred, and the error row disposition
on "output column "CLIENT_CODE" (33)" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure.
Error: 0xC02090F5 at Data Flow Component, ADO NET Source [18]: The component "ADO NET Source" (18) was unable to process the data. Pipeline component has returned HRESULT error code 0xC0209029 from a method call.
Error: 0xC0047038 at Data Flow Component, SSIS.Pipeline: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "ADO NET Source" (18) returned error code 0xC02090F5. The component returned a failure code when the
pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
Information: 0x40043008 at Data Flow Component, SSIS.Pipeline: Post Execute phase is beginning.
SSIS package "Package.dtsx" finished: Canceled.
November 3rd, 2010 1:29pm
Ok so I figured out that I have to go to the error output on the source columns and ignore the errors to get passed the whole truncation deal. Now it runs to completion, but is loading nulls. It loads the expected number of records, but the values themselves
are all NULL.
When I preview the source, there isn't a single NULL in the result set.
Free Windows Admin Tool Kit Click here and download it now
November 3rd, 2010 2:30pm
Your source column is 254 wide, but your destination column is only 50 wide. You specified ignore truncation so it's returning nothing or NULL. The source data may be padded to 254 characters so try triming the column in a derived
column before it gets to the destination. Or make the destination column wider.
November 3rd, 2010 3:26pm