Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Отчеты к базам данных для пользователей: Microsoft Reporting Services 2000
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

4.3 Работа с параметрами

Параметры в отчетах Reporting Services в SQL Server 2000, параметры отчета (report parameters) и параметры запроса (query parameters), обязательные и необязательные параметры, применение отчетов

В Reporting Services предусмотрено два вида параметров: report parameters и query parameters.

Report parameters (параметры отчета) определяются на уровне отчета, обеспечивают большую степень гибкости в представлении данных. Например, при помощи такого параметра пользователь может выбрать месяц, за который ему нужны данные.

Параметры создаются во время разработки, а значения их могут меняться во время выполнения. Параметры могут быть необязательными (optional) и обязательными (mandatory) Без присвоения значений обязательным параметрам отчет просто не будет сгенерирован. Для параметров могут использоваться значения по умолчанию.

Для чего используются report parameters:

·        для передачи данных в SQL-запрос в Data Set (через Query parameter) - чтобы ограничить возвращаемые запросом данные;

·        для определения фильтра на отображение записей после получения их с источника (хотя лишние данные лучше и не получать);

·        для перехода между отчетами (как через подотчет, так и через действие - action) и передачи параметров внешним отчетам;

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

·        для расчета количества появлений элемента в отчете.

Для каждого параметра необходимо указать имя (уникальное внутри отчета), тип данных, разрешено ли ему принимать значения типа Null (не определено) и значение типа Blank (явно определенное пустое значение).

Если значения параметра не устанавливается программно, то при запуске параметризованного запроса пользователю будет выведено окно с приглашением ввести ли выбрать значения. Текст приглашения можно редактировать.

При использовании числовых типов/даты-времени будет выводиться приглашение с форматом, зависящим от региональных настроек пользователя. Явно указать формат нельзя - только выполнять программное преобразование в String и обратно, а там уже делать все, что угодно.

Если пользователь указал неверное значение параметра (строковое значение для типа и т.п.), то, если параметр допускает значения типа Null, оно и будет установлено (при этом сообщение об ошибке выводится не будет!). Если нет - то будет установлено Blank Value.

Пользователю можно предоставить ниспадающий список, из которого он сможет выбирать значение параметра. Заполнять этот список можно в Run-Time.

Управление Report Parameter - свойства отчета, свойство ReportParameter.

Query Parameter (параметры запросов) - как правило, используются только для одной цели - для ограничения возвращаемых данных. При создании запроса с параметром Report Designer автоматически создает соответствующий ему (им) Report parameter. Для того, чтобы определить Query Parameter, необходимо в запросе просто указать его с символом @, например:

SELECT * FROM customers WHERE country = @Country

На SQL Server этот пример пройдет без ошибки, но драйвер для MS Access требует несколько другого синтаксиса:

SELECT * FROM customers WHERE country = ?

Поскольку этот параметр автоматически добавляется в коллекцию Parameters, то обратиться к нему можно будет как Parameters!Country.Value

Управление Query Parameter (например, в случае, если его нужно сопоставить другому Report Parameter) - вкладка Data, кнопка с многоточиями, которая называется Edit Selected Dataset.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 

 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru