My source is a TXT Flat File Source, the Destination is of type OLE DB. (see image)
I found a very basic tutorial on Code Project to create a package. I finished the steps but when debugging I get a strange error(bellow):
Can someone give an explanation to this error? It took me hours to search the web for the error.
SSIS package "C:\Users\USRNAME\Desktop\Projects\DataGeneratorSsis\DataGeneratorSsis\Package.dtsx" starting. Information: 0x4004300A at Data Flow Task, SSIS.Pipeline: Validation phase is beginning. Information: 0x4004300A at Data Flow Task, SSIS.Pipeline: Validation phase is beginning. Warning: 0x80047076 at Data Flow Task, SSIS.Pipeline: The output column "intApplication" (7) on output "Flat File Source Output" (6) and component "Flat File Source" (2) is not subsequently used in the Data Flow task. Removing this unused output column can increase Data Flow task performance. Information: 0x40043006 at Data Flow Task, SSIS.Pipeline: Prepare for Execute phase is beginning. Information: 0x40043007 at Data Flow Task, SSIS.Pipeline: Pre-Execute phase is beginning. Information: 0x402090DC at Data Flow Task, Flat File Source 2: The processing of file "C:\Users\USRNAME\Desktop\ddd.txt" has started. Information: 0x4004300C at Data Flow Task, SSIS.Pipeline: Execute phase is beginning. Information: 0x402090DE at Data Flow Task, Flat File Source 2: The total number of data rows processed for file "C:\Users\USRNAME\Desktop\ddd.txt" is 2. Error: 0xC0202009 at Data Flow Task, OLE DB Destination [43]: 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 11.0" Hresult: 0x80040E21 Description: "Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.". Error: 0xC020901C at Data Flow Task, OLE DB Destination [43]: There was an error with OLE DB Destination.Inputs[OLE DB Destination Input].Columns[AppID] on OLE DB Destination.Inputs[OLE DB Destination Input]. The column status returned was: "The value could not be converted because of a potential loss of data.". Error: 0xC0209029 at Data Flow Task, OLE DB Destination [43]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "OLE DB Destination.Inputs[OLE DB Destination Input]" failed because error code 0xC0209077 occurred, and the error row disposition on "OLE DB Destination.Inputs[OLE DB Destination Input]" 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: 0xC0047022 at Data Flow Task, SSIS.Pipeline: SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component "OLE DB Destination" (43) failed with error code 0xC0209029 while processing input "OLE DB Destination Input" (56). 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. Information: 0x40043008 at Data Flow Task, SSIS.Pipeline: Post Execute phase is beginning. Information: 0x402090DD at Data Flow Task, Flat File Source 2: The processing of file "C:\Users\USRNAME\Desktop\ddd.txt" has ended. Information: 0x4004300B at Data Flow Task, SSIS.Pipeline: "OLE DB Destination" wrote 0 rows. Information: 0x40043009 at Data Flow Task, SSIS.Pipeline: Cleanup phase is beginning. Task failed: Data Flow Task Warning: 0x80019002 at Package: SSIS Warning Code DTS_W_MAXIMUMERRORCOUNTREACHED. The Execution method succeeded, but the number of errors raised (4) reached the maximum allowed (1); resulting in failure. This occurs when the number of errors reaches the number specified in MaximumErrorCount. Change the MaximumErrorCount or fix the errors. SSIS package "C:\Users\USRNAME\Desktop\Projects\DataGeneratorSsis\DataGeneratorSsis\Package.dtsx" finished: Failure.
There was an error with OLE DB Destination.Inputs[OLE DB Destination Input].Columns[AppID] on OLE DB Destination.Inputs[OLE DB Destination Input]. The column status returned was: "The value could not be converted because of a potential loss of data."
Error 0xC0202009 occurs when SSIS does a parameter cast in SQL Server.
An OLE DB destination includes mappings between input columns and columns in the destination data source. You do not have to map input columns to all destination columns, but depending on the properties of the destination columns, errors can occur if no input columns are mapped to the destination columns.
Retrieving the error column in SSIS 2016 or later To test this, we need to add a script component as a transformation to the data flow. In the script component editor, select the ErrorCode and ErrorColumn columns as inputs. Create two new output columns, one for the error description and one for the column name.
To configure error output just right click Data Conversion component edit -> below see there is a button called "Configure Error Output" so click on that button a new modal form will open in that choose columns and in error column choose "Redirect row" why because we want to redirect error-row to some other destination ...
Error: 0xC0202009 at Data Flow Task, OLE DB Destination [43]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E21
Error: 0xC0202009 at Data Flow Task, OLE DB Destination [23]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available.The AcquireConnection method call to the connection manager "<Name>" failed with error code 0xC0202009. The hexadecimal value for this error number = 0x80004005.
Error: 0xC0209029 at Data Flow Task, OLE DB Destination [43]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "OLE DB Destination.Inputs [OLE DB Destination Input]" failed because error code 0xC0209077 occurred, and the error row disposition on "OLE DB Destination.Inputs [OLE DB Destination Input]" specifies failure on error.
So this error is occurring because you have a value in your source for the AppID column that is not valid for your AppID column in the destination.
Some possible examples:
SSIS is governed by metadata, and it expects that you've set up your inputs and outputs properly such that the acceptable values for both are within the same range.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With