WWW.DOC.KNIGI-X.RU
БЕСПЛАТНАЯ  ИНТЕРНЕТ  БИБЛИОТЕКА - Различные документы
 

«Комментарии к документу: Версия Naumen Service Desk 4.3.3 Если вы хотите отправить замечание или предложение по содержанию ...»

Naumen Serviсe Desk 4.3

Руководство по настройке

универсального импорта

АННОТАЦИЯ

Настоящий документ представляет собой руководство по настройке универсального импорта для

программного продукта Naumen Service Desk.

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

вэб-интерфейсом, знакомого с языком разметки xml и службами каталогов.

Руководство содержит описание общего порядка импорта и синхронизации, описание основных параметров импорта и конфигурации базовых импортов.

Комментарии к документу:

Версия Naumen Service Desk 4.3.3 Если вы хотите отправить замечание или предложение по содержанию документов, напишите нам письмо по адресу: docs@naumen.ru Copyright© 2003-2014, NAUMEN. Все права защищены.

Никакая часть этого документа не может быть воспроизведена или обработана в системах обработки данных, скопирована или использована в других документах без письменного уведомления компании NAUMEN.

Информация, содержащаяся в этом документе, может быть изменена компанией NAUMEN без предварительного уведомления. Компания NAUMEN не гарантирует отсутствия ошибок или опечаток в этом документе.

Naumen Service Desk является зарегистрированной торговой маркой компании NAUMEN.

Остальные торговые марки являются зарегистрированными торговыми марками их владельцев.

-2СОДЕРЖАНИЕ Глава 1 - Импорт и синхронизация 4 Глава 2 - Содержание конфигурации импорта 5

2.1 Основные параметры импорта (config)

2.2 Режимы импорта (mode)

2.3 Параметры импорта, настраиваемые через интерфейс (gui-parameter)

2.4 Предопределенные параметры конфигурации (parameter)

2.5 Параметры импортируемых объектов (class)

2.6 Параметры источника данных (*data-source) 2.6.1 Источник данных — файл формата csv (csv-data-source) 2.6.2 Источник данных — sql (sql-data-source) 2.6.3 Источник данных — файл формата xml (xml-data-source) 2.6.4 Источник данных — файл формата xls (xls-data-source) 2.6.5 Источник данных — ldap (ldap-data-source)

2.7 Фильтрация атрибутов источника 2.7.1 Фильтр иерархической сортировки (hierarchical-filter) 2.7.2 Фильтр, исключающий пустые строки (column-notempty-filter) 2.7.3 Скриптовый фильтр (script-filter)

2.8 Стратегии определения класса и типов создаваемых объектов (*metaclass_resolver)

2.9 Стратегии поиска объектов при обновлении (*object-searcher)

2.10 Параметры заполнения импортируемых атрибутов (attr)

2.11 Конвертеры преобразования импортируемых атрибутов

2.12 Группировка пользовательских атрибутов по классам и типам (metaclass-attrs)

2.13 Кастомайзеры (*customizer) 2.13.1 Помещение объектов в архив (remove-customizer) 2.13.2 Кастомайзер на основе скрипта (script-customizer) 2.13.3 Кастомайзеры для импорт

–  –  –

-1Удаление подключения Глава 5 - Управление конфигурациями 34

5.1 Добавление конфигурации импорта

5.2 Редактирование конфигурации импорта

5.3 Карточка конфигурации

5.4 Запуск импорта

5.5 Просмотр логов импорта

5.6 Настройка параметров отображения истории импорта

5.7 Удаление логов импорта Глава 6 - Настройка автоматической синхронизации 40

6.1 Добавление задачи планировщика. Синхронизация

6.2 Карточка задачи планировщика "Синхронизация"

6.3 Расписание задачи планировщика 6.3.1 Выполнение в определенную дату и время 6.3.2 Периодическое выполнение Приложение A - Структура файла конфигурации импорта 45

-2УСЛОВНЫЕ ОБОЗНАЧЕНИЯ, ПРИНЯТЫЕ В ДОКУМЕНТЕ

В настоящем руководстве используются условные обозначения:

— особенности выполнения действия/настройки, упрощающие работу в системе, но не влекущие значимых последствий.

— пример.

В настоящем документе приняты следующие соглашения:

"жирным шрифтом" выделяются названия кнопок, вкладок, полей и других элементов l пользовательского интерфейса системы.

жирным шрифтом с подчеркиванием выделяются названия ссылок.

l жирным курсивом выделяются термины.

l курсивом выделяется пример текста при заполнении полей ввода на формах добавления и l редактирования; также пример текста экранных сообщений.

выполняемые команды и фрагменты конфигурационных файлов выделены цветом и фоном.

l "Сотрудник (employee)" — рядом с названием системного класса/атрибута в скобках l указывается код, который является уникальным идентификатором, т.к. название системного класса и атрибута может быть изменено.

операции: "нажмите кнопку/иконку/строку", "перейдите по ссылке", "выберите l настройку/пункт меню"обозначают следующее — необходимо установить курсор (указатель мыши) на указанный элемент пользовательского интерфейса, нажать и отпустить левую кнопку мыши.

–  –  –

Глава 1 - Импорт и синхронизация Процедура универсального импорта предназначена для загрузки в систему данных из внешних источников (внешней системы или файла) и включает в себя:

разовый импорт объектов;

l периодическую синхронизацию с внешними системами.

l В процессе импорта/синхронизации выполняются следующие действия с объектами: добавление, перемещение, редактирование, помещение объектов в архив и восстановление из архива. Все действия, производимые с помощью импорта/синхронизации, совершаются аналогично действиям с объектами в интерфейсе оператора, но при импорте не выполняются действия по событию. История изменений объекта сохраняется в системе. Для действия, совершенного с помощью универсального импорта, автором события является пользователь "advimport".

Для корректного проведения импорта и синхронизации требуются следующие данные:

источник данных: sql, ldap, файлы в формате csv, xml, xls;

l конфигурационный файл импорта в формате xml, см. "Структура файла конфигурации l импорта " (стр.45)

Запуск процедуры импорта/синхронизации выполняется следующими способами:

вручную — на форме запуска возможно заполнение параметров импорта, см. "Запуск l импорта" (стр.37);

автоматически — правила запуска указываются в задаче планировщика типа l "Синхронизация", см. "Настройка автоматической синхронизации" (стр.40).

Результаты прохождения импорта фиксируются в логе, см. "Просмотр логов импорта" (стр.38).

–  –  –

Глава 2 - Содержание конфигурации импорта Настройки процедуры импорта и синхронизации данных выполняются в конфигурации импорта, которая представляет собой xml-файл установленного образца.

В конфигурации импорта указываются:

"Основные параметры импорта (config)" (стр.5) 1.

"Режимы импорта (mode)" (стр.6) 2.

"Параметры импорта, настраиваемые через интерфейс (gui-parameter)" (стр.6) 3.

"Предопределенные параметры конфигурации (parameter)" (стр.6) в тэге config 4.

"Параметры импортируемых объектов (class)" (стр.7) 5.

"Предопределенные параметры конфигурации (parameter)" (стр.6) в теге class 6.

"Параметры источника данных (*data-source)" (стр.8) 7.

"Фильтрация атрибутов источника" (стр.10) 8.

"Стратегии определения класса и типов создаваемых объектов (*metaclass_resolver)" 9.

(стр.12) "Стратегии поиска объектов при обновлении (*object-searcher)" (стр.12) 10.

"Параметры заполнения импортируемых атрибутов (attr)" (стр.13) 11.

"Группировка пользовательских атрибутов по классам и типам (metaclass-attrs)" (стр.17) 12.

"Кастомайзеры (*customizer)" (стр.17) 13.

В конфигурации импорта возможно использование скриптовых методов, см. Руководство по настройке скриптовых сценариев.

Пример конфигурации импорта см. "Структура файла конфигурации импорта " (стр.45)

2.1 Основные параметры импорта (config) Основные параметры импорта задаются в атрибутах и вложенных тегах тэга config, см. "Структура файла конфигурации импорта " (стр.45), п. 1.

Атрибуты тега config:

threads-number — количество потоков, которыми будут обрабатываться элементы из внешнего l источника.

Параметр необязательный, типа "int", по умолчанию "1 (один поток)".

Параметр позволяет получить прирост производительности на серверах с несколькими ядрами за счет использования большего количества ядер.

Возможность обработки данных в несколько потоков зависит от технических параметров подключения к базе данных.

save-log — запись в систему файла с логами импорта большого размера.

l Параметр необязательный, типа "boolean", по умолчанию "true".

Возможные значения: "true" — файл с логами импорта сохраняется в системе, "false" — файл с логами импорта не сохраняется в системе, логи импорта сохраняются только в логах приложения.

skip-workflow — проверка, связанная с жизненным циклом объектов.. По умолчанию "false".

l При проведении проверки импортируемые закрытые запросы переводятся в статус "Закрыт" (closed))

Вложенные теги config:

–  –  –

gui-parameter — "Параметры импорта, настраиваемые через интерфейс (gui-parameter) l " (стр.6) parameter — "Предопределенные параметры конфигурации (parameter)" (стр.6) l class — "Параметры импортируемых объектов (class)" (стр.7) l

2.2 Режимы импорта (mode)

Доступны два режима проведения процедуры импорта/синхронизации данных:

CREATE — только создание объектов;

l UPDATE — только обновление существующих объектов.

l Если указан режим UPDATE, то при повторном импорте/синхронизации изменяются значения атрибутов объектов в системе, если соответствующее изменение было сделано в источнике.

Если режим не указан, то при повторном импорте/синхронизации значения атрибутов созданных ранее объектов не изменяются.

Можно указывать сразу два режима, в этом случае будут создаваться новые объекты и обновляться уже существующие.

Каждый режим импорта прописывается в отдельном вложенном теге mode, см. "Структура файла конфигурации импорта " (стр.45), п. 2..

Настройки конфигурации, связанные с CREATE:

"Стратегии определения класса и типов создаваемых объектов (*metaclass_resolver)" l (стр.12);

Настройки конфигурации, связанные с UPDATE:

"Стратегии поиска объектов при обновлении (*object-searcher)" (стр.12) l "Помещение объектов в архив (remove-customizer)" (стр.17) l

2.3 Параметры импорта, настраиваемые через интерфейс (guiparameter) При запуске процедуры импорта вручную предоставляется возможность запросить у пользователя значения дополнительных параметров импорта/синхронизации, см. "Запуск импорта" (стр.37).

Параметры, настраиваемые через интерфейс, указываются в конфигурации импорта в теге guiparameter, см. "Структура файла конфигурации импорта " (стр.45), п. 3.

Использутся следующие типы параметров:

STRING — запрос строкового параметра:

l gui-parameter name="paramName" type="STRING" title="Дополнительные параметры"/

FILE — загрузка файла:

l gui-parameter name="uploadedFile" type="FILE" title="Файл для импорта в формате csv, xml, xls, sql" /,

2.4 Предопределенные параметры конфигурации (parameter) Предопределенные параметры конфигурации — некоторые константные величины, которые могут использоваться в конфигурации импорта как параметры по умолчанию.

Параметры по умолчанию определяются в теге parameter, который может быть вложен как в тэг config, так и в тэг class, см. "Структура файла конфигурации импорта " (стр.45), п. 4 и 6. Если

–  –  –

параметр по умолчанию определен и в тэге config, и в тэге class, то в качестве значения будет взято значение, определенное в class.

Параметры, значения которых используются по умолчанию:

metaClass — код метакласса импортируемых объектов:

l parameter name="MetaClass"ou/parameter idHolder — код атрибута синхронизации объектов, идентификатор объекта из внешней l системы:

parameter name="idHolder"idHolder/parameter importRootUUID — uuid корневого объекта, в иерархии которого необходима архивация l объектов, не участвующих в импорте, используется в теге hierarchy-root:

parameter name="importRootUUID"ou$1234/parameter

2.5 Параметры импортируемых объектов (class) Параметры импорта объектов из конкретного источника задаются в атрибутах и вложенных тегах тэга class, см. "Структура файла конфигурации импорта " (стр.45), п. 5..

Атрибуты тега class:

name — имя конфигурации, используется для логирования процесса импорта.

l threads-number — количество потоков, в которых будет производиться импорт объектов.

l Должен быть неотрицательным целым числом. Если равен 0, то значение наследуется из конфигурации импорта, см. "Основные параметры импорта (config)" (стр.5) Если один и тот же объект будет редактироваться при импорте более одного раза (к одному объекту относятся несколько строчек файла источника), необходимо проводить импорт в один поток (threads-number="1").

Вложенные теги class:

parameter — "Предопределенные параметры конфигурации (parameter)" (стр.6) l csv-data-source — "Параметры источника данных (*data-source)" (стр.8) l "Фильтрация атрибутов источника" (стр.10) l hierarchical-filter id-prefix column-notempty-filter script-filter "Стратегии определения класса и типов создаваемых объектов (*metaclass_resolver)" l (стр.12) constant-metaclass-resolver by-column-metaclass-resolver column-metaclass-resolver script-metaclass-resolver "Стратегии поиска объектов при обновлении (*object-searcher)" (стр.12) l object-searcher complex-object-searcher script-object-searcher attr — "Параметры заполнения импортируемых атрибутов (attr)" (стр.13) l

–  –  –

metaclass-attrs — "Группировка пользовательских атрибутов по классам и типам (metaclassl attrs)" (стр.17) "Кастомайзеры (*customizer)" (стр.17) l remove-customizer script-customizer timer-customizer backtimer-customizer

2.6 Параметры источника данных (*data-source) Параметры источника данных описываются в атрибутах и вложенных тегах тэга *-data-source, где "*" — возможные типы источника данных, см. "Структура файла конфигурации импорта " (стр.45), п. 7..

В одной конфигурации импорта может быть описано несколько источников данных.

2.6.1 Источник данных — файл формата csv (csv-data-source)

Атрибуты тега csv-data-source:

file-name — полное имя файла, из которого будет производиться импорт: полный путь, имя l файла, расширение файла.

Импортируемый файл может запрашивается у пользователя при запуске импорта, см. "Параметры импорта, настраиваемые через интерфейс (gui-parameter)" (стр.6) file-name="$uploadedFile" with-header — подпись колонки в имортируемом файле.

l Если значение true, то scr-key колонки задает подпись колонки. Если false, то scr-key указывает номер колонки;

encoding — кодировка символов импортируемого файла, по умолчанию "CP1251";

l id-column — идентификатор колонки, содержащей уникальный внешний идентификатор l импортируемого объекта. В дальнейшем по этому идентификатору будет производится поиск объекта, см. "Стратегии поиска объектов при обновлении (*object-searcher)" (стр.12).

delimiter — разделитель между колонками в csv файле, по умолчанию «;», должен быть одним l симоволом;

text-delimiter — разделитель текста в csv файле, по умолчанию '"', должен быть одним l символом.

Вложенный тег csv-data-source:

column — описание колонки импортируемых данных, если with-header=true, то src-key — l подпись колонки, иначе номер колонки column name="id" src-key="@id"/ 2.6.2 Источник данных — sql (sql-data-source)

Атрибуты тега sql-data-source:

id-column — идентификатор колонки, содержащей уникальный внешний идентификатор l импортируемого объекта. В дальнейшем по этому идентификатору будет производится поиск объекта.

Вложенные теги sql-data-source:

–  –  –

column — описание колонки импортируемых данных, src-key — номер колонки (если число) l или ее алиас.

column name="id" src-key="@id"/ connection-code — код подключения из списка подключений, см."Добавление подключения к l SQL" (стр.31).

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

connection-code@код_подключения/connection-code 2.6.3 Источник данных — файл формата xml (xml-data-source)

Атрибуты тега xml-data-source:

file-name — полное имя файла, из которого будет производиться импорт: полный путь, имя l файла, расширение файла.

xpath — путь до импортируемого компонента в иерархии xml-файла;

l id-column — идентификатор колонки, содержащей уникальный внешний идентификатор l импортируемого объекта. В дальнейшем по этому идентификатору будет производится поиск объекта.

Указывается при использовании:

hierarchical-filter, см. "Фильтрация атрибутов источника" (стр.10) l

–  –  –

Вложенный тег xml-data-source:

column — описание колонки импортируемых данных, src-key — xpath значения колонки l относительно импортируемого элемента column name="id" src-key="@id"/ 2.6.4 Источник данных — файл формата xls (xls-data-source)

Атрибуты тега xls-data-source:

file-name — полное имя файла, из которого будет производиться импорт: полный путь, имя l файла, расширение файла.

sheet-number — номер листа книги, на котором находятся импортируемые данные, l по умолчанию «1»;

start-row — номер первой строки, содержащей импортируемые данные, по умолчанию «1»;

l id-column — идентификатор колонки, содержащей уникальный внешний идентификатор l импортируемого объекта. В дальнейшем по этому идентификатору будет производится поиск объекта.

Вложенный тег xls-data-source:

column — описание колонки импортируемых данных, src-key — номер колонки l column name="id" src-key="@id"/ 2.6.5 Источник данных — ldap (ldap-data-source)

Атрибуты тега ldap-data-source:

check-user-disabled — необходимость пропускать пользователей, которые неактивны в AD;

l full-domain — правило формирования логина импортируемого пользователя по его DN;

l Параметры "full-domain" и "check-user-disabled" относятся к импорту сотрудников из AD или LDAP и не должны использоваться во время импорта других объектов.

–  –  –

Вложенные теги ldap-data-source:

column — описание колонки импортируемых данных: задается соответствие атрибутов l LDAP-объекта колонкам импорта.

Атрибуты объектов расширяются следующими параметрами:

parent — objectGUID родительского объекта;

o login — логин пользователя, включая доменное имя.

o column name="id" src-key="@id"/ connection-code — код подключения из списка подключений, см."Добавление подключения к l LDAP" (стр.29).

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

connection-code@код_подключения/connection-code root-element — корень леса DistinguishedName (DN) иерархии объектов LDAP для импорта.

l Необходимо указать как минимум один корень/ allowed-postfix — список постфиксов (DN), включаемых при импорте;

l ignored-postfix — cписок постфиксов (DN), игнорируемых при импорте;

l

filter — Фильтр поиска объектов в LDAP. Значение по умолчанию:

l (|(&(objectClass=user)(objectCategory=person))(objectClass=organizationalUnit))

2.7 Фильтрация атрибутов источника Фильтры атрибутов источника определяются тегами, вложенными в тег class, см. "Структура файла конфигурации импорта " (стр.45), п. 8..

2.7.1 Фильтр иерархической сортировки (hierarchical-filter) Определяет необходимость иерархической сортировки импортируемых строк. При использовании фильтра в первую очередь будет проимпортирован объект с значением атрибута "id-column", совпадающем со значением атрибута фильтра "parent-column":

hierarchical-filter parent-column="parent"/

При использовании фильтра иерархической сортировки необходимо:

задать значение атрибута "id-column" для источника данных, см. "Параметры источника l данных (*data-source)" (стр.8) xml-data-source id-column="id" file-name="$uploadedFile" xpath="/Items/OU" column name="id" src-key="./@id" / column name="title" src-key="./Title/text()" / /xml-data-source использовать режим обновления объектов UPDATE, см. "Режимы импорта (mode)" (стр.6) l

Фильтр id-prefix:

prefix — префикс внешнего идентификатора, подставляется перед внешним идентификатором, что позволяет загружать данные из нескольких источников с одинаковыми внешними идентификаторами.

Если определен hierarchical-filter, то к значениям атриубтов "id-column" и "parent-column" в качестве префикса дописывается указанное значение:

id-prefix prefix="prefix-value"/

–  –  –

2.7.2 Фильтр, исключающий пустые строки (column-notempty-filter)

Фильтр позволяет исключить при импорте строки с пустым значением указанной колонки:

column-notempty-filter column="title"/ 2.7.3 Скриптовый фильтр (script-filter) Script-filter позволяет производить фильтрацию объектов по сложной логике, определенной в скрипте.

script-filter /script-filter

В скрипте фильтра доступны глобальные переменные:

ctx — контекст импорта, получение значений выражений ctx.evaluate(expr);

l

–  –  –

Скрипт фильтра всегда должен возвращать либо true, либо false.

Использование script-filter в транзакции:

Скрипт-фильтр работает вне транзакций!

script-filter следует использовать внутри транзакции api.tx.call({***}).

Обращение к базе данных в рамках script-filter, метод utils.edit() (найти и/или изменить объект) используется внутри транзакции:

script-filter   api.tx.call({utils.get("root$101")})   return true /script-filter

Логирование ошибок выполнения скрипта:

В процессе импорта создается лог, в котором указывается сколько объектов было импортировано/обновлено и все возникшие ошибки.

Для записи ошибку выполнения script-filter в лог импорта используется конструкция:

ctx.getLogger().error("Ошибка")

Пример использования script-filter:

Импорт части запросов из файла:

script-filter![CDATA[ //ПАРАМЕТРЫ def COLUMN_NAME = 'number'; // Колонка с идентификаторами.

def CALL_NUMBERS = [].plus(108..109).plus(111).plus(113..115); // Номера запросов которые будут проимпортированы. (В данном примере проимпортируются 108,109,111,113,114, 115.) //СКРИПТ checkedValue = item.properties.getProperty(COLUMN_NAME);

try { return CALL_NUMBERS.contains(checkedValue.toInteger());

} catch(NumberFormatException e) { api.utils.throwReadableException("Невозможно преобразовать %s к int", checkedValue);

return false;

} ]]/script-filter

- 11 Глава 2 - Содержание конфигурации импорта

2.8 Стратегии определения класса и типов создаваемых объектов (*metaclass_resolver) Стратегии определения класса и типов создаваемых объектов определяются тегами, вложенными в тег class, см. "Структура файла конфигурации импорта " (стр.45), п. 9..

Стратегии определения классов/типов создаваемых объектов используются только для режима CREATE, см. "Режимы импорта (mode)" (стр.6). При обновлении объектов задавать этот параметр не обязательно.

Определение метакласса создаваемых объектов constant-metaclass-resolver:

Стратегия задает метакласс создаваемых объектов, т.е. все объекты будут созданы с этим метаклассом.

constant-metaclass-resolver metaclass="${metaClass}" /

Атрибут тега constant-metaclass-resolver:

metaclass — метакласс создаваемых объектов. Значение по умолчанию ${metaClass}.

l Определение типа создаваемого объекта по значению колонки импортируемых данных.

by-column-metaclass-resolver:

by-column-metaclass-resolver metaclass="${metaClass}" case-column="caseColumn"/

Атрибуты тега by-column-metaclass-resolver:

metaclass — код метакласса создаваемых объектов (без типа). Значение по умолчанию l ${metaClass}.

case-column — колонка, значение которой определяет тип создаваемого объекта.

l default-case — тип создаваемых значений по умолчанию, если колонка не содержит данных.

l

column-metaclass-resolver:

column-metaclass-resolver default-metaclass="$example" column="сolumn"/

Атрибуты тега column-metaclass-resolver:

column — колонка, значение которой определяет метакласс создаваемого объекта.

l В отличие от by-column-metaclass-resolver в колонке источника должен содержаться полный идентификатор метакласса.

default-metaclass — идентификатор метакласса объектов, если колонка не содержит данных.

l

Определение типа создаваемого объекта скриптом script-metaclass-resolver:

script-metaclass-resolver mime-type="application/x-groovy"return item.properties.columnName/script-metaclass-resolver

Атрибут тега script-metaclass-resolver:

mime-type — тип скрипта, атрибут не обязательный, по умолчанию application/x-groovy.

l

В скрипте достцпны следующие глобальные переменные:

item — строка импортируемых данных;

l

–  –  –

2.9 Стратегии поиска объектов при обновлении (*objectsearcher) Стратегии поиска объектов при обновлении определяются тегами, вложенными в тег class, см. "Структура файла конфигурации импорта " (стр.45), п. 10.

–  –  –

Используется только для режима UPDATE, при создании объектов задавать этот параметр не обязательно.

Поиск объекта, соответствующего строке импортируемых данных object-searcher:

Оbject-searcher задает простое правило поиска объекта по значению его атрибута. Поиск объектов производится среди объектов заданного метакласса.

object-searcher attr="${idHolder}" metaclass="${metaClass}"/

Атрибуты тега object-searcher:

attr — атрибут, по которому осуществляется поиск объекта. Значение по умолчанию l ${idHolder} metaclass — тип объектов, среди которых осуществляется поиск. Значение по умолчанию l ${metaClass}

Поиск объекта по нескольким атрибутам или различным классам/типам complexobject-searcher:

Complex-object-searcher задает последовательность поиска объекта по нескольким атрибутам. Поиск объектов может производиться среди объектов различных метаклассов.

complex-object-searcher object-converter attr="idHolder" metaclass="ou$forTest"/ object-converter attr="title" metaclass="ou"/ script-convertera + b/script-converter /complex-object-searcher

Поиск объекта по сложной логике script-object-searcher:

Script-object-searcher позволяет производить поиск объектов по сложной логике, определенной в скрипте.

script-object-searcher mime-type="application/x-groovy" a + b /script-objectsearcher

2.10 Параметры заполнения импортируемых атрибутов (attr) Сопоставление атрибутов объекта в системе и полей внешнего источника производится при помощи атрибутов и вложенных тегов тэга attr, см. "Структура файла конфигурации импорта " (стр.45), п. 11.

Исключением являются атрибуты типа "Счетчик времени" и "Счетчик времени (обратный)", для импорта котрых используются "Кастомайзеры для импорта атрибутов типа "Счетчик времени" и "Счетчик времени (обратный)"" (стр.19).

attr name="" column="" default-value="" not-null="true"

Атрибуты тега attr:

name — название атрибута объекта в системе;

l column — имя колонки, описывающей соответствующий атрибут в источнике импорта;

l default-value — значение по умолчанию, которое будет записываться в атрибут объекта в l системе, если значение данного атрибута не указано в источнике;

not-null — обязательность заполнения атрибута. Значение по умолчанию "false".

l

Вложенные теги attr:

"Конвертеры преобразования импортируемых атрибутов" (стр.15).

l

Способы определения режима импорта атрибутов:

l Рекомендуется использовать только один из способов задания режима импорта атрибута.

–  –  –

Если при синхронизации с внешним источником у вновь создаваемых объектов необходимо заполнять атрибут, а изменять значение данного атрибута у уже существующих объектов не требуется, то у данного атрибута следует исключить режим "UPDATE".

exclude-modeUPDATE/exclude-mode

Импорт элемента справочника:

Значения атрибутов тега attr для заполнения поля значением из справочника:

attr name="код атрибута" column="код справочника" object-converter attr="code" metaclass="category" required="false" / /attr

Для преобразования значений внешнего справочника используютя конверторы:

object-converter — в объект;

l

collection-converter — в набор элементов справочника. l

Импорт кода элемента справочника "Категории" из AD в атрибут запроса "Категория" (тип атрибута элемент справочника "Категории").

attr name="categories" column="categories" object-converter attr="code" metaclass="category" required="false"/ /attr

Импорт объекта с определенным статусом:

Импорт объекта с жизенным циклом, находящегося в статусе отличном от "Зарегистрирован" (registered).

Значение атрибута "skip-workflow" тега config должно быть ="true", см. "Основные параметры импорта (config)" (стр.5)

Значения атрибутов тега attr для импорта объекта с жизенным циклом:

attr name="state" column="state" string-converter / /attr

Для преобразования значений используетя конвертер:

string-converter — в строку.

l

Импорт агрегирующего атрибута "Ответственный":

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

Импорт ответственного:

attr name="responsibleEmployee" column="responsibleEmployee" object-converter attr="login" metaclass="employee" required="false" / /attr attr name="responsibleTeam" column="responsibleTeam" object-converter attr="UUID38" metaclass="team" required="false" / /attr

Для преобразования значений используетя конвертер:

object-converter — в объект.

l

- 14 Глава 2 - Содержание конфигурации импорта

2.11 Конвертеры преобразования импортируемых атрибутов Указывать конвертер не обязательно. Если конвертер не указан, преобразователь значения атрибута определяется на основе метаинформации.

boolean-converter:

Производит преобразование импортируемого значения в логическое значение.

boolean-converter true-value="goodValue" / Атрибут "true-value" задает значение, соответствующее "истине". Если значение атрибута не задано, то импортируемые данные считаются true, если значаение "true" или "yes".

collection-converter:

Производит преобразование коллекции импортируемых значений в набор элементов справочника.

Применяется для атрибутов типа "Набор ссылок на бизнес-объекты" и "Набор элементов справочника".

Определяет соответствие для каждого объекта во входящих данных и перенаправляет преобразование к конкретному конвертеру.

collection-converter delimiter=","    object-converter.../ или    script-converter.../script-converter /collection-converter Атрибут "delimiter" задает символ разделителя для строки, по умолчанию "," (запятая).

Импорт коллекции объектов:

collection-converter delimiter="," script-converter![CDATA[ def titleMap = [ 'консультация' : 'Консультации по использованию ПО', 'доработка' : 'Доработка', 'изменение настроек ИС' : 'Изменение настроек ИС'];

return utils.get('closureCode', ['title' : titleMap[value]]);

]]/script-converter /collection-converter

complex-object-converter:

Производит преобразование импортируемого значения в объект, задает одно или более правил поиска объекта.

Заданные правила выполняются последовательно, в порядке определения в xml. Переход к следующему правилу происходит в случае, если предыдущее вернуло null, т.е. конвертер перебирает все вложенные правила, пока какое-либо из них не вернет объект.

complex-object-converter object-converter attr="" metaclass=""/ script-convertera + b/script-converter /complex-object-converter

datetime-converter:

Производит преобразование импортируемого значения (строки) в дату со временем.

datetime-converter format="yyyy-MM-dd HH:mm:ss"/ Во внешнем источнике дата может храниться в виде строки. В атрибуте "format" указывается формат импортируемого значения, которое следует преобразовать в дату или в дату/время. По умолчанию используются форматы: yyyy-MM-dd для атрибута "Дата" и yyyy-MM-dd HH:mm:ss для атрибута "Дата/время".

- 15 Глава 2 - Содержание конфигурации импорта

double-converter:

Производит преобразование импортируемого значения в вещественное число.

double-converter/

integer-converter:

Производит преобразование импортируемого значения в целое число.

integer-converter/ В случае неудачи в лог выводится сообщение: "Can't convert value " + value + " to integer".

hyperlink-converter:

Производит преобразование импортируемого значения в гиперссылку.

hyperlink-converter delimiter=";"/ Атрибут "delimiter" задает символ разделителя названия ссылки от url, по умолчанию ";" (точка с запятой).

object-converter:

Производит преобразование импортируемого значения в объект. Если найдено более одного значения, то возвращает произвольный объект.

object-converter attr="idHolder" metaclass="metaClass"/

Атрибуты object-converter:

"attr" — имя атрибута, по которому производится поиск объекта. Значение по умолчанию l ${idHolder}.

"metaclass" — код метакласса среди объектов которого производится поиск. Значение l по умолчанию ${metaClass}.

"required" — если значение true (по умолчанию), то конвертор обязательно должен найти l объект, а если объект не найден, то импорт объекта не производится и выводится сообщение в лог.

Если конвертируемое значение пусто, то результатом преобразования будет null вне зависимости от значения параметра.

Если значение false и объект не будет найден, то будет возвращен null.

script-converter:

Задает произвольное правило преобразования значения на основе скрипта.

script-converter mime-type="application/x-groovy" a + b /script-converter Атрибут "mime-type" определяет язык скрипта: application/x-groovy или application/javascript.

В скрипте конвертера доступны следующие глобальные переменные:

"value" — конвертируемое значение.

l "item" — строка импортируемых данных.

l

–  –  –

"ctx" — значение выражения (параметра), используется как ctx.evluate("parameter").

l

string-converter:

Производит преобразование импортируемого значения в строку.

string-converter trim="true"/

time-interval-converter:

Производит преобразование импортируемого значения во временной интервал.

time-interval-converter interval="SECOND"/

- 16 Глава 2 - Содержание конфигурации импорта

Атрибут "interval" является обязательным и задает используемый интервал. Возможные значения:

SECOND, MINUTE, HOUR, DAY, WEEK.

file-content-converter:

Производит преобразование импортируемого значения в файл.

file-content-converter titleColumn="title" mimeTypeColumn="mimeType" /

2.12 Группировка пользовательских атрибутов по классам и типам (metaclass-attrs) Группировка используется для импорта пользовательских атрибутов, объявленных в конкрентом классе/типе.

Параметры группировки указываются в конфигурации импорта в теге metaclass-attrs, см. "Структура файла конфигурации импорта " (стр.45), п. 12.

metaclass-attrs metaclass/metaclass attr name="" column=""/ /metaclass-attrs

Вложенные теги metaclass-attrs:

metaclass — один или более кодов метакласса, для которых необходимо заполнять атрибуты;

l

–  –  –

2.13 Кастомайзеры (*customizer) Кастомайзеры определяются тегами, вложенными в тег class, см. "Структура файла конфигурации импорта " (стр.45), п. 13.:

remove-customizer —"Помещение объектов в архив (remove-customizer)" (стр.17);

l script-customizer — "Кастомайзер на основе скрипта (script-customizer)" (стр.18);

l timer-customizer и backtimer-customizer —"Кастомайзеры для импорта атрибутов типа l "Счетчик времени" и "Счетчик времени (обратный)"" (стр.19) 2.13.1 Помещение объектов в архив (remove-customizer) Кастомайзер remove-customizer позволяет поместить в архив все объекты, иерархически находящиеся в объекте с заданным uuid-ом, но не участвующие в импорте, т.е. во внешнем файле отсутствует строка, соответствующая данному объекту.

Используется только для режима UPDATE, см. "Режимы импорта (mode)" (стр.6) remove-customizer hierarchy-root="obj-uuid"/

Атрибуты тега remove-customizer:

hierarchy-root — uuid объекта, в иерархии которого необходимо произвести архивирование l не проимпортированных объектов. Значение по умолчанию ${importRootUUID};

metaclass — метакласс объектов для архивации. Значение по умолчанию ${metaClass} l attr — код атрибута, по значению которого проверяется, что объект импортирован, а не создан l вручную.

Если не задан, то в архив помещаются все объекты (в т.ч. и созданные вручную).

Чтобы объекты, участвующие в импорте, были разархивированы необходимо в конфигурацию добавить:

attr name="removed" default-value="false" /

–  –  –

2.13.2 Кастомайзер на основе скрипта (script-customizer) Кастомайзер script-customizer позволяет производить преобразования по сложной логике, определенной в скрипте.

script-customizer

-- "режим скриптового кастомайзера"-after-import/after-import /script-customizer

Глобальные переменные и методы, доступные в скрипте:

ctx — контекст импорта;

l

–  –  –

параметрам импорта.

String idHldAttr = ctx.evaluate(parameters.get('idHolder'));

ctx.getLogger().info("Произошла ошибка, не заполнен...");

Вложенные теги script-customizer, определяющие режимы скриптового кастомайзера:

before-process-item — скрипт выполняется перед формированием свойств бизнес-процесса.

l before-process-itema+b/before-process-item Доступна глобальная переменная: item, соответствующая строке импортируемых данных.

before-process — скрипт выполняется перед выполнением бизнес-процесса l

–  –  –

after-import — скрипт выполняется после импорта всех объектов.

l after-import/after-import Скрипт script-customizer выполняется в транзакции, поэтому использование конструкции api.tx.call ({}) в теле скрипта не требуется. Использование транзакции может привести к ошибке: объект, который изменялся в процессе импорта, нельзя изменить до перезапуска приложения.

Логирование ошибок выполнения скрипта:

В процессе импорта создается лог, в котором указывается сколько объектов было импортировано/обновлено и все возникшие ошибки.

Для записи ошибку выполнения scriptcustomizer в лог импорта используется конструкция:

ctx.getLogger().error("Ошибка")

Примеры использования script-customizer:

Замена значения поля из внешнего источника по указанным условиям:

- 18 Глава 2 - Содержание конфигурации импорта Поле источника описано в теге column, см. "Параметры источника данных (*data-source)" (стр.8).

script-customizer before-process-item ![CDATA[ def value = item.properties.имя колонки;

if(...) { def newValue =....;

item.properties.setProperty("имя колонки", null);

} ]] /before-process-item /script-customizer Если в колонке author указан логин суперпользователя system, возвращаем null.

script-customizer before-process-item![CDATA[ def login = item.properties.author;

if("system" == login) { item.properties.setProperty("author", null);

} ]]/before-process-item /script-customizer

Добавления значения в текстовый атрибут:

script-customizer after-process![CDATA[ def props = [:];

if(!api.string.isEmptyTrim(item.properties.AddInfo)) { props.AddInfo = (subject.AddInfo ? subject.AddInfo + '\n' : '') + item.properties.AddInfo;

} if(!props.isEmpty()) { utils.edit(subject, props);

} ]]/after-process /script-customizer 2.13.3 Кастомайзеры для импорта атрибутов типа "Счетчик времени" и "Счетчик времени (обратный)" Чтобы импорта значения счетчиков времени используются кастомайзеры.

Кастомайзер для импорта счетчика времени:

timer-customizer attr="totalTimeTimer" column="timer" /

Атрибуты тега timer-customizer:

attr — код атрибута типа "Счетчик времени";

l column — колонка в источнике данных, в которой хранятся данные текущего значения l счетчика времени в мс.

Кастомайзер для импорта обратного счетчика времени:

backtimer-customizer attr="timeAllowanceTimer" allowance-column="backTimer" deadline-column="deadlineTime"

–  –  –

deadline-column-format="dd.MM.yyyy HH:mm:ss"/

Атрибуты тега timer-customizer:

attr — код атрибута типа "Счетчик времени (обратный)";

l allowance-column — колонка в источнике, в которой хранится сколько осталось отсчитать l счетчику в мс.;

deadline-column — колонка в источнике, в которой хранится deadline для данного счетчика в l заданном формате deadline-column-format;

deadline-column-format — форомат преобразования даты deadline, например yyyy-MM-dd l

–  –  –

Глава 3 - Базовые конфигурации импорта

3.1 Импорт отделов и сотрудников из Active Directory

Преднастройка:

в классах "Отдел" (ou) и "Сотрудник" (employee) необходимо создать пользовательский атрибут типа "Строка", для записи в него идентификатора из Active Directory (AD).

Параметры атрибута: название — "Идентификатор в AD", тип значения — "Строка"; код — "objectGUID".

Соответствие атрибутов:

–  –  –

Атрибуты (коды) класса "Сотрудник" в Коды атрибутов в AD Комментарии Naumen Service Desk Фамилия* (lastName) sn

Архивирование и восстановление из архива отделов и сотрудников:

l если в AD есть отдел/сотрудник, который в Naumen Service Desk находится в архиве, то при импорте из AD отдел/сотрудник восстанавливается из архива. При восстановлении из архива сотрудники помещаются в отдел, указанный в соответствующем атрибуте в AD.

l если в AD нет отдела/сотрудника, а в Naumen Service Desk он не архивный, то отдел/сотрудник в Naumen Service Desk помещается в архив.

Импорт картинки пользователя:

l если параметр mode = CREATE, то в атрибут image записывается картинка/картинки из атрибута thumbnailPhoto;

l если параметр mode = UPDATE, то картинки в атрибутах image и thumbnailPhoto сравниваются:

o если картинки в атрибутах одинаковые, то картинка не заменяется;

o если атрибут image был пуст или картинки отличаются, то в атрибут image записывается картинка/картинки из атрибута thumbnailPhoto;

o если атрибут image был не пуст, а атрибут thumbnailPhoto пуст, то поведение определяется конвертером (параметр "eraseOld"): если параметр eraseOld='true', то картинки из атрибута image удаляются; если параметр eraseOld='false', то картинки из атрибута image не удаляются.

Для преобразования и сравнения картинок используется конвертер:

ad-image-converter decoder='default' title='picture' mimeType='image/jpg' eraseOld=false.

Расширения базовой конфигурации:

Исключение при импорте из AD определенных узлов с отделами и сотрудниками.

l ignored-postfix${ignoredOU1}/ignored-postfix Импорт отделов/сотрудников нескольких типов.

l script-metaclass-resolver/

Базовая конфигурация импорта из Active Directory:

config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../target/classes/advimport/schema1.xsd" save-log="true" threads-number="1" modeCREATE/mode modeUPDATE/mode parameter name="importRootUUID"root$101/parameter parameter name="rootDN"DC=bank,DC=ru/parameter parameter name="ldapUser"ldapUserName/parameter parameter name="ldapPasswd"ldapUserPassword/parameter parameter name="ldapUrl"ldapUrl/parameter

–  –  –

parameter name="ldapDomain"lDapDomain/parameter parameter name="ouMetaClass"ou$ou/parameter parameter name="ouIdHolder"objectGUID/parameter parameter name="employeeMetaClass"employee$employee/parameter parameter name="employeeIdHolder"objectGUID/parameter class name="ou" threads-number="1" parameter name="metaClass"${ouMetaClass}/parameter parameter name="idHolder"${ouIdHolder}/parameter ldap-data-source id-column="objectGUID" check-user-disabled="false" user="${ldapUser}" passwd="${ldapPasswd}" url="${ldapUrl}" full-domain="true" import-root="true" domain="${ldapDomain}" column name="objectGUID" src-key="objectGUID" / column name="parent" src-key="parent"/ column name="name" src-key="name" / column name="whenCreated" src-key="whenCreated" / root-element${rootDN}/root-element import-tagou/import-tag import-tagdc/import-tag /ldap-data-source hierarchical-filter parent-column="parent"/ constant-metaclass-resolver / object-searcher attr="${idHolder}" / attr name="${idHolder}" column="objectGUID" / attr name="title" column="name" / attr name="parent" column="parent" object-converter metaclass="ou" attr="${idHolder}" required="false"/ /attr attr name="creationDate" column="whenCreated" datetime-converter format="yyyyMMddHHmmss'.0Z'" time-zone="GMT+0:00"/ /attr attr name="removed" default-value="false" / remove-customizer metaclass="ou" attr="${ouIdHolder}" / /class

–  –  –

class name="employee" threads-number="1" parameter name="metaClass"${employeeMetaClass}/parameter parameter name="idHolder"${employeeIdHolder}/parameter ldap-data-source id-column="objectGUID" check-user-disabled="true" user="${ldapUser}" passwd="${ldapPasswd}" url="${ldapUrl}" full-domain="true" import-root="true" domain="${ldapDomain}" column name="objectGUID" src-key="objectGUID" / column name="parent" src-key="parent" / column name="whenCreated" src-key="whenCreated" / column name="givenName" src-key="givenName" / column name="sAMAccountName" src-key="sAMAccountName" / column name="homePhone" src-key="homePhone" / column name="mobile" src-key="mobile" / column name="displayName" src-key="displayName" / column name="mail" src-key="mail" / column name="sn" src-key="sn" / column name="thumbnailPhoto" src-key="thumbnailPhoto" / root-element${rootDN}/root-element import-tagcn/import-tag /ldap-data-source hierarchical-filter parent-column="parent" / constant-metaclass-resolver / object-searcher attr="${idHolder}" / attr name="${idHolder}" column="objectGUID" / attr name="parent" column="parent" object-converter attr="${employeeIdHolder}" metaclass="ou" required="true" / /attr attr name="lastName" column="sn" / attr name="firstName" column="givenName" / attr name="middleName" column="displayName" script-converter ![CDATA[ try { return value.split('\\s')[2];

} catch (ArrayIndexOutOfBoundsException e) { return '';

} ]] /script-converter

–  –  –

/attr attr name="login" column="sAMAccountName" / attr name="email" column="mail" / attr name="homePhoneNumber" column="homePhone" / attr name="mobilePhoneNumber" column="mobile" / attr name="creationDate" column="whenCreated" datetime-converter format="yyyyMMddHHmmss'.0Z'" time-zone="GMT+0:00"/ /attr attr name="removed" default-value="false" / attr name="image" column="thumbnailPhoto" ad-image-converter/ /attr remove-customizer metaclass="employee" attr="${employeeIdHolder}" / /class /config

3.2 Импорт отделов Импортировать можно любые атрибуты класса "Отдел" (ou), включая пользовательские. Для корректного проведения процедуры импорта во внешнем источнике должны быть указаны поля, соответствующие обязательным атрибутам класса "Отдел" (ou), например, "Идентификатор", "Название".

Для создания иерархии вложенных отделов следует указывать родительский объект "parent", допускается значение "null", если отдел создается в корне.

Обязательный атрибут "Дата создания" заполняется автоматически при добавлении объекта в систему.

При импорте/синхронизации отделов доступны все режимы импорта, см. "Основные параметры импорта (config)" (стр.5).

Базовая конфигурация импорта отделов:

config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../target/generatedsources/jaxb/advimport/schema1.xsd" save-log="true" modeCREATE/mode gui-parameter name="file" type="FILE" title="Файл для импорта отделов в формате csv" /

–  –  –

parameter name="ouMetaClass"ou$ouImport/parameter class name="ou" threads-number="2" csv-data-source with-header="true" file-name="$file" delimiter=";" encoding="UTF8" column name="title" src-key="title"/ column name="removed" src-key="removed"/ column name="removalDate" src-key="removalDate"/ /csv-data-source constant-metaclass-resolver metaclass="${ouMetaClass}"/ object-searcher attr="title" metaclass="ou"/ attr name="title" column="title" / attr name="removed" column="removed" / attr name="removalDate" column="removalDate" datetime-converter format="yyyy-MM-dd"/ /attr /class /config

Файл для импорта отделов в формате csv — ou.example.csv:

id;title;removed;removalDate;

1;first ou;true;;

2;second ou;false;;

3;3 ou;true;2000-01-01;

4;4 ou;false;2000-02-01;

Возможные ошибки импорта отделов:

Возможные ошибки импорта отделов.

Ошибка Описание обработки ошибки "Возможные ошибки импорта" (стр.28) Во внешнем источнике в качестве родительского объекта Объект пропускается задан идентификатор самого отдела

3.3 Импорт сотрудников Импортировать можно любые атрибуты класса "Сотрудник" (employee), включая пользовательские.

Для корректного проведения процедуры импорта во внешнем источнике должны быть указаны поля, соответствующие обязательным атрибутам класса "Сотрудник" (employee), например, "Идентификатор", "Наименование", "Отдел".

Обязательный атрибут "Дата создания" заполняется автоматически при добавлении объекта в систему.

При импорте/синхронизации сотрудников доступны все режимы импорта, см. "Основные параметры импорта (config)" (стр.5).

Базовая конфигурация импорта сотрудников:

config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../target/classes/advimport/schema1.xsd" save-log="true" modeCREATE/mode

–  –  –

modeUPDATE/mode gui-parameter name="ouFile" type="FILE" title="Файл для импорта отделов в формате csv" / gui-parameter name="empFile" type="FILE" title="Файл для импорта сотрудников в формате csv" / parameter name="ouMetaClass"ou$ouImport/parameter parameter name="empMetaClass"employee$empImport/parameter class name="ou" threads-number="2" csv-data-source with-header="true" file-name="$ouFile" delimiter=";" id-column="id" encoding="UTF8" column name="id" src-key="id"/ column name="title" src-key="title"/ column name="removed" src-key="removed"/ column name="removalDate" src-key="removalDate"/ /csv-data-source constant-metaclass-resolver metaclass="${ouMetaClass}"/ object-searcher attr="idHolder" metaclass="${ouMetaClass}"/ attr name="title" column="title" / attr name="removed" column="removed" / attr name="idHolder" column="id" / attr name="removalDate" column="removalDate" datetime-converter format="yyyy-MM-dd"/ /attr /class class name="importEmployee" threads-number="1" csv-data-source with-header="true" file-name="$empFile" delimiter=";" id-column="id" encoding="UTF8" column name="id" src-key="id"/ column name="parent" src-key="parent"/ column name="lastName" src-key="lastName"/ column name="firstName" src-key="firstName"/ column name="middleName" src-key="middleName"/ /csv-data-source constant-metaclass-resolver metaclass="${empMetaClass}"/ object-searcher attr="idHolder" metaclass="${empMetaClass}"/ attr name="lastName" column="lastName" / attr name="firstName" column="firstName" / attr name="middleName" column="middleName" / attr name="parent" column="parent" object-converter attr="idHolder" metaclass="${ouMetaClass}" required="true" / /attr attr name="idHolder" column="id" / /class /config

Файл для импорта сотрудников в формате csv — employee.example.csv:

id;parent;lastName;firstName;middleName;

empl1;4;Иванов;Сергей;Николаевич;

empl2;2;Петров;Иван;Сергеевич;

–  –  –

Глава 4 - Синхронизация с источниками данных Синхронизация с источниками данных позволяет поддерживать актуальную информацию об оргструктуре и сотрудниках в Naumen Service Desk на основе информации, получаемой от внешнего источника данных.

4.1 Общие сведения о протоколе LDAP Протокол LDAP (Lightweight Directory Access Protocol) — облегчённый протокол доступа к каталогам. Протокол LDAP представляет собой сетевой протокол для доступа к службе каталогов X.500, созданный IETF, как облегчённый вариант разработанного ITU-T протокола DAP.

LDAP использует TCP/IP, как правило, LDAP-сервер принимает входящие соединения на порт 389 по протоколам TCP или UDP, для LDAP-сеансов, инкапсулированных в SSL, используется порт 636.

LDAP позволяет производить операции аутентификации (bind), поиска (search) и сравнения (compare), а также операции импорта и синхронизации данных с каталогом LDAP: добавление, изменение или удаление записей.

Любая запись в каталоге LDAP состоит из одного или нескольких атрибутов и обладает уникальным именем — DN (Distinguished Name). Уникальное имя состоит из одного или нескольких относительных уникальных имен — RDN (Relative Distinguished Name), разделённых запятой.

Относительное уникальное имя имеет вид: «имя Атрибута=значение». Например, «cn=Иван Петров, ou=Сотрудники, dc=example, dc=com».

На одном уровне каталога не может существовать двух записей с одинаковыми относительными уникальными именами. Данная структура уникального имени позволяет представить записи в каталоге LDAP в виде дерева.

Запись в каталоге LDAP может состоять только из атрибутов, определенных в описании класса записи (object class). Классы записи в свою очередь объединены в схемы (schema). В схеме указываются обязательные атрибуты для данного класса и опциональные атрибуты, а также тип и правила сравнения атрибутов.

LDAP является широко используемым стандартом. Одной из наиболее популярных его реализаций является служба каталогов Active Directory (Microsoft Windows), предназначенная для централизации управления сетями Windows. Свои реализации служб каталогов на основе LDAP предлагают и другие крупные компании, например, Novell и Sun. Существуют также свободно распространяемые открытые реализации LDAP, например, Open LDAP.

Интеграция Naumen Service Desk с LDAP-сервером реализуется для решения следующих задач:

импорт информации из хранилища LDAP-сервера;

l использование информации из хранилища LDAP-сервера для аутентификации пользователей l

–  –  –

4.2 Добавление подключения к LDAP

Чтобы добавить подключение к LDAP, выполните следующие операции:

1. Откройте вкладку "Подключения". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации".

Перейдите на вкладку "Подключения".

–  –  –

l Тип идентификации — уровень идентификации: none (без проверки), simple (с проверкой имени и пароля), strong.

l Протокол безопасности подключения к LDAP-серверу.

l Имя пользователя для подключения к LDAP-серверу.

l Пароль для подключения к LDAP-серверу.

Пароль, указанный при создании подключения, в дальнейшем нельзя изменить. При необходимости изменить пароль следует удалить подключение, см. "Удаление подключения" (стр.33), и создать новое.

4. Нажмите кнопку "Сохранить".

Форма добавления закроется, новое подключение отобразится на вкладке "Подключения".

- 30 Глава 4 - Синхронизация с источниками данных

4.3 Добавление подключения к SQL

Чтобы добавить подключение к SQL, выполните следующие операции:

1. Откройте вкладку "Подключения". В меню навигации разверните раздел "Настройка системы" и выберите настройку "Синхронизация". На экране отобразится вкладка "Конфигурации".

Перейдите на вкладку "Подключения".

–  –  –

для Microsoft SQL Server: jdbc:sqlserver://192.168.240.119:1433; Databasename=lenta для PostgreSQL: jdbc:postgresql://192.168.240.63:5432/itsm_prototype для Oracle: jdbc:oracle:thin:@//192.168.240.55:1521/ora

Класс реализации протокола jdbc:

l для Microsoft SQL Server: com.microsoft.sqlserver.jdbc.SQLServerDriver;

для PostgreSQL: org.postgresql.Driver;

–  –  –

Пароль, указанный при создании подключения, в дальнейшем нельзя изменить. При необходимости изменить пароль следует удалить подключение, см. "Удаление подключения" (стр.33), и создать новое.

4. Нажмите кнопку "Сохранить".

Форма добавления закроется, новое подключение отобразится на вкладке "Подключения".

4.4 Редактирование подключения Чтобы внести изменения в конфигурацию для импорта/синхронизации, выполните следующие операции:

1. Откройте вкладку "Подключения". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации".

Перейдите на вкладку "Подключения".

–  –  –

3. Измените параметры подключения. Параметры "Тип подключения", "Код" и "Пароль" не редактируется.

4. Нажмите кнопку "Сохранить".

Форма редактирования закроется, внесенные изменения будут применены, параметры подключения обновятся.

4.5 Удаление подключения

Чтобы удалить подключение, выполните следующие действия:

1. Откройте вкладку "Подключения". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации". Перейдите на вкладку "Подключения".

2. Удалите подключение, щелкните на иконке "Удалить" рядом с названием подключения.

–  –  –

Глава 5 - Управление конфигурациями Список конфигураций отображается на вкладке "Конфигурации".

Чтобы открыть список конфигураций, в меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации".

–  –  –

5.1 Добавление конфигурации импорта

Чтобы добавить конфигурацию для импорта/синхронизации, выполните следующие операции:

1. Откройте вкладку "Конфигурации". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации".

–  –  –

l Конфигурация в XML-виде — конфигурация импорта представляет собой xml-файл, см.

"Структура файла конфигурации импорта " (стр.45)

4. Нажмите кнопку "Сохранить".

Форма добавления закроется, новая конфигурация отобразится на вкладке "Конфигурации".

5.2 Редактирование конфигурации импорта Чтобы внести изменения в конфигурацию для импорта/синхронизации, выполните следующие операции:

1. Откройте вкладку "Конфигурации". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране отобразится вкладка "Конфигурации".

–  –  –

l Конфигурация в XML-виде — конфигурация импорта представляет собой xml-файл, см.

"Структура файла конфигурации импорта " (стр.45)

4. Нажмите кнопку "Сохранить".

Форма редактирования закроется, внесенные изменения будут применены, конфигурация обновится.

5.3 Карточка конфигурации

Чтобы открыть карточку конфигурации, выполните следующие действия:

1. В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране откроется вкладка "Конфигурации".

2. Нажмите на строке с названием конфигурации. На экране откроется карточка конфигурации.

–  –  –

Блок "История синхронизации" — в блоке отображается список логов импорта, l см. "Просмотр логов импорта" (стр.38), и кнопка "Удалить историю", см. "Удаление логов импорта" (стр.39).

Чтобы вернутся к списку конфигураций, щелкните на ссылке "к списку конфигураций".

5.4 Запуск импорта

Чтобы запустить импорт, выполните следующие действия:

1. Откройте вкладку "Конфигурации". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Синхронизация". На экране откроется вкладка "Конфигурации".

–  –  –

Рис. 5.8

Запуск импорта:

На экране отобразится окно подтверждения действия. Нажмите кнопку "Да". Процесс импорта данных будет запущен.

Запуск импорта при наличии параметров, настраиваемых через интерфейс:

На экране отобразится форма "Запуск импорта "Название конфигурации" с изменяемыми параметрами конфигурации, см. "Параметры импорта, настраиваемые через интерфейс (gui-parameter)" (стр.6).

–  –  –

Заполните предложенные поля параметров конфигурации и нажмите кнопку "Сохранить".

Форма запуска импорта закроется, процесс импорта/синхронизации данных будет запущен.

5.5 Просмотр логов импорта Лог — (англ. log) журнал событий, дневник, запись, протокол. Лог импорта выгружается в файле формата.txt.

Чтобы просмотреть логи импорта, выполните следующие действия:

1. Откройте карточку конфигурации, см. "Карточка конфигурации" (стр.36).

2. Перейдите на вкладку "История", в блоке "История синхронизации" отображается список логов, для каждого лога импорта указывается:

l Дата проведения импорта;

–  –  –

l Автор — имя пользователя, запустившего импорт/синхронизацию.

По умолчанию в списке отображаются логи импорта, которые были созданы в течение последних 90 дней от текущей даты/времени. Параметры отображения истории можно изменить", см. "Настройка параметров отображения истории импорта" (стр.38).

Рис. 5.10

3. Нажмите на названии файла в колонке "Лог" в строке с нужной датой выполнения импорта/синхронизации.

Выполнится процесс загрузки файла. Процедура загрузки и место сохранения файла на компьютере зависят от настройки интернет-браузера пользователя.

5.6 Настройка параметров отображения истории импорта В истории импорта/синхронизации отображаются логи импорта, которые были созданы в течение последних х дней от текущей даты/времени, по умолчанию 90 дней.

Чтобы настроить параметры отображения истории импорта, выполните следующие действия:

1. Откройте карточку конфигурации, см. "Карточка конфигурации" (стр.36).

2. Перейдите на вкладку "История", в блоке "Параметры отображения истории" нажмите кнопку "Редактировать".

- 38 Глава 5 - Управление конфигурациями Рис. 5.11 На экране откроется форма "Настройка отображения логов".

3. В поле "Скрывать логи старше (дн.)" укажите количество дней — параметр, который будет ограничивать отображение логов.

4. Нажмите кнопку "Сохранить". Форма настройки закроется, в блоке "История синхронизации" отобразятся логи, согласно указанной настройке.

5.7 Удаление логов импорта

Чтобы удалить конкретный лог импорта вручную, выполните следующие действия:

1. Откройте карточку конфигурации, см. "Карточка конфигурации" (стр.36).

2. Перейдите на вкладку "История".

–  –  –

Глава 6 - Настройка автоматической синхронизации Задача планировщика "Синхронизация" предназначена для запуска процедуры импорта по заданному расписанию.

6.1 Добавление задачи планировщика. Синхронизация

Чтобы настроить задачу планировщика типа "Синхронизация", выполните следующие операции:

1. Откройте вкладку "Задачи планировщика". В меню навигации разверните раздел "Настройка системы" и щелкните на названии настройки "Планировщик задач". На экране появится список задач.

–  –  –

l Название задачи, по умолчанию "Синхронизация", название можно изменить.

l Описание — введите дополнительную информацию о задаче и ее назначении.

l Конфигурация — выберите конфигурацию, см. "Добавление конфигурации импорта"

–  –  –

Форма добавления закроется, новая задача отобразится в списке задач планировщика.

6.2 Карточка задачи планировщика "Синхронизация" Параметры задачи планировщика "Синхронизация" хранятся в карточке задачи.

Чтобы открыть карточку задачи, в списке задач планировщика нажмите на строке с названием задачи. На экране появится карточка задачи планировщика "Синхронизация".

–  –  –

блок "Свойства" содержит атрибуты задачи "Синхронизация", см."Добавление задачи l планировщика. Синхронизация" (стр.40).

блок "Расписание" содержит: список правил выполнения задачи, см. "Расписание задачи l планировщика" (стр.41) Для каждого правила указываются: название, плановая дата выполнения задачи по данному правилу и текущее состояние правила.

Чтобы вернутся к списку задач планировщика, щелкните на ссылке "к списку задач планировщика".

6.3 Расписание задачи планировщика Расписание задачи планировщик представляет собой набор правил выполнения задачи. Правило выполнения представляет собой совокупность параметров, описывающих время запуска задачи планировщика.

Предусмотрено два типа правил выполнения задачи:

периодическое выполнение — задача будет выполняться регулярно с заданным интервалом l времени;

выполнение в определенную дату и время: задача будет выполнена однократно в указанное l время.

Настройка расписания задачи планировщика выполняется в карточке задачи планировщика, см."Карточка задачи планировщика "Синхронизация"" (стр.41).

–  –  –

Рис.

6.4 6.3.1 Выполнение в определенную дату и время Чтобы настроить выполнение задачи планировщика в определенную дату и время, выполните следующие действия:

1. Откройте форму добавления правила. В карточке задачи в блоке "Расписание" нажмите кнопку "Добавить". На экране появится форма "Добавление правила".

–  –  –

l Дата/время выполнения задачи. Укажите дату и время выполнения задачи. Задача планировщика будет выполнятся однократно в указанное время.

Рис. 6.6

3. Нажмите кнопку "Сохранить".

Форма добавления закроется, правило отобразится в блоке "Расписание" карточки задачи планировщика.

Название правила формируется автоматически в виде: "Выполнение в определенную дату и время"_"Дата/время выполнения задачи" и не редактируется вручную. Название автоматически изменяется при редактировании параметра "Дата/время выполнения задачи".

6.3.2 Периодическое выполнение Чтобы настроить правило периодического выполнения задачи планировщика, выполните следующие действия:

1. Откройте форму добавления правила. В карточке задачи в блоке "Расписание" нажмите кнопку "Добавить". На экране появится форма "Добавление правила".

–  –  –

Укажите произвольный период выполнения задачи и выберите единицу измерения:

секунд, минут, часов, дней, недель или месяцев.

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

l

–  –  –

даты/времени начала действия правила.

o "От момента последнего выполнения" — означает, что отсчет периода ведется каждый раз от даты/времени последнего выполнения задачи. Если задача выполняется впервые, то момент последнего выполнения равен дате/времени начала действия правила.

l Дата/время начала действия правила, по умолчанию указано текущее серверное время.

Можно указать произвольную дату/время.

3. Нажмите кнопку "Сохранить".

Форма добавления закроется, правило отобразится в блоке "Расписание" карточки задачи планировщика.

–  –  –

Название правила формируется автоматически в виде: "Периодическое выполнение"_"Период" и не редактируется вручную. Название автоматически изменяется при редактировании параметра "Период".

–  –  –

Приложение A - Структура файла конфигурации импорта config description="Example" threads-number="1" save-log="true" skip-workflow="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan xsi:noNamespaceSchemaLocation="../../target/classes/advimport/schema1.xce"sd" modeCREATE/mode modeUPDATE/mode gui-parameter name="uploadedFile" type="FILE" title="Файл для импорта в формате csv, xml, xls, sql" / class name="import1" threads-number="1" script-filterтескт скрипта /script-filter

–  –  –

object-searcher attr="idHolder" metaclass="ou$forTest"/ /class /config

- 47 -



Похожие работы:

«ЯЗЫК И ЯЗЫКОВАЯ ЛИЧНОСТЬ УДК: 811.161.1 Н. В. Гагарина1 Восприятие видов глагола в русском языке: экспериментальное исследование В данной работе рассматриваются результаты эксперимента, направленного на изучение восприятия глагольных действия и их обозначений глагола...»

«Вестник Томского государственного университета. Филология. 2016. №4 (42) УДК 821.161.1+82.0 DOI: 10.17223/19986645/42/10 А.Е. Козлов НАРРАТИВНАЯ ОРГАНИЗАЦИЯ РОМАНА В.А. СЛЕПЦОВА "ТРУДНОЕ ВРЕМЯ": ПРОБЛЕМЫ "ТАЙНОПИСИ" В статье изучается нарративная организация романа В.А....»

«Изотов Андрей Иванович КОРПУСНАЯ РЕВОЛЮЦИЯ: ОТ ИСКУССТВА К НАУКЕ Рассматривается феномен современного гуманитарно-научного знания в его отношении к знанию естественнонаучному. Филологическое знание может быть и естественнонаучным, и гуманитарно-научным, в зависимости от того, какой именно аспек...»

«К проблеме манифеста как жанра: генезис, понимание, функция Т. С. Симян ЕРЕВАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Аннотация: Анализируется восприятие манифеста в литературоведении советского периода. Автор статьи пытается проследить в диах...»

«Куличкина Матрена Дмитриевна ГЛАГОЛЫ РЕЧИ ПОДГРУППЫ ОБЩЕНИЯ В СОВРЕМЕННОМ ЯКУТСКОМ ЯЗЫКЕ Статья посвящена глаголам речи подгруппы общения в современном якутском языке. В ней представляется лексико-семантическая структура глаго...»

«МИНОБРНАУКИ РОССИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ" БОРИСОГЛЕБСКИЙ ФИЛИАЛ (Б...»

«Аспекты лингвистических и методических исследований : сб. науч. тр. — Архангельск: ПГУ им. М.В.Ломоносова, 1999. А.А.Худяков Понятийные категории как объект лингвистического исследования Введение Вопрос о мыслительной основе языковых структур и их речевых реализаций рассматривается в современно...»

«Вестник Чувашского университета. 2012. № 2 Литература 1. A National Action Plan for a Bilingual Wales / Llywodraeth Cynulliad Cymru = Welsh Assembly Government [Электронный ресурс]. URL: http://wales.gov.uk/depc/publications/welshlanguage/ iaithpawb/iaithpawbe.pdf?lang=en (дата обращения: 22.04.2012).2. Deuchar M., Davie...»

«Антонова Ольга Валентиновна СИСТЕМА СТАРОМОСКОВСКОГО ПРОИЗНОШЕНИЯ И ЕЕ РЕФЛЕКСЫ В СОВРЕМЕННОЙ ЗВУЧАЩЕЙ РЕЧИ Специальность 10.02.01 — русский язык Автореферат диссертации на соискание ученой степени кандидата филологических наук Москва 2008 Работа выполнена в Отделе фонетики Института русского языка им. В. В. Виноградова...»

«Кан Бён Юн Роман Е. Замятина "Мы" в свете теории архетипов К.Г. Юнга Специальность 10.01.01 – Русская литература. Автореферат диссертации на соискание ученой степени кандидата филологических наук Москва Работа выполнена на кафедре русской литературы ХХ века филологического факультета Московского госуд...»

«Абдрашитова Гульнара Салеховна, Курмаева Ирина Ильдаровна ИНТЕРТЕКСТУАЛЬНЫЕ СВЯЗИ В РОМАНЕ ДЖУЛИАНА БАРНСА АНГЛИЯ, АНГЛИЯ В данной статье нами рассматривается явление интертекстуальности в контексте лингвистики и языкознания. Особое внимание уделяется интертекстуальным элементам, их характеристикам и функциям в...»

«АКАДЕМИЯ НАУК СССР ИНСТИТУТ ЯЗЫКОЗНАНИЯ ВОПРОСЫ ЯЗЫКОЗНАНИЯ ЖУРНАЛ ОСНОВАН В 1952 ГОДУ ВЫХОДИТ 6 РАЗ В ГОД ИЮЛЬ-АВГУСТ ИЗДАТЕЛЬСТВО "НАУКА" МОСКВА —1981 СОДЕРЖАНИЕ И в а н о в В. В. (Москва). Некоторые вопросы изучения русского Я Ы Я к;пс ЗХ средства...»

«ЗУХБА С. Л.ИЗБРАННЫЕ ТРУДЫ В ДВУХ ТОМАХ Т. I Абгосиздат Сухум 2014 УДК 82-95 ББК 83.3(5Абх) З 95 Зухба, С. Л. З 95 Избранные труды. В 2-х томах. Т. 1. Сухум, Абгосиздат, 2014. – 576 с. В первый том избранных трудов из...»

«Язык, сознание, коммуникация: Сб. статей / Отв. ред. В. В. Красных, А. И. Изотов. — М.: МАКС Пресс, 2006. — Вып. 32. — 108 с. ISBN 5-317-01586-3 "Образ мира, в слове явленный", или рождение подтекста в новом контексте © кандидат филологических наук И....»

«Дьячкова Ирина Геннадьевна Высказывания-похвалы и высказывания-порицания как речевые жанры в современном русском языке Специальность 10.02.01.русский язык Диссертация на соискание ученой степени кандидата филологических наук. Научный руко...»

«Труды международной конференции "Диалог 2006" ПЕРЕПИСКА ПО ЭЛЕКТРОННОЙ ПОЧТЕ КАК ЛИНГВИСТИЧЕСКИЙ ОБЪЕКТ E-MAIL CORRESPONDENCE AS AN OBJECT OF LINGUISTIC ANALYSIS Анна А. Зализняк (anna-zalizniak@mtu-net.ru) Институт языкознания РАН, Москва Ирина Микаэлян (ixm...»

«Ю. Ю. Черноскутов КОНТЕКСТ И ЛОГИЧЕСКИЕ ТЕОРИИ ПРЕСУППОЗИЦИИ* Введение О контексте. Понятие контекста начало свое победное шествие в философии и прикладных разделах логики вскоре после Второй мировой войны. Новое ответвление лингвистической философии реабилитировало естественный язык, заявив, в частности, что...»

«АКАДЕМИЯНАУК СССР ИНСТИТУТ ЯЗЫКОЗНАНИЯ ВОПРОСЫ ЯЗЫКОЗНАНИЯ ЖУРНАЛ ОСНОВАН В 1952 ГОДУ ВЫХОДИТ 6 РАЗ В ГОД МАЙ—ИЮНЬ ИЗДАТЕЛЬСТВО "НАУКА" МОСКВА —1972 СОДЕРЖАНИЕ. В.. С о л н ц е в. (Москва). О понятии уровня языково...»

«М АТ Е Р И А Л Ы ВОПРОСЫ ОНОМАСТИКИ 2004. № 1 И. В. Ро ди о н о в а ДЕРИВАТЫ БИБЛЕЙСКИХ АНТРОПОНИМОВ В НАРОДНОЙ ЯЗЫКОВОЙ ТРАДИЦИИ (Словарные материалы)1 Данная публикация представляет собой часть материалов к словарю вт...»

«Золотухина Ольга Валерьевна ЯВЛЕНИЕ ВАРЬИРОВАНИЯ ВНУТРЕННЕЙ ФОРМЫ СЛОВА В СИСТЕМЕ ДИАЛЕКТА Специальность 10.02.01 – русский язык Автореферат диссертации на соискание ученой степени кандидата филологических наук Томск – 2004 Работа выполнена на кафедре русского языка Томского государственного университета. Научный руководитель – доктор филологических наук, пр...»

«УДК 811.111 811.161.1 Е.Ю.Семушина ФРАЗЕОЛОГИЧЕСКИЙ ПОВТОР КАК ЭЛЕМЕНТ КОМПЛЕКСНЫХ ОККАЗИОНАЛЬНЫХ ТРАНСФОРМАЦИЙ ФЕ (НА МАТЕРИАЛЕ АНГЛИЙСКОГО И РУССКОГО ЯЗЫКОВ) В статье рассмотрены случаи использования повтора как элемен...»

«155 phenomenon, action, etc. Antonymous relationships consist of phraseology, indicating objectively identical objects, phenomena with the opposite meaning. If idioms have the same lexical and grammatical features in comparison with...»

«КЛЕМЕНТЬЕВА Е. Ф., МАТОРКИНА А. Е. МОРФОЛОГИЧЕСКИЕ СРЕДСТВА ВЫРАЖЕНИЯ СРАВНЕНИЙ В ЭРЗЯНСКОМ ЯЗЫКЕ Аннотация. В статье рассматриваются основные морфологические средства выражения сравнений в эрзянском языке – падежные формы компаратива и транслатива. Авторы также уделяют внимание сравнительным конструкциям с формой номинатива и степе...»

«Слободенюк Елена Александровна СОЗДАНИЕ ОБРАЗА БРИТАНСКОГО И НЕМЕЦКОГО ПОЛИТИКА В СОВРЕМЕННОМ МЕДИАДИСКУРСЕ ВЕЛИКОБРИТАНИИ В АСПЕКТЕ ОППОЗИЦИИ "СВОЙ – ЧУЖОЙ" Специальность 10.02.04 – Германские языки АВТОРЕФЕРАТ диссертации на соискание ученой сте...»

«Язык, сознание, коммуникация: Сб. статей / Отв. ред. В. В. Красных, А. И. Изотов. — М.: МАКС Пресс, 2001. — Вып. 17. — 152 с. ISBN 5-317-00226-5 Современный русский телезритель: фрагменты языкового сознания © кандидат филологических наук А. Б. Лихачева (Литва), 2001 Используя принцип, зафиксиров...»

«АзАровА Наталия Михайловна Типологический очерк языка русских философских текстов ХХ в.: Монография. – М.: Логос / Гнозис, 2010. – 250 с. Книга предназначена для филологов и философов, преподавателей русского языка и литературы, аспир...»

«Вестник Томского государственного университета. Филология. 2014. №6 (32) УДК 821.161.1.09 "18" DOI 10.17223/19986645/32/8 Г.А. Ахметова Л.Н. ТОЛСТОЙ О ТВОРЧЕСТВЕ И РЕМЕСЛЕ ("АННА КАРЕНИНА", "ЧТО ТАКОЕ ИСКУССТВО?") Роман "Анна Каренина" и эстетический трактат "Что такое искусство?" анализируются в статье с т...»

















 
2017 www.doc.knigi-x.ru - «Бесплатная электронная библиотека - различные документы»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.