В начало

Перенос документа «МухиИКотлеты» с причиндалами

 

            Необходимо перенести документ «МухиИКотлеты» вместе со связанным с ним справочником «ДежурныеБлюда» из одной базы в другую.

            Находим план обмена «ОбменМухИКотлет» в центральной базе «ЦБ» и изменяем состав, добавляя справочник «ДежурныеБлюда».

Рис. Изменение состава плана обмена «ОбменМухИКотлет»

 

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

 

Листинг. Изменения в модуле формы списка плана обмена

Процедура ЗарегистрироватьИзмененияНажатие(Элемент)

            Запрос = Новый Запрос;

            Запрос.Текст =

                        "ВЫБРАТЬ

                        |         МухиИКотлетыИзменения.Ссылка

                        |ИЗ

                        |         Документ.МухиИКотлеты.Изменения КАК МухиИКотлетыИзменения";

           

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

            Выборка = Результат.Выбрать();       

            УзелОбмена = ЭлементыФормы.ПланОбменаСписок.ТекущаяСтрока;

           

            Пока Выборка.Следующий() Цикл

                        ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, Выборка.Ссылка);

                       

                        //Перебор табличной части документа

                        Для Каждого ТекЭлем Из Выборка.Ссылка.Меню Цикл

                                   ПланыОбмена.ЗарегистрироватьИзменения(УзелОбмена, ТекЭлем.БлюдоДня);

                        КонецЦикла;         

            КонецЦикла;

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

 

////////////////////////////////////////////////

Функция ЭтоПредопределенныйУзел(Узел)

            Возврат Узел = ПланыОбмена.ОбменМухИКотлет.ЭтотУзел();

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

 

Процедура ПланОбменаСписокПриАктивизацииСтроки(Элемент)

            Если ЭтоПредопределенныйУзел(ЭлементыФормы.ПланОбменаСписок.ТекущаяСтрока) Тогда

                        ЭлементыФормы.ЗарегистрироватьИзменения.Доступность = Ложь;

            Иначе

                        ЭлементыФормы.ЗарегистрироватьИзменения.Доступность = Истина;

            КонецЕсли;

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

 

 

            Затем запускаем центральную базу в режиме отладки. 

В базу филиала также запускаем. Вносим некоторые изменения в справочник «ДежурныеБлюда» в базе филиала, а именно удаляем элементы: Грибные мушки и Капустные котлеты. Таким образом, если посмотреть документ «МухиИКотлеты»  №11, то видим, что вместо первых верхних элементов показаны ссылки.

Рис. Документ «Мухи и котлеты» в базе филиала

 

            Возвращаемся в центральную базу и перепроводим документ №5. Затем открываем план обмена «ОбменМухИКотлет» и регистрируем изменения. Далее обработкой «Обмен мух и котлет» выполняем обмен.

Рис. Выполнение обмена из центральной базы

 

            В результате создан файл-сообщение с данными для базы филиала.

Рис. Содержимое файла-сообщения «Сообщение_ОбменМухИКотлет_ЦБ-ФЛ.xml»

 

            Далее проверяем результат в базе филиала.

 

Рис. Документ «Мухи и котлеты» (слева) и справочник «Дежурные блюда» (справа) в базе филиала

 

            Таким образом, помимо документа №11 были восстановлены элементы справочника «Дежурные блюда» в базе филиала.