Служба преобразования данных Data Transformation Services (DTS) воспринимается такими слушателями как средство, связанное исключительно с таблицами и базами данных. Но приведенный ниже простой пример иллюстрирует широкие возможности, которые служба преобразования данных открывает перед администраторами Windows NT 4.0. В нем служба преобразования данных MS SQL Server 7.0 используется для получения файла с расширением .csv, содержащего сведения для создания учетных записей пользователей на основном контроллере домена Windows NT 4.0.

Представим себе такую ситуацию: администратор получает документ в формате Word, содержащий список сотрудников, для которых нужно создать учетные записи пользователей на главном контроллере домена. Для создания нескольких учетных записей у администратора есть программа Addusers.exe из Resource Kit, которая читает файл в формате .csv и создает учетные записи. Требуется имеющийся файл в формате Word каким-либо способом преобразовать в файл для Addusers.exe.

Это можно сделать с помощью MS SQL Server 7.0.

Пусть исходный список сотрудников в документе, например Employees.doc, представляет собой таблицу (см. Таблицу 1).

Результирующий файл в формате .csv должен иметь следующую структуру: User Name, Full Name, Password, Comment, Home Drive, Home Path, Profile, Script. Имена пользователей будем писать латинскими буквами, причем в соответствии со следующим правилом: четыре первые буквы фамилии сотрудника плюс первая буква его имени. Первоначально устанавливаемый пароль имеет значение password. В поле описания учетной записи нужно включить должность сотрудника.

Как быстро построить нужный файл, автоматически сформировав имена учетных записей, пароли и т. д.?

Для начала нужно преобразовать имеющуюся таблицу в текст и сохранить исходный документ Microsoft Word Employees.doc в формате текстового файла с расширением .txt, т. е. Employees.txt.

Далее обратимся к SQL Server. Используя SQL Server Enterprise Manager, следует создать пакет преобразования данных. Для этого нужно запустить SQL Server Enterprise Manager, раскрыть группу SQL Server Group и найти свой сервер. Щелкнув правой кнопкой мыши на Data Transformation Services, выберем из меню New Package и откроем конструктор пакетов DTS Designer. Первым делом следует сохранить пакет под именем Convert Employees to Users.

Теперь надо определить соединение с источником данных. В качестве источника данных выберем Text File (Source). Примерный список значений его параметров приведен на Рисунке 1.

Рисунок 1. Cписок значений параметров источника данных.

Создадим также соединение с получателем данных. В качестве получателя данных выберем Text File (Destination). Аналогично источнику здесь нужно задать значения параметров получателя (см. Рисунок 2).

Рисунок 2. Список значений параметров получателя данных.

Чтобы задать операцию преобразования данных в конструкторе пакетов DTS Designer, нужно выполнить следующие действия.

1. Выделить соединение Employees Text File.

2. Удерживая кнопку CTRL, выделить соединение Users Comma Separated Values.

3. Щелкнуть правой кнопкой мыши и выбрать из меню WorkFlow, Transform Data. Появится черная стрелка, направленная от Employees Text File к Users Comma Separated Values.

Теперь необходимо определить преобразование данных. Для этого нужно выполнить следующие операции.

1. Двойным щелчком на стрелке, обозначающей преобразование, открыть настройку его свойств.

2. Проверить информацию об источнике на закладке Source. Она должна иметь вид, показанный на Рисунке 3.

Pисунок 3. Информация об источнике.

3. Проверить информацию о получателе на закладке Destination (см. Рисунок 4).

Рисунок 4. Информация о получателе.

Щелкнуть на кнопке Define Columns и, внося исправления в колонку Name, присвоить имена полям по порядку: User Name, Full Name, Password. В последнем поле запишем несколько имен через запятую (Comment,HomeDrive,Home Path, Profile,Scripts), поскольку количество полей у получателя больше, чем у источника. В колонке Type нужно выбрать тип non quotable. И в завершение нажать кнопку Execute.

КРАМАРСКАЯ ТАТЬЯНА АЛЕКСЕЕВНА

к.т.н., MCSE, MCDBA, MCT. Специализируется на преподавании и консультировании по вопросам использования SQL Server и продуктов BackOffice. Старший консультант компании АЛЕСТА (MCSP,CTEC). Адрес: kram@alesta.ru


ТАБЛИЦА 1.
ФамилияИмяОтчествоДолжность
ХлестаковИванАлександровичМенеджер
Сквозник-ДмухановскийАнтонАнтоновичДиректор
ЗемляникаАртемийФилипповичМенеджер
БобчинскийПетрИвановичПрограммист
ДобчинскийПетрИвановичПрограммист