Данный репозиторий содержит расширение конфигураций 1С:Предприятие 8.3 для управляемых форм, предоставляющее общую команду для перехода к сопоставленным объектам в синхронизируемых информационных базах.
Данное расширение конфигурации предназначено для использования в 1С:Бухгалтерия государственного учреждения редакции 2.0 при использовании интеграции с Единой метрологической платформой (далее - ЕМП).
Расширение добавляет общую команду ППСО_ПерейтиКСопоставленномуОбъекту
(в интерфейсе - "Перейти в ЕМП") в командную панель формы "Синхронизация данных".
Команда доступна в формах объектов всех синхронизируемых объектов.
Также данное расширение предназначено для диагностики возможных проблем синхронизации объектов в информационных базах.
Расширение поставляет общую команду ППСО_СопоставленныеОбъекты
,
выполняющую переход из формы синхронизируемых объектов
в специализированную форму списка регистра СоответствияОбъектовИнформационныхБаз
с отбором по текущему объекту
(доступна администраторам системы).
Также расширение поставляет общую команду ППСО_ПредупрежденияСинхронизации
,
выполняющую переход из формы синхронизируемых объектов
в форму списка регистра РезультатыОбменаДанными
с отбором по текущему объекту
(доступна администраторам системы).
Также данное расширение предназначено для диагностики возможных проблем синхронизации объектов в информационных базах.
Одной из основных проблем при синхронизации информационных баз является дублирование объектов при синхронизации.
Одной из причин возникновения проблемы являются множественные записи
в регистре СоответствияОбъектовИнформационныхБаз
для одного
объекта текущего узла (информационной базы) и выбранной синхронизируемой
информационной базы (измерение УзелИнформационнойБазы
в указанном
регистре). В указанном регистре не должно быть более одной записи
для одного объекта текущей базы (измерение УникальныйИдентификаторИсточника
),
синхронизируемой базы (измерение УзелИнформационнойБазы
).
В том случае, если описанных выше записей несколько, при синхронизации изменений из текущей информационной базы в синхронизируемой базе будет создан дубликат объекта.
Одна из возможных причин возникновения подобных проблем - использование обработки "Поиск и удаление дублей".
К сожалению, указанная обработка некорректно обрабатывает записи в регистре
СоответствияОбъектовИнформационныхБаз
, при замене ссылок на удаляемый дубликат
объекте не удаляя записи для него в указанном регистре,
а заменяя в нём ссылки на дубликат ссылками на оригинал (основной объект).
В итоге - получаем в регистре множественные записи.
Метод решения - выяснить, какая из записей содержит действительные
сведения о сопоставленном объекте в синхронизируемой информационной базе,
и удалить остальные.
Для этих целей из формы объекта, с синхронизацией которого возникли описанные
выше проблемы, переходим с использованием поставляемой данным расширением команды
в форму списка регистра СоответствияОбъектовИнформационныхБаз
. Записи
в указанном регистре будут отобраны по текущему объекту, из формы которого
осуществлён переход.
Непосредственно из формы списка регистра проверяем возможность перехода
к сопоставленным объекта в синхронизируемых информационных базах.
Удаляем записи, содержащие недействительные
сведения о сопоставленных объектах в синхронизируемых информационных базах.
Для использования расширения его необходимо подключить.
При подключении следует отключить параметры "Безопасный режим",
"Защита от опасных действий". Причина - расширение добавляет
собственную роль "Использование перехода к сопоставленным объектам",
и предоставляет этой роли право чтения планов обмена и
регистров НастройкиТранспортаОбменаДанными
,
СоответствияОбъектовИнформационныхБаз
.
![Подключение расширения](/assets/images/extension-settings.png "Подключение расширения")
Таким образом, пользователи, которым Вы назначите роль "Использование перехода к сопоставленным объектам", получат так же доступ на чтение к указанным объектам конфигурации.
Возможность использования предоставляемой расширением общей команды получат пользователи, которым назначена хотя бы одна из ролей:
Для назначения пользователям указанной роли достаточно скопировать профиль доступа после подключения расширения и добавить в него указанную роль, после чего назначить созданный профиль доступа необходимым пользователям.
Для работы расширения необходимы параметры подключения к базе ЕМП:
Эти параметры следует указать в настройках синхронизации (в настройках подключения).
Указанные параметры сохраняются в реквизитах регистра
НастройкиТранспортаОбменаДанными
.
Эти настройки необходимо указать, даже если синхронизация данных
выполняется через обмен файлами.
Подготовка рабочего места заключается в исполнении (с правами администратора)
файла install\install.cmd
.
Текущим должен быть корневой каталог репозитория!
Потребуется несколько перезагрузок.
Выполнять вплоть до отсутствия ошибок при выполнении.
Будут установлены:
Используем precommit1c. Порядок действий по фиксации изменений в расширениях следующий:
git add extensions/\*.cfe
,
или же указываем конкретный файлgit commit
.
При этом precommit1c разберёт добавленные в индекс расширения конфигурации,
добавит в индекс "исходные" файлы расширений, а сами файлы расширений из индекса
уберёт.Безусловно, удобнее выполнять эти действия с использованием VSCode.
Репозиторий проекта размещён по адресу github.com/csm-ivanovo-ru/1s-GoToLinkedObjects. Стратегия ветвления - Git Flow.
При необходимости внесения изменений в сам проект предложите Pull Request в основной
репозиторий в ветку develop
.