Отделить план обмена от распределённой информационной базы

Учебные задачи

Проверяем два флага схемы. Наличие плана и настройки передачи расширений не доказывает запущенный или исправный обмен.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.

  3. Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.

  4. В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.

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

Описание = Метаданные.ПланыОбмена.Найти("Мобильные");
Если Описание = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует ПланыОбмена.Мобильные";
КонецЕсли;
Сообщить("РИБ: " + Строка(Описание.РаспределеннаяИнформационнаяБаза));
Сообщить("Включать расширения: " + Строка(Описание.ВключатьРасширенияКонфигурации));
Если Не Описание.РаспределеннаяИнформационнаяБаза Тогда
    Сообщить("Этот план не объявлен планом РИБ; не применяйте к нему автоматически инструкции РИБ");
Иначе
    Сообщить("Изучите топологию РИБ и настройки передаваемых расширений отдельно");
КонецЕсли;

Разбор по шагам

  1. План обмена может использоваться вне механизма РИБ.

  2. РаспределеннаяИнформационнаяБаза — декларация возможности организации РИБ.

  3. ВключатьРасширенияКонфигурации относится к передаче подходящих расширений в РИБ.

  4. Ни одна настройка не проверяет наличие узлов, последнюю синхронизацию и ошибки обмена.

Как проверить результат

  1. В XML Мобильные имеет DistributedInfoBase = false; выполняется ветка без применения инструкций РИБ.

  2. Ни сообщение обмена, ни пакет расширений не отправлялись.

Ожидаемый результат

Предотвращена ошибка выбора механизма обмена по одному имени плана.

На что обратить внимание

  1. Нельзя включать РИБ или передачу расширений только ради прохождения примера.

  2. Состояние конкретного обмена проверяют отдельно по коду, настройкам и журналам.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.