|
Получить значение переменной в процедуре ПриКомпоновкеРезультата |
☑ |
0
salvator
25.01.22
✎
15:22
|
Доброго дня!
Вопрос, собственно такой.
Во внешнем отчете в процедуре "ПриКомпоновкеРезультата" необходимо получить переменную. Это таблица значений.
Изначально я ее формировал в модуле формы, пытался получить в модуле объекта. Что-то не вышло, забил.
Сделал экспортную функцию в модуле формы, где формирую эту таблицу значений. Далее в модуле формы ее получаю и использую.
Эта жа таблица значений нужна в процедуре ПриКомпоновкеРезультата.
Собственно, код в модуле объекта:
"РеквизитТаблица" - реквизит внешнего отчета с типом "ТаблицаЗначений".
Функция ПолучитьТаблицу() Экспорт
Таб = Новый ТаблицаЗначений;
Таб.Колонки.Добавить("Колонка1");
... заполняю таблицу...
ЭтотОбъект.РеквизитТаблица = Таб;
Возврат Таб;
КонецФункции
Процедура Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
ЭтотОбъект.РеквизитТаблица <--- в отладчике тип "ТаблицаЗначений", но она пустая.
КонецПроцедуры
Пробовал помещать таблицу в "КомпоновщикНастроек.Настройки.ДополнительныеСвойства" - в процедуре "ПриКомпоновкеДанных" создаваемое свойство пропадает.
Подскажите, плиз.
|
|
1
salvator
25.01.22
✎
15:23
|
Сорян,
"Сделал экспортную функцию в модуле формы" = "Сделал экспортную функцию в модуле ОБЪЕКТА"
|
|
2
salvator
25.01.22
✎
15:28
|
Функцию ПолучитьТаблицу() вызываю из модуля формы в процедуре ПриСозданииНаСервере.
|
|
3
vicof
25.01.22
✎
15:32
|
Помещать таблицу во временное хранилище.
|
|
4
salvator
25.01.22
✎
15:49
|
(3)
Сделал строковый реквизит "АдресТаблицы",
в функции написал
АдресТаблицы = ПоместитьВоВременноеХранилище(Таб, Новый УникальныйИдентификатор);
Затем в процедуре ПриКомпоновкеРезультата
АдресТаблицы - пустая строка.
|
|
5
SleepyHead
гуру
25.01.22
✎
16:03
|
(4) сделай АдресТаблицы реквизитом отчета.
|
|
6
salvator
25.01.22
✎
16:17
|
(5) Он им и является.
|
|
7
SleepyHead
гуру
25.01.22
✎
16:22
|
(6) Присваиваешь в процедуре на сервере?
Напиши - Отчет.АдресТаблицы = ПоместитьВоВременноеХранилище(Таб, Новый УникальныйИдентификатор);
|
|
8
salvator
25.01.22
✎
16:27
|
(7) В модуле объекта присваиваю. В функции экспортной. Которая вызывается из формы отчета. При создании на сервере.
Затем при формировании отчета (кнопка "Сформировать"), в процедуре ПриКомпоновкеРезультата получаю, что значения очищены.
|
|
9
SleepyHead
гуру
25.01.22
✎
16:33
|
(8) После вызова экспортной функции надо тогда делать ЗначениеВРеквизитФормы()
Но проще всего сделать возврат адреса из экспортной фукнции, а в присоздании на сервере уже положить в реквизит отчета.
|
|
10
pechkin
25.01.22
✎
16:33
|
нужно в доп свойства компоновщика устанавливать
|
|
11
salvator
25.01.22
✎
16:56
|
(10) Уже писал об этом. Не получилось.
(9) Спасибо огромное, помогло.
|
|