Экспорт данных — различия между версиями
Hubbitus (обсуждение | вклад) (→Состав {http://spb.ant-inform.ru/ASCUG}day_q: Список в таблицу для day_q) |
Hubbitus (обсуждение | вклад) (Перевод в табличную форму передаваемых объектов для наглядности.) |
||
Строка 69: | Строка 69: | ||
==== Состав {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}day_q_raw ==== | ==== Состав {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}day_q_raw ==== | ||
− | + | {| border=1 width="100%" cellspacing="0" cellpadding="4" class="wikitable sortable" | |
− | + | ! Поле !! Тип !! Описание | |
− | + | |- | |
− | + | | corr_time || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}dateTime || время и дата<ref>Время добавлено для возможности в будущем таким же способом передавать часовые архивы при необходимости</ref> на которые проводился замер (время [[Перечень сокращений и обозначений#Корректор (Вычислитель)|корректора]]) | |
− | + | |- | |
− | + | | cur_time || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}dateTime || время и дата когда данные были записаны в БД (должно быть позже corr_time) | |
− | + | |- | |
− | + | | channel || {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id || [[Перечень сокращений и обозначений#Канал|канал]] | |
− | + | |- | |
+ | | gco || {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id || площадка | ||
+ | |- | ||
+ | | pc || {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id || [[Перечень сокращений и обозначений#ТП|ТП]] | ||
+ | |- | ||
+ | | cons || {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id || потребитель | ||
+ | |- | ||
+ | | q || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}decimal || Объём. м<sup>3</sup> | ||
+ | |- | ||
+ | | p || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}decimal || Давление. Кгс/см<sup>2</sup>. Может отсутствовать | ||
+ | |- | ||
+ | | t || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}decimal || Температура. ℃. Может отсутствовать. | ||
+ | |} | ||
− | + | Тип {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id (global ID), упоминаемый ранее представляет собой объединённый идентификатор объекта и состоит из полей, имеющих следующее значение: | |
− | Тип {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}g_id (global ID) представляет собой объединённый идентификатор объекта и состоит из полей, имеющих следующее значение: | + | {| border=1 width="100%" cellspacing="0" cellpadding="4" class="wikitable sortable" |
− | + | ! Поле !! Тип !! Описание | |
− | + | |- | |
− | + | | id || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}long || идентификатор (id) объекта в [[Перечень сокращений и обозначений#ИМУС|ИМУС]]. Может быть пустым | |
− | + | |- | |
+ | | ocs || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}string || код системы - владельца (owner_code_system), код внешней системы, в которой объект был создан. В данном случае это должна быть [[Перечень сокращений и обозначений#АИС РГ|АИС]]. Будет заполнено только если не совпадает с основной системой в которую экспортируется, указанную в {[http://spb.ant-inform.ru/ASCUG http://spb.ant-inform.ru/ASCUG]}day_q_raw_lis.default_owner_code_system | ||
+ | |- | ||
+ | | oid || {[http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema]}string || [[Перечень_сокращений_и_обозначений#Ид. в системе создателя|Ид. в системе создателя]] || идентификатор объекта в системе, в которой он был создан (Original Id, OrigId) | ||
+ | |- | ||
+ | | uid || {[http://v8.1c.ru/8.1/data/core http://v8.1c.ru/8.1/data/core]}UUID || [[Перечень сокращений и обозначений#UID|UID]], если удалось вычленить, т.е. система-создатель соответствует той в которую импортируется (см. выше) и объект не [[Общий порядок загрузки данных#Генерация структуры вниз|сгенерирован]] (по префиксу gen:, исключение делается для [[Перечень сокращений и обозначений#ТП|ТП]] т.к. там данный префикс скорее означает тип загрузки, нежели генерацию на стороне [[Перечень сокращений и обозначений#ИУС-ГАЗ|ИУС-ГАЗ]]) адаптером в [[Перечень сокращений и обозначений#ИМУС|ИМУС]] | ||
+ | |} | ||
При включении [[Конфигурирование адаптера на стороне ИМУС#ais_ws_debug|режима отладки]], поле oid будет заполняться всегда, иначе (для экономии размера передаваемых данных) только если не заполнен uid. | При включении [[Конфигурирование адаптера на стороне ИМУС#ais_ws_debug|режима отладки]], поле oid будет заполняться всегда, иначе (для экономии размера передаваемых данных) только если не заполнен uid. |
Версия 23:39, 15 октября 2014
С версии 17.0 реализован экспорт распределённых суточных данных из ИМУС в АИС Регионгаз и предоставлена возможность записи зоны КИО.
Обратите внимание, по умолчанию ВЕБ-сервис ASCUG остался только для чтения! Возможность записи должна быть включена представителем компании явным заданием константы ASCUG_ENABLE_WRITE! |
Содержание
Требуемые изменения в конфигурации
К сожалению, видимо конфигурация АИС РГ писалась без учета возможности работы в чисто серверном режиме (какими являются Веб-сервис, внешние соединения и т.д.) и в том числе имеет плохой стиль взаимодействия с пользователем в различных частях системы, даже не проверяя что это в данный момент возможно. Такие проверки делаются легко с помощью конструкций вида:
#Если наКлиенте Тогда Вопрос("Вы точно хотите продолжить?", РежимДиалогаВопрос.ДаНет); #КонецЕсли
Мы настоятельно рекомендуем кому-либо из представителей региональной компании, имеющей договор на поддержку, обратиться в поддержку ООО «Аудит НТ» для внесения данных изменений в основной состав конфигурации с очередным обновлением |
Таким образом, при использовании на сервере таких конструкций это приводит к ошибке, поскольку такие функции просто не определены. Подробнее про это рекомендуется прочитать в интернете, например [1]. В конфигурации АИС РГ проблема усугубляется тем, что такое взаимодействие присутствует в модулях объекта, что вообще считается дурной практикой. Это приводит даже просто к невозможности создания документов к сожалению.
Таким образом все такие операции в модуле документа СуточноеПотребление должны быть обрамлены условными конструкциями препроцессору (сейчас таких мест 6 штук для конфигурации версии 1.1.28).
Для простоты при совпадении номера конфигурации и условии что не вносилось ручных изменений в данный модуль, можно его скопировать также из предложенного нами cf-файла. Или внести соответствующие изменения самостоятельно.
Обратите внимание, данные изменения никак не затрагивают обычное использование АИС Регионгаз, потому что данные конструкции именно указывают на то что в обычном режиме это и выполняются, и не выполняются только в режиме сервера.
Выполнение экспорта
С версии АРМ ~1.5.449 добавлены графические пункты меню с выбором дат.
Также иногда удобно посылать команды из консоли с помощью утилитки amq-command, на сервере ИМУС. Параметры точно также как для планов.
На регулярное выполнение команды могут быть сконфигурированы стандартным способом.
Состав и формат передаваемых данных
Экспорт данных оперативного баланса о суточном распределении по договорам
Передаётся информация по распределению по договорам за выбранный период (сутки) - "Зона распределения - Оперативный баланс - по суткам"
Данные передаются в операцию сервиса write_q. Передаётся список значений {http://spb.ant-inform.ru/ASCUG}day_q в атрибуте list типа {http://spb.ant-inform.ru/ASCUG}day_q_list.
По умолчанию данные записываются в Документ.СуточноеПотребление, но при необходимости может быть задан собственный обработчик записи константой ASCUG_write_q_custom_code |
Состав {http://spb.ant-inform.ru/ASCUG}day_q
Поле | Тип | Описание |
---|---|---|
date | {http://www.w3.org/2001/XMLSchema}dateTime | дата на которую производилось распределение |
q | {http://www.w3.org/2001/XMLSchema}decimal | распределённый объём, нм3 |
idContr | {http://v8.1c.ru/8.1/data/core}UUID | UID договора |
idPc | {http://v8.1c.ru/8.1/data/core}UUID | UID ТП |
idPrMark | {http://www.w3.org/2001/XMLSchema}string | идентификатор вида ценообразования (перечисление Прейскуранты) |
idConsType | {http://www.w3.org/2001/XMLSchema}string | идентификатор категории потребления. Соответствие задаётся через соответствующие константы ASCUG_consTypePopulation и ASCUG_consTypeExceptPopulation |
idPContr | {http://v8.1c.ru/8.1/data/core}UUID | UID договора закупки |
plan | {http://www.w3.org/2001/XMLSchema}decimal | План на указанные сущности и сутки, нм3. В случае введения графиков 1, 2 при похолоданиях или авариях в ИУС-ГАЗ, будет отличаться от загруженного ранее из АИС. |
Экспорт утверждённых объёмов (Зона КИО)
Не путать с распределёнными, описанными выше. Здесь речь идёт прежде всего о телеметрийных данных в зоне актирования на каналах, а не о коммерческих! В общем случае они не нужны в АИС |
Добавлено в версии 18.3.
Реализовано по запросу Рустама Фарукшина из Уфы и совместно с ним[1]. На данный момент реализован экспорт из ИУС-ГАЗ. В сервис добавлена операция write_q_raw, которая ничего не делает, только получает массив входящих данных. Фактическая функция записи должна быть сконфигурирована константой ASCUG_write_q_raw_custom_code. Вызываемый для обработки код должен самостоятельно заполнить список ошибок и статус операции в передаваемом аргументе errList {http://spb.ant-inform.ru/ASCUG}error_list.
Данные передаются в операцию сервиса write_q_raw. Передаётся список значений {http://spb.ant-inform.ru/ASCUG}day_q_raw в атрибуте list типа {http://spb.ant-inform.ru/ASCUG}day_q_raw_list.
Состав {http://spb.ant-inform.ru/ASCUG}day_q_raw
Поле | Тип | Описание |
---|---|---|
corr_time | {http://www.w3.org/2001/XMLSchema}dateTime | время и дата[2] на которые проводился замер (время корректора) |
cur_time | {http://www.w3.org/2001/XMLSchema}dateTime | время и дата когда данные были записаны в БД (должно быть позже corr_time) |
channel | {http://spb.ant-inform.ru/ASCUG}g_id | канал |
gco | {http://spb.ant-inform.ru/ASCUG}g_id | площадка |
pc | {http://spb.ant-inform.ru/ASCUG}g_id | ТП |
cons | {http://spb.ant-inform.ru/ASCUG}g_id | потребитель |
q | {http://www.w3.org/2001/XMLSchema}decimal | Объём. м3 |
p | {http://www.w3.org/2001/XMLSchema}decimal | Давление. Кгс/см2. Может отсутствовать |
t | {http://www.w3.org/2001/XMLSchema}decimal | Температура. ℃. Может отсутствовать. |
Тип {http://spb.ant-inform.ru/ASCUG}g_id (global ID), упоминаемый ранее представляет собой объединённый идентификатор объекта и состоит из полей, имеющих следующее значение:
Поле | Тип | Описание | |
---|---|---|---|
id | {http://www.w3.org/2001/XMLSchema}long | идентификатор (id) объекта в ИМУС. Может быть пустым | |
ocs | {http://www.w3.org/2001/XMLSchema}string | код системы - владельца (owner_code_system), код внешней системы, в которой объект был создан. В данном случае это должна быть АИС. Будет заполнено только если не совпадает с основной системой в которую экспортируется, указанную в {http://spb.ant-inform.ru/ASCUG}day_q_raw_lis.default_owner_code_system | |
oid | {http://www.w3.org/2001/XMLSchema}string | Ид. в системе создателя | идентификатор объекта в системе, в которой он был создан (Original Id, OrigId) |
uid | {http://v8.1c.ru/8.1/data/core}UUID | UID, если удалось вычленить, т.е. система-создатель соответствует той в которую импортируется (см. выше) и объект не сгенерирован (по префиксу gen:, исключение делается для ТП т.к. там данный префикс скорее означает тип загрузки, нежели генерацию на стороне ИУС-ГАЗ) адаптером в ИМУС |
При включении режима отладки, поле oid будет заполняться всегда, иначе (для экономии размера передаваемых данных) только если не заполнен uid.