Главная Обратная связь

Дисциплины:






Script Task и ActiveX Script Task



Задачи Script Task и ActiveX Script Taskпредназначены для одной и той же цели — выполнения в пакете своего программного кода. При помощи них вы можете использовать все объектные модели (или классы пространств имен .NET), которые есть на вашем компьютере.

· Задача Script Task использует Visual Studio for Applications и язык Visual Basic.NET. Работа с ней очень похожа на работу с преобразованием Script Component в Data Flow Task: вы перетаскиваете эту задачу на вкладку Control Flow (Поток управляющих элементов), открываете ее свойства и на вкладке Script (Скрипт) нажимаете на кнопку Design Code (Спроектировать код).

· Задача ActiveX Script Taskпредназначена для программной работы с обычным (не .NET-совместимым) программным кодом. В ней вы можете использовать код скрипта, который будет выполнен в ходе выполнения пакета. По умолчанию можно использовать только код на языках VBScript и JavaScript.

Задача Script Task обычно работает быстрее, поскольку при сохранении пакета программный код VB.NET в Script Task компилируется и хранится в откомпилированном виде.

Bulk Insert Task

Bulk Insert Task — это задача, единственное назначение которой заключается в загрузке информации из текстовых файлов с разделителями (flat files, плоских файлов) на SQL Server. При этом эта задача не может производить ни преобразований, ни проверок данных. В ней используются специализированные программные объекты, оптимизированные для достижения максимальной скорости загрузки данных.

Настройка Bulk Insert Task.

Она требует наличия двух менеджеров подключений:

1. OLE DB Connection Manager (для SQL Server, на который будут загружаться данные)

2. Flat File Connection Manager (для текстового файла-источника).

При настройке свойств вы можете:

· Выбрать таблицу, в которую будет производиться загрузка, кодировку текстового файла источника, разделители строк и столбцов.

· Определить дополнительные параметры загрузки данных (назначение столбца в исходном файле столбцу таблицы назначения и игнорирование некоторых столбцов файла-источника) при помощи файла форматирования (он выбирается при помощи параметра Format на вкладке Connections свойств задачи).

Execute SQL Task

Execute SQL Task — основное назначение этой задачи заключается в выполнении команды SQL или хранимой процедуры на сервере баз данных (с возможностью передачи параметров). Эта задача может использоваться для выполнения команд SQL как на SQL Server, так и на других источниках данных. Единственное ограничение — источник данных должен поддерживать интерфейс ICommand, то есть уметь работать с командами SQL.



Чаще всего эта задача используется в следующих ситуациях:

· для создания или удаления объектов на SQL Server;

· для очистки промежуточных таблиц, используемых при закачке данных для выполнения преобразований с ними;

· для запуска хранимых процедур;

· для выполнения параметризованных запросов;

· для сохранения результатов выполнения запросов в глобальной переменной.

Настройка Execute SQL Task

1. Выбрать подключение к источнику данных (свойства Connection Type и Connection на вкладке General).

2. Выбрать источник, из которого будет браться текст запроса. Для этой цели предназначено свойство SQLSourceType на той же вкладке. В нашем распоряжении — три варианта:

· Direct Input — текст запроса вводится напрямую при помощи свойства SQLStatement (или генерируется при помощи кнопки Build Query). В тех местах запроса, где должны подставляться параметры, устанавливаются знаки вопроса. Затем на вкладке Parameter Mapping этим параметрам можно назначить переменные;

· Variable — текст запроса будет определяться при помощи единственной строковой переменной (чаще всего значение этой переменной в ходе выполнения пакета конструируется при помощи строковых функций средствами задачи Script Task). Имя этой переменной определяется при помощи свойства SourceVariable;

· File connection — текст запроса будет поступать из текстового файла на диске. Вам потребуется в этом случае создать менеджер подключения типа File Connection Manager.

3. Определить формат результатов выполнения запроса Execute SQL Task. В нашем распоряжении значения None (по умолчанию, означает, что результаты выполнения запроса нас не интересуют), Single row (единственная строка или единственное значение), Full result set (полный набор записей табличного вида) или XML.

4. На вкладке Parameter Mapping назначить переменные входящим параметрам нашего запроса, а на вкладке Result Set — точно так же определить переменные для значений, которые наш запрос будет возвращать. Создать, изменить или удалить переменные уровня пакета можно при помощи меню SSIS àVariables в SSIS Designer.

XML Task

XML Task — используется для подготовки документа XML. Эту задачу нельзя использовать для загрузки данных в формате XML на SQL Server или для выгрузки данных с SQL Server в формате XML. В ней всегда используются два источника: первый (Sourceна вкладке General) и второй (Second Operand на той же вкладке). И первый, и второй документ можно ввести напрямую прямо в свойствах этой задачи (значение Direct Input свойств SourceType и SecondOperandType), получить из файла (File Connection) или принять из переменной пакета (Variable). Результаты операции можно сохранить в файл или передать в переменную.

Всего для этой задачи предусмотрено шесть операций. Нужная операция выбирается при помощи свойства OperationType на вкладке General:

1. Validate — проверка документа XML на соответствие схеме или DTD;

2. XSLT — проведение преобразования XSL Transformation. Обычно в результате такого преобразования создается документ XML с другим форматом или документ HTML;

3. XPATH — возможность выполнить запрос на языке XPath. Чаще всего такой запрос используется для того, чтобы найти нужный элемент или элементы в документе XML;

4. Merge — возможность слить два документа XML в один (например, отчеты за разные периоды или от разных филиалов);

5. Diff — возможность сравнить два документа XML и сгенерировать отчет о найденных отличиях (DiffGram) в стандартном формате.

6. Patch — использовать результаты операции Diff (то есть данные в формате DiffGram) для создания нового документа XML.

Message Queue Task

Message Queue Task — это задача, предназначенная для работы с сообщениями в Message Queue Service, службы работы с сообщениями, которая поставляется вместе с Windows 2000 Server и Windows Server 2003.

Данная задача может быть использована:

· для повышения надежности передачи данных при не очень надежных или перегруженных сетевых соединениях;

· для синхронизации работы пакетов SSIS (и просто приложений);

· для накопления и последующей пакетной обработки данных.

Настройка Message Queue Task

1. Установить службы Message Queue и создать очередь сообщений. Установка служб Message Queue производится обычными средствами Windows: Панель управления à Установка и удаление программà кнопка Установка компонентов Windows àраскрыть контейнер Сервер приложений àустановить флажок Очередь сообщений.

2. Создать очередь, которую мы будем использовать: открыть консоль Управление компьютеромà раскрыть контейнер Службы и приложения à Очередь сообщений à создать новую частную очередь из контекстного меню для одноименного контейнера, см. рис. 9.9àОК.

Рис. 9.9. Создание частной очереди

3. Создать в пакете менеджер подключения типа MSMQ Connection Manager. Главное его свойство — свойство Path, в котором определяется путь и имя очереди. Значение для этого свойства записывается в формате имя_компьютера\Private$\имя_очереди, например London2\Private$\SSIS1.

4. Перетащить из Toolbox на вкладку Control Flow задачу типа Message Queue Task и настроить ее свойства.

§ На вкладке General определить имя и описание задачи, использовать ли формат, совместимый с очередями сообщений в Windows 2000 (по умолчанию Windows Server 2003), менеджер подключения, а также тип задачи (свойство Message) — будет ли эта задача отправлять сообщение в очередь (Send message) или получать сообщение из очереди (Receive Message). В зависимости от выбранного вами значения вторая вкладка будет называться, соответственно, Sendили Receive.

§ На второй вкладке определить параметры отправляемого или принимаемого сообщения. При помощи свойства MessageType можно определить тип сообщения. Сообщение может быть текстом, или переменной, или файлом данных. В зависимости от выбранного типа можно определить дополнительные параметры сообщения.

5. Включить задачу Message Queue в схему выполнения вашего пакета.





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...