Коллеги, приветствую. Очередная версия универсального обмена XML коих много на Инфостарте.
Спросите, "Почему выкладываю ещё одну?". Потому что - Нет предала совершенству! И за год командировки по переходу с нескольких УПП на ЕРП, я и мои коллеги это в полной мере ощутили, т.к. запускали эти обработки тысячи раз, я лично несколько десятков раз в день ими пользовался точно. А так бывает, когда ты часто чем-то пользуешься, то начинаешь понимать чего не хватает, и что-то из штатных возможностей тебе важно. Об этом ниже расскажу (что добавил, и что полезное для себя использую).
Обработки две:
- Универсальный обмен данными XML 8.2 (дополненный)
- Универсальный обмен данными XML 8.3 (дополненный)
По ним ниже с картинками опишу доработанный и пригодившийся мне функционал. Обработки по функциональности совпадают, интерфейс похож, поэтому в некоторых блоках с примерами буду ссылаться на то, что для другой обработки уже показывал пример.
Сами обработки использовал для перекачки и восстановления данных между базами, переноса остатков, тестирования и отладки правил обмена.
Также буду ссылаться на использование других обработок: Консоли запросов, Регистрации изменений в планах обмена.
Кратко о чем буду рассказывать:
1) Сохранение и восстановление настроек дерева правил, отборов и параметров целиком или при обновлении самих правил;
2) Произвольные отборы для выгрузки объектов и отборы предварительно собранные по Объект не найден, Уникальному идентификатору, Представлению документа, Коду или Наименованию справочника
3) Регистрацию на узлах обмена объектов и выгрузку с узлов с возможностью очистки регистрации;
4) Разные COM компоненты;
5) Тестирование и отладка;
4) Удаление объектов;
1) Сохранение и восстановление настроек дерева правил, отборов и параметров целиком или при обновлении самих правил
[№1] - Сохранение и восстановление настроек
[№2] - Перечитать правила
В результате этих действий отборы и флажки дерева на закладке "Выгружаемые данные" восстановятся как были ранее вами установлены, а также восстановятся параметры на закладке "Параметры выгрузки". Когда ты сотню раз в день что-то перегружаешь, перечитывание правил с сохранением установленных десятков отборов и параметров, как бальзам на душу и нервы крепче.



2) Произвольные отборы для выгрузки объектов и отборы предварительно собранные по Объект не найден, Уникальному идентификатору, Представлению документа, Коду или Наименованию справочника
[№ 1] - Доступно указание комбинаций произвольных отборов по объекту и его реквизитам
[№ 2] - Основная работа происходит на новой закладке "Таблица с отборами". Там можно:
- копи-пастом Ctrl+C Ctrl+V или чтением файла вставить список (это одна колонка, ну если несколько прямо в таблице лишние удалите)
- указать тип метаданных для поиска
- указать вариант поиска: Поиск объектов по представлению, коду, наименованию, уникальному идентификатору, <Объект не найден ...>
- найти объекты в базе-источнике
- если нужно зарегистрировать для регулярного обмена или выгрузить сразу
В результате получаем таблицу реальных ссылок для дальнейшего использования в отборах или для регистрации на узле обмена. Используется в совокупности с "Консолью запросов" (в базе-источнике или базе-приемнике) для получения выборки объектов и также типовой обработкой "Регистрация изменений на узле обмена". Список найденных объектов можно либо сразу выгружать установив фильтр см. кнопку [№ 3] либо зарегистрировать на узле обмена, чтобы регулярный обмен сам выгрузил.
[№ 3] - Заполнение отбора объекта списком найденных ссылок. Предварительно добавьте фильтр в который поместить список. Это чаще всего фильтр по ссылке на сам объект выгрузки, либо фильтр на его реквизит.



















3) Регистрацию на узлах обмена объектов и выгрузку с узлов с возможностью очистки регистрации
[№ 1] - Установка узла выгрузки. Объекты можно выгружать не только с фильтрами, но и зарегистрированные на конкретном узле обмена. Для этого в обработке напротив объекта надо указать узел. Работают либо фильтры установленные у правила выгрузки, либо выгрузка с узла (т.е. фильтры на узел не накладываются сверху, имейте ввиду).
Что будет выгружаться с узла, можно посмотреть встроенной в конфигурации 1С обработкой "Регистрация изменений для обмена"
[№ 2] - Команды установки и очистки узлов. Выбрав узел для одного объекта, его можно распростаранить на остальные правила выгрузки. Или очистить.
[№ 3] - При выгрузке данных, зарегистрированных на плане обмена, важно зафиксировать данную настройку "Изменение регистрации для узлов обмена после выгрузки". Что делать с выгруженными данными. Я в основном ставлю "Удалить регистрацию только для выгруженных объектов", таким образом разгружаю план обмена, убирая с него выгруженные данные. В основном использую если на плане обмена по объектам накопилась большая регистрация и весь пакет стандартно механизмом обмена долго протаскивается между базами, то отдельно каждый объект снимаю таким образом, чтобы разгрузить основной механизм интеграции.



4) Разные COM компоненты
[№ 1] - По умолчанию обработка позволяет использовать COM обмен между разными базами на общей платформе. Но бывает по техническим или политическим причинам платформы 1С базы-источника и базы-приемника различные. Тогда требуется использовать в источнике COM компоненту платформы приемника другой версии.
В обработке есть пример для нескольких платформ, для своих случаев сделайте по аналогии.
Техническими причинами, что базы на разных платформах 1С могут быть, например невозможность поставить у исторической базы УПП выше версию из-за несовместимости доработок, а у ЕРП поставить ниже также из-за требований к релизу. Из политических - руководители Айти не верят что старое УПП работает на новой платформе, даже не смотря на демонстрацию на тестовом контуре.
ВАЖНО:
- Как установить несколько разных COM компонент в операционной системе семейства Windows смотрите статьи на Инфостарте. На Linux COM-а нет в природе.
- Также важны лицензии, COM их использует. Я столкнулся с тем что если сервера 1С на разных лицензиях КОРП и ПРОФ, то подключение COM может не срабытывать (но это не точно)

5) Тестирование и отладка
[№ 1] - Загружать данные в режиме обмена. Если стоит то объекты грузятся с опцией ОбменДанными.Загрузка = Истина, которая отключает бизнес логику, таким образом объекты загружаются без контролей заполнения всех реквизитов. По умолчанию ее надо использовать. Но если хочется проверить при загрузке все пользовательские контроли ручного ввода объекта, то ее можно снять и проанализировать ошибки (таким образом выявив неполноту переносимых данных объекта и вообще его соответствие логике зашитой в систему)
[№ 2] - Количество элементов в транзакции. Его установка даст промежутки в блокировке данных, для возможности протиснутся транзакциям других работающих в системе пользователей (использовать в случае возникновения взаимоблокировок в системе, если у кого-то из пользователей начинает выкидывать сообщения о проблеме работы с документами)
[№ 3] - Режим отладки. По умолчанию выключен. Всегда включаю, чтобы весь пакет данных загрузился, даже не смотря на ошибки возникающие в загрузке отдельных объектов (их потом отдельно отлажу и дозагружу). Если флаг не включен, то например пакет из 100000 объектов может отвалиться на 59347 объекте и вся загрузка прервется - очень неприятные ощущения, делать все повторно и ждать из-за какой то редкой исключительной комбинации реквизитов.
[№ 4] - Количество в транзакции, освобождает блокировки и дает интервалы для пользовательских транзакций, в случае длительных выгрузок, например, с планов обмена.
[№ 5] - Изменение регистрации для узлов обмена после выгрузки. В том случае если на первой закладке "Выгрузка данных" указаны узлы обмена и выгружаются зарегистрированные на них данные, важно указать что делать с выгруженными объектами: Снять их с регистрации с узла (тем самым облегчив сам узел, для например последующего регулярного обмена регламентным заданием) или оставить. Я разгружаю (в основном если регулярный обмен тянет большой пакет, не успевает и надо ему помочь).


6) Удаление объектов
[№ 1] - Непосредственное удаление объектов. Бывает что использую, если криво что-то загрузил. Чаще всего таким образом удаляю данные регистров сведений.

Такой же функционал и у версии 8.3, различия в интерфейсе обычной формы и управляемой. Все аналогично, поэтому сильно дублировать картинками и примерами не буду, если что смотрите в описание 8.2 или в 8.3
ВНИМАНИЕ: Почитайте сначала блок 8.2, потому что я решил не дублировать часть описаний и примеров, т.к. они аналогичные и обработки аналогчиные, только формы отличаются немного обычная от управляемой.
1) Сохранение и восстановление настроек дерева правил, отборов и параметров целиком или при обновлении самих правил
[№1] - Сохранение и восстановление настроек
[№2] - Перечитать правила
В результате этих действий отборы и флажки дерева на закладке "Выгружаемые данные" восстановятся как были ранее вами установлены, а также восстановятся параметры на закладке "Параметры выгрузки". Когда ты сотню раз в день что-то перегружаешь, перечитывание правил с сохранением установленных десятков отборов и параметров, как бальзам на душу и нервы крепче.


2) Произвольные отборы для выгрузки объектов и отборы предварительно собранные по Объект не найден, Уникальному идентификатору, Представлению документа, Коду или Наименованию справочника
ВНИМАНИЕ: Почитайте сначала блок 8.2. Примеры с вариантами поиска по коду, наименованию, Уникальному идентификатору, <Объект не найден> большей частью описаны выше в версии 8.2. Регистрация на узле обмена также описана в блоке 8.2 - тут аналогично. Если что смотрите, пожалуйста, в том блоке примеры, тут все совершенно аналогично: Интерфейс обработки похож, Консоль запросов (обработка), Регистрация изменений для узла обмена (также есть как в УПП так и в ЕРП, УТ, ЗУП и т.д. на управляемых форма прямо в конфигурации)
[№ 1] - Доступно указание комбинаций произвольных отборов по объекту и его реквизитам. И маленький момент вымораживал, что при установке фильтра, галочка напротив объекта выгрузки не ставилась автоматом, добавил и стал счастлив.
[№ 2] - Основная работа происходит на новой закладке "Таблица с отборами". Там можно:
- копи-пастом Ctrl+C Ctrl+V или чтением файла вставить список (это одна колонка, ну если несколько прямо в таблице лишние удалите)
- указать тип метаданных для поиска
- указать вариант поиска: Поиск объектов по представлению, коду, наименованию, уникальному идентификатору, <Объект не найден ...>
- найти объекты в базе-источнике
- если нужно зарегистрировать для регулярного обмена или выгрузить сразу
В результате получаем таблицу реальных ссылок для дальнейшего использования в отборах или для регистрации на узле обмена. Используется в совокупности с "Консолью запросов" (в базе-источнике или базе-приемнике) для получения выборки объектов и также типовой обработкой "Регистрация изменений на узле обмена". Список найденных объектов можно либо сразу выгружать установив фильтр см. кнопку [№ 3] либо зарегистрировать на узле обмена, чтобы регулярный обмен сам выгрузил.
[№ 3] - Заполнение отбора объекта списком найденных ссылок. Предварительно добавьте фильтр в который поместить список. Это чаще всего фильтр по ссылке на сам объект выгрузки, либо фильтр на его реквизит.





3) Регистрацию на узлах обмена объектов и выгрузку с узлов с возможностью очистки регистрации
[№ 1] - Установка узла выгрузки. Объекты можно выгружать не только с фильтрами, но и зарегистрированные на конкретном узле обмена. Для этого в обработке напротив объекта надо указать узел. Работают либо фильтры установленные у правила выгрузки, либо выгрузка с узла (т.е. фильтры на узел не накладываются сверху, имейте ввиду).
Что будет выгружаться с узла, можно посмотреть встроенной в конфигурации 1С обработкой "Регистрация изменений для обмена"
[№ 2] - Команды установки и очистки узлов. Выбрав узел для одного объекта, его можно распростаранить на остальные правила выгрузки. Или очистить.
[№ 3] - При выгрузке данных, зарегистрированных на плане обмена, важно зафиксировать данную настройку "Изменение регистрации для узлов обмена после выгрузки". Что делать с выгруженными данными. Я в основном ставлю "Удалить регистрацию только для выгруженных объектов", таким образом разгружаю план обмена, убирая с него выгруженные данные. В основном использую если на плане обмена по объектам накопилась большая регистрация и весь пакет стандартно механизмом обмена долго протаскивается между базами, то отдельно каждый объект снимаю таким образом, чтобы разгрузить основной механизм интеграции.



4) Разные COM компоненты
[№ 1] - По умолчанию обработка позволяет использовать COM обмен между разными базами на общей платформе. Но бывает по техническим или политическим причинам платформы 1С базы-источника и базы-приемника различные. Тогда требуется использовать в источнике COM компоненту платформы приемника другой версии.
В обработке есть пример для нескольких платформ, для своих случаев сделайте по аналогии.
Техническими причинами, что базы на разных платформах 1С могут быть, например невозможность поставить у исторической базы УПП выше версию из-за несовместимости доработок, а у ЕРП поставить ниже также из-за требований к релизу. Из политических - руководители Айти не верят что старое УПП работает на новой платформе, даже не смотря на демонстрацию на тестовом контуре.
ВАЖНО:
- Как установить несколько разных COM компонент в операционной системе семейства Windows смотрите статьи на Инфостарте. На Linux COM-а нет в природе.
- Также важны лицензии, COM их использует. Я столкнулся с тем что если сервера 1С на разных лицензиях КОРП и ПРОФ, то подключение COM может не срабытывать (но это не точно)

5) Тестирование и отладка
[№ 1] - Загружать данные в режиме обмена. Если стоит то объекты грузятся с опцией ОбменДанными.Загрузка = Истина, которая отключает бизнес логику, таким образом объекты загружаются без контролей заполнения всех реквизитов. По умолчанию ее надо использовать. Но если хочется проверить при загрузке все пользовательские контроли ручного ввода объекта, то ее можно снять и проанализировать ошибки (таким образом выявив неполноту переносимых данных объекта и вообще его соответствие логике зашитой в систему)
[№ 2] - Количество элементов в транзакции. Его установка даст промежутки в блокировке данных, для возможности протиснутся транзакциям других работающих в системе пользователей (использовать в случае возникновения взаимоблокировок в системе, если у кого-то из пользователей начинает выкидывать сообщения о проблеме работы с документами)
[№ 3] - Режим отладки. По умолчанию выключен. Всегда включаю, чтобы весь пакет данных загрузился, даже не смотря на ошибки возникающие в загрузке отдельных объектов (их потом отдельно отлажу и дозагружу). Если флаг не включен, то например пакет из 100000 объектов может отвалиться на 59347 объекте и вся загрузка прервется - очень неприятные ощущения, делать все повторно и ждать из-за какой то редкой исключительной комбинации реквизитов.
[№ 4] - Количество в транзакции, освобождает блокировки и дает интервалы для пользовательских транзакций, в случае длительных выгрузок, например, с планов обмена.
[№ 5] - Изменение регистрации для узлов обмена после выгрузки. В том случае если на первой закладке "Выгрузка данных" указаны узлы обмена и выгружаются зарегистрированные на них данные, важно указать что делать с выгруженными объектами: Снять их с регистрации с узла (тем самым облегчив сам узел, для например последующего регулярного обмена регламентным заданием) или оставить. Я разгружаю (в основном если регулярный обмен тянет большой пакет, не успевает и надо ему помочь).


6) Удаление объектов
[№ 1] - Непосредственное удаление объектов. Бывает что использую, если криво что-то загрузил. Чаще всего таким образом удаляю данные регистров сведений. Тут функционал несколько больше чем в версии 8.2. Есть возможность не только удалить, но и поставить/снять пометки на удаление.

Будет работать на любой платформе 8.2 и 8.3. Проверялась на платформе 1С 8.3.24.1548
| Универсальный журнал документов в 1С | Внешняя обработка "Универсальный журнал документов" это гибкий инструмент для работы с документами в конфигурациях 1С 1) настройка произвольного состава документов 2) настройка колонок 3) настройка произвольных отборов 4) сохранение и восстановление вариантов настроек 5) групповое проведение, отмена проведения, пометка на удаление 6) просмотр связанных документов. 7) Создание, копирование документов |
| Инвентаризация ТМЦ (расширение) | Инвентаризация ТМЦ проводится в организации для определения количества, стоимости и состояния материальных ценностей и позволяет выявить излишки или недостачи имущества. Расширение добавляет в базу новый документ, который заполняется по данным бухгалтерского учета по любым счетам (с субконто Номенклатура, Физические лица, например: МЦ.02, МЦ.03.МЦ.04, 10.11 или др.). Документ содержит отборы, настройку подписантов, печатную форму ИНВ-3 и ведомость. |
| Расширение: Контроль заполнения субконто | Расширение, позволяет настраивать контроль заполненности Субконто и Подразделений при формировании проводок бух. учета в разрезе Организаций и Счетов. |
| Расширение: Блокировка элементов справочников от изменений | Отметка проверки (блокировки) к любому виду справочника (Флаг, Ответственный и Время) и запрет редактирования проверенного элемента. |
| Расширение: Проверка документов | Отметка проверки к любому виду документа (Флаг, Ответственный и Время) и запрет редактирования проверенного документа. |
| Расширение: Оригиналы документов | Отметка к любому виду документа, о том что получен его оригинал (Флаг, Ответственный и Время) |
| Копирование прав между пользователями |