Автоматический экспорт данных
Mid Office Manager позволяет настроить автоматический экспорт создаваемых и изменяемых объектов, посредством формирования и передачи XML-файлов с представлением данных двумя способами:
- Сохранение XML-файлов на локальном или сетевом диске сервером Mid Office Manager;
- Передача XML-файлов через JMS (Java Message Service) в специализированное ПО, называемое брокером.
Экспортированные данные можно использовать для взаимодействия с внешними системами.
Содержание |
Настройка автоматического экспорта данных
Настройка автоматического экспорта данных производится путем добавления дополнительных строк в конфигурационный файл boot.properties сервера Mid Office Manager, размещенный в <папка сервера Mid Office Manager>/config/xtrip/server.
После сохранения конфигурационного файла, для того чтобы настройки вступили сервер, требуется перезагрузить сервер Mid Office Manager.
Сохранение XML-файлов на локальном или сетевом диске
Активация
Для того чтобы активировать опцию сохранения XML-файлов на локальном или сетевом диске добавьте строку в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.file.enabled = true
Выбор экспортируемых данных
Для того чтобы указать объекты, которые необходимо автоматически экспортировать, добавьте строки в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.file.type.<Идентификатор экспортируемых данных> = <Тип объекта>
где:
- Идентификатор экспортируемых данных — строка, содержащая буквы латинского алфавита или цифры;
- Тип объекта — тип экспортируемых данных, см. #Типы объектов.
Для каждого типа объекта требуется добавления отдельной строки с указанным типом и уникальным идентификатором экспортируемых данных.
Выбор папки
По умолчанию все XML-файлы сохраняются в папку <папка сервера Mid Office Manager>/data/export/entities. Для того чтобы указать иную папку для сохранения XML-файлов, добавьте строку в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.file.path = <Путь к папке>
где:
- Путь к папке — путь к папке на локальном или сетевом диске, в которую необходимо сохранять XML-файлы.
Обратите внимание на то, что, в случае, если сервер Mid Office Manager работает на ОС Windows, то символы \ в пути к папке должны быть заменены на символы //. Например, при сохранении файлов в папку C:\export, путь в конфигурационном файле должен быть указан как C://export. |
Фильтрация данных
По умолчанию при экспорте выгружаются все поля XML-файла. Это может быть не совсем удобно, когда нужна только часть полей. Mid Office Manager можно сконфигурировать так, чтобы при экспорте выгружались не все, а только избранные поля. Для этого добавьте строки в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.file.filter.file = <Путь к файлу с полями для фильтрации> com.gridnine.xtrip.server.entity.exporter.file.filter.exclusive = <Тип фильтрации>
где:
- Путь к файлу с полями для фильтрации — путь к файлу, содержащему поля, которые необходимо фильтровать;
- Тип фильтрации — true, если требуется экспортировать все поля, кроме указанных в файле, false, если требуется экспортировать только указанные в файле поля.
Обратите внимание на то, что, в случае, если сервер Mid Office Manager работает на ОС Windows, то символы \ в пути к файлу с фильтром должны быть заменены на символы //. Например, при использовании файла C:\filter.txt, путь в конфигурационном файле должен быть указан как C://filter.txt. |
Файл с полями для фильтрации должен содержать перечень полей, которые будут включаться или исключаться из импорта в зависимости от значения ранее настроенного параметра com.gridnine.xtrip.server.entity.exporter.file.filter.exclusive. Каждая строка в файле представляет поле в формате <тип_объекта>/<имя_поля>. Например, если файл с полями для фильтрации содержит такие записи:
com.gridnine.xtrip.common.model.booking.BookingFile/number com.gridnine.xtrip.common.model.booking.BookingFile/createDate
и в файле boot.properties присутствует такая строка:
com.gridnine.xtrip.client.export.booking.xml.filter.exclusive = true
тогда при экспорте будут выгружаться только поля номера и даты создания заказов, например:
<export> <bookingFiles> <bookingFile type="com.gridnine.xtrip.common.model.booking.BookingFile" uid="86592eba-832f-11e3-987c-94de807f6d0a"> <number>0006115</number> <createDate>2014-01-20 00:00:00.000</createDate> </bookingFile> </bookingFiles> <entities/> <dictionaries/> </export>
Примеры настроек
Сохранение всех заказов в стандартную папку Mid Office Manager
com.gridnine.xtrip.server.entity.exporter.file.enabled = true com.gridnine.xtrip.server.entity.exporter.file.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile
Сохранение всех заказов и профилей организаций и физических лиц в папку C:\export
com.gridnine.xtrip.server.entity.exporter.file.enabled = true com.gridnine.xtrip.server.entity.exporter.file.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile com.gridnine.xtrip.server.entity.exporter.file.type.02 = com.gridnine.xtrip.common.model.profile.Organization com.gridnine.xtrip.server.entity.exporter.file.type.03 = com.gridnine.xtrip.common.model.profile.Person com.gridnine.xtrip.server.entity.exporter.file.path = C://export
Сохранение всех заказов и фильтрация данных по полям, указанным в папке C:\filter.txt, в папку C:\export
com.gridnine.xtrip.server.entity.exporter.file.enabled = true com.gridnine.xtrip.server.entity.exporter.file.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile com.gridnine.xtrip.server.entity.exporter.file.path = C://export com.gridnine.xtrip.server.entity.exporter.file.filter.file = C://filter.txt com.gridnine.xtrip.server.entity.exporter.file.filter.exclusive = true
Передача XML-файлов через JMS
Активация
Для того чтобы активировать опцию передачи XML-файлов через JMS добавьте строку в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.jms.enabled = true
Выбор экспортируемых данных
Для того чтобы указать данные, которые необходимо автоматически экспортировать, добавьте строки в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.jms.type.<Идентификатор экспортируемых данных> = <Тип объекта>
где:
- Идентификатор экспортируемых данных — строка, содержащая буквы латинского алфавита или цифры;
- Тип объекта — тип экспортируемых данных, см. #Типы объектов.
Для каждого типа объекта требуется добавления отдельной строки с указанным типом и уникальным идентификатором экспортируемых данных.
Установка JMS-брокера
Установите один из поддерживающих стандарт JMS брокеров, например, Apache ActiveMQ.
Установка соединения с JMS-брокером
Для того чтобы Mid Office Manager мог установить соединение с JMS-брокером, добавьте строки в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.jms.broker-type=EXTERNAL com.gridnine.xtrip.server.jms.broker-host=<адрес JMS-брокера> com.gridnine.xtrip.server.jms.broker-port=<порт JMS-брокера>
где:
- Адрес JMS-брокера — ip-адрес или доменное имя, на котором развернут JMS-брокер, например 127.0.0.1;
- Порт JMS-брокера — порт, на котором развернут JMS-брокер, например 61616.
Фильтрация данных
По умолчанию при экспорте выгружаются все поля XML-файла. Это может быть не совсем удобно, когда нужна только часть полей. Mid Office Manager можно сконфигурировать так, чтобы при экспорте выгружались не все, а только избранные поля. Для этого добавьте строки в boot.properties сервера Mid Office Manager:
com.gridnine.xtrip.server.entity.exporter.file.filter.file = <Путь к файлу с полями для фильтрации> com.gridnine.xtrip.server.entity.exporter.file.filter.exclusive = <Тип фильтрации>
где:
- Путь к файлу с полями для фильтрации — путь к файлу, содержащему поля, которые необходимо фильтровать;
- Тип фильтрации — true, если требуется экспортировать все поля, кроме указанных в файле, false, если требуется экспортировать только указанные в файле поля.
Обратите внимание на то, что, в случае, если сервер Mid Office Manager работает на ОС Windows, то символы \ в пути к файлу с фильтром должны быть заменены на символы //. Например, при использовании файла C:\filter.txt, путь в конфигурационном файле должен быть указан как C://filter.txt. |
Файл с полями для фильтрации должен перечень полей, которые будут включаться или исключаться из импорта в зависимости от значения ранее настроенного параметра com.gridnine.xtrip.server.entity.exporter.file.filter.exclusive. Каждая строка в файле представляет поле в формате <тип_объекта>/<имя_поля>. Например, если файл с полями для фильтрации содержит такие записи:
com.gridnine.xtrip.common.model.booking.BookingFile/number com.gridnine.xtrip.common.model.booking.BookingFile/createDate
и в файле boot.properties присутствует такая строка:
com.gridnine.xtrip.client.export.booking.xml.filter.exclusive = true
тогда при экспорте будут выгружаться только поля номера и даты создания заказов, например:
<export> <bookingFiles> <bookingFile type="com.gridnine.xtrip.common.model.booking.BookingFile" uid="86592eba-832f-11e3-987c-94de807f6d0a"> <number>0006115</number> <createDate>2014-01-20 00:00:00.000</createDate> </bookingFile> </bookingFiles> <entities/> <dictionaries/> </export>
Примеры настроек
Передача всех заказов в брокер, размещенный по адресу 127.0.0.1:61616
com.gridnine.xtrip.server.jms.broker-type=EXTERNAL com.gridnine.xtrip.server.jms.broker-host=127.0.0.1 com.gridnine.xtrip.server.jms.broker-port=61616 com.gridnine.xtrip.server.entity.exporter.jms.enabled = true com.gridnine.xtrip.server.entity.exporter.jms.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile
Передача всех заказов и профилей организаций и физических лиц в брокер, размещенный по адресу 127.0.0.1:61616
com.gridnine.xtrip.server.jms.broker-type=EXTERNAL com.gridnine.xtrip.server.jms.broker-host=127.0.0.1 com.gridnine.xtrip.server.jms.broker-port=61616 com.gridnine.xtrip.server.entity.exporter.jms.enabled = true com.gridnine.xtrip.server.entity.exporter.jms.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile com.gridnine.xtrip.server.entity.exporter.jms.type.02 = com.gridnine.xtrip.common.model.profile.Organization com.gridnine.xtrip.server.entity.exporter.jms.type.03 = com.gridnine.xtrip.common.model.profile.Person
Передача всех заказов и фильтрация данных по полям, указанным в папке C:\filter.txt, в брокер, размещенный по адресу 127.0.0.1:61616
com.gridnine.xtrip.server.jms.broker-type=EXTERNAL com.gridnine.xtrip.server.jms.broker-host=127.0.0.1 com.gridnine.xtrip.server.jms.broker-port=61616 com.gridnine.xtrip.server.entity.exporter.jms.enabled = true com.gridnine.xtrip.server.entity.exporter.jms.type.01 = com.gridnine.xtrip.common.model.booking.BookingFile com.gridnine.xtrip.server.entity.exporter.jms.filter.file = C://filter.txt com.gridnine.xtrip.server.entity.exporter.jms.filter.exclusive = true
Типы объектов
Mid Office Manager позволяет экспортировать следующие типы объектов:
Наименование | Описание |
---|---|
com.gridnine.xtrip.common.model.booking.BookingFile | Заказы |
com.gridnine.xtrip.common.model.profile.Organization | Профили организаций |
com.gridnine.xtrip.common.model.profile.Person | Профили физических лиц |
com.gridnine.xtrip.common.model.profile.SalesPoint | Профили точек продаж |
com.gridnine.xtrip.common.model.profile.Contract | Договоры |
com.gridnine.xtrip.common.model.finance.Transaction | Транзакции |
Особенности автоматического экспорта данных
Наименование XML-файлов
Наименование файла при экспорте имеет следующий вид:
<Тип объекта>_<yyyyMMddHHmmssSSS>.xml
где:
- Тип объекта — тип экспортируемого объекта;
- yyyyMMddHHmmssSSS — время экспорта объекта (год, месяц, день, часы, минуты, секунды, миллисекунды).
Например, при экспорте профиля физического лица, наименование файла будет таким:
com.gridnine.xtrip.common.model.profile.Person_20141225183810209.xml
Триггер формирования и передачи XML-файлов
XML-файлы с представлением данных об объекте формируются при сохранении объекта в Mid Office Manager, как первичном при создании, так и последующих при редактировании объекта. При этом, при каждом сохранении объекта будет формироваться новый файл.
При удалении объекта XML-файл не формируется! |
Спецификации XML-файлов
Спецификация XML-файла заказа, содержащего авиабилет
Спецификация XML-файла заказа, содержащего железнодорожный билет