Конфигурирование адаптера на стороне ИМУС

Материал из ANT-Inform documentation
Перейти к: навигация, поиск

Опции конфигурирования адаптера

Обязательные к заполнению на каждой РГК

Данные опции не имеют значений по умолчанию, и обязательно должны быть заданы для функционирования адаптера.

Опция конфигурации Описание
ais.ws.url URL Веб-сервиса. Без http://
ais.ws.user Пользователь для доступа
ais.ws.password Пароль. До версии 17 просьба не использовать символ @ и кавычек.
settings.codesystem Код системы, от которой будет работать адаптер. Например "tverrgmain.ais".

Опции которые могут быть оставлены со значениями по умолчанию

Переопределяются при необходимости. Если не указаны в файле ais.properties - используются представленные ниже параметры

Опция конфигурации Значение по умолчанию Описание Доп. Инфо
md.manager.sysCode

(deprecated in с версии 14.10)

Система от которой работает адаптер. Сейчас должно использоваться settings.codesystem
md.manager.defaultDistrict.id

(deprecated in с версии 14.10)

ID Федерального Округа РФ, в котором работает РГК (из таблицы district) Сейчас берётся из настроек БД
md.manager.defaultRgc.id

(deprecated in с версии 14.10)

ID РГК (из таблицы rgc) Сейчас берётся из настроек БД
md.manager.defaultRegion.ownerCodeSystem

(deprecated in с версии 14.10)

imus.common owner_code_system региона (из таблицы region). Сейчас берётся из настроек БД
md.manager.defaultRegion.origId

(deprecated in с версии 14.10)

ID региона РГК (из таблицы rgc) Сейчас берётся из настроек БД
md.manager.cmdconf.in AIS.CMDCONF.IN Очередь JMS для посылки текстовых комманд (например через amq-command)
jms.cmd.queue AIS.CMD.IN То же что и параметр выше, для прямых комманд в формате XML
md.manager.logData false Выводить все пришедшие и сконвертированные данные. Может несколько замедлять работу. Прежде всего для траблешутинга. Сейчас вероятно более удобны будет использовать ais.ws.debug
ais.ws.partialLog 2 Включение отдельного лога для каждой команды в директории md. Будет создаваться и каждый раз перезаписываться согласно имени команды, например Region.log.

Удобно использовать для внедрения и поиска ошибок, особенно совместно с md.manager.logData=true Возможные значения:

отключено
включено. Будет включаться и отключаться на каждой команде. Будет включена информация только по процессингу адаптером, Не будет включать лог сохранения объектов.
включено (по умолчанию с 17.0, ранее было 0). Будет включать также дальнейшую обработку - сохранение и обновление объектов. Файл переключается только по приходу новой комманды, как сайдэффект - сюда же будет попадать информация о получении следующей команды в самый конец, до того как она попала на обработку в адаптер, а также информация по завершению работы адаптера.
ESB-341
md.manager.overrideData

(deprecated in с версии ~16.0 (ESB-592))

false Отключение кеша объектов по XML хранилищу из md. Замедляет работу, но рекомендуется на этапе внедрения чтобы не очищать их вручную. НЕ используется для команд RunTask (всевозможные маппинги и автосвязки), влияет только на импорт объектов ( ESB-341. Заменило старое ais.ws.disableCache (ESB-351) Больше не используется с версии ~16.0 (ESB-592)
ais.ws.useOrigIdFusion false Если true - в orig_id используется полная связка "UID:code:foreignKey", в обратном случае только UID.
ais.ws.migrate.OrigIdsToUID false Значение true может использоваться временно для миграции с файлового адаптера, когда требуется обновление кодов. При этом будет осуществляться обновление orig_id перед любой другой обработкой. См. также параметр ais.ws.migrate.OrigIdsToUID_Field
ais.ws.migrate.OrigIdsToUID_Field code Если ais.ws.migrate.OrigIdsToUID установлено в true, то значение отсюда будет иметь следующее значение при миграции:
code 
Объекты загружались используя короткие коды из поля Код АИС РГ.
foreignKey 
Объекты загружались используя как идентификатор поле ВнешнийКлюч АИС РГ
mangledUID 
Для объектов был использован UID, но из него были выкинуты спецсимволы [-\s\xA0 ]
Значение регистрозависимое
ais.ws.report.to aisreports@spb.ant-inform.ru Список через запятую, без пробелов - email-адресов получателей отчёта по команде Report. Используется если для команды не задан другой в момент вызова.
ais.ws.report.subject IMUS-ais report for %1$s Тема письма отчёта о состоянии. Первый подстановочный плэйсхолдер (%1$s), если присутствует, будет заменён на имя системы из settings.codesystem
ais.ws.directByPC 0 Признак забирать Точки Подключения напрямую из справочников, вместо регистров. Для случая когда не ведутся площадки. Т.к. площадки не вести никто не разрешал, специального параметра конфигурации для этого нету, и соответственно такой случай автоматически не определить. Использование регистра предпочтительнее - там есть активность объектов, и не забирается мусор.

Может принимать следующие значения:

Брать из регистров (есть площадки). По умолчанию.
Брать напрямую из Справочник.Подключения, а не из регистра РегистрСведений.ПлощадкиПоДоговору (случай когда нету площадок)
Как 1, но дополнительно брать только те, на которые есть хоть один ненулевой план в текущем году, то есть "Активные"
ais.ws.generateFromOutDown true Генерировать ли структуру вниз от Выходов ГРС (УУГ, Корректор, Канал). Реализован забор и их узлов, если они есть для поставки. Но в подавляющем большинстве случаев это просто не нужно. Если включено, работает быстрее.
ais.ws.telemetryUugOuterRelation Параметр конфигурации для команды AutoMapTelemetry. Значение - разделенные запятой пары "система_в_аис:система_имус". Пробелы не допускаются. Все имена должны быть в нижнем регистре. Для русского текста должна использоваться Java-нотация вида \u (например "стел" = "\u0441\u0442\u0435\u\043b")

Специальная система ИМУС с именем 'skip' позволяет проигнорировать системы которые не нужны. Будет отдельный код ошибки 2201_1.

Система skip добавлена в версии 17.0. ESB-751.
md.manager.skipImportDvis

(deprecated in с версии ~16.0 ESB-592)

true Не импортировать помеченные на удаление объекты из АИС, если их еще нету в ИМУС. Если объект был загружен, и в следующий раз пришел помеченным на удаление, он в любом случае обновляется, в том числе становится скрытым (dvis=1) Больше не используется с версии ~16.0 ESB-592
md.manager.createMetaForImportData

(deprecated in с версии ~16.0 ESB-592)

false Если true - не будут создаваться метаобъекты с иерархией для тех объектов, где грузятся сами объекты, а не меты (ПМ) ESB-308

Больше не используется с версии ~16.0 ESB-592

md.manager.dataMapper.fetchaAll

(deprecated in с версии ~16.0 ESB-592)

true Отключение кеширования в компоненте ДатаМаппер. Отключение может сэкономить немного памяти, требуемой адаптеру, но ведет к замедлению работы Больше не используется с версии ~16.0 ESB-592
ais.ws.doNotMarkErrorsInOuts true Помечать ошибками Выходы ГРС (не указанные ГРО и Регион) (значение false) или нет (true) ESB-334
ais.ws.muteErrors Отключение пометки в объектах указанных через запятую кодов ошибок.

Для следующих кодов это имеет дополнительное значение:

903 
Если точка ТП с Выходом ГРС, она также не импортируется.
1001 
УУГ не импортируется
1020 
УУГ также не импортируется
Доступно с версии адаптера 14.4.1
ais.ws.gceAttachToAnyChannel false Если установлено в true - ГПО вешается на любой канал площадки, когда его больше 1, иначе (по умолчанию) только на единственный
ais.ws.genGCOonlyByPC false Способ генерации Площадок командой GenGcoFromPcAndConsumer
false 
Имя будет состоять из имени Подключения + Имя Потребителя, а orig_id из "<UID Подключения>_<ВнешнийКлюч потребителя>"
true 
используется только подключение. В этом случае будет возможна передача такой "площадки". Уникальность гарантируется лишь со слов представителя РГК.
Сделано для Мордовии чтобы площадки перевешивались ESB-364. Доступно с версии 14.7.
ais.ws.policy.oldBehaveModifiedObjectDoesNotTouched

(deprecated in с версии ~16.0 ESB-592)

true Режим обновления объектов. По умолчанию используется старый режим (true) когда при изменении объекта в ИМУС (или любой другой системой), он полностью исключается из дальнейшего обновления (синхронизации). По значению false все синхронизируемые с АИС поля будут перезаписываться всегда. ESB-391. С версии адаптера 14.9.5

Не используется с версии ~16.0 ESB-592 Удалена с адаптера 18.4.pre1, ESB-1040

ais.ws.forbiddenTasks Список задач (имён команд адаптера), запрещенных к выполнению на системе, чтобы не загружался скажем мусор или не возможно было выполнить случайно из АРМа. Список команд через запятую. С версии адаптера 14.10.pre2. ESB-405
ais.ws.distributePlansFromMonth false Если не ведётся разбивка планов в АИС по суткам (тогда на первом числе месяца указан весь месячный план), необходимо выставить в true чтобы разбивалось в ИМУС в момент импорта. Используется алгоритм целочисленного разбиения - "пила" из домена. (Можно было бы попробовать детектировать такой режим автоматически из конфигурации, но пока в Краснодаре, первом объекте где это нужно, нету доступа к данным константам). ESB-425. С версии адаптера 14.10pre4
ais.ws.responseZonesBy Используется в операции загрузки площадок. По умолчанию отключено. Возможные значения:
inspector 
Импорт пользователей АИС и построение по ним Зон Ответственности из инспекторов площадок (inspector) (ESB-398)
curator 
из кураторов договоров (ESB-407)
sector 
по Абонентскому участку площадки формируется Зона ответственности. (с версии 15.3, ESB-511).

В ИМУС по перечисленным сущностям создаётся пользователь (по первым двум словам, у нас ограничение на 20 символов длины). В описании пишется префикс "@AIS:" и далее полное ФИО (название участка). Пользователь НЕ имеет роли и определенного пароля, для его использования необходимо администратору задать пароль и назначить желаемую роль вручную!. Также, создается одноименная зона ответственности, тоже с префиксом "@AIS".

С версии 14.10pre5.
ais.ws.custom.gcoNamePattern  %1s Используется в операции загрузки площадок для формирования имени. Можно использовать следующие подстановочные элементы:
 %1$s 
будет замещено названием
 %2$s 
код
 %3$s 
ВнешнийКлюч
 %4$s 
код потребителя (первого уровня!) если он сохранён согласно конфигурации ais.ws.useOrigIdFusion.
 %5$s 
всегда пустая строка (для совместимости с ais.ws.custom.gcoNamePatternMove)
 %6$s 
дополнительное поле. Содержимое настраивается константой ASCUG_additional_GasConsObjects
ESB-496, ESB-551, ESB-560
ais.ws.custom.gcoNamePatternMove  %1$s (%5$s) Используется в операции загрузки площадок для формирования имени. Можно использовать следующие подстановочные элементы:
 %1$s 
будет замещено названием
 %2$s 
код
 %3$s 
ВнешнийКлюч
 %4$s 
код потребителя (первого уровня!) если он сохранён согласно конфигурации ais.ws.useOrigIdFusion
 %5$s 
наименование потребителя (второго уровня!). Доступно дополнительно к элементам ais.ws.custom.gcoNamePattern.
 %6$s 
дополнительное поле. Содержимое настраивается константой ASCUG_additional_GasConsObjects
ESB-496, ESB-551, ESB-560
ais.ws.custom.tuugNamePattern  %1s Используется в операции загрузки узлов для формирования имени. Можно использовать следующие подстановочные элементы:
 %1$s 
будет замещено названием
 %2$s 
код
 %3$s 
ВнешнийКлюч
QUICK-3830. С версии 17.0.
ais.ws.custom.genUugName  %1$s Формат имени узла при генерации от площадки.
 %1$s 
будет замещено названием площадки
 %2$s 
адрес площадки
ESB-528. С версии адаптера 15.7.1.
ais.ws.custom.genEquipName  %1$s Формат имени корректора при генерации от узла.
 %1$s 
будет замещено названием узла
ESB-528. С версии адаптера 15.7.1.
ais.ws.custom.genChannelName  %1$s Формат имени канала при генерации от корректора.
 %1$s 
будет замещено названием корректора
 %2$s 
заводской номер корректора
ESB-528. С версии адаптера 15.7.1.
ais.ws.prcLimitAddition 0 База для корректировки корректировки коридоров договоров. Если выставлено в ненулевое значение (чаще всего 100), то перебор к нему будет прибавляться, а недобор вычитаться из него. Суть в том что можно указать перебор/недобор как: 5%/10% (то есть от разрешенного плана), а можно 95%/110% как разрешенное количество процентов плана. Т.к. нам требуется последняя форма, выполняем соответствующее преобразование. ESB-524
ais.ws.reportMaxErrors 500 Максимальное количество проблемных объектов которое выводить в каждом коде ошибок. Остальные просто не будут показаны, т.к. чаще всего если атрибут не установлен для всех, то и список бесполезен
ais.ws.attachPcToGcoConsists both Изменяет поведение команды AttachPcToGco выполнять расширенные функции для обратной совместимости и наличию одной команды в АРМе. Возможные значения:
real 
только AttachPcToGco
gen 
только AttachPcToGcoGenerated
both 
выполняются обе
SUPPORT-2265
ais.ws.debug false Свойство адаптера debug, отвечающее за сохранение всего набора входящих элементов и элементов скрываемых в файл *.meta.xml ESB-732
ais.ws.dvisAbsent Список через запятую, какие команды адаптера будут удалять свои объекты, если они больше не приходят с сервиса.

Какие объекты, каких команд, скрывать (dvis), если они больше не приходят из удалённой системы. По умолчанию ни один. Это не синхронизация, пометки удаления, работающая давно, речь именно о том чтобы скрыть объекты, физически удалённые в АИС, которые больше не приходят (физически удалены или разорвана историческая связь).

Каждый элемент в строке может также заканчиваться знаком +, тогда будут удаляться не пришедшие объекты данного типа любых систем! В обратном случае, только системы '*.ais'. В режиме дебага список всех скрываемых элементов будет записан в метахранилище (*.meta.xml).

С версии адаптера 17.0.pre5. ESB-527. ПМ не скрываются, потому что у них просто нету атрибута dvis QUICK-4099.
ais.ws.gasMetersAttachToAnyChannel false При включении ИО будет помещено на любой (в общем случае не детерминировано на какой именно) канал от узла, если канал в АИС РГ не указан, и данный узел имеет более одного канала (ошибка 1606 в случае множественности). Никакой ошибки уже не будет. ESB-690
ais.ws.replaceGenerated Список через запятую, какие сгенерированные объекты должны замещаться в случае единственности. Возможные значения: Tuug, Equip, Channel.

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

Алгоритм замещения следующий:

  • Если включено например для узла (Tuug), из АИС на площадку приходит УУГ, но до этого на ней уже был сгенерирован 1 экземпляр. Сгенерированные соответственно имеет в orig_id префикс "gen:" и этой опцией он будет замещён (как буд-то это он и был изначально, то есть на нем в том числе будет показываться потребление прошлых периодов, если оно было) импортируемым из АИС РГ.
  • Если на данной площадке имеется больше 1 УУГ, то будет ошибка 5001 и пришедший из АИС РГ УУГ не будет добавлен.
  • Если было указано с + (Tuug+), то не смотря на наличие нескольких узлов, этот будет добавлен также.
С версии адаптера 17.0.pre6. ESB-716.
ais.ws.doNotAccount0Plan false Не учитывать 0 план для актуальности субъектов распределения.

С версии адаптера 18.25 ESB-985 изменены умолчания и 0 план перестал учитываться для субъекта распределения для его активности[1]. Это вызвало множество недовольства. С версии адаптера 18.28 ESB-1067 умолчание возвращается обратно, а данной опцией в true можно включить затребованное ранее решение: Дата действия субъекта ставится по последнему ненулевому плану, и если нету ненулевых планов - он скрывается.

С версии адаптера 18.28 ESB-1067

Параметры экспорта

Опция конфигурации Значение по умолчанию Описание
ais.file.dir D:\AIS Директория для экспорта CSV файлов объема
export.task1.name Первая задача экспорта. С версии 17.0 умолчание очищено, было: cmdpack:DumpQ_PcDay31d
export.task1.cron 0 0 4 * * ? Время выполнения первой задачи экспорта. Задается в формате библиотеки Quartz похожем на Unix cron.
export.task2.name Вторая задача экспорта. С версии 17.0 умолчание очищено, было: cmdpack:DumpQ_PcHour7d
export.task2.cron 0 5 * * * ? Время выполнения второй задачи экспорта. Задается в формате библиотеки Quartz похожем на Unix cron.
export.task3.name Третья задача экспорта. С версии 17.0 умолчание очищено, было: cmdpack:DumpQ_ContrDay31d
export.task3.cron 0 30 10 * * ? Время выполнения третьей задачи экспорта. Задается в формате библиотеки Quartz похожем на Unix cron.
export.task4.name Четвёртая задача экспорта. С версии 17.0 умолчание очищено, было: cmdpack:DumpQ_ContrMonth2p
export.task4.cron 0 15 10 ? * 6L Время выполнения четвёртой задачи экспорта. Задается в формате библиотеки Quartz похожем на Unix cron.
ais.ws.export.format.PcHour7d.fields CONS_OID,CONS_SYS,CONS_NAME,​PC_OID,PC_SYS,PC_NAME,GCO_OID,GCO_SYS,​GCO_NAME,CORR_TIME,Q,SIGN_DATE Список полей для выгрузки, через запятую, для указанной команды. * - означает все.
ais.ws.export.format.PcDay31d.fields CONS_OID,CONS_SYS,CONS_NAME,​PC_OID,PC_SYS,PC_NAME,GCO_OID,GCO_SYS,​GCO_NAME,CORR_TIME,Q,SIGN_DATE Список полей для выгрузки, через запятую, для указанной команды. * - означает все. ESB-727
ais.ws.export.format.ContrDay31d.fields CONS_OID,CONS_SYS,CONS_NAME,​PC_OID,PC_SYS,PC_NAME,PRMARK_OID,PRMARK_SYS,​PR_MARK_NAME,CONTR_OID,CONTR_SYS,CONTRACT_NUM,​CORR_TIME,Q,LAST_CHANGED_DATE Список полей для выгрузки, через запятую, для указанной команды. * - означает все. ESB-727
ais.ws.export.format.ContrMonth2p.fields CONS_OID,CONS_SYS,CONS_NAME,​PC_OID,PC_SYS,PC_NAME,PRMARK_OID,​PRMARK_SYS,PR_MARK_NAME,CONTR_OID,CONTR_SYS,​CONTRACT_NUM,CORR_TIME,Q,LAST_CHANGED_DATE Список полей для выгрузки, через запятую, для указанной команды. * - означает все. ESB-727
ais.ws.export.format.PcHour7d.date yyyy-MM-dd HH:mm:ss Форматирование даты для соответствующей команды. В стиле SimpleDateFormat. ESB-727. С версии 17.0.
ais.ws.export.format.PcDay31d.date yyyy-MM-dd Форматирование даты для соответствующей команды. В стиле SimpleDateFormat. ESB-727. С версии 17.0.
ais.ws.export.format.ContrDay31d.date yyyy-MM-dd Форматирование даты для соответствующей команды. В стиле SimpleDateFormat. ESB-727. С версии 17.0.
ais.ws.export.format.ContrMonth2p.date yyyy-MM-dd Форматирование даты для соответствующей команды. В стиле SimpleDateFormat. ESB-727. С версии 17.0.

Глобальное конфигурирование в БД

В БД имеется таблица profile_tab, в которой хранятся значения key/value которые могут влиять на настройки приложения глобально, как АРМа, так и ESB.

Параметр Пример значения Описание
DayBeginingAt 10 Время начала отсчета суток в РГК
AlarmBadState select al.id from AlarmName as al where al.alarmWeight between 100 and 149 Список ид. типов тревог <Нештатные ситуации>
GdoRootZoneName Все выхода ГРС Имя зоны по-умолчанию для создания естественных зон ГП по новым выходам ГРС
CompareIgnoreWords г.;пос.;с.;р-н;д.;д/пос;сел.;р/н;ГРС;АГР;ГР_;_ГР;Вход;вход;ВХОД;Выход;выход;ВЫХОД;Площадка;площадка;ПЛОЩАДКА;УУГ Слова, исключающиеся при сравнении строк (разделитель - ";", пробел - "_")
CompareIgnorePrepositions _на_;_в_;_при_;_с_;_из_;_для_;_к_;_по_;_ч/з_;_через_;_о_ Предлоги, исключающиеся при сравнении строк (разделитель - ";", пробел - "_")
UseTemporaryTables false Признак использования временных таблиц (таблицы типа TT_***)
UseUpcontract false Признак импорта договоров ч/з UPCONTRACT
UseHints false Признак использования оптимизационных hints в SQL (Например, +ORDERED)
UseHistJoin false Признак использования исторических атрибутов в архивах данных при построении запроса
UMPressure kgs/cm2 Базовая единица измерения для давления
UMTemperature C Базовая единица измерения для температуры
UMVolume nm3 Базовая единица измерения для нормированного объема
UMRVolume m3 Базовая единица измерения для рабочего объема
UMEnergy joule Базовая единица измерения для калорийности
UnboundTuugZoneName Непривязанные УУГ Наименование автоматически заполняемой зоны ГП с непривязанными УУГ
SkipHistoryPoint false Признак отключения записи историзации (создание точек истории HISTORY_POINT, HISTORY_CHANGE, HISTORY_SET_CHANGE)
UseHistJoin4Add true Признак, использования исторических атрибутов в зоне актирования при включенном атрибуте
Company 29,4 Идентификатор текущей компании вида: <obj_type_id>,<obj_id>
HideRoute false Признак не использования Ниток трубопровода: режим Трубопровод == Нитка
PlanByGco false Признак ведения планов по площадкам
UMPressureB kgs/cm2pb Базовая единица измерения для перепада давления

Примечания

  1. По запросу из Астрахани, что было сочтено разумным