SSIS Multiple-step OLE DB operation generated errors

0

Well, I don't how to explain this problem, I have two OLE DB Connections that i need to merge and send to an oledb Destination, the source oledb columns are:

tbl clientes totales:

RUT_CLIE numeric(18,0), 
DV(string(1)), CLI_NOM(string(40)), 
CLI_CAT_SUB(string(3)), 
CLI_STA(string(5)), 
CLI_SUB_STA(string(5)), 
**COD_CTR (numeric(18,0))  <- JOIN KEY**, 
nom_ejec(string(50)),
nom_suc(string(100)), 
nom_suc_gpo(string(100)), 
zonal(string(50)), 
id_cargo(string(50)), 
CLI_GRP_NOM(string(25)),  
CANAL(string(50)), 
ACTIVO(int), 
VINCULADO(int), 
VINCULADO_TRX(int), 
CTACTE(int), 
CLI_CAT(string(5))

tbl cartera 1 1:

cod_cartera (numeric(18,0))  <- JOIN KEY
cargo(string(100)),
nom_suc_gpo(string(100))

Destination:

http://i.stack.imgur.com/4NK91.jpg

Mapping:

http://i.stack.imgur.com/eR6Oa.jpg

I need to convert many of the columns into nvarchar(255), (I think that's the problem), but when I run the program, this happens:

http://i.stack.imgur.com/zUASR.jpg

Error Messages:

[OLE DB Destination [5679]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E21. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80040E21 Description: "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.".

[OLE DB Destination [5679]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "input "OLE DB Destination Input" (5692)" failed because error code 0xC020907B occurred, and the error row disposition on "input "OLE DB Destination Input" (5692)" 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.

[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component "OLE DB Destination" (5679) failed with error code 0xC0209029 while processing input "OLE DB Destination Input" (5692). The identified component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running. There may be error messages posted before this with more information about the failure.

[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component "Sort" (4898) failed with error code 0xC0047020 while processing input "Sort Input" (4899). The identified component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running. There may be error messages posted before this with more information about the failure.

Warnings:

[SSIS.Pipeline] Warning: Warning: Could not open global shared memory to communicate with performance DLL; data flow performance counters are not available. To resolve, run this package as an administrator, or on the system's console.

Please help, i'm really frustrated and stressed right now, so I can't explain myself better, if you don't understand something, please ask and i'll try to make it better.

ssis
oledbconnection
asked on Stack Overflow Feb 11, 2013 by Desu • edited Feb 12, 2013 by Desu

2 Answers

1

I can't be sure without seeing the actual column mappings in your OLE DB destination component, but the fact that COD_CTR is defined as NUMERIC(18,0) in tbl clientes totales and NVARCHAR(4) in RUTERO_FICHA_RED looks highly suspicious.

answered on Stack Overflow Feb 11, 2013 by Edmund Schweppe
0

Edmund Schweppe gave me the idea, the problem was the Data Conversion, I must transform all the metadata into the same oledb destination, like this: enter image description here

(Same Data Type as dbo.RUTERO_FICHA_RED table destination).

Thanks for the help!

answered on Stack Overflow Feb 12, 2013 by Desu • edited May 9, 2016 by chridam

User contributions licensed under CC BY-SA 3.0