Ssis ошибка преобразования данных

  • Remove From My Forums
  • Question

  • Hello Again,

    My environment: BIDS 2005, Windows 7 ( or XP sp3 ), JAVA application on J2SDK1.6

    I am trying to load data from SQLServer 2005 into Excel 2007. The applications writes an NVARCHAR(250) to a field in SQLServer table, item_Desc nvarchar(250)

    I can read all the records as long as I do not write to Excel or Text file. To test this, I used a Multi-Cast widget.

    But as soon as I put a Data Target e.g. text file, it fails, it even tells me that it is the data conversion of item_desc.


    In the Data Conversion widget, I used following conversion.

    And in the Advanced Editor of the OLEDB Source, I likewise chose the same conversion.

    As well, I have configured it to ignore errors on conversion.

    The STRANGE bit: I did this in BIDS2008 using an ADO.NET Source rather than an OLE-DB Source in BIDS 2005 and I did not have this problem. Unfortunately ADO is not available in 2005.

    Any ideas?


    acinau@hotmail.com

Answers

    • Marked as answer by

      Wednesday, May 2, 2012 8:33 AM

Ошибка служб SSIS: преобразование данных не выполнено. Преобразование данных для столбца «» ПОЛУЧАТЕЛЬ «» вернуло значение состояния 4 и текст состояния «Текст был усечен или один или несколько символов не соответствовали целевой кодовой странице. Ответ:-
(1) Просто щелкните правой кнопкой мыши строку подключения для вашего источника файла Flat и получите расширенный столбец, и найдите свойства столбца «RECIPIENT», обновите размер столбца с фактическим размером, например, от 50 до 100.

(2) Щелкните правой кнопкой мыши на источнике плоских файлов и выберите «Показать расширенный редактор». Перейдите на вкладку «Свойства ввода и вывода», разверните «Вывод источника плоских файлов» и выберите «Внешние столбцы».

(3) Выберите столбец, который вызывает эту ошибку (в моем случае столбец «RECIPIENT», как указано в приведенном выше сообщении об ошибке), а в правой части увеличьте длину, скажем, до 100 или 200 или в зависимости от длины столбца (4) Теперь выберите «Output» Столбцы «и выберите тот же столбец, что и выше, и сделайте это значение таким же, как мы делали на шаге 4, в моем случае его значение равно 200, как показано ниже.
(5) Run Это работает.

Добрый день. Следующие ошибки произошли при обработке плоского файла:

  • Ошибка: 0xC02020A1 в задаче, файл [1]: сбой преобразования данных. Преобразование данных для столбца «Столбец 0» вернуло значение состояния 4 и текст состояния «Текст был усечен или один или несколько символов не совпадали с целевой кодовой страницей».
  • Ошибка: 0xC020902A в Задаче, Файл [1]: «Выходной столбец« Столбец 0 »(14)» не удалось из-за усечения, а расположение строки усечения в «Выходном столбце« Столбец 0 »(14)» указывает сбой при усечении. Произошла ошибка усечения для указанного объекта указанного компонента.
  • Ошибка: 0xC0202092 в задаче, файл [1]: произошла ошибка при обработке файла «путь к файлу» в строке данных 1.
  • Ошибка: 0xC0047038 в задаче, SSIS.Pipeline: код ошибки SSIS DTS_E_PRIMEOUTPUTFAILED. Метод PrimeOutput компонента «Получить входной пакетный файл» (1) вернул код ошибки 0xC0202092. Компонент вернул код ошибки, когда механизм конвейера вызвал PrimeOutput (). Значение кода ошибки определяется компонентом, но ошибка является фатальной, и выполнение конвейера прекращается. Перед этим могут быть опубликованы сообщения об ошибках с дополнительной информацией об ошибке.

Исходный файл представляет собой плоский файл. Свойства типа данных для внешнего столбца и выходного столбца идентичны: Тип данных: Строка [DT_STR] Длина — 1143

Я пытался поэкспериментировать со значениями в свойствах, но мне не повезло. В чем может быть причина ошибки?

Вдобавок попробовал протестировать 2 файла. Первый файл получил успешный результат, а второй — нет. Разница между ними в том, что первый — это Dos \ Windows, а другой — UNIX. Влияет ли это на поведение плоского файла?

Большое спасибо за ваш вклад :)

Fix SSIS 2008 Error — The conversion returned status value 2 and status text «The value could not be converted because of a potential loss of data.»

When importing a datasource from a flat file today (a csv), (which ran through a Derived Column Transformation and then a Data Conversion Transformation before hitting SQL), I hit the following error in SQL Server Integration Services 2008 (SSIS 2008):

«Data conversion failed while converting column …..The conversion returned status value 2 and status text «The value could not be converted because of a potential loss of data.»

The dataviewers and error output SSIS debugging techniques didn’t show anything unusual in the data as it was transformed. In addition, this problem only occurred on my float columns, and only when the data in the columns is blank. I did some quick checks to see if there were a few extra spaces in some of the fields and did a TRIM() for the derived column — but the same error kept coming up. I even enabled «Ignore truncation» and it still didn’t work.

Information: 0x402090DE at ImportTemplateData, Flat File Source [2917]: The total number of data rows processed for file «C:\WorkforceProfileInitialImport\Q2_2008_162_Data.csv» is 1050.
Error: 0xC02020C5 at ImportTemplateData, Data Conversion [4034]: Data conversion failed while converting column «[8c Override Census Period FTE]» (2050) to column «Copy of [8c Override Census Period FTE]» (5338). The conversion returned status value 2 and status text «The value could not be converted because of a potential loss of data.».
Error: 0xC0209029 at ImportTemplateData, Data Conversion [4034]: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The «output column «Copy of [8c Override Census Period FTE]» (5338)» failed because error code 0xC020907F occurred, and the error row disposition on «output column «Copy of [8c Override Census Period FTE]» (5338)» 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 ImportTemplateData, SSIS.Pipeline: SSIS Error Code DTS_E_PROCESSINPUTFAILED. The ProcessInput method on component «Data Conversion» (4034) failed with error code 0xC0209029 while processing input «Data Conversion Input» (4035). 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 ImportTemplateData, SSIS.Pipeline: Post Execute phase is beginning.

The underlying issue was that it was trying to convert these blank strings (from the flat file source datatype) into the float datatype and was thereforce constantly failing. The fix is to tick on the «Retain null values from the source as null values in the data flow» and the package then started to run successfully for those columns which had just blank values.

#windows #ssis #bids #flat-file

#Windows #ssis #ставки #плоский файл

Вопрос:

Добрый день. Ниже приведены ошибки, возникшие при обработке плоского файла:

  • Ошибка: 0xC02020A1 при выполнении задачи, File [1]: не удалось преобразовать данные. Преобразование данных для столбца «Столбец 0» вернуло значение состояния 4 и текст состояния «Текст был усечен или один или несколько символов не совпадали на целевой кодовой странице»..
  • Ошибка: 0xC020902A при выполнении задачи, файл [1]: ошибка «выходного столбца «столбца 0″ (14)» произошла ошибка, поскольку произошло усечение, а расположение строки усечения в «выходном столбце»столбца 0″ (14)» указывает на сбой при усечении. Произошла ошибка усечения для указанного объекта указанного компонента.
  • Ошибка: 0xC0202092 при выполнении задачи, File [1]: произошла ошибка при обработке файла «filepath» в строке данных 1.
  • Ошибка: 0xC0047038 при выполнении задачи, SSIS.Конвейер: ошибка SSIS с кодом ошибки DTS_E_PRIMEOUTPUTFAILED. Метод PrimeOutput в компоненте «Извлечение входного пакетного файла» (1) вернул код ошибки 0xC0202092. Компонент вернул код ошибки, когда механизм конвейера вызвал PrimeOutput(). Значение кода сбоя определяется компонентом, но ошибка является фатальной, и конвейер перестал выполняться. Перед этим могут быть опубликованы сообщения об ошибках с дополнительной информацией о сбое.

Исходный файл представляет собой плоский файл, свойства типа данных для внешнего столбца и выходного столбца идентичны: Тип данных: строка [DT_STR] Длина 1143

Я пытался поэкспериментировать со значениями в свойствах, но мне не повезло. В чем может быть причина ошибки?

Кроме того, я попытался протестировать 2 файла. Первый файл получил результат успеха, а второй — нет. Разница между ними в том, что первый — Dos Windows, а другой — UNIX. Влияет ли это на поведение плоского файла?

Большое вам спасибо за ваш вклад 🙂

Комментарии:

1. При чтении первой ошибки кажется, что вы выполняете импорт, а поле в таблице имеет меньший размер по сравнению с содержимым столбца file.

2. Да, Алекс. Однако я выполняю импорт, однако столбец ввода и столбец вывода настроены на одинаковую длину, достаточную для обработки входных данных.

3. Возникают ли ошибки в диспетчере соединений с плоскими файлами, если вы выполняете предварительный просмотр файла UNIX?

4. Сообщений об ошибках не поступало, однако информация печатается в одной строке … затем в конце окна предварительного просмотра вывода появляется многоточие.

5. Затем система не распознает разделители строк {CR} {LF}; есть ли разделители столбцов в файле? Вероятно, вам нужно смоделировать соединение, чтобы распознать строки..

Ответ №1:

Перейдите в диспетчер подключений к плоскому файлу>>> Редактор исходного кода плоского файла, затем >>> Нажмите на Вывод ошибки >>>>, а затем в соответствующий столбец и выберите Игнорировать сбой. Это сработало для меня. (То есть, если размер столбца правильный)

Понравилась статья? Поделить с друзьями:
  • Ssd состояние ошибки 50
  • Ssangyong kyron ошибка 0608
  • Ssd диск выдает ошибку
  • Ssh2 msg unimplemented packet ошибка
  • Ssd kingston ошибка ввода вывода