ПланОбменаОбъект.<Имя плана обмена>.ОбменДанными

Свойства · DataExchange

Тип: ПараметрыОбменаДанными. Используется для управления обменом данных. С помощью данного свойства устанавливается режим "Загрузка", при котором выполняется перенос информации.

Полное описание, параметры и ограничения

ПланОбменаОбъект.<Имя плана обмена>.ОбменДанными (ExchangePlanObject.<Exchange plan name>.DataExchange)

ПланОбменаОбъект.<Имя плана обмена> (ExchangePlanObject.<Exchange plan name>)

ОбменДанными (DataExchange)

Доступен, начиная с версии 8.3.5.

Использование:
Только чтение.
Описание:
Тип: ПараметрыОбменаДанными.
Используется для управления обменом данных.
С помощью данного свойства устанавливается режим "Загрузка", при котором выполняется перенос информации.
Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.

Использование в версии:

Доступен, начиная с версии 8.3.5.

Методическая информация

Практические примеры

Получить памятку и описания настроек узла

Собственный текстовый макет читается по заданному имени. Настройка комментария истории остаётся на черновике и не имитирует уже записанную версию.

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

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

Подготовка

  1. Создайте НОВУЮ пустую файловую учебную базу, не копию рабочего каталога. В Конфигураторе задайте корню имя Учебная85. Не добавляйте эти объекты в рабочую УТ/КА2/УНФ/БП.

  2. Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.

  3. Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.

  4. Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.

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

  6. В отдельной пустой конфигурации Учебная85 создайте Планы обмена → УчебныйОбмен: длина кода 9, тип Строка, наименование длиной 100. Распределённая информационная база выключена; состав плана пустой.

  7. Добавьте реквизит АдресУчебногоУзла: Строка длиной 100, Проверка заполнения = Показывать ошибку. Модуль объекта и подписки должны быть пустыми; не добавляйте отправку сообщений или внешние действия.

  8. Добавьте макет УчебнаяПамятка типа Текстовый документ, одна строка: Этот узел используется только для учебных примеров. История данных для плана не включена. Обновите конфигурацию базы данных.

  9. Каждый фрагмент запускайте отдельно на сервере в ВыполнитьПример() Экспорт общего модуля УчебныеЗадачи. УчебныйОбмен не является существующим рабочим обменом КА2 или УТ.

  10. Узел каждый раз новый и периферийный. Существующие узлы и текущий узел базы не меняются. Запись, блокировка и удаление далее выполняются только над своим новым UUID в собственной отменяемой транзакции.

Если Метаданные.ПланыОбмена.Найти("УчебныйОбмен") = Неопределено Тогда
    ВызватьИсключение "Сначала создайте собственный учебный план обмена";
КонецЕсли;
Узел = ПланыОбмена.УчебныйОбмен.СоздатьУзел();
Если Узел.ЭтотУзел Тогда
    ВызватьИсключение "Нельзя изменять текущий узел информационной базы";
КонецЕсли;
Описание = Узел.Метаданные();
Сообщить(Описание.Имя = "УчебныйОбмен");
Памятка = Узел.ПолучитьМакет("УчебнаяПамятка");
Если ТипЗнч(Памятка) <> Тип("ТекстовыйДокумент") Тогда
    ВызватьИсключение "Нужен собственный макет типа Текстовый документ";
КонецЕсли;
Сообщить(СтрНайти(Памятка.ПолучитьТекст(), "Этот узел используется только для учебных примеров.") > 0);
Узел.ЗаписьИсторииДанных.КомментарийВерсии = "Учебный черновик, версия не записана";
Сообщить(Узел.ЗаписьИсторииДанных.КомментарийВерсии = "Учебный черновик, версия не записана");
Сообщить(Не Узел.ОбменДанными.Загрузка);
Сообщить(Узел.ЭтоНовый());

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

  1. Метаданные возвращает описание плана обмена, а не текущее состояние сети.

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

  3. КомментарийВерсии настраивается у параметров будущей записи. При выключенной истории и без Записать никакая версия не появляется.

  4. ОбменДанными.Загрузка остаётся Ложь. Флаг не используется для обхода проверок или прав.

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

  1. Пять сравнений Истина.

  2. Прочитан свой макет; нет новой версии истории и сетевого обмена.

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

Разобраны описание плана, макет и параметры записи черновика.

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

  1. Текстовый макет не является кодом модуля объекта.

  2. Комментарий не включает историю данных автоматически.

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

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

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

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

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