2015-04-17 2 views
1

У меня есть поле формулы, которое получает его значение из поля выражения (которое выполняет скалярную функцию SQL), но я хочу убедиться, что это поле выражения выполняется только один раз (функция SQL передается значение строки, которое одинаково для всех строк в наборе записей)Выполнять функцию SQL только один раз

Как я вижу, поле формулы в конечном итоге вызывает функцию SQL в каждой строке, отображаемой в отчете.

Как это сделать?

ответ

1

Назначить значение из функции SQL глобальной переменной в заголовке отчета, а затем повторно использовать значение из этой переменной вместо ссылки на SQL.

//{@Assign Value} - formula placed in report header 
numbervar ExampleVar := {%SQL Expression}; 

//{@Use Value} - value can now be used anywhere in the report 
numbervar ExampleVar; 
...do something with ExampleVar 
+0

Я знаком с цехом формулы, чтобы написать некоторые из этого кода, но я не могу найти раздел для ввода такого кода для заголовка. Я использую (старый) CR10. –

+0

Это просто общие поля формул, которые можно разместить в любом месте вашего холста отчета независимо от раздела. Просто создайте поле формулы, которое объявляет и назначает переменную, а затем перетаскивает ее в заголовок отчета. – Ryan

Смежные вопросы