Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Microsoft SQL Server для профессионалов
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

2.2.6 Dynamic Properties Task, Disconnected Edit и работа с объектной моделью пакета DTS

Dynamic Properties Task в Data Transformation Services (DTS) в SQL Server 2000, Disconnected Edit, программное изменение пакета DTS

Каждый пакет в действительности - это класс, построенный с использованием COM-технологии. При выполнении пакета создается объект этого класса, зависимые от него объекты, настраиваются их свойства и вызываются методы. Можно написать пакет вручную при помощи любого COM-совместимого языка программирования (VBasic, C++, Deplhi, все семейство языков .NET), можно изготовить программный код на VBasic в автоматическом режиме (будем заниматься на лабораторной). Однако иногда возникает необходимость изменять свойства элементов пакета на низком уровне в ходе выполнения пакета. Это делается при помощи просмотрщика объектной модели пакета (Disconnected Edit) и Dynamic Properties Task.

Disconnected Edit можно запустить из DTS Designer, выбрав в меню Package пункт Disconnected Edit. Затем, перемещаясь по иерархии пакета, можно просмотреть/установить свойства самого пакета, соединений, заданий, этапов, глобальных переменных. Обратить внимание: если какое-либо свойство доступно только для чтения, поменять его значение в Disconnected Edit нельзя (только просмотреть, например, имя пакета), и в Dynamic Properties Task его вообще не будет.

Dynamic Properties Task позволяет менять свойства пакета и его компонентов "на лету", в ходе выполнения. Очень удобно для применения в следующих ситуациях:

1) когда при помощи пакета нужно пройти по массиву файлов, таблиц и т.п., и мы точно не знаем, сколько их будет и как они будут называться. Например, нужно скачать в SQL Server отчеты, присланные в виде макетных файлов из филиалов. Будем делать на лабораторной.

2) когда один и тот же пакет будет использован для подключения к разным серверам, при помощи разных учетных записей, с разными параметрами подключения и т.п.

3) когда нам нужно запускать один и тот же пакет для разных поднаборов данных в таблицах (за разные месяцы, по разным регионам и т.п.)

Свойства Dynamic Properties Task очень просты: присваиваем заданию имя, затем нажимаем на кнопку Add. Выбираем изменяемое свойство элемента пакета, а затем нажимаем на кнопку Set. Далее нам нужно указать источник, из которого мы берем новое значение:

  • INI File - необходимо указать файл .INI, раздел в нем и параметр. Можно использовать только для присвоения единственного значения и только для свойства, значение которого расположено на одной строке в файле .INI.
  • Query - используется только первое возвращаемое значение первого столбца результата запроса.
  • Global Variable - используется чаще всего. Можно назначать в момент запуска пакета на выполнение, будем делать на лабораторной. Глобальные переменные можно создать непосредственно из свойств Dynamic Properties Task или из свойств пакета.
  • Environment Variable - возможность получить данные из переменных окружения. Полный список переменных окружения и их значений можно получить (или создать/изменить/удалить) при помощи команды SET в операционной системе.
  • Constant - просто константа, используется редко.
  • Data File - удобнее, чем файл .INI, потому что можно использовать значения, распределенные на несколько строк.

Обратить внимание:

  • если Dynamic Properties Task отрабатывает в DTS Designer, значение меняется на постоянной основе - если есть необходимость вернуться к значению по умолчанию, то нужно использовать еще одну Dynamic Properties Task;
  • если пакет запущен не в окне DTS Designer, то значение меняется временно, только на время выполнения пакета;
  • в одном Dynamic Properties Task можно одновременно менять несколько свойств одного или нескольких компонентов пакета.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 

 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru