Пытаемся наладить обмен между справочниками: Номенклатура, Спецификации, Контрагенты, Счета, Договоры.
Что сделали (поэтапно):

1) Завели свой план обмена «ОбменУППУПП_ОбменСправочникамиДоработанный» (в конфигураторе) в базе «Приемнике» и «Источнике»

2) Установили «Состав» выгружаемых объектов :
- в базе «Приемник» не выгружаем ничего
- в базе «Источник» справочники: Номенклатура, Контрагенты и т.д.

3) Сделали свои правила конвертации и отладили при помощи обработки
УниверсальныйОбменХML

4) Завели настройки обмена данным
(Сервис – Распределенная информационная база (РИБ) – Настроить узлы РИБ)

5) Завели по два узла в каждой базе:
- Управленческая (код 001)
- Бухгалтерская (код: 002)

6) Прикрепили свои правила конвертации, по кнопке проверить правила, выдается сообщение:
«Проверка основного обмена
Регистрация изменений в плане обмена соответствует правилам выгрузки данных»

7) Установили тип обмена: «Обмен через файловый ресурс»
8) Указали папку (доступ к папке настроили)
9) При пустом обмене из обеих баз формируются файлы:
- Message_002_001
 - Message_001_002

10) При обмене с добавленной «Номенклатурой » из базы «Источника»,
ничего не выгружается выдается ошибка:

Ошибка при выгрузке данных для узла плана обмена
 Объект = ТЕСТОВАЯ
 ОписаниеОшибки = Ошибка при получении значения атрибута контекста (СоответствиеОрганизацийИУзловОбменаУПП): Попытка получения неинициализированного значения параметра сеанса
 ПозицияМодуля = ОбщийМодуль.ПроцедурыОбменаУПП.Модуль(41)
 КодСообщения = 72
 УзелПланаОбмена = БУХ
---
Хотя я думаю вопрос все таки в этом:
```1c
    Процедура ОпределитьФактИспользованияРИБ() Экспорт

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | Полный.Ссылка
    |ИЗ
    | ПланОбмена.Полный КАК Полный
    |ГДЕ
    | Полный.Ссылка <> &ЭтотУзелПолный";

    Запрос.УстановитьПараметр("ЭтотУзелПолный", ПланыОбмена.Полный.ЭтотУзел());
    ЕстьУзлыПолногоПланаОбмена = НЕ Запрос.Выполнить().Пустой();

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменУППУПП.Ссылка,
    | ОбменУППУПП.ДатаНачалаВыгрузкиДокументов КАК ДатаНачалаВыгрузкиДокументов
    |ИЗ
    | ПланОбмена.ОбменУППУПП КАК ОбменУППУПП
    |ГДЕ
    | ОбменУППУПП.Ссылка <> &ЭтотУзелПолный";

    Запрос.УстановитьПараметр("ЭтотУзелПолный", ПланыОбмена.ОбменУППУПП.ЭтотУзел());

    РезультатЗапроса = Запрос.Выполнить();

    ЕстьУзлыОбменаУППУПП = НЕ РезультатЗапроса.Пустой();

    ПараметрыСеанса.НаличиеОбменаУПП = ЕстьУзлыОбменаУППУПП;

    Если ЕстьУзлыОбменаУППУПП Тогда

    ТаблицаОбменовУППУПП = РезультатЗапроса.Выгрузить();
    ТаблицаОбменовУППУПП.Индексы.Добавить("Ссылка");

    ПараметрыСеанса.СоответствиеУзловИДатДляОбменаУПП = Новый ХранилищеЗначения(ТаблицаОбменовУППУПП);

    МассивВсехУзлов = ПроцедурыОбменаУПП.ПолучитьМассивВсехУзлов();
    ПараметрыСеанса.ВсеУзлыОбменаУПП = Новый ФиксированныйМассив(МассивВсехУзлов);

    Запрос.Текст = "ВЫБРАТЬ
    | Организации.Ссылка КАК Ссылка
    |ИЗ
    | Справочник.Организации КАК Организации";
    МассивОрганизаций = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    МассивОрганизаций.Добавить(Справочники.Организации.ПустаяСсылка());

    СоотвествиеУзловИОрганизаций = Новый Соответствие;

    Для Каждого Организация ИЗ МассивОрганизаций Цикл

    МассивУзлов = ПроцедурыОбменаУПП.ПолучитьЗапросомМассивУзловПоОрганизации(Организация);
    СоотвествиеУзловИОрганизаций.Вставить(Организация, МассивУзлов);

    КонецЦикла;

    ПараметрыСеанса.СоответствиеОрганизацийИУзловОбменаУПП = Новый ХранилищеЗначения(СоотвествиеУзловИОрганизаций);

    КонецЕсли;

    ПараметрыСеанса.ИспользованиеРИБ = ЕстьУзлыПолногоПланаОбмена ИЛИ ЕстьУзлыОбменаУППУПП;

    ПараметрыСеанса.ПрефиксУзлаРаспределеннойИнформационнойБазы = Константы.ПрефиксУзлаРаспределеннойИнформационнойБазы.Получить();

    // обмен с сайтом
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменССайтомТоварами.Ссылка КАК Ссылка
    |ИЗ
    | ПланОбмена.ОбменССайтомТоварами КАК ОбменССайтомТоварами
    |ГДЕ
    | (ОбменССайтомТоварами.Ссылка <> &ЭтотУзел)
    |";

    Запрос.УстановитьПараметр("ЭтотУзел", ПланыОбмена.ОбменССайтомТоварами.ЭтотУзел());
    МассивУзловДляОбменаССайтомТоварами = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    ПараметрыСеанса.ВсеУзлыДляОбменаССайтомТоварами = Новый ФиксированныйМассив(МассивУзловДляОбменаССайтомТоварами);

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменССайтомЗаказами.Ссылка КАК Ссылка
    |ИЗ
    | ПланОбмена.ОбменССайтомЗаказами КАК ОбменССайтомЗаказами
    |ГДЕ
    | (ОбменССайтомЗаказами.Ссылка <> &ЭтотУзел)
    |";

    Запрос.УстановитьПараметр("ЭтотУзел", ПланыОбмена.ОбменССайтомЗаказами.ЭтотУзел());
    МассивУзловДляОбменаССайтомЗаказами = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    ПараметрыСеанса.ВсеУзлыДляОбменаССайтомЗаказами = Новый ФиксированныйМассив(МассивУзловДляОбменаССайтомЗаказами);

    ПараметрыСеанса.НаличиеОбменаССайтом = (МассивУзловДляОбменаССайтомТоварами.Количество() + МассивУзловДляОбменаССайтомЗаказами.Количество() > 0);

    КонецПроцедуры
```

Т.е. параметр тупо не заполнен по какой-то причине. Допустим пользователя не перезапустили в 1С
---
Светлый ум,
```1c
    Функция ПолучитьСоотвествиеУзловИОрганизаций() Экспорт

    Хранилище = ПараметрыСеанса.СоответствиеОрганизацийИУзловОбменаУПП;

    СоотвествиеУзловИОрганизаций = Хранилище.Получить();

    Возврат СоотвествиеУзловИОрганизаций;

    КонецФункции
```

Смотрим чем заполнено. Очевидно не тем чем нужно. Скорее всего префиксы не настроены.
---
Xershi,

Сейчас скрины префиксов выложу
---
Светлый ум, Проверьте, что состав объектов в плане обмена соответствует составу объектов в правилах обмена.
---
ekaruk,

Учел
6) Прикрепили свои правила конвертации, по кнопке проверить правила, выдается сообщение:
«Проверка основного обмена
Регистрация изменений в плане обмена соответствует правилам выгрузки данных»
---
Скрин - Префиксы - Управленческая:
---
Светлый ум, добавить забыли.
---
Светлый ум, а организаций сколько? Вообще в базе?
---
Xershi,
3 Организации
---
Светлый ум, а в них префиксы тоже есть?
---
Скрин - Префиксы - Бухгалтерская:
---
Хотя я думаю вопрос все таки в этом:
```1c
    Процедура ОпределитьФактИспользованияРИБ() Экспорт

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | Полный.Ссылка
    |ИЗ
    | ПланОбмена.Полный КАК Полный
    |ГДЕ
    | Полный.Ссылка <> &ЭтотУзелПолный";

    Запрос.УстановитьПараметр("ЭтотУзелПолный", ПланыОбмена.Полный.ЭтотУзел());
    ЕстьУзлыПолногоПланаОбмена = НЕ Запрос.Выполнить().Пустой();

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменУППУПП.Ссылка,
    | ОбменУППУПП.ДатаНачалаВыгрузкиДокументов КАК ДатаНачалаВыгрузкиДокументов
    |ИЗ
    | ПланОбмена.ОбменУППУПП КАК ОбменУППУПП
    |ГДЕ
    | ОбменУППУПП.Ссылка <> &ЭтотУзелПолный";

    Запрос.УстановитьПараметр("ЭтотУзелПолный", ПланыОбмена.ОбменУППУПП.ЭтотУзел());

    РезультатЗапроса = Запрос.Выполнить();

    ЕстьУзлыОбменаУППУПП = НЕ РезультатЗапроса.Пустой();

    ПараметрыСеанса.НаличиеОбменаУПП = ЕстьУзлыОбменаУППУПП;

    Если ЕстьУзлыОбменаУППУПП Тогда

    ТаблицаОбменовУППУПП = РезультатЗапроса.Выгрузить();
    ТаблицаОбменовУППУПП.Индексы.Добавить("Ссылка");

    ПараметрыСеанса.СоответствиеУзловИДатДляОбменаУПП = Новый ХранилищеЗначения(ТаблицаОбменовУППУПП);

    МассивВсехУзлов = ПроцедурыОбменаУПП.ПолучитьМассивВсехУзлов();
    ПараметрыСеанса.ВсеУзлыОбменаУПП = Новый ФиксированныйМассив(МассивВсехУзлов);

    Запрос.Текст = "ВЫБРАТЬ
    | Организации.Ссылка КАК Ссылка
    |ИЗ
    | Справочник.Организации КАК Организации";
    МассивОрганизаций = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    МассивОрганизаций.Добавить(Справочники.Организации.ПустаяСсылка());

    СоотвествиеУзловИОрганизаций = Новый Соответствие;

    Для Каждого Организация ИЗ МассивОрганизаций Цикл

    МассивУзлов = ПроцедурыОбменаУПП.ПолучитьЗапросомМассивУзловПоОрганизации(Организация);
    СоотвествиеУзловИОрганизаций.Вставить(Организация, МассивУзлов);

    КонецЦикла;

    ПараметрыСеанса.СоответствиеОрганизацийИУзловОбменаУПП = Новый ХранилищеЗначения(СоотвествиеУзловИОрганизаций);

    КонецЕсли;

    ПараметрыСеанса.ИспользованиеРИБ = ЕстьУзлыПолногоПланаОбмена ИЛИ ЕстьУзлыОбменаУППУПП;

    ПараметрыСеанса.ПрефиксУзлаРаспределеннойИнформационнойБазы = Константы.ПрефиксУзлаРаспределеннойИнформационнойБазы.Получить();

    // обмен с сайтом
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменССайтомТоварами.Ссылка КАК Ссылка
    |ИЗ
    | ПланОбмена.ОбменССайтомТоварами КАК ОбменССайтомТоварами
    |ГДЕ
    | (ОбменССайтомТоварами.Ссылка <> &ЭтотУзел)
    |";

    Запрос.УстановитьПараметр("ЭтотУзел", ПланыОбмена.ОбменССайтомТоварами.ЭтотУзел());
    МассивУзловДляОбменаССайтомТоварами = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    ПараметрыСеанса.ВсеУзлыДляОбменаССайтомТоварами = Новый ФиксированныйМассив(МассивУзловДляОбменаССайтомТоварами);

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОбменССайтомЗаказами.Ссылка КАК Ссылка
    |ИЗ
    | ПланОбмена.ОбменССайтомЗаказами КАК ОбменССайтомЗаказами
    |ГДЕ
    | (ОбменССайтомЗаказами.Ссылка <> &ЭтотУзел)
    |";

    Запрос.УстановитьПараметр("ЭтотУзел", ПланыОбмена.ОбменССайтомЗаказами.ЭтотУзел());
    МассивУзловДляОбменаССайтомЗаказами = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка");
    ПараметрыСеанса.ВсеУзлыДляОбменаССайтомЗаказами = Новый ФиксированныйМассив(МассивУзловДляОбменаССайтомЗаказами);

    ПараметрыСеанса.НаличиеОбменаССайтом = (МассивУзловДляОбменаССайтомТоварами.Количество() + МассивУзловДляОбменаССайтомЗаказами.Количество() > 0);

    КонецПроцедуры
```

Т.е. параметр тупо не заполнен по какой-то причине. Допустим пользователя не перезапустили в 1С
---
Xershi, был близок к решению проблемы...
а так же ошибка могла возникнуть из-за того что пользователь в 1С (на сервере 1С) между процессами скачет:
в тестовой базе (файловой, с одним процессом) ошибка не возникла - этот вариант на форуме Митичкина (mista.ru) разбирали,
но мы решили в гору не идти.
---
Так что ставьте точку останова и прогоняйте почему не заполнено у вас в базе под пользователем, который запускает агент сервера.
---
Xershi, Сейчас прогоню - спасибо за локализацию, а то непонятно куда смотреть было.
---
Светлый ум, ждем результата.
---
Отложили, разбор на завтра.
С обеда продолжим.
---
Посмотрите по коду(глобальным поиском по конфигурации, например) каким образом заполняется значение ПараметрыСеанса.СоответствиеОрганизацийИУзловОбменаУПП ?
Похоже, что в вашем случае в параметре сеанса, действительно пусто
---
Причем тут состав правил обмена и параметры сеанса? Не там ищете. Параметры сеанса не инициализируются, потому, что запускается либо не тот вид клиента, либо еще по какой-то причине.

Но это еще пол беды. Зачем в РИБ вы заталкиваете правила для 2-3 объектов? Почему не создадите свой план обмена? РИБ - штука специфичная. Ваш обмен может встать сразу при первом же изменении конфигурации.
---
insurgut, так и есть - создаем свой план обмена (просто понятия в голове подсмешались).
---
Светлый ум, т.е. 4 пункт = это просто создание настройки обмена, а не РИБ? Что-то подсказывает, что правила созданы не с нуля, а скопированы с готовых с "допиливанием".

Модуль обмена УПП вполне вероятно не виноват, посмотрите в методах самой конвертации что у вас происходит. ВОзможно, что в параметры пытается "вставиться" то, чего нет. Или то, чего нет - пытается использоваться. Что-то вроде

Если Параметры.СоответствиеОрганизацийИУзловОбменаУПП.Количество() > 0 Тогда...
---
insurgut, Вообще параметров в правилах нет.

Правила типовые "УПП-УПП" (называются так, а внутри КА-КА), заменили на свои структуры.
Ни параметров ни алгоритмов там не было.

В итоге, ошибку устранять не стали - решили вопрос другим способом. (об этом ниже)
---
Решением вопроса стала такая последовательность:

1) Сделали свои правила конвертации и отладили при помощи обработки
УниверсальныйОбменХML

2) Завели типовые настройки обмена данным для Комплексной автоматизации,
при помощи помощника (обработка Настройка обменов данными)
(закладка: Обмен данными с 1С:КА 8)
(Сервис – Распределенная информационная база (РИБ) – Настроить узлы РИБ)

в настройках указали:
- односторонний обмен
- обмен через файловый ресурс
- выполнить сопоставление объектов при первом обмене
- подменили правила на свои

В Итоге:

Пришлось подождать:
- первую выгрузку/загрузку (она была полная),
- на второй загрузке заполнился регистр сведений (Сопоставление Объектов Информационных Баз)
- на последующих выгрузках в обмене будут участвовать только измененные объекты, в моем случае 2,3,5 штук для справочников.
---
До сиз пор не пойму, причем тут РИБ. Из пушки по воробьям. План обмена в конфигураторе надо было создать свой. Кинуть на авторегистрацию нужные документы и для них нарисовать правила.