Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Передать параметр и воспользоваться им как условием в СКД
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
Log1c
Задача: при нажатии на кнопку в форме элемента Заказ на производство выводился отчет, например со строками из данного Заказа на производство.

Как делал:
В ФормеЭлемента.ЗаказНаПроизвосдтво создаю кнопку, с кодом:
    Форма = Отчеты.ОтчетПоРеализациям.ПолучитьФорму();
    Форма.ЗаказНаПроизводство = Ссылка;
    Форма.Открыть();


Открывается форма нужного мне отчета, в котором есть реквизит "ЗаказНаПроизводство" и описан запрос:
ВЫБРАТЬ
    ЗаказНаПроизводствоПродукция.Номенклатура.Ссылка
ИЗ
    Документ.ЗаказНаПроизводство.Продукция КАК ЗаказНаПроизводствоПродукция
ГДЕ
    ЗаказНаПроизводствоПродукция.Ссылка = &ЗаказНаПроизводство


Что не понял: как в параметр передать значение реквизита?
Понимаю что это, скорее всего делается на вкладке Параметры в столбце "Выражение" но что там написать ума не приложу.
Vofka
Отчет = Отчеты.ОтчетПоРеализациям;

ПараметрДанных = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ЗаказНаПроизводство");
ПараметрДанных.Значение = Ссылка;
ПараметрДанных.Использование=Истина;

Форма = Отчет.ПолучитьФорму();
Форма.Открыть();
Log1c
Цитата(Vofka @ 09.10.11, 15:46) необходимо зарегистрироваться для просмотра ссылки
Отчет = Отчеты.ОтчетПоРеализациям;

ПараметрДанных = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ЗаказНаПроизводство");
ПараметрДанных.Значение = Ссылка;
ПараметрДанных.Использование=Истина;

Форма = Отчет.ПолучитьФорму();
Форма.Открыть();


Если написать этот код на событие вызываемое при нажатии на кнопку в "Заказ на производство", будет ошибка:
Цитата
{Документ.ЗаказНаПроизводство.Форма.ФормаДокумента(2426)}: Поле объекта не обнаружено (КомпоновщикНастроек)
ПараметрДанных = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ЗаказНаПроизводство");


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


у меня почему-то процедура "ПриОткрытии()" вообще не срабатывает при открытии формы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.