Имя: Пароль:
1C
1С v8
Как передать значение реквизита с формы отчета в его модуль?
↓ (Волшебник 16.02.2024 13:01)
0 Max57
 
16.02.24
12:05
Всем привет, я сделал отчет в котором поля добавляются динамически. Все делал программно в процедуре модуля отчета ПриКомпановкеРезульатата(). Теперь понадобилось сделать вариант отчета с дополнительной колонкой. Я решил добавить форму отчета, а на неё булевый реквизит добавлять колонку или нет. Теперь мне нужно передать его с формы на модуль объекта. Подскажите, пожалуйста, как это сделать. Я объявил в модуле отчета Перем РеквБулево Экспорт;. В модуле формы добавил код
Рекв= РеквизитФормыВЗначение("Отчет");
Рекв.РеквБулево = ЭтаФорма.Отчет.ВыводитьКолонкуКод;
Как мне сделать, чтобы при нажатии на кнопку сформировать, реквизит передавался?
1 RomaH
 
16.02.24
12:49
временное хранилище?
2 RomaH
 
16.02.24
12:51
добавь реквизит отчета -

и просто в него пиши
Отчет.РеквБулево = ЭтаФорма.Отчет.ВыводитьКолонкуКод;
3 Max57
 
16.02.24
12:55
(2)Реквизит добавлен. Как мне его в модуле форме заполнить?
4 Волшебник
 
16.02.24
13:01
РеквБулево - переименовать нормально
5 Климов Сергей
 
16.02.24
14:10
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	
	ПараметрыОтчета = Новый Структура;
	ПараметрыОтчета.Вставить("Организация", Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Организация")).Значение);
6 Max57
 
16.02.24
14:10
(5) Спасибо, забыл, что параметром можно. Я просто создал реквизит у отчета, вывел его на форму, а в модуле объекта его получаю    
ВыводитьКолонкуКод = ЭтотОбъект.ВыводитьКолонкуКод;
7 youalex
 
16.02.24
18:50
НастройкиКомпоновкиДанных (DataCompositionSettings)
ДополнительныеСвойства (AdditionalProperties)
Использование:
Только чтение.
Описание:
Тип: Структура.
Дополнительные свойства настроек компоновки данных.
Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн