Версия для печати темы (https://pro1c.org.ua/index.php?s=33d3af5accee6cee9264326e81d0e662&showtopic=5002)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Система компоновки данных _ Использование параметров в СКД

Автор: Vofka 09.10.11, 15:58

В СКД есть запрос,в котором есть условия и соответственно параметры.

Есть параметр, предопределенное при открытии отчета каждый раз .Как его правильно указать в СКД?

Можно делать так:

Процедура ПриОткрытии()

//.........................

ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Товар");

ПараметрДанных.Значение = Справочники.Номенклатура.НайтиПоНаименованию("Гвозди");

ПараметрДанных.Использование=Истина;

//...........................................

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

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


Особенности работы с параметрами виртуальных функций

Параметр запроса

В языке запросов имеется возможность указать значение параметра виртуальной функции . При этом для большинства параметров в качестве значения параметра может использоваться выражение . В качестве выражения может выступать и параметр .

Пример : РегистрНакопления . Продажи . Обороты (& Начало )

В данном примере в качестве значения первого параметра виртуальной таблицы будет использовано значение параметра &Начало .

Параметр компоновки данных

При помощи специальных инструкций в тексте запроса можно указать, какой параметр компоновки данных будет использоваться в качестве значения параметра виртуальной таблицы .

Пример :

РегистрНакопления . Продажи . Обороты ({& НачалоПериода })


В данном примере в качестве значения первого параметра виртуальной таблицы будет использовано значение параметра &НачалоПериода , если его значение установлено в настройках компоновки данных .

Совместное использование параметра запроса и параметра компоновки данных

Если в запросе указано и выражение параметра и параметр компоновки данных, то значение параметра компоновки данных используется в случае, если значение данного параметра установлено в настройках компоновки . В противном случае в качестве значения параметра используется результат выражения , указанного в параметре виртуальной функции .

Пример :

РегистрНакопления . Продажи . Обороты (& Начало {& НачалоПериода })


В этом примере, если в настройках установлено значение параметра НачалоПериода , то будет использоваться его значение . В противном случае в сгенерированном тексте запроса останется исходное выражение, т. е . &Начало, и в качестве значения параметра виртуальной таблицы будет использоваться значение этого параметра .

Параметры при автоматическом заполнении полей набора данных

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

Таким образом , запись :

РегистрНакопления . Продажи . Обороты (& Начало )


соответствует следующей :

РегистрНакопления . Продажи . Обороты (& Начало {& НачалоПериода }, {& КонецПериода})


И значение параметра &Начало используется только в случае если в настройках не установлено значение параметра &НачалоПериода .

http://pro1c.org.ua/redirect.php?http://nefrit.arvixe.ru/page/ispolzovanie-i-parmetrov-v-skd

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua