Стандартные отчеты в DPM 2010 настолько скучны, что у меня возникло желание немного покопать в направлении их «кастомизации».
Для работы нам понадобится:
- Обновить Microsoft .Net Framework до 3.5 или выше.
- Обновить Report Builder до версии 2.0 (для SQL 2008, до 3.0 – для SQL 2008r2 соответственно). Скачать можно тут: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=24085.
- После установки Report Builder 2.0 в настройках веб-узла на сайте Report Manager (URL можно посмотреть в Report Service Configuration Manager в соответствующем разделе) на вкладе «Общие» необходимо прописать в поле «Пользовательский URL-адрес для запуска построителя отчетов»: /ReportBuilder/ReportBuilder_2_0_0_0.application.
Все вышеупомянутые пункты можно упустить и попробовать пройти курс молодого бойца самостоятельно =)
Итак.
Зайдем в «Диспетчер отчетов» (Report Manager) по ссылке http://dpmservername/Reports_MSDPM2010/, создадим персональную папку для кастомизированных отчетов «My Reports» (кнопка «Создать папку») и запустим «Построитель Отчетов» (Report Builder). Мы будем пользоваться уже настроенным источником данных, а можно создать свой. Для этого необходимо нажать соответствующую кнопку «Создать источник данных» и заполнить таким образом:
Имя: MyResourceDPM
Включить этот источник данных «Microsoft SQL Server»
Строка соединения: data source=»dpmservernameMSDPM2010″;initial catalog=DPMDB
Встроенная безопасность Windows
А как только отобразится стартовая страница Report Builder, и Вам захочется перекроить вся и все, хочу предупредить – выжать из того что предлагает DPM человеку, не особо владеющему «приемами» в SQL (а я как раз из таких), будет крайне сложно, но что-то можно сделать, и я покажу как..=)
На рис. 1 обратите внимание на строку состояния внизу окна, сообщающую о том, что вы подключены к серверу отчетов «Current report server URL-ReportServer»:

Рис. 1 Start Report Builder
А теперь о том, что предлагает DPM для создания кастомизированных
отчетов. Обратимся по ссылке: http://technet.microsoft.com/en-us/library/ff399120.aspx – здесь перечислены имена таблиц, с которым можно работать в Report Builder, значения полей и других кодов.
Попробуем построить отчет на основе таблицы Vw_DPM_Alerts (List of all alerts from the last 30 days). Для этого воспользуемся мастером построения таблиц «Table or Matrix» (ту же команду можно выполнить из меню программы на вкладке «Insert»), в списке источников данных выберем наш:

Рис. 2 Data Source
И нажмем далее..
В списке Views выберем таблицу Vm_DPM_Alerts, в окне «Selected fileds» отобразятся все поля, присутствующие в выбранной таблице:

Рис. 3 Design a Query
В следующем окне перетащим доступные поля (Available fileds) в «Row groups»: Severity, далее Type, далее Resolution, что позволит сгруппировать данные по серьезности алерта, затем по типу, затем по статусу. А в поле «Values» перенесем поле Type (которое будем считать (функцию Count() выбрать нажав на стрелочку «вниз»), сколько алертов определенного типа):

Рис. 3 Arrange Fields
В следующем окне настройки группировки можно пока пропустить, в результате получим наш первый отчет:

В левой части окна программы «Report Data» мы увидим источник
данных и DataSet1 с полями выбранной таблицы. Для запуска нашего отчета необходимо перейти на закладку Home и нажать кнопку «Run»:

Рис. 6 Run Report
Результатом запуска нашего отчета получится вот такая таблица:

Рис. 7 Report View
Теперь можно обратиться к значениям полей таблицы и понять картинку
(http://technet.microsoft.com/en-us/library/ff399120.aspx), а можем воспользоваться встроенными функциями и немного поколдовать над полями.
Вернемся в настройки нашего отчета кнопкой Design:

Рис. 8 Design
Кликнем правой кнопкой в поле Severity, а в открывшемся списке выберем «Expression»:

Рис. 9 Expression
И изменим значение поля такой конструкцией:
=Iif(Fields!Severity.Value= 0, «Error», IIF(Fields!Severity.Value= 1, «Warning», «Information»)):

Рис. 9 Set Expression
Нажмем Ок и снова запустим отчет:

Рис. 10 Report View
То же самое проделаем с полями Resolution, добавим название отчету, перенесем
поля дат в таблицу, напишем легенду кодов ошибок и получим:

Рис. 11 Report View
Далее выберем команду «Сохранить» и указываем ранее созданный каталог «My Reports». Если я верно понимаю, в консоль DPM Administration Managament добавить созданный отчет не удастся, но его можно запускать на странице Менеджера Отчетов (Report Manager).
Создадим еще один простой отчет, отображающий количество точек восстановления (их даты) защищаемых данных на диске и кассетах. Здесь сделаю отступление. Для того чтобы понять, как таблица хранит те или иные данные, при ее выборе в окне Design a Query нужно выполнить команду «Run Query»:

Рис. 12 Run Query
Это знание поможет сориентироваться в выборе правильных полей при создании отчета.
Для нашего отчета нам понадобятся данные из двух таблиц: Vw_DPM_RecoveryPointDisk, Vw_DPM_RecoveryPointTape
(вторая не нужна, если у вас нет ленточной библиотеки).
Расположим две таблицы рядом в одном отчете. На вкладке Insert можно
выбрать в ручном режиме объекты, которые будут размещены в отчете.
Воспользуемся Мастером создания таблиц. В поле «Row groups»
добавляем те поля таблиц, какие хотим группировать в порядке начиная с верхнего
(первое добавленное). Если какие-то поля не должны группироваться, то их
добавляем позднее, путем перетаскивания в уже готовую таблицу отчета:

Рис. 13 Row Groups
Поле Status изменим на:
=Iif(Fields!Status.Value = 0, «Progress», IIF(Fields!Status.Value = 2, «Succeeded»,
«Failure»))
Позднее перетащим в таблицу поле CreationTime (переименуем в
«Точка»), назовем отчет и переименуем другие поля:

Рис. 14 Report View
Да, это всего лишь маленькое начало, но затягивает… =)) спасибо за внимание.