Система компоновки данных
15.07.2009
В языке запросов имеется возможность указать значение параметра виртуальной таблицы. При этом для большинства параметров в качестве значения параметра может использоваться выражение. В качестве выражения может выступать и параметр.
Пример:
Копировать в буфер обменаРегистрНакопления.Продажи.Обороты(&Начало)
В данном примере в качестве значения первого параметра виртуальной таблицы будет использовано значение параметра &Начало.
При помощи специальных инструкций в тексте запроса можно указать, какой параметр компоновки данных будет использоваться в качестве значения параметра виртуальной таблицы.
Пример:
Копировать в буфер обменаРегистрНакопления.Продажи.Обороты({&НачалоПериода})
В данном примере в качестве значения первого параметра виртуальной таблицы будет использовано значение параметра &НачалоПериода, если его значение установлено в настройках компоновки данных.
Если в запросе указано и выражение параметра и параметр компоновки данных, то значение параметра компоновки данных используется в случае, если значение данного параметра установлено в настройках компоновки. В противном случае в качестве значения параметра используется результат выражения, указанного в параметре виртуальной таблицы.
Пример:
Копировать в буфер обменаРегистрНакопления.Продажи.Обороты(&Начало {&НачалоПериода})
В этом примере если в настройках установлено значение параметра НачалоПериода, то будет использоваться его значение. В противном случае в сгенерированном тексте запроса останется исходное выражение, т.е. &Начало, и в качестве значения параметра виртуальной таблицы будет использоваться значение этого параметра.
При автоматическом заполнении доступных полей набора данных схемы компоновки данных, система автоматически добавляет в схему параметры виртуальных таблиц с именами, соответствующих именам параметров виртуальной таблицы, в случае если у параметра виртуальной таблицы отсутствует описание параметра компоновки данных.
Таким образом, запись:
Копировать в буфер обменаРегистрНакопления.Продажи.Обороты(&Начало)
соответствует следующей:
Копировать в буфер обменаРегистрНакопления.Продажи.Обороты(&Начало {&НачалоПериода}, {&КонецПериода})
И значение параметра &Начало используется только в случае если в настройках не установлено значение параметра &НачалоПериода.