Иногда бывает достаточно изменить значение одного свойства, чтобы значительно увеличить скорость построения отчета. При работе с шаблоном отчета, словарь данных не содержит реальных данных. В словаре расположено лишь описание структуры данных. Выполнение всех запросов и передача данных из хранилища осуществляется в момент построения отчета. При этом, происходит заполнение всей структуры словаря реальными данными. Иначе говоря, если в словаре создано 200 источников данных, то во все эти источники передаются реальные данные из хранилища. Чем больше данных необходимо передать из хранилища в словарь, тем дольше время построения отчета. Однако, не всегда все источники данных используются в самом отчете. Для того чтобы значительно сократить время построения отчета, получив реальные данные только для используемых источников данных в отчете, следует установить свойство отчета Получить только используемые данные (Retrieve Only Used Data) в значение да (true).

 

Рассмотрим пример. Допустим, используется MS SQL база данных, которая содержит таблицы данных, хранимые процедуры и представления. На рисунке снизу представлена структура словаря данных:
 

 

 

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

 
strel11 Свойство отчета Получить только используемые данные установлено в значение нет (false)

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

 

 

 

strel11 Свойство Получить только используемые данные установлено в значение да

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

 

 

 

Информация

 

Альтернативный вариант является способ удаления из словаря данных неиспользуемые источники данных. Однако, иногда необходимо, чтобы присутствовала вся структура. Например, для дальнейшей разработки отчета или, скажем, когда один и тот же словарь используется для множества отчетов.