SSRS Report Builder-проблемы с опытом?

Я рассматриваю идею развертывания веб-построителя отчетов SSRS для наших конечных пользователей, чтобы позволить им создавать свои собственные отчеты для наших баз данных производственных приложений. Из того, что я видел до сих пор, этот инструмент проще в использовании, чем VS Biz Intel Studio report designer, плюс его легче установить, и развертывание отчетов гораздо более понятно для конечного пользователя (плюс самое большое, что не SQL, я думаю).

есть ли у кого-нибудь какие-либо мысли или опыт в ловушках предоставления пользователям такой власти? Прямо сейчас мы получаем много запросов на экспорт данных в плоский файл, чтобы они могли прочитать его, а затем построить отчеты в Access против него, поэтому я считаю, что SSRS будет лучше, чем Accesss...

2 ответов


некоторые советы по дизайну модели отчета:

1. Построить Data mart

Существует несколько инструментов, таких как построитель отчетов: бизнес-объекты, Oracle Discoverer, чтобы назвать пару. Все они имеют слои метаданных, которые дают вам некоторый путь к инструменту отчетности конечного пользователя, однако они все еще действительно должны быть ложными данными в подходящем формате для создания эффективного решения. Это означает, что вам действительно нужно думать с точки зрения построения какого-то и "Дейта-март" тоже.

без чистых данных инструменты будут выставлять все gotchas в производственной базе данных, поэтому пользователям придется понять их, чтобы получить правильные результаты. Это означает, что отчетность должна действительно исходить из чистого источника данных.

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

2. Очистить данные

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

3. Сделать навигацию надежной и идиот-доказательство

построитель отчетов может устанавливать ограничения на перемещение из одного объекта в другой. Без них можно объединить несколько таблиц вместе в отношении m:m. Это называется Ловушка Вентилятор и вернет неверные итоги. Необходимо настроить модель так, чтобы отдельные таблицы фактов агрегировались по общим измерениям-т. е. свернутые, прежде чем они соединятся. Такой подход устраняет ряд ошибок. Большинство инструментов имеют определенный механизм для предотвращения этого.

4. Сделайте агрегат данных

вы получаете это бесплатно от бизнес-объектов, но вам нужно будет явно поместить агрегатную меру над каждой базовой мерой в построитель отчетов. Скрыть базовые меры и выставить агрегаты. Это значит что система свернет вверх по данным к зерну размеров пользователь выбрал.

вывод

размещение специального инструмента непосредственно над производственной базой данных вряд ли будет хорошо работать. Данные будут иметь слишком много подводных камней, и схема не будет поддаваться отчетности. Это означает, что вы готовы к некоторой работе по созданию Data mart, чтобы очистить данные и подготовить их для инструмента. Если вы тратите значительное время на создание специальных экстрактов, может быть дело просто во времени разработчика это сохранить позже.

EDIT: мастер модели отчета (как и большинство таких вещей) делает довольно беспорядок при запуске. Вам придется настроить параметры, такие как ограничение генерации нерелевантных агрегатов. В прошлом я добивался неплохих результатов, генерируя суммы, скрывая все базовые показатели и выставляя агрегаты как базовые показатели. Это придавало поведению сходство с бизнес-объектами. В определенных экземплярах вы также можете предоставить count, min / max или в среднем тоже.

конкретный экземпляр, о котором я думаю, был довольно большой моделью отчета с примерно 1500 полями в нем, поэтому aggregate-fest, созданный мастером, был неуправляемым с 10 000+ полями в общей сложности. Можно также настроить структуры папок, немного похожие на службы Analysis Services, и использовать их для организации полей. Наконец, при вводе описания в поле появится всплывающая подсказка при наведении на него курсора в инструменте конечного пользователя.


Всего несколько комментариев к предыдущему ответу:
1. Модель семантических запросов, используемая построителем отчетов служб SQL Server Reporting Services, была разработана с явной целью предотвращения ловушек вентилятора / неправильных итогов в отношениях m:m. Для включения этой функции не требуется дополнительных усилий; она заложена в структуру запросов, создаваемых построителем отчетов.
2. Мастер моделей по умолчанию создает агрегатные меры над числовыми полями, поэтому для предоставления дополнительных усилий не требуется инертные материалы. Вы можете настроить модель, добавив или удалив агрегированные вычисления по мере необходимости.

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

Аарон Мейерс!--0--> Инженер по разработке программного обеспечения, службы SQL Server Reporting Services