Troubleshooting the Data Transfer

Use these procedures to correct problems that occur during the data transfer.

  1. Correct values that were entered with an import table column rule.

    If a rule was used in the Import Table Column Rule Definition form to enter incorrect values for a sequence, and the Preliminary Data Transfer has been successfully run for that sequence, then the incorrect values have been applied to the Source Data Load table. To recover the source table data and run the transfer again:

    1. Delete the transferred data in the appropriate target table, if partial data was transferred.
    2. Run this script against the source database to reload the data into the Source Data Load table. Set @SourceObjectName to the appropriate source table.
      DECLARE	@return_value int,
      		@Infobar InfobarType
      EXEC	@return_value = [dbo].[FetchSingleSourceTableDataSp]
      		@isTruncateTable = 1,
      		@BGTaskID = NULL,
      		@SourceObjectName = '', --Set your source table name
      		@Infobar = @Infobar OUTPUT
      SELECT	@Infobar as N'@Infobar'
      SELECT	'Return Value' = @return_value
      GO
    3. Correct the data for the rule and sequence in the Table Column Rule Definition form.
    4. Clear the Source Data Imported field in the Import Parameters form.
    5. Run the preliminary data transfer again for that sequence in the Import Data Transfer form.
  2. Find and correct invalid data during final data transfer.

    If the final data transfer fails and the Data is invalid error message is displayed, this usually indicates that the business logic validation in the target application found invalid data. For example, if you are transferring item data to the target table, and an item from the source database has a product code that is not defined in the target application, the transfer fails and this message is displayed. You must find and correct the data in the Target Data Load table in order to successfully complete the final data transfer.

    Use this SQL query statement to find the invalid data:

    SELECT *
    FROM TargetDL_[target-table-name]Load
    WHERE ErrCode <> 0

    For example, if the error occurred during final data transfer into the item table, use this query:

    SELECT *
    FROM TargetDL_itemLoad
    WHERE ErrCode <> 0

    After you find the list of columns where data is invalid, you must modify the data in the TargetDL_[target-table-name]Load table. Then clear the Source Data Imported field in the Import Parameters form and run the Final Data Transfer again.

    Caution:  In this case, you must run the Final Data Transfer, not the Preliminary Data Transfer. If you run the Preliminary Data Transfer, the TargetDL_[target table name]Load data is deleted and your modifications are lost.
Related topics