Доброго всем.
Подскажите с такой проблемой.
Передаю настройки из одного отчета СКД в другой.
В ПриСозданииНаСервере написал такое Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Параметры.Настройки)
После загрзузки проверял в отладчике, значения параметров данных в настройках есть, но потом когда открываю в модуле обьекта параметры данных в настройках компоновщика настроек, они пропадают и значения всех параметров пустые.
В чем проблема?
Почему между созданием на сервере и переходом в модуль объекта, настройки очищаются?
---
не в модуле объекта получить ВнешниеНаборы , а передать в модуль объекта из другого отчета. Пока пытаюсь с переменными не получается
помести во временное хранилище, после используй в вышеуказанной процедуре.
---
примерно так и сделал,только без вашего кода, но чтоб данные были видны в модуле объекта, добавил реквизит отчета с типом строка и далее ПоместитьВоВременноеХранилище и при компоновке ПолучитьИзвременногоХранилища.
Передал структурупараметров из другого отчета и уже в при компоновке, заполнил параметры настроек, как до этого делал в другом отчете. И все заработало.
---
код в студию
---
какой именно код? Тех настроек что передаю или результат загрузки ?
---
какой именно код? Тех настроек что передаю или результат загрузки ?
программный ;-)
---
От того, что в форме кто-то поменял реквизиты (данные формы) основного объекта - от этого никоим образом не изменился реальный прикладной объект на сервере.
---
код в другом отчете

```1c
    ОткрытьФорму("Отчет.ДвижениеРезервов.Форма.ФормаОтчета",ПолучитьСтруктуруПараметров(СтруктураДанных),ЭтаФорма,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
```

```1c
    &НаСервере
    Функция ПолучитьСтруктуруПараметров(СтруктураДанных)

    МассивНоменклатуры = Новый Массив;
    МассивНоменклатуры.Добавить(Справочники.Номенклатура.ПустаяСсылка());
    МассивНоменклатуры.Добавить(Неопределено);

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

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

в самом отчете

```1c
    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Параметры.Настройки);
    КонецПроцедуры
```

Результат загрузки приложил в скрине. Уже в модуле объекта, при компоновки результата, эти данные очищаются
---
А пользовательские настройки загрузили?
---
искал, но там не совсем ясно как с ними работать. не совсем понятно как туда добавить элементы
---
```1c
    Процедура ПриКомпоновкеРезультата( ТабличныйДокумент, ДанныеРасшифровки, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    НастройкиКомпоновки = КомпоновщикНастроек.ПолучитьНастройки();
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиКомпоновки, ДанныеРасшифровки);
    Тз = ПолучитьМоюТаблицуЗначений() ; // это пользователькая функция в молуле обекта
    ВнешниеНаборы = Новый Структура("ТЗ", ТЗ);
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборы, ДанныеРасшифровки);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент( ТабличныйДокумент );
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
    КонецПроцедуры
```
---
не совсем то что надо. мне надо не в модуле объекта получить ВнешниеНаборы , а передать в модуль объекта из другого отчета. Пока пытаюсь с переменными не получается
---
не в модуле объекта получить ВнешниеНаборы , а передать в модуль объекта из другого отчета. Пока пытаюсь с переменными не получается
помести во временное хранилище, после используй в вышеуказанной процедуре.
---
примерно так и сделал,только без вашего кода, но чтоб данные были видны в модуле объекта, добавил реквизит отчета с типом строка и далее ПоместитьВоВременноеХранилище и при компоновке ПолучитьИзвременногоХранилища.
Передал структурупараметров из другого отчета и уже в при компоновке, заполнил параметры настроек, как до этого делал в другом отчете. И все заработало.
---
зит отчета с типом строка и далее ПоместитьВоВременноеХранилище и при компоновке ПолучитьИзвременногоХранилища.
Передал структурупараметров из другого
Ну супер.