Поделиться через


Создание поврежденного файла

Изменения: 5 декабря 2005 г.

Для демонстрации настройки и обработки ошибок преобразования необходимо создать образец плоского файла, который при обработке вызовет сбой в работе компонента.

В этой задаче предстоит скопировать существующий образец плоского файла. Затем предстоит открыть его в приложении «Блокнот» и изменить столбец CurrencyID таким образом, чтобы при поиске совпадений во время преобразования произошел сбой. При обработке нового файла произойдет сбой в преобразовании «Уточняющий запрос» для CurrencyKey, что приведет к ошибке в работе всего пакета. После создания поврежденного образца файла предстоит выполнить пакет, чтобы просмотреть его поведение при сбое.

Создание поврежденного образца плоского файла

  1. В приложении «Блокнот» или другом текстовом редакторе откройте файл Currency_VEB.txt.

    По умолчанию файл Currency_VEB.txt находится в папке «c:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Tutorial\Creating a Simple ETL Package\Sample Data».

  2. Используя функции текстового редактора для поиска и замены, замените все вхождения строки VEB на BAD.

  3. Сохраните измененный файл в той же папке, где находятся остальные файлы образцов данных, с именем Currency_BAD.txt.

    ms170682.note(ru-ru,SQL.90).gifВажно!
    Убедитесь, что файл Currency_BAD.txt сохранен в папке «C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Tutorial\Creating a Simple ETL Package\Sample Data».
  4. Закройте текстовый редактор.

Проверка факта возникновения ошибки во время выполнения

  1. В меню Отладка выберите команду Начать отладку.

    При третьем проходе потока данных в преобразовании «Уточняющий запрос» Currency Key будет предпринята попытка обработать файл Currency_BAD.txt, при этом произойдет ошибка преобразования. Ошибка преобразования вызовет отказ работы всего пакета.

  2. В меню Отладка выберите команду Остановить отладку.

  3. В области конструктора откройте вкладку Результаты выполнения.

  4. Просмотрите журнал и убедитесь, что произошла следующая необработанная ошибка:

    [Уточняющий запрос для Currency Key [30]] Ошибка: в результате уточняющего запроса для строки соответствие не обнаружено.

    ms170682.note(ru-ru,SQL.90).gifПримечание.
    Число 30 представляет собой идентификатор компонента. Это значение присваивается при создании потока данных, так что в вашем пакете оно может отличаться от приведенного в учебнике.

Следующие шаги

Добавление перенаправления потока ошибок