Разное

Ssrs что это: Что такое SSRS? Описание SQL Server Reporting Services | Info-Comp.ru

Содержание

19) Службы отчетов SQL Server

Что такое SSRS?

SQL Server Reporting Services (SSRS) — это программа для составления отчетов, которая позволяет создавать отформатированные отчеты с таблицами в виде данных, графиков, изображений и диаграмм. Эти отчеты размещаются на сервере, который может быть выполнен в любое время с использованием параметров, определенных пользователями. Он является частью пакета Microsoft SQL Server Services.

В этом базовом уроке вы узнаете

Типы отчетных услуг

Три вида служб отчетности SSRS:

  1. Службы интеграции Microsoft SQL Server, которые интегрируют данные из разных источников.
  2. Аналитическая служба Microsoft SQL Server, которая помогает для анализа данных
  3. Служба отчетов Microsoft SQL Server позволяет генерировать визуальный отчет о данных.

Почему ССРС?

Вот основные причины использования инструмента SSRS:

  • SSRS — это расширенный инструмент по сравнению с Crystal Reports
  • Более быстрая обработка отчетов как по реляционным, так и по многомерным данным.
  • Позволяет лучше и точнее механизм принятия решений для пользователей
  • Позволяет пользователям взаимодействовать с информацией без привлечения ИТ-специалистов
  • Он обеспечивает подключение к Интернету для развертывания отчетов. Следовательно, отчеты могут быть доступны через Интернет
  • SSRS позволяет экспортировать отчеты в разных форматах. Вы можете доставлять отчеты SSRS, используя электронную почту
  • SSRS предоставляет множество функций безопасности, которые помогают вам контролировать, кто может получить доступ к какому отчету

Пример отчетности SSRS

SSRS используется в Медицинском научно-исследовательском институте

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

Сотрудники института создают записи в базе данных для каждого пациента.

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

Без SSRS медицинский институт должен был бы вручную отправить отчет в фармацевтическую компанию с общим количеством еженедельных участников. Институт также должен добавить данные о каждом пациенте, включенном в исследование, количестве использованных лекарств и всех нежелательных ситуациях. В результате, время, необходимое для сбора и отправки этих данных в правильном формате, может занять много времени в клинике.

Если бы институт регистрировал данные с помощью инструмента SSRS, он мог бы создавать отчеты по требованию в заранее определенном формате.

С помощью SSRS фармацевтическая компания может получить доступ к отчету в облаке, запустить отчет в любое время, чтобы получить последние данные из клиники.

Особенности SSRS

  • Предлагает приложение простого протокола доступа к объектам (SOAP) и подключаемую архитектуру
  • Извлекайте данные из управляемых, OLE ODBC и соединений с БД
  • Позволяет создавать отчеты adhoc и сохранять их на сервере
  • Отображать данные в различных форматах, включая табличные, произвольные и диаграммы
  • Создание пользовательских элементов управления с помощью расширения обработки отчетов
  • Встраивать графику, изображения в отчеты. Вы также можете интегрировать с внешним контентом, используя SharePoint
  • Вы можете хранить и управлять пользовательскими отчетами
  • Функция управления диаграммами и датчиками позволяет отображать данные KPI

Как работает SSRS?

Как работает SSRS

  1. Пользователи отчета — это люди, которые работают с данными, а также хотят получить представление о них. Они отправляют запрос на сервер SSRS
  2. Сервер SSRS находит метаданные отчета и отправляет запрос данных в источники данных.
  3. Данные, возвращаемые источником данных, объединяются с определением отчета в отчет.
  4. Когда отчет генерируется, он возвращается клиенту.

Архитектура SSRS

Архитектура SSRS

SSRS имеет довольно сложную архитектуру. Архитектура служб отчетов включает в себя средства разработки, средства администрирования и средства просмотра отчетов.

Здесь важны компоненты SSRS

Построитель отчетов

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

Дизайнер отчетов

Инструмент конструктора отчетов помогает разрабатывать все типы отчетов. Это инструмент публикации, который размещается в Visual Studio или Business Intelligence Development Studio (BIDS).

Диспетчер отчетов

Менеджеры отчетов проверяют отчет, сопоставляя его с заданными требованиями. Они принимают решения на основе этих отчетов.

Сервер отчетов

Это сервер, который использует ядро ​​базы данных SQL Server для хранения метаданных

База данных сервера отчетов

Он хранит метаданные, определения отчетов, ресурсы, настройки безопасности, данные о доставке и т. Д.

Источники данных

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

Отчет о жизненном цикле

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

Разработка: на этом этапе автор отчета определяет макет и синтаксис данных. Инструменты, используемые в этом процессе, — это SQL Server Development Studio и инструмент SSRS.

Управление: Эта фаза включает в себя управление опубликованным отчетом, который в основном является частью веб-сайтов. На этом этапе вам необходимо рассмотреть контроль доступа к выполнению отчета.

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

Что такое RDL?

Язык определения отчета вскоре известен как RDL. Он описывает все возможные элементы отчета с использованием грамматики XML, которая проверяется схемой XML.

Определение отчета отдельного отчета основано на RDL. Он содержит инструкции по визуализации дизайна отчета во время выполнения.

Тип отчетов SSRS

Здесь представлены типы отчетов, которые вы можете разработать с помощью инструмента SSRS.

Название типа отчетаподробность
Параметризованные отчетыЭтот тип отчета использует входные значения для завершения отчета или обработки данных.
Связанные отчетыСвязанный отчет предлагает точку для существующего отчета. Этот тип отчета получен из существующего отчета и сохраняет определение оригинального отчета.
Отчеты о снимкахОтчет о снимке содержит информацию о макете и результаты запроса, которые можно получить в определенный момент времени.
Кэшированные отчетыОбналиченный отчет позволяет создавать копии обработанных отчетов. Они используются для повышения производительности за счет сокращения количества запросов на обработку и времени для получения больших отчетов.
Развернуть отчетыДетализация отчетов помогает скрыть сложность. Это позволяет пользователям переключаться между скрытыми элементами отчетов, чтобы контролировать, сколько подробных данных вы хотите видеть. Он должен извлечь всю возможную информацию, которая может быть показана в отчете.
Отчеты по бурениюДетализированные отчеты — это стандартные отчеты, доступ к которым можно получить с помощью гиперссылки на текстовое поле в исходном отчете. Он работает с основным отчетом и является целью детализации через действие для элемента отчета, такого как заполнитель текста или диаграммы.
ВложенныеКак следует из названия, подотчеты — это отчет, который отображает другой отчет внутри тела основного отчета.

Преимущества использования SSRS

  • Это быстрее и дешевле.
  • Эффективный доступ к отчетам к информации, находящейся как в базе данных MS SQL Server, так и в Oracle
  • Нет необходимости в дорогих специалистах
  • В SSRS дизайнер отчетов по умолчанию интегрирован с Visual Studio .NET. Это позволяет нам создавать приложения и отчеты в одной среде.
  • Управление безопасностью осуществляется на основе ролей, которые можно применять к папкам и отчетам.
  • Отчеты на основе подписки автоматически отправляются пользователям.
  • Более быстрое создание отчетов как для реляционных, так и для кубических данных.
  • Информация в режиме реального времени для бизнеса, обеспечивая лучшую поддержку принятия решений

Недостатки использования SSRS

Некоторые ограничения SSRS приведены ниже:

  • Там нет кнопки печати. Поэтому, если вы хотите распечатать что-то, вам нужно экспортировать PDF, Excel, Word или другие форматы.
  • Все отчеты нуждаются в параметрах, которые должны быть приняты пользователями.
  • Сложно вносить изменения в пользовательский код и выражения отладки.
  • Не позволяет добавить номер страницы или общее количество страниц в теле отчета
  • Не предлагает какой-либо метод для передачи значений из подотчетов в основной отчет
  • Заголовок страницы всегда создает дополнительные пробелы на каждой новой странице.

Резюме

  • В SSRS ( полная форма S QL S ервер Reporting S ervices) позволяет производить отформатированные отчеты с таблицами в виде данных, графика, изображения и диаграммы
  • Три вида аналитических услуг SSRS: 1) Интеграция 2) Аналитика 3) Отчетность
  • SSRS предлагает более быстрые процессы обработки отчетов как по реляционным, так и по многомерным данным.
  • SSRSS помогает вам получать данные из управляемых, OLE, ODBC и DB соединений
  • Построитель отчетов, конструктор отчетов, менеджер отчетов, сервер отчетов, источники данных являются важными компонентами SSRS
  • Отчетность по жизненному циклу основывается на трех аспектах 1) Авторство 2) Управление 3) Поставка.
  • Язык определения отчета (RDL) описывает все возможные элементы отчета с использованием грамматики XML, которая проверяется схемой XML.
  • Важными типами отчетов SSRS являются: 1) параметризованные отчеты 2) связанные отчеты 3) отчеты моментальных снимков 4) кэшированные 5) детализация отчетов и т. Д.

 

SQL Server Reporting Services — это… Что такое SQL Server Reporting Services?

SQL Server Reporting Services (сокр. SSRS, рус. Службы отчетности SQL Server) — программная серверная система создания отчетов, разработанная корпорацией Microsoft. Она может быть использована для подготовки множества интерактивных и печатных отчетов. Система администрируется через веб-интерфейс. Reporting services используют интерфейс веб-служб для поддержки разработки обычных отчетных приложений.

SSRS соперничает с Crystal Reports и другими BI-инструментами, и входит в состав Express, Workgroup, Standard и Enterprise версий Microsoft SQL Server в качестве устанавливаемого дополнения. Reporting Services были впервые выпущены в 2004 году как дополнение для SQL Server 2000. Вторая версия была выпущена в виде составной части SQL Server 2005 в ноябре 2005 года. Последняя на данный момент версия была выпущена как часть SQL Server 2008 в августе 2008.

В SSRS отчеты описываются при помощи Report Definition Language (RDL) на языке разметки XML. Отчеты могут проектироваться при помощи последних версий Microsoft Visual Studio (включая Visual Studio.NET 2003 и Visual Studio 2005) с входящим в них дополнением Business Intelligence Projects или при помощи входящего в комплект Report Builder — упрощенного инструмента, не предлагающего полного функционала Visual Studio. Отчеты, определенные при помощи RDL, могут создаваться во множестве различных форматов [1], включая Excel, PDF, CSV, XML, TIFF (и других графических форматах[2]), а также HTML Web Archive. SQL Server 2008 SSRS также может подготавливать отчеты в формате Microsoft Word (DOC).

Сторонние генераторы отчетов предлагают возможность создания отчетов в дополнительных форматах.

Пользователи могут работать с веб-службой Report Server напрямую или использовать Report Manager — веб-приложение, взаимодействующее с веб-службой Report Server. При помощи Report Manager могут просматривать и управлять отчетами, также как и управлять и оперировать источниками данных и настройками безопасности. Отчеты могут рассылаться по электронной почте или записываться на файловую систему как обычный файл. Защита выполняется на основе ролей и может накладываться на отдельные элементы, как например, отчет или источник данных, каталог элементов или сайт вообще. Роли безопасности и права являются наследуемыми и могут быть переопределены.

В дополнение к использованию отдельного Report Server, поставляемого с SQL Server, RDL-отчеты можно просматривать при помощи веб-контрола ASP.NET ReportViewer или Windows Forms-контрола ReportViewer. Это позволяет встраивать отчеты прямо в веб-страницы или .NET-приложения. Контрол ReportViewer обрабатывает отчеты одним из двух способов: (a) на стороне сервера, где отчет обрабатывается Report Server; и (b) локальная обработка, где соответствующий контрол самостоятельно обрабатывает RDL-файл.

SQL 2005 reporting services также поддерживает обработку произвольных отчетов: разработчик создает схему отчета и развертывает ее на сервере отчетности, где пользователь может выбирать нужные поля/данные и создавать отчеты в соответствии со своими нуждами. Потом пользователи могут загружать отчеты локально.

См. также

Примечания

Ссылки

Секреты служб SQL Server Reporting Services | Windows IT Pro/RE

В основе почти всех моих рекомендаций, адресованных разработчикам SQL Server, Visual Studio и VB. NET, лежат предложения читателей. Благодаря вашим идеям службы отчетов Reporting Services (SSRS) стали более эффективными. Корпорация Microsoft сохранила почти все заслуживающие одобрения средства и добавила несколько новых. Вместе с тем хотелось бы, чтобы были доработаны еще некоторые функции. Давайте рассмотрим ряд усовершенствованных средств, которые должны облегчить работу администратора, а также коснемся нескольких недостаточно продуманных функций, которые ему мешают.

Виртуальный каталог

Теперь службы SSRS могут сохранять виртуальные каталоги, не прибегая к помощи Microsoft IIS. Без участия IIS службы отчетов функционируют быстрее, чем раньше. Чтобы обращаться к отчетам по протоколу SSL, администратору, как и прежде, необходимо использовать сертификат. Запускать производственный отчет без применения SSL — все равно что передавать свой номер телефона по местной радиостанции. При использовании SSL все данные, которыми обмениваются SSRS и браузер, передаются по сети в виде зашифрованных пакетов. И никто не сможет, используя анализатор пакетов, читать отчеты или содержащиеся в них конфиденциальные данные.

Разработчики SSRS изменили и процедуру именования виртуальных каталогов, но эти изменения действительны лишь при условии, что SQL Server 2008 установлен в виде именованного экземпляра. В URL-адресах ReportServer или Reports предшествующих версий имя экземпляра SQL Server присоединялось с помощью символа $, например http:///Report$SS2K5. В версии SSRS 2008 разработчики Microsoft заменили символ $ знаком подчеркивания (_). Чтобы развернуть проект Microsoft Visual Studio (VS) 2008 BI, нужно изменить URL-адрес TargetServer, придав ему следующий вид: http:///ReportServer_SS2K8, где SS2K8 — это имя конкретного экземпляра SQL Server.

Reporting Services Configuration Manager

Это инструментальное средство подверглось несущественной доработке, и его возможности были усовершенствованы. Диспетчер Reporting Services Configuration Manager (RSCM) по-прежнему запускается из меню SQL Server Configuration Tools. Помните, что диспетчер вносит изменения в конфигурацию конкретного экземпляра SSRS, который часто устанавливается на сервере в том же зале. Если вы устанавливаете службы отчетов более поздней версии, чем SQL Server 2000, эта программа позволяет убедиться, что все подключено корректно, и помогает настроить SSL, установить ссылки электронной почты, а также, что самое важное, установить и зарезервировать ключи шифрования. Обращаться к отчетам без этих ключей довольно сложно. На экране 1 показана ссылка на диспетчер отчетов в RSCM. Здесь порт SSL связывается с созданным вами сертификатом.

Экспорт отчетов

В службах SSRS до сих пор не реализован простой способ экспорта отчетов. Представитель разработчиков сообщил мне, что проблемой экспорта отчетов они предполагают заняться (хотя и не в ближайшем будущем) и что, возможно, такая функция появится в одной из следующих версий. Пока же можно воспользоваться бесплатно распространяемой утилитой, обеспечивающей решение этой задачи (см. врезку «Бесплатное средство экспорта отчетов SSRS»).

Включение функции My Reports

Если необходимо сделать диспетчер отчетов доступным для пользователей, можно активировать функцию My Reports, чтобы они могли поддерживать каталог отчетов на основе своих доменных имен, используемых для регистрации в системе. Так, после того как я включил функцию My Reports, службы Reporting Services сформировали новое дерево каталогов для моих персональных отчетов, которым я могу пользоваться для поиска интересующих меня отчетов. Вопрос в том, как включить эту функцию. Документация на сей счет фрагментарна, но включить функцию не так уж сложно, если знать, как выполняется процедура установления связи с обменом секретным ключом.

Запустите SQL Server Management Studio, но не подключайтесь к процессору Database Engine, а в исходном диалоговом окне Connect to Server выберите пункт Reporting Services (это можно сделать, если служба уже запущена). Чтобы активизировать функциональные возможности My Reports, следует правой кнопкой мыши щелкнуть на базовом соединении и выбрать пункт Properties. На экране появится диалоговое окно, показанное на экране 2.

Теперь вы сможете задать роль, применяемую к каждому из созданных на данном сервере каталогов My Reports. Когда пользователи Windows откроют URL-адрес диспетчера Report Manager, они увидят новый путь, созданный в каталоге Reporting Services для их доменного имени.

Защищать свои отчеты — жизненно важная задача пользователя вне зависимости от того, кто имеет право просматривать эти отчеты. Один из способов создания ролей Reporting Services, которым администратор может назначить конкретные права, предполагает использование обозревателя объектов Reporting Services Object Explorer. В результате пользователи не смогут обращаться к отчетам, знакомиться с которыми им не положено.

Работа с новым конструктором отчетов Report Designer

В распоряжении разработчиков служб отчетов имеется множество конструкторов отчетов. Во врезке «Версии конструктора отчетов Microsoft» я попытался систематизировать версии продуктов и их возможности.

Новые средства отображения SSRS 2008 Report Definition Language (RDL) решают множество актуальных проблем, проявлявшихся в работе модулей подготовки RDL первого поколения (да, существует несколько модулей первого поколения). Механизм визуализации SSRS 2008 обеспечивает выполнение множества функций по обработке данных в расширенном текстовом формате, а также новый элемент управления Tablix (который, по сути, отнюдь не является элементом управления отчетами). Элемент управления Tablix сочетает в себе свойства элементов управления матрицами и таблицами (отсюда его название), а также такие особенности, как ограниченная поддержка формата Rich Text и встроенные возможности для сводных таблиц.

Кроме того, механизм визуализации SSRS 2008 стал более универсальным. Проблема в том, что механизм визуализации и конструкторы отчетов, создавшие RDL для введения в него данных, формировали новые и несовместимые файлы RDL, которые не воспринимаются старым механизмом SSRS 2005, до сих пор использующимся в элементах управления ReportViewer VS 2005 и VS 2008. И это плохо — по крайней мере тогда, когда необходимо использовать средства BI с функциями, обеспечивающими эффективную генерацию отчетов, для создания этих новых отчетов и средства управления ReportViewer в приложениях Windows и Active Server Pages (ASP) — для их развертывания. Дело в том, что внутренний механизм элемента управления ReportViewer VS 2008 SP1 позволяет ему визуализировать лишь старые отчеты первого поколения в стиле RDL. Однако сейчас происходит обновление Visual Studio и элемента управления ReportViewer, и в ходе этого обновления будут реализованы средства отображения RDL следующего поколения. К сожалению, это произойдет не ранее выхода в свет VS 2010.

Тема SSRS не закрыта

У темы SSRS есть еще много аспектов, о которых я собираюсь рассказывать на страницах журнала в течение нынешнего года, пока специалисты Microsoft завершают работу над остальными компонентами служб отчетов. Надеюсь, что эти службы начнут действовать в обстановке, когда разработчики придут к мысли о том, что значительно проще составлять сложные пользовательские интерфейсы, включающие отношения «родитель-потомок», суммы, итоговые суммы, сложные выражения и встроенные коды, чем жестко программировать эти элементы вручную.

Уильям Вон ([email protected]) — эксперт по Visual Studio, SQL Server, Reporting Services

Бесплатное средство экспорта отчетов  SSRS

Если бы передо мной стояла задача восстановить один отчет SSRS и единственный путь ее решения сводился бы к восстановлению всей базы данных SSRS, то я, откровенно говоря, счел бы, что овчинка не стоит выделки. К счастью, Джаспер Смит освоил (судя по всему) протокол SOAP, а также программные интерфейсы к SSRS и создал бесплатно распространяемую утилиту Reporting Services Scripter для извлечения из базы данных RDL, источников данных и всех других элементов каталога. Я протестировал этот продукт, и, хотя он, как мне показалось, сначала не поддерживал SQL Server 2008 (2.0.0.0.11), я сумел добиться подключения утилиты к моему экземпляру SQL Server 2008 и получил отчеты, а также создал проект Visual Studio BI для каждого каталога. В результате мне не пришлось тратить силы на то, чтобы выполнять тест на другой системе. Загрузить утилиту можно по адресу www.sqldbatips.com/showarticle.asp? ID=62.

Версия конструктора отчетов Microsoft

В блоке № 35 кампуса разработчиков Microsoft работают по меньшей мере четыре человека, понимающих, как и почему эволюционировал конструктор отчетов. С выходом каждой версии данного продукта под сомнение ставилась совместимость этих версий. Мне уже приходилось описывать особенности всех изданий конструктора отчетов, но это не позволяет нам понять, почему мы не можем делать то, что нам предлагалось делать при создании отчетов SSRS.

Конструктор отчетов в пакете Visual Studio (VS) 2003 объединяется с дополнительным модулем Reporting SelVices с помощью бинарной «заплатки». Этот конструктор может работать только с отчетами RDL служб отчетов SSRS 2000. Данная версия VS не поддерживает элемент управления ReportViewer.

Конструктор отчетов в VS 2005. Этот конструктор не может «видеть» службы SSRS 2008 и взаимодействовать с ними, но он может импортировать отчеты RDL служб отчетов SQL Server 2000 и взаимодействовать с SSRS 2005. Продукт поддерживает элемент управления ReportViewer первого поколения, который может осуществлять «перекрестное взаимодействие» с отчетами RDL SSRS 2005.

Конструктор отчетов в VS 2008. Этот конструктор тоже не может «видеть» службы SSRS 2008 и взаимодействовать с ними. При этом он не в состоянии даже открывать проекты SSRS 2005. Но продукт по-прежнему поддерживает элемент управления ReportViewer первого поколения и может осуществлять «перекрестное взаимодействие» с отчетами RDL SSRS 2005.

Конструктор отчетов в VS 2008 SP1. Этот конструктор взаимодействует с SSRS 2008 и может даже открывать проекты SSRS 2005, которые он преобразует в формат VS 2008. Он поддерживает проекты с элементом управления ReportViewer первого поколения и может осуществлять «перекрестное взаимодействие» с отчетами RDL SSRS 2005, но не с отчетами RDL SSRS 2008.

Конструктор отчетов, реализованный в комплекте SSRS BI Tools. Этот новый конструктор VS BI специально предназначен для работы с SSRS 2008, а также с проектами SSRS 2005, которые он преобразовывает в формат VS 2008 BI. Продукт не поддерживает разработку в средах Windows Forms или ASP, так что вопрос об использовании элемента управления ReportViewer здесь не актуален.

SSRS Configuration Manager

Поделитесь материалом с коллегами и друзьями

Установка и настройка SQL Server Reporting Services 2008 R2 (SSRS) | Info-Comp.ru

Продолжаем рассматривать службы Reporting Services и сейчас давайте установим все необходимые компоненты SSRS, которые нужны для комплексной разработки и публикации отчетов, а также выполним первоначальную настройку сервера отчетов.

В предыдущей статье посвященной SQL Server Reporting Services мы рассматривали основные возможности и компоненты служб SSRS, а сегодня мы установим и настроим SQL Server Reporting Services, на примере версии 2008 R2, а в следующих материалах перейдем уже к разработке и публикации отчетов.

И для начала давайте определимся, т.е. что мы имеем на текущий момент, допустим, у нас есть установленный компонент Database Engine и среда SQL Server Management Studio (2008 R2), например мы используем SQL сервер как СУБД для базы данных некого приложения, а Management Studio для разработки и управления этой базой. И теперь у нас возникла необходимость развернуть комплексную систему отчетности, а так как SQL сервер включает в себя службы Reporting Services, мы принимаем решение, использовать для наших целей именно SSRS.

Заметка. Если кому интересно как проходит установка SQL Server 2008 и Management Studio 2008 в редакции Express (это бесплатная версия SQL Server), то это мы рассматривали вот в этом материале.

Примечание. Если установку SQL Server производили не Вы, то перед установкой проверьте, что у Вас действительно не установлены службы Reporting Services, так как может случиться ситуация что администратор или программист, которой устанавливал SQL Server, заодно установил и компоненты SSRS, но просто не настраивал и не запускал их. Для проверки можете открыть «Диспетчер конфигурации SQL Server» и в разделе «Службы SQL Server» поискать службу «Службы SQL Server Reporting Services» и если она есть, то можете переходить сразу к настройке SSRS.

Установка SQL Server Reporting Services

Примечание. В качестве операционной системы у нас выступает Windows Server 2008.

Итак, у нас должен быть дистрибутив SQL Server 2008 R2.

Шаг 1

Запускаем дистрибутив, после чего у нас откроется знакомое окно центра установки SQL Server, мы выбираем пункт «Установка», а в нем «Новая установка или добавление компонентов к существующей установке».

Шаг 2

Проверка правил установки, жмем «ОК»

Шаг 3

Установка файлов поддержки программы установки, жмем «Установить»

Шаг 4

Еще одна проверка правил установки, жмем  «Далее»

Шаг 5

Выбираем «Тип установки» и в нашем случае мы должны выбрать «Добавление компонентов к существующему экземпляру SQL Server 2008 R2»

Шаг 6

Далее выбираем компоненты, которые необходимо установить это как раз «Службы Reporting Services» и среда разработки отчетов Business Intelligence Development Studio, жмем «Далее»

Шаг 7

Правила установки, жмем «Далее»

Шаг 8

Проверка свободного места на диске, жмем «Далее»

Шаг 9

Вводим учетную запись, от которой будет запускаться служба SSRS

Шаг 10

Далее у меня доступен всего один вариант это «Установить, но не настраивать сервер отчетов»

Шаг 11

Если хотите отправлять отчеты об ошибках SQL Server в компанию Microsoft, то поставьте соответствующую галочку, жмем «Далее»

Шаг 12

Правила конфигурации установки, жмем «Далее»

Шаг 13

Сводка установки, жмем «Установить»

Установка началась


Шаг 14

Все, установка завершена, жмем «Закрыть»

После чего служба SQL Server Reporting Services будет запущена.

Настройка SQL Server Reporting Services

Переходим к первоначальной настройке, и для этого запускаем «Диспетчер конфигурации служб Reporting Services» (Пуск->Все программы->Microsoft SQL Server 2008 R2->Средства настройки). Здесь мы имеем следующие возможности:

  • Запустить/остановить службу отчетов;
  • Изменить учетную запись, от которой будет запускаться служба Reporting Services;
  • Изменить URL адрес web-службы;
  • Создать/изменить базу данных сервера отчетов;
  • Изменить URL адрес диспетчера отчетов;
  • Задать настройки электронной почты;
  • Задать учетную запись для источника данных отчетов, для которых учетные данные не требуются;
  • Управлять ключами шифрования;
  • Настраивать масштабное развертывание.

Создание базы данных служб Reporting Services

Для начала мы должны создать базу данных, для этого переходим в раздел «База данных» и нажимаем «Изменить базу данных».

Далее откроется «Мастер настройки базы данных сервера отчетов», мы выбираем «Создать новую базу данных сервера отчетов», и нажимаем «Далее»

Затем указываем учетную запись, от имени которой мы будем подключаться к SQL Server Database Engine, для проверки можете нажать «Проверка соединения» и если все хорошо то жмем «Далее»

На следующем шаге задаем имя базы данных сервера отчетов, предлагаю оставить по умолчанию, т.е. ReportServer, жмем «Далее»

Затем указываем учетную запись, которую сервер отчетов будет использовать для подключения к базе данных сервера отчетов.

Далее представлена сводка, мы все проверяем и жмем «Далее»

И если все хорошо, то мастер настройки сообщит об успешном завершение, жмем «Готово»

Настройка URL адресов для сервера и диспетчера отчетов

Следующее что мы должны сделать это перейти в пункт URL адрес web-службы и задать адрес, я оставлю по умолчанию, и сразу нажимаю «Применить»

Затем перехожу в пункт URL адрес диспетчера отчетов и также просто нажимаю «Применить»

Таким образом, у меня теперь:

  • адрес web-службы http://TESTSERVER/ReportServer;
  • адрес диспетчера отчетов http://TESTSERVER/Reports.

В качестве имени виртуальных каталогов Вы можете использовать свои значения.

Сохранение ключа шифрования Reporting Services

Теперь необходимо сохранить ключ шифрования, для того чтобы в случае перемещения сервера отчетов на другой компьютер восстановить доступ к зашифрованному содержимому, переходим на пункт «Ключи шифрования» и в разделе «Создать резервную копию» жмем «Копировать»

Указываем папку, в которую сохранить ключ, и задаем пароль для восстановления

Осталось проверить работу SSRS для этого можем открыть браузер и набрать адрес диспетчера отчетов, в моем случае это http://TESTSERVER/Reports

И у нас должна открыться следующая страница

Также можем проверить работу среды Business Intelligence Development Studio, для этого просто ее запускаем Пуск->Все программы->Microsoft SQL Server 2008 R2->Среда SQL Server Business Intelligence Development Studio

Примечание. Если Вы планируете использовать подписку на отчеты, то для этого должна быть запущена служба «Агент SQL Server», запустить ее можно с помощью «Диспетчера конфигурации SQL Server».

Заметка! Если Вас интересует SQL и T-SQL, рекомендую посмотреть мои видеокурсы по T-SQL, с помощью которых Вы «с нуля» научитесь работать с SQL и программировать с использованием языка T-SQL в Microsoft SQL Server.

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

Нравится2Не нравится

Программное совершенствование отчетов SSRS | Windows IT Pro/RE

Службы SQL Server Reporting Services (SSRS) — платформа для подготовки отчетов корпоративного уровня, размещаемая над широко распространенными службами в серверных технологиях Windows, в том числе SQL Server, ASP.NET и Microsoft. NET Framework. Одно из самых важных качеств SSRS — возможность расширить функции подготовки отчетов с помощью пользовательского кода и программных модулей. В этой статье я поясню, насколько пользовательский код и модули практически применимы при формировании ежедневных отчетов, и расскажу о встроенных модулях SSRS и концепции настраиваемых сборок. Затем будут даны пошаговые инструкции по подготовке специализированной сборки с помощью Visual Studio и ее использования для построения набора данных динамического отчета.

Выбор инструмента

Программисты привыкли использовать инструменты с возможностями объектно-ориентированного проектирования (например, управление экземплярами объектов, интерфейсы, наследование классов) и моделями программирования, управляемыми событиями, для построения пользовательских приложений и компонентов приложений. Важно понимать, что для практического применения SSRS не поддерживает таких программных методов и моделей, и на то есть веские причины. SSRS — платформа подготовки отчетов, а не инструмент программирования.

Во время обсуждений методов подготовки отчетов в моем блоге по SQL Server BI и на других форумах мне иногда приходится встречать такие мнения программистов: «Мне не нужен такой инструмент подготовки отчетов, как SSRS. Я могу просто спроектировать специализированное веб-приложение, а затем самостоятельно управлять всем с помощью программных объектов. NET». Я уважаю это мнение и считаю такой подход обоснованным, если требуется управлять каждым элементом пользовательского интерфейса, поведением и взаимодействием. С помощью кода событий и пользовательских элементов управления можно добавить удобные функции, просто недоступные в SSRS. Но при этом необходимо предусмотреть, что произойдет, если объем данных в пользовательском отчете окажется в 100 раз больше ожидаемого или отчет будет запущен несколькими пользователями одновременно. И как удовлетворить потребность пользователя просмотреть отчет в разнообразных форматах? Такие вопросы успешно решаются в SSRS без дополнительных усилий со стороны программиста.

Основными компонентами отчета — соединениями данных, выполнением запросов, наборами результатов, кэшированием данных и т.д. — следует управлять с помощью встроенных функций, не вдаваясь в сложное программирование. Важно уметь различать задачи, успешно решенные в SSRS, чтобы не ломать напрасно голову над сложными приемами программирования.

Модули

В основе SSRS лежит расширяемая архитектура. Признаюсь, что начиная работать с SSRS в 2003 году, я был очарован расширяемостью служб и возможностью добавлять программный код в решения для отчетов. Как программист, работающий в. NET, я полагал, что отчеты будут естественным продолжением моих усилий как программиста. Но построив несколько сложных решений для отчетов и работая с другими программистами над архитектурой крупных решений в течение десяти лет, я понял, что огромному большинству решений SSRS не требуется дополнительное программирование. Лучшее применение библиотеки пользовательского кода — расширить встроенные возможности архитектуры SSRS, а не заменить удачные функции. Подготовка пользовательских модулей — непростая задача, и обычно она выходит за рамки практического применения для подготовки корпоративных отчетов.

Во внутренних механизмах SSRS используется набор сборок. NET, представляющий собой модули для работы с большинством основных функций. SQL Server версий Standard, Business Intelligence и Enterprise Editions автоматически устанавливает некоторые из этих модулей. Например, при экспорте отчета в Microsoft Excel применяется модуль подготовки отчетов Excel. При планировании подписки модуль доставки электронной почты или файловой системы используется вместо стандартного модуля доставки интерактивных отчетов.

В SQL Server версий Standard, Business Intelligence и Enterprise Editions службы SSRS обеспечивают расширение следующими способами.

  • Модули обработки данных. Эти модули предоставляют доступ к различным типам данных с использованием согласованной программной модели. Среди модулей для обработки данных — модули для SQL Server, SQL Server Analysis Services (SSAS), SQL Server Parallel Data Warehouse, SQL Azure, списков Microsoft SharePoint, моделей отчетов, ODBC, OLE DB, Hyperion Essbase, Oracle, SAP NetWeaver Business Intelligence, Teradata и XML. Кроме того, компания Microsoft предоставляет модули для обработки данных для SAP Relational DB и DB2.
  • Модули доставки. Эти модули взаимодействуют с каким-либо механизмом доставки для отправки отчетов пользователям. Среди них модули для интерактивных отчетов, электронной почты, файловой системы и поставщика NULL; они позволяют воспроизводить отчеты без сохранения вывода.
  • Модули подготовки отчетов. Эти модули управляют типом документа или носителя, создаваемого при выполнении отчета. Компания Microsoft предоставляет несколько модулей, охватывающих широко распространенные и полезные типы документов, в том числе HTML, веб-архив, PDF, Excel, Microsoft Word, изображения, XML и CSV (с разделением запятыми).
  • Модули безопасности. Они обеспечивают проверку подлинности и авторизацию пользователей для запуска отчетов на сервере отчетов. Предоставляемые модули поддерживают встроенную в Windows защиту и проверку подлинности ASP.NET на основе форм. Можно реализовать и собственную модель безопасности на основе ролей с любым критерием проверки подлинности.
  • Модули обработки отчетов. Эти модули обеспечивают создание пользовательских элементов отчетов, управляемых механизмом обработки отчетов. С их помощью можно расширить стандарт языка определения отчетов (RDL), дополнив его функциональностью, изначально отсутствующей в RDL, в частности пользовательскими картами MapPoint и горизонтальными списками. Также можно расширить имеющиеся элементы отчета, добавив альтернативные версии, более подходящие для конкретного применения.
  • Модули настройки определения отчета предоставляют выход к предварительной обработке определения отчета. Можно подключить пользовательский код, который изменяет поток определения отчета перед его обработкой. Это удобно, если необходимо изменить структуру отчета в зависимости от культурных или местных особенностей, либо личности пользователя, указанного в запросе отчета.

При необходимости создать пользовательские модули можно учиться на опыте других разработчиков. Я работал с компаниями, в которых SSRS применяется как составная часть набора служб, и некоторые из них создали собственные модули. Одна компания построила специальный модуль безопасности, чтобы пользователи могли выполнять регистрацию и проходить проверку подлинности в ее программе, не прибегая к Windows. Другие компании со сложными уровнями данных и прикладного программирования строят специальные модули обработки данных, которые используются вместо стандартных поставщиков данных в SSRS. Например, одна компания построила модуль для обработки данных, применив его к сложным бизнес-правилам и логике фильтров, специфичным для отрасли. В каждом случае группам программистов потребовались месяцы, чтобы создать продукт, устранить ошибки, протестировать и внедрить специализированные модули в производство.

Настраиваемые сборки

Сборка — модуль повторно используемого программного кода, обычно подготовленный с помощью языка программирования. NET в среде Visual Studio и часто скомпилированный в DLL-файл, содержащий повторно используемые функции и другую программную логику. Специализированную сборку можно применить, чтобы расширить функциональность отчетов на многие отчеты на одном сервере. Например, если нужно обработать параметрические бизнес-правила, распространяющиеся за рамки возможностей языка запросов, такого как T-SQL или MDX, можно задействовать специализированную сборку для управления запросом к набору данных отчета и связанным поведением отчета. SQL — мощный язык, с помощью которого можно обработать достаточно громоздкую бизнес-логику. При возможности можно задействовать язык запросов — и особенно устойчивые объекты базы данных, такие как хранимые процедуры — для инкапсуляции сложных правил. Лучшие примеры наиболее эффективного применения этого метода гораздо сложнее, чем я привожу в данной статье. Однако показанные приемы представляют интерес и, в некоторых случаях, могут оказаться необходимыми.

Создание специализированной сборки

В следующем примере показано, как построить специализированную сборку, которая собирает инструкцию T-SQL на основе нескольких параметризованных аргументов. Сборка проектируется в среде Visual Studio 2010 в проекте библиотеки классов, который может быть частью того же решения, что и проект отчета. После тестирования сборка развертывается в доверенных папках, где ее можно использовать в SQL Server Data Tools (SSDT) или конструкторе отчетов Business Intelligence Development Studio (BIDS) на сервере отчетов. Проект выполнен в Visual Basic. NET, но с тем же успехом можно использовать C#. Рабочий экземпляр отчета и образцовый программный код проекта можно загрузить, нажав кнопку Download.

Создание представления и проекта библиотеки классов

Первая задача — создать представление vSalesByTimeAndTerritory в базе данных AdventureWorksDW2012. Убедившись, что вы имеете разрешение на создание объектов в этой базе данных, откройте окно запросов SQL Server Management Studio (SSMS) и выполните сценарий листинга 1, чтобы создать представление.

Затем необходимо создать проект библиотеки классов в среде Visual Studio, выполнив следующие действия.

  1. Из меню File в Visual Studio выберите New и пункт Project.
  2. В окне Add New Project («Добавление нового проекта») выберите Visual Basic в области Installed Templates («Установленные шаблоны»).
  3. На центральной панели выберите Class Library («Библиотека классов») и назовите проект Report_Class_Lib.
  4. В обозревателе решений измените имя класса файлов по умолчанию на ReportLib.cls.
  5. Откройте ReportLib.cls в редакторе кода Visual Basic. Работая с этим редактором, рекомендуется включить функции завершения и отладки, чтобы упростить работу. Например, если представлен список объектов, можно выбрать нужный объект с помощью клавиш со стрелками, а затем добавить свой код нажатием клавиши Tab. Можно также нажать клавишу Enter, чтобы выбрать объект и добавить новую строку кода.
  6. После объявления Public Class ReportLib введите исходный текст из листинга 2. Он создает функцию SalesQuery, которая строит запрос T-SQL на основе условной логики в программном коде. Обратите внимание, что символы продолжения строки необязательны и приведены только для того, чтобы исходный текст уместился на странице. При желании можно пропустить символы подчеркивания (_) и возвраты каретки в каждой строке, завершающейся символом подчеркивания.
  7. Выполните проверку на наличие ошибок и предупреждений с красными или зелеными извилистыми линиями под ключевыми словами.
  8. В обозревателе решений щелкните правой клавишей мыши проект Report_Class_Lib и выберите пункт Build («Сборка»).

Развертывание библиотеки классов

Прежде чем продолжить, отметим два важных обстоятельства. Необходимо найти папки для сборок, которым доверяет Visual Studio и сервер отчетов SSRS. В различных версиях продукта эти пути похожи, но зависят от параметров, выбранных при установке и настройке. После того, как пути найдены, скопируйте их и вставьте в программу Notepad.

В этом примере используется путь C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEPrivateAssemblies для папки сборок Visual Studio 2012. Для сервера отчетов SSRS применяется путь отчетов по умолчанию в SSRS 2012 — C:Program FilesMicrosoft SQL ServerMSRS11.MSSQLSERVERReporting ServicesReportServerbin. Обратите внимание, что если используется SSRS 2012 в SharePoint, то путь по умолчанию — C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14WebServicesReportingbin.

После того, как пути внесены в Notepad, выполните следующие действия.

1. Откройте свойства проекта. В разделе Compile («Компилировать») выберите Build Events («События построения»).

2. В текстовом поле Post-build event command line («Командная строка события после построения») введите следующие команды, указывая пути, скопированные в Notepad:

COPY /Y «C:UsersAdministratorDocuments
Visual Studio 2010ProjectsReport_Class_LibbinDebug
Report_Class_Lib.dll» «C:Program Files (x86)
Microsoft Visual Studio 10.0Common7IDEPrivateAssemblies»
COPY /Y «C:UsersAdministratorDocuments
Visual Studio 2010ProjectsReport_Class_LibbinDebug
Report_Class_Lib.dll» «C:Program Files
Microsoft SQL ServerMSRS11.MSSQLSERVER
Reporting ServicesReportServerbin»

Команды показаны разбитыми на несколько строк, но в действительности их нужно вводить в одной строке. В режиме интеграции с SharePoint необходимо также скопировать сборку в общую папку для расширений веб-сервера. Для этого добавьте следующую строку:

COPY /Y «C:UsersAdministratorDocuments
Visual Studio 2010ProjectsReport_Class_LibbinDebug
Report_Class_Lib.dll» «C:Program FilesCommon Files
Microsoft SharedWeb Server Extensions14
WebServicesReportingbin»

3. Настройте событие после построения для запуска после успешного завершения сборки, как показано на экране 1.

 

Экран 1. Настройка события для запуска после успешного завершения сборки

4. Нажмите кнопку OK, чтобы сохранить изменения.

5. Постройте проект заново.

С помощью проводника Windows убедитесь, что файл Report_Class_Lib.dll был скопирован куда нужно и имеет недавнюю дату изменения.

Создание отчета

Теперь можно создать отчет. К нему предстоит добавить ссылку на сборку (экран 2), параметры и выражение. Выполните следующие действия.

 

Экран 2. Добавление ссылки на сборку в отчет

1. Создайте новый отчет с именем Generated Query.

2. Выберите Report Properties («Свойства отчета») из меню Report («Отчет»).

3. В диалоговом окне Report Properties выберите страницу References («Ссылки»).

4. В разделе Add or remove assemblies («Добавить или удалить сборки») нажмите кнопку Add («Добавить»).

5. Нажмите кнопку с многоточием (…) справа от новой строки.

6. В диалоговом окне Add Reference («Добавление ссылки») перейдите на вкладку Browse («Обзор») и найдите файл Report_ClassLib.dll в папке доверенных сборок.

7. Выделите файл Report_ClassLib.dll и нажмите кнопку OK, чтобы добавить reference.

8. В разделе Add or remove classes («Добавить или удалить классы») страницы References нажмите кнопку Add.

9. В поле под столбцом Class Name («Имя класса») введите Report_Class_Lib.ReportLib.

10. В поле под столбцом Instance Name («Имя экземпляра») введите m_ReportLib. Это псевдоним имени класса, который будет использоваться в отчете.

11. В окне Report Data («Данные отчета») в левой стороне конструктора отчетов щелкните правой кнопкой мыши узел Parameters, чтобы добавить новый параметр.

13. Воспользуйтесь окном Report Parameters («Параметры отчета»), чтобы добавить каждый параметр. Используйте информацию из таблицы, чтобы задать имя, приглашение, тип и значение каждого параметра по умолчанию.

 

14. Для параметра SalesQuery установите видимость Hidden («Скрытый») на странице General («Общие») в диалоговом окне Report Parameters («Параметры отчета»), а затем перейдите на страницу Default Value («Значение по умолчанию»).

15. Выберите Specific values («Определенные значения»), чтобы добавить значение по умолчанию.

16. Нажмите кнопку Expression («Выражение») (fx) справа от раскрывающегося списка.

17. Введите следующий текст, а затем поместите курсор между скобками:

=Code.m_ReportLib.SalesQuery( )

18. Выберите Parameters («Параметры») из списка Category («Категория») и дважды щелкните параметр YearFrom, чтобы добавить reference в выражение. Введите после этого текста запятую с последующим пробелом.

19. Используйте ту же процедуру для ввода дополнительных параметров, необходимых для построения следующего выражения (без возвратов каретки):

=Code.m_ReportLib.SalesQuery(Parameters!YearFrom.Value
, Parameters!YearTo.Value, Parameters!Country.Value
, Parameters!MaxRows.Value, Parameters!IncludeFreight.Value)

20. Нажмите кнопку OK, чтобы сохранить выражение.

21. Добавьте текстовое поле к отчету.

22. Щелкните правой кнопкой мыши текстовое поле и выберите пункт Expression («Выражение»).

23. Используйте Expression Builder («Построитель выражений»), чтобы присвоить выражению текстового поля следующее значение:

=Parameters!SalesQuery.Value

24. Просмотрите сформированный запрос. Он будет показан в текстовом поле, как на экране 3.

 

Экран 3. Предпросмотр сгенерированного отчета

25. Убедитесь в правильности синтаксиса сформированного запроса. Он должен быть следующим:

  • ВЕРХНЕЕ значение должно быть задано параметром MaxRows;
  • столбец Freight должен войти в список столбцов, так как параметру IncludeFreight присвоено значение True;
  • значения YearFrom и YearTo в предложении WHERE должны соответствовать значениям параметров YearFrom и YearTo, соответственно;
  • предложение WHERE не должно содержать столбца SalesTerritoryCountry, так как параметру Country присвоено значение All.

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

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

Использование сформированного запроса для создания набора данных отчета

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

  1. Разверните отчет на сервере отчетов и запустите отчет.
  2. Пока отчет выполняется в браузере, выделите все содержимое текста параметра SalesQuery, показанное в верхней части отчета, и скопируйте сценарий SQL в буфер обмена.
  3. В конструкторе отчетов перейдите в представление конструирования.
  4. Добавьте источник данных, чтобы подключиться к базе данных AdventureWorksDW2012. Можно использовать встроенный или общий источник данных.
  5. Добавьте новый встроенный набор данных к отчету и назначьте набору данных имя ReportData.
  6. В диалоговом окне Properties набора данных вставьте скопированный сценарий SQL в поле Query («Запрос»).
  7. Нажмите кнопку OK. Обратите внимание, что конструктор отчетов выполняет запрос, чтобы сформировать список полей набора данных.
  8. Разверните список полей набора данных на панели Report Data.
  9. Добавьте таблицу в текст отчета.
  10. Переместите с помощью мыши поля CalendarYear и MonthNumberOfYear на панель Row Groups («Группы строк») в нижней части конструктора.
  11. Измените ячейку заголовка строки MonthNumberOfYear в таблице, чтобы показать поле MonthName.
  12. Переместите с помощью мыши поле SalesTerritoryCountry в первую открытую ячейку сведений в таблице.
  13. Отредактируйте группу Details на панели Row Groups. Добавьте группу с использованием поля SalesTerritoryCountry.
  14. Переместите с помощью мыши поля SalesAmt и Freight в ячейки сведений таблицы.
  15. В целях отладки измените значение параметра SalesQuery на Visible, но обязательно скройте его после завершения отладки. В противном случае отчет не будет выполняться корректно.

Функционально отчет завершен, но в нем есть ряд уязвимых мест. Разработчики служб SSRS предусмотрели несколько мер безопасности, но не играйте с огнем. В этот пример не нужно вносить изменений, а при внедрении в производство рекомендуется изучить материал раздела «Безопасность — в первую очередь», чтобы исключить возможность атаки путем внедрения кода SQL.

Динамическое скрытие столбца Freight

Возможность выборочно показывать или скрывать различные столбцы — первый шаг к тому, чтобы возложить на один отчет функции многих отчетов. Чтобы показать, как это делается, динамически скроем столбец Freight. Выполните следующие действия в конструкторе отчетов.

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

2. Щелкните правой кнопкой мыши серый заголовок для столбца Freight и выберите пункт Column Visibility.

3. В диалоговом окне Column Visibility выберите переключатель с меткой Show or hide based on an expression («Показать или скрыть в зависимости от выражения»).

4. Откройте диалоговое окно Expression Builder («Построитель выражений») и введите выражение

=(Fields!Freight.IsMissing).

5. Нажмите кнопки OK, чтобы сохранить и закрыть диалоговые окна Expression Builder и Column Visibility («Видимость столбца»).

Изменение набора данных для использования сформированного кода

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

1. На панели Report Data дважды щелкните ReportDatadataset.

2. В диалоговом окне Dataset Properties («Свойства набора данных») нажмите кнопку Expression («Выражение») (fx) рядом с полем Query («Запрос»).

3. В диалоговом окне Expression Builder замените текст команды ссылкой на параметр SalesQuery:

=Parameters!SalesQuery.Value

4. Нажмите кнопку OK, чтобы сохранить и закрыть диалоговые окна Expression Builder и Dataset Properties.

5. Убедитесь, что параметр SalesQuery имеет значение Hidden.

6. Измените свойство Hidden, чтобы скрыть текстовое поле, в котором показано значение параметра SalesQuery.

7. Просмотрите отчет и поэкспериментируйте с различными значениями параметра. Образец отчета показан на экране 4.

 

Экран 4. Предпросмотр отчета

Отладка запроса

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

Если вас не устраивают полученные результаты, следует сначала нажать кнопку Refresh («Обновить») на инструментальной панели отчетов, чтобы очистить кэш выполнения и перезапустить запрос. SSRS устроен так, что прошлые результаты сохраняются в кэше.

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

Безопасность — в первую очередь

Всегда, когда запрос формируется из данных пользовательского ввода, необходимо обратить внимание на безопасность. Внедрение кода SQL — метод, используемый хакерами для несанкционированного доступа к данным и компонентам сервера базы данных. Службы SSRS менее уязвимы для атак путем внедрения кода SQL благодаря ряду встроенных мер безопасности, однако важно проявлять осторожность при использовании параметров, открытых для таких запросов.

Необходимо убедиться, что учетная запись пользователя, применяемая источником данных, имеет доступ только для чтения и только к данным, необходимым для отчета. Также нужно быть аккуратным с параметрами с текстовым типом данных. Числовые, логические данные и даты обычно не представляют угрозы, так как вместо их значений нельзя подставить сценарий. При возможности скрывайте параметры с текстовыми данными. Для параметров, которые должны быть видимыми и требуют текстовых значений, используйте специализированную функцию, чтобы проверять текстовые значения. Разрешайте только определенные значения и отсекайте строки, ограничивая их максимальную длину.

Используйте политики исключений безопасности

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

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

Реализация политики исключений безопасности — задача управления, которую требуется тщательно продумать перед внедрением в производство. Прежде чем просить администратора корпоративных серверов о реализации политик исключений безопасности для компонента, следует четко разъяснить, для каких целей может использоваться компонент и почему исключение — обязательная часть решения. В статьях MSDN «Code Access Security in Reporting Services» и «Using Reporting Services Security Policy Files» подробно объясняются критерии и показано, как создать необходимые группы кода и именованные наборы разрешений.

Полезный метод

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

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

Листинг 1. Создание представления

USE AdventureWorksDW2012
GO
CREATE view dbo.vSalesByTimeAndTerritory AS
SELECT top 100 percent
d.CalendarYear
, d.CalendarQuarter
, d.MonthNumberOfYear
, d.EnglishMonthName MonthName
, st.SalesTerritoryGroup
, st.SalesTerritoryRegion
, st.SalesTerritoryCountry
, sum(s.SalesAmount) SalesAmt
, sum(s.OrderQuantity) OrderQty
, sum(s.Freight) Freight
FROM
FactResellerSales s inner join DimDate d
on s.OrderDateKey = d.DateKey
inner join DimSalesTerritory st
on s.SalesTerritoryKey = st.SalesTerritoryKey
GROUP BY
d.CalendarYear
, d.CalendarQuarter
, d.MonthNumberOfYear
, d.EnglishMonthName
, st.SalesTerritoryGroup
, st.SalesTerritoryRegion
, st.SalesTerritoryCountry
ORDER BY
d.CalendarYear
, d.CalendarQuarter
, d.MonthNumberOfYear
, st.SalesTerritoryGroup
, st.SalesTerritoryRegion
, st.SalesTerritoryCountry
GO

Листинг 2. Создание функции SalesQuery

' Note that the line continuations are included only
' so that the code fits on the page.
Public Function SalesQuery(ByVal YearFrom As Integer,
ByVal YearTo As Integer, ByVal Country As String,
ByVal MaxRows As Integer,
ByVal IncludeFrieght As Boolean) As String
Dim sSelect As String = «SELECT TOP» & MaxRows.ToString() _
& «CalendarYear, CalendarQuarter, MonthNumberOfYear,» _
& «MonthName, SalesTerritoryCountry,» _
& «SUM(SalesAmt) AS SalesAmt, SUM(OrderQty) AS OrderQty»
Dim sFrom As String = «FROM vSalesByTimeAndTerritory»
If IncludeFrieght Then sSelect &= «, SUM(Freight) AS Freight»
Dim sWhere As String = ««
If YearFrom  -1 Then sWhere =»(CalendarYear BETWEEN «_
& YearFrom.ToString() _
&» AND «& YearTo.ToString() &») «
If Country »All«Then
If sWhere =»«Then
sWhere &=»SalesTerritoryCountry = '«& Country &»' «
Else
sWhere &=» AND SalesTerritoryCountry = '«_
& Country &»' «
End If
End If
If sWhere »«Then sWhere =»WHERE «& sWhere
Dim sGroupBy As String =»GROUP BY CalendarYear, «_
&»CalendarQuarter, M

SQL Server Integration Services (SSIS) для начинающих – часть 1 / Хабр

→ Часть 2
→ Часть 3

SSIS – это инструмент, который позволяет в удобном виде реализовать интеграцию, т.е. реализовать процесс переноса данных из одного источника в другой. Этот процесс иногда называют ETL (от англ. Extract, Transform, Load – дословно «извлечение, преобразование, загрузка»).

Думаю, данный практический курс будет полезен тем, кто хочет изучить SSIS и не знает с чего начать. Здесь в режиме Step By Step мы начнем с самого начала, т.е. установки всего необходимого.

Дальше будет очень много картинок!

Необходимые инструменты для изучения SSIS

В данной статье SSIS будет рассматриваться на примере SQL Server 2014 Developer Edition. Службы Integration Services доступны в SQL Server 2014 начиная с редакции Standard.

Дополнительно необходимо будет скачать и установить инструмент разработчика SQL Server Data Tools (SSDT).

SSDT – это расширение для Visual Studio, которое позволит создавать проекты необходимого нам типа.

Для облегчения процесса установки, я воспользуюсь SSDT для Visual Studio 2012 (VS2012), его можно скачать по ссылке (файл «SSDTBI_VS2012_x86_ENU.exe»):
www.microsoft.com/en-US/download/details.aspx?id=36843

По описанию, данная версия SSDT поддерживает следующие версии SQL Server: SQL Server 2014, SQL Server 2012, SQL Server 2008 и 2008 R2.

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

Установка SQL Server и SSDT

Первым делом установим SQL Server со всеми необходимыми компонентами.

Я все устанавливал на чистую Windows 7 SP 1 (x64), ничего дополнительного кроме указанного ниже устанавливать не придется.

Т.к. курс предназначен для начинающих, то распишу весь процесс установки подробно.

Запускаем установочный файл SQL Server 2014:

Для работы SSIS достаточно будет выбрать следующие компоненты:

Т.к. мне в дальнейшем понадобится Analysis Services (SSAS), то я отметил и его, если он вам не нужен вы можете не выбирать данный компонент.

У меня нет других установленных SQL Server, и я сделаю этот экземпляр используемым по умолчанию:

Сделаю, чтобы SQL Agent запускался автоматически:

При необходимости можно изменить Collation, который будет использоваться по умолчанию:

Установлю смешанный режим аутентификации, указав свой пароль для пользователя sa:

Т.к. я еще выбрал Analysis Services, то делаю настройки для него:

Нажимая Next и Install запускаем установку SQL Server и его компонент.

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

Следующим шагом установим SSDT – это расширение для Visual Studio, которое даст нам возможность создавать проекты SSIS. Установщик SSDT ставит минимальную версию оболочки VS, поэтому предварительно устанавливать VS отдельно нет надобности.

Запускаем «SSDTBI_VS2012_x86_ENU.exe», и добравшись до следующего шага выбираем следующий пункт:

Нажимая Next запускаем установку.

После завершения установки на всякий случай перезагружаем компьютер.

Это все, что нам понадобится для изучения SSIS.

Создание демонстрационных баз данных

Запустим SQL Server Management Studio (SSMS) и при помощи скрипта создадим 3 базы данных – первые две (DemoSSIS_SourceA и DemoSSIS_SourceB) будут выступать в роли источников данных, а третья (DemoSSIS_Target) в роли получателя данных:

-- первая БД выступающая в роли источника данных
CREATE DATABASE DemoSSIS_SourceA
GO

ALTER DATABASE DemoSSIS_SourceA SET RECOVERY SIMPLE 
GO

-- вторая БД выступающая в роли источника данных
CREATE DATABASE DemoSSIS_SourceB
GO

ALTER DATABASE DemoSSIS_SourceB SET RECOVERY SIMPLE 
GO

-- БД выступающая в роли получателя данных
CREATE DATABASE DemoSSIS_Target
GO

ALTER DATABASE DemoSSIS_Target SET RECOVERY SIMPLE 
GO

В базах источниках создадим тестовые таблицы и наполним их тестовыми данными:

USE DemoSSIS_SourceA
GO

-- продукты из источника A
CREATE TABLE Products(
  ID int NOT NULL IDENTITY,
  Title nvarchar(50) NOT NULL,
  Price money,
CONSTRAINT PK_Products PRIMARY KEY(ID)
)
GO

-- наполняем таблицу тестовыми данными
SET IDENTITY_INSERT Products ON

INSERT Products(ID,Title,Price)VALUES
(1,N'Клей',20),
(2,N'Корректор',NULL),
(3,N'Скотч',100),
(4,N'Стикеры',80),
(5,N'Скрепки',25)

SET IDENTITY_INSERT Products OFF
GO
USE DemoSSIS_SourceB
GO

-- продукты из источника B
CREATE TABLE Products(
  ID int NOT NULL IDENTITY,
  Title nvarchar(50) NOT NULL,
  Price money,
CONSTRAINT PK_Products PRIMARY KEY(ID)
)
GO

-- наполняем таблицу тестовыми данными
SET IDENTITY_INSERT Products ON

INSERT Products(ID,Title,Price)VALUES
(1,N'Ножницы',200),
(2,N'Нож канцелярский',70),
(3,N'Дырокол',220),
(4,N'Степлер',150),
(5,N'Шариковая ручка',15)

SET IDENTITY_INSERT Products OFF
GO

Создадим таблицу в принимающей базе:

USE DemoSSIS_Target
GO

-- принимающая таблица
CREATE TABLE Products(
  ID int NOT NULL IDENTITY,
  Title nvarchar(50) NOT NULL,
  Price money,
  SourceID char(1) NOT NULL, -- используется для идентификации источника
  SourceProductID int NOT NULL, -- ID в источнике
CONSTRAINT PK_Products PRIMARY KEY(ID),
CONSTRAINT UK_Products UNIQUE(SourceID,SourceProductID),
CONSTRAINT CK_Products_SourceID CHECK(SourceID IN('A','B'))
)
GO

Создание SSIS проекта

Запустим Visual Studio 2012 и выберем один из видов предлагаемой нам настройки среды, так здесь же я откажусь от локальной документации:

Создадим новый проект (File -> New -> Project…):

Для последующего облегчения развертывания зайдем в свойства проекта и изменим опцию ProtectionLevel на DontSaveSensitive:

То же самое сделаем в свойствах пакета, который создался по умолчанию:

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

Создадим соединения:

Заполняем параметры соединение с БД:

Боевые параметры соединения в дальнейшем можно будет настроить при создании задачи SQL Server Agent.

Для удобства я переименую название соединения на SourceA:

Таким же образом создадим и переименуем соединения для баз DemoSSIS_SourceB и DemoSSIS_Target:

Переименуем пакет, созданный по умолчанию, в «LoadProducts.dtsx»:

Сначала напишем простую логику, которая будет полностью очищать таблицу Products в базе DemoSSIS_Target и снова загружать в нее данные из двух баз данных DemoSSIS_SourceA и DemoSSIS_SourceB.

Для очистки воспользуемся компонентом «Execute SQL Task», который мы при помощи мыши создадим в области «Control Flow»:

Для наглядности можно переименовать название компонент. Зададим ему имя «Delete All Products From Target»:

Для этой цели используется свойство Name.

Дважды щелкнем на этом элементе и пропишем следующие свойства:

Т.к. TSQL команда «TRUNCATE TABLE Products» ничего не возвращает оставим свойства ResultSet равным None.

В дальнейшем мы рассмотрим, как пользоваться параметрами и каким образом можно воспользоваться результатом выполнения команды, записанной в SQLStatement, а пока попытаемся увидеть всю картину как это работает в целом.

Теперь скинем в область «Control Flow» компонент «Data Flow Task» и переименуем его в «Load Products From Source A», а также протянем к этому компоненту зеленную стрелку от «Delete All Products From Target»:

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

Щелкнув дважды на «Load Products From Source A» мы попадаем в область «Data Flow» этого элемента.

Data Flow Task – это сложный компонент, который имеет свою область, в которой создаются вложенные элементы для работы с потоком данных.

Скинем в эту область компонент «Source Assistant»:

Этот компонент отвечает за получение данных из источника. Дважды щелкнув по нему, мы сможем настроить его:

Пока воспользуемся режимом «Data access mode» равным «Table or view». Это приведет к получению всех строк из таблицы Products. Посмотреть данные можно нажав на «Preview…».

На закладке Columns мы можем выбрать только необходимые нам колонки и при необходимости переименовать их прописав новое имя в колонке «Output Columns»:

Для получателя нужна еще одна дополнительная колонка SourceID, добавим ее к выходному набору при помощи компонента «Derived Column», который переименуем в «Add SourceID», так же протянем синюю стрелку к данному элементу от «OLE DB Source»:

Дважды щелкнем по элементу «Add SourceID» и пропишем значение «A» в виде константы:

Здесь я воспользовался функцией преобразования типа (DT_STR,1,1251) для того чтобы превратить Unicode строку в ANSI.

Теперь создадим компонент «Destination Assistant»:

Направим в него поток от «Add SourceID»:

Дважды щелкнем по «OLE DB Destination» и произведем настройки:

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

«Keep identity» используется в случае если в принимающей таблице есть поле с флагом IDENTITY и мы хотим, чтобы значения в него тоже записывались из источника (это аналогично включению опции SET IDENTITY_INSERT Products ON).

Перейдя на закладку Mappings осуществим привязку полей источника с полями получателя:

Так как у нас поля источника и приемника именуются одинаково, то привязка осуществилась автоматически.

Можем протестировать работу пакета и убедиться, что данные залились в таблицу Products базы DemoSSIS_Target.

Запускаем пакет на выполнение из Visual Studio нажав Start или клавишу F5:

Так же пакет можно выполнить, воспользовавшись командой из контекстного меню:

При помощи «Set as StartUp Object» можно задать пакет, который будет запускаться по нажатию на Start (F5).

Какой пакет будет запускаться при нажатии на Start (F5) можно переопределить в свойствах проекта:

По умолчанию будет запускаться пакет открытый в текущий момент, об этом говорит значение StartObjectID равное <Active Package>.

Запустив проект мы должны увидеть следующую картину:

Пакет выполнился без ошибок, о чем говорит зеленый значок и текст в нижней части.

В случае наличия ошибок их можно будет увидеть вкладке Progress.

Нажмем на ссылку «Package execution completed…» или на кнопку «Stop Debugging» расположенную на панели инструментов для остановки выполнения пакета.

Выполним запрос:

USE DemoSSIS_Target
GO

SELECT *
FROM Products

И убедимся, что данные были записаны в принимающую таблицу.

Перейдем в область «Control Flow» и создадим еще один компонент «Data Task Flow», который назовем «Load Products From Source B», протянем на него зеленную стрелку от «Load Products From Source A»:

Двойным щелчком зайдем в область «Data Flow» этого элемента и создадим «Source Assistant»:

Дважды щелкнув на этом элементе, настроим его по-другому:

Выберем режим «SQL command» и пропишем следующий запрос:

SELECT
  ID SourceProductID,
  'B' SourceID,
  Title,
  Price
FROM Products

Дальше сразу создадим компонент «Destination Assistant» и протянем на него синюю стрелку от «OLE DB Source»:

Двойным щелчком зайдем в редуктор этого элемента и настроим его:

Запустим проект на выполнение и убедимся, что данные с двух источников попали в таблицу в базе Target:

USE DemoSSIS_Target
GO

SELECT *
FROM Products

Дополнительно в контекстном меню стрелки можно активизировать «Data Viewer»:

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

Для продолжения выполнения пакета нужно нажать на кнопку со стрелкой или просто закрыть окно просмотра данных.

Для отключения этой функции в контекстном меню стрелки выбираем «Disable Date Viewer»:

Для первой части думаю этого будет достаточно.

Создадим сборку:

В результате мы получим файл «C:\SSIS\SSISDemoProject\bin\Development\SSISDemoProject.ispac».

Рассмотрим каким образом делается развертывание этого проекта на SQL Server.

Развертывание SSIS

Все последующие действия будем делать в SSMS.

Создание каталога SSISDB:

Здесь вводим любой пароль.

Теперь создаем папку, в которой будет располагаться наш проект:

Разворачиваем сам проект:

В завершении мы должны увидеть следующую картину:

После обновления (F5) мы увидим наш проект:

Создание задачи в SQL Server Agent

Создадим задачу в SQL Agent, для выполнения пакета по расписанию:

Создаем новый шаг:

На вкладке «Configuration → Parameters» можно задать параметры пакета (их рассмотрим в следующих частях).

На вкладке «Configuration → Connection Manager» мы можем изменить параметры подключения для каждого соединения, которое мы создали в проекте:

На закладке Advanced можно изменить логику, которая будет использоваться при успешном или неуспешном завершении шага:

Шаг создан:

Осталось создать расписание для данной задачи:

Расписание можно задать разнообразным образом. Думаю, здесь все должно быть интуитивно понятно:

Все, задача создана.

Делаем тестовый запуск:

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

Результат выполнения задачи можно увидеть в следующем журнале:

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

Более подробный отчет о выполнении пакета можно посмотреть при помощи следующего отчета:

Заключение по первой части

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

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

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

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

Хороших выходных! Удачи!

→ Часть 2

Знакомство с MS SQL Server Reporting Services

Общий обзор

Для того чтобы начать работу с учёбными материалами Вы должны запустить виртуальную машину.

Сведения для входа:

Логин: Administrator

Пароль: !ssrs!

Также для целей тестирования доступа Вам могут понадобиться другие учётные записи:

«Accountant», «scala». Пароль: «ssrs»

Войдите в систему как «Administrator». Запустите Internet Explorer. При первом запуске Вам придётся подождать пару минут, в дальнейшем отображение страниц будет происходить быстрее. Вы попадёте на главную страницу нашего локального «Сервера отчётности»:

В корневой папке отображены 4 подпапки. На самом деле их больше, только часть из них скрыта. Вы можете увидеть скрытые объекты, если нажмёте на «Показать подробности». Сейчас мы обладаем правами администратора и видим всё. Другие пользователи увидят только те объекты, куда им предоставлен доступ.

Определимся с тем, что представляет собой MS SQL Server Reporting Services. А является он следующим:

  • Средством хранения отчётов и других компонентов. Все отчёты, источники данных хранятся в базе данных MS SQL.
  • Средством создания, доставки и распространения отчётов. Отчёты могут «запускаться» пользователем «онлайн» или по расписанию и доставляться в виде «слепков» в заранее определённую сетевую папку или по электронной почте.
  • Средством доступа к отчётам, интегрированным с правами доступа сети.
  • Средством «запуска» «внешних» процедур

Прежде всего, поговорим о правах доступа. Наиболее удобно организовать доступ к папкам на основе групповых политик, когда Вы даёте доступ на папку определённой группе пользователей по смыслу, например, на папку «Accountants» группе «Accountants», а также тем, кто «над ними», например, «GeneralManagement».

Также удобно, размещать в папке не сам отчёт, а так называемый «связанный отчёт» (linked report). В чём удобство? А в том, что Вы можете создать один отчёт (оригинал) и создать на него несколько «ярлыков» (связанных отчётов), разместив их в разных папках. Для связанных отчётов могут быть указаны свои значения по умолчанию, причём Вы сможете часть параметров скрыть. Например, один и тот же отчет, имеющий в оригинале параметр «Код компании» может иметь 2 связанных отчёта, размещённых в 2-х разных папках, в одну из которых имеют доступ пользователи компании 01, в другую – компании 02. Соответственно для связанного отчета в первой папке мы можем скрыть параметр «Код компании», установив значение по умолчанию «01», для отчёта во второй папке значение по умолчанию будет «02». Таким образом, при запуске из первой папки отчёт будет показывать данные из компании 01, из второй – данные компании 02.

Права на папки даны таким образом, чтобы отчёты в папке «Компания 01» были доступны тем, кто вправе видеть информацию из компании 01, а в папке «Компания 02» — соответственно информацию из компании 02. Для того чтобы проверить, кто имеет доступ в определённую папку и какого рода, достаточно перейти в нужную папку, щёлкнуть сначала на закладке «Свойства», затем на ссылке «Безопасность»:

Как видно на картинке выше, доступ в папку «Компания 02» имеют пользователи, входящие в группу администраторов с правами «Диспетчер содержимого» (Позволяет управлять содержимым на сервере отчетов. Содержимое включает папки, отчеты и ресурсы), а также пользователи, входящие в группу «iScalaCompany02» с правами «Обозреватель» (Позволяет просматривать папки, отчеты и подписываться на отчеты). Лучше всего для управления доступом к различным папкам использовать именно групповые политики.

Возвращаясь к теме «связанных» отчётов: если Вам понадобится внести изменение в отчёт, Вы должны будете заменить его лишь в одном месте – месте хранения оригинала. Более подробно мы рассмотрим такой пример в практической части.

Кроме «связанных» отчетов можно использовать подотчёты, а также «сворачивать» информацию в интерактивном режиме, переходить по ссылке из одного отчёта в другой. С этими возможностями мы познакомимся в практической части нашего обучения.

Об отчётах по использованию отчётов и об отчётах «выполняющих действие» мы поговорим, когда будем знакомиться с примерами практического использования Reporting Services в компаниях-клиентах Epicor|Scala.

В качестве первого знакомства с «Сервером Отчётности» Вам предлагается запустить упоминавшийся выше отчёт по таблицам и полям iScala. Чтобы найти его, перейдите в папку «IT». Можно также найти данный отчёт, если Вы введёте слова «Описание полей» в поле «Искать» и нажмёте кнопку «Перейти». Вы получите результат, где будет 2 отчёта с одинаковым именем и описанием. Если включить подробности, то можно увидеть, что они расположены в разных папках, а пиктограммы, обозначающие тип отчёта также отличаются. Один из отчётов является оригиналом, второй – связанным отчётом:

Загрузите любой из найденных отчётов и опробуйте его в работе.

Содержание:

SQL Server Reporting Services (SSRS) Учебное пособие для начинающих

  • Home
  • Testing

      • Back
      • Agile Testing
      • BugZilla
      • Cucumber
      • 000
      • JB 9000 Testing 9000 Testing
      • Назад
      • JUnit
      • LoadRunner
      • Ручное тестирование
      • Мобильное тестирование
      • Mantis
      • Почтальон
      • QTP
      • Назад
      • Центр качества SAP
      • SoapUI
      • Управление тестированием
      • TestLink
  • SAP

      • Назад
      • ABAP
      • APO
      • Начинающий
      • Basis
      • BODS
      • BI
      • BPC
      • CO
      • Назад
      • CRM
      • Crystal Reports
      • MMO
      • Crystal Reports
      • Заработная плата
      • Назад
      • PI / PO
      • PP
      • SD
      • SAPUI5
      • Безопасность
      • Менеджер решений
      • Successfactors
      • SAP Back Tutorials
      • 9007
          • Apache
          • AngularJS
          • ASP.Net
          • C
          • C #
          • C ++
          • CodeIgniter
          • СУБД
          • JavaScript
          • Назад
          • Java
          • JSP
          • Kotlin
          • Linux
          • Linux
          • Kotlin
          • Linux
          • js

          • Perl
          • Назад
          • PHP
          • PL / SQL
          • PostgreSQL
          • Python
          • ReactJS
          • Ruby & Rails
          • Scala
          • SQL
          • 000

          • SQL
          • 000

            0003 SQL

            000

            0003 SQL

            000

          • UML
          • VB.Net
          • VBScript
          • Веб-службы
          • WPF
      • Обязательно учите!

          • Назад
          • Бухгалтерский учет
          • Алгоритмы
          • Android
          • Блокчейн
          • Business Analyst
          • Создание веб-сайта
          • CCNA
          • Облачные вычисления
          • 00030003 COBOL 9000 Compiler
              9000 Встроенные системы

            • 00030002 9000 Compiler 9000
            • Ethical Hacking
            • Учебники по Excel
            • Программирование на Go
            • IoT
            • ITIL
            • Jenkins
            • MIS
            • Сеть
            • Операционная система
            • Назад
            • Управление проектами Обзоры
            • Salesforce
            • SEO
            • Разработка программного обеспечения
            • VB A
        • Big Data

            • Назад
            • AWS
            • BigData
            • Cassandra
            • Cognos
            • Хранилище данных
            • 0003

            • HBOps
            • 0003

            • HBOps
            • 0003

            • MicroStrategy
            • MongoDB

        .

        Top 20 SSRS Интервью Вопросы и ответы

        • Home
        • Testing

            • Back
            • Agile Testing
            • BugZilla
            • Cucumber
            • Database Testing
            • ETL Testing Назад
            • JUnit
            • LoadRunner
            • Ручное тестирование
            • Мобильное тестирование
            • Mantis
            • Почтальон
            • QTP
            • Назад
            • Центр качества (ALM)
            • SAP Testing
            • Управление тестированием
            • TestLink
        • SAP

            • Назад
            • ABAP
            • APO
            • Начинающий
            • Basis
            • BODS
            • BI
            • BPC
            • CO
            • Назад
            • CRM
            • Crystal Reports
            • QM4000
            • QM4
            • Заработная плата
            • Назад
            • PI / PO
            • PP
            • SD
            • SAPUI5
            • Безопасность
            • Менеджер решений
            • Successfactors
            • Учебники SAP

              • Apache
              • AngularJS
              • ASP.Net
              • C
              • C #
              • C ++
              • CodeIgniter
              • СУБД
              • JavaScript
              • Назад
              • Java
              • JSP
              • Kotlin
              • Linux
              • Linux
              • Kotlin
              • Linux
              • js

              • Perl
              • Назад
              • PHP
              • PL / SQL
              • PostgreSQL
              • Python
              • ReactJS
              • Ruby & Rails
              • Scala
              • SQL
              • 000

              • SQL
              • 000

                0003 SQL

                000

                0003 SQL

                000

              • UML
              • VB.Net
              • VBScript
              • Веб-службы
              • WPF
          • Обязательно учите!

              • Назад
              • Бухгалтерский учет
              • Алгоритмы
              • Android
              • Блокчейн
              • Business Analyst
              • Создание веб-сайта
              • CCNA
              • Облачные вычисления
              • 00030003 COBOL 9000 Compiler
                  9000 Встроенные системы

                • 00030002 9000 Compiler 9000
                • Ethical Hacking
                • Учебники по Excel
                • Программирование на Go
                • IoT
                • ITIL
                • Jenkins
                • MIS
                • Сеть
                • Операционная система
                • Назад
                • Управление проектами Обзоры
                • Salesforce
                • SEO
                • Разработка программного обеспечения
                • VB A
            • Big Data

                • Назад
                • AWS
                • BigData
                • Cassandra
                • Cognos
                • Хранилище данных
                • 0003

                • HBOps
                • 0003

                • HBOps
                • 0003

                • MicroStrategy
                • MongoDB

            .

            SSIS против SSRS: в чем разница?

            SSIS

            и SSRS являются частью SQL Server, но имеют очень разные способы использования и функции.

            Краткий ответ на вопрос «В чем основное различие между ними?» Службы SSIS предназначены в первую очередь для перемещения и преобразования данных, SSRS — для отчетов.

            Для тех, кто предпочитает более подробные объяснения, здесь представлен более подробный список основных вариантов использования и функций SSIS и SSRS.

            Что такое SSIS?

            Пакет SSIS в разработке.
            В более старых версиях SQL Server (до 2005 г.) предшественник SSIS в том виде, в каком мы его знаем сегодня, назывался DTS.

            SSIS используется для:

            • Хранилище данных
            • Накачка данных
            • Процессы ETL

            Что такое SSRS?

            Отчет SSRS, создаваемый в Business Intelligence Studio
            MS, хорошо описывает его: «Службы Reporting Services — это серверная платформа для создания отчетов, которая обеспечивает комплексные функции отчетности для различных источников данных».

            SSRS впервые появился на сцене после SQL 2000.

            SSRS используется для:

            • Разработка отчетов
            • Отчетное здание
            • Управление отчетами

            Как получить SSIS и SSRS

            Оба этих продукта поставляются в комплекте с SQL Server, поэтому, чтобы получить их, вам нужно перейти на сайт Microsoft и заняться загрузкой оценочных версий SQL Server

            .

            Лучший ресурс, курс или веб-сайт, чтобы узнать больше о SSIS и SSRS

            Серия SQL Server Central stairway to SSIS — отличная отправная точка для тех, кто хочет узнать больше о всех тонкостях SSIS.

            Для тех из вас, кто хочет узнать больше о SSRS, вот отличный список ресурсов, с которых можно начать.

            .

            Что означает SSRS?

            SSRS

            Единая государственная система регистрации

            Государственный »Государственный и местный

            Оцените:
            SSRS

            SQL Server Reporting Services — и многое другое …

            Оцените:
            SSRS

            Требования к программному обеспечению безопасности

            Вычислительная техника »Программное обеспечение

            Оцените:
            SSRS

            Тайное общество звезд реальности

            Академические и научные »Общества

            Оцените:
            004 SSRS

            Swedish Sea Rescue Общество

            Академия и наука »Общества

            0005

            Оцените:
            SSRS

            Scottish Strategic Rail Study

            Regional »Railroads

            SSRS

            Схема поддержки для сельских специалистов

            Разное »Несекретный

            Оценить:
            SSRS

            9000 Разное 9000 Шкала социальных навыков

            Оцените:
            SSRS

            Школа регби Сагами Шонен

            Спорт »Регби — и многое другое…

            Оцените:
            SSRS

            Scripps System Resource Services

            Разное »Несекретный

            SSRS

            Sequel Server Reporting Services

            Разное »Несекретный

            Оцените это:
            SSRS

            Разное

            Отгрузка системы

            Оцените:
            SSRS

            Система рейтинга социальных навыков

            Разное »Несекретный

            9000 5

            Шкала оценки социальной поддержки

            Разное »Несекретный

            Оцените:
            SSRS

            Программное обеспечение и услуги, связанные с ПО

            8

            Оцените:
            SSRS

            Southern Sierra Research Station

            Academic & Science »Исследования

            Службы отчетов SQL

            Вычислительная техника »Базы данных

            Оцените ее:
            SSRS

            Отчетность SQL Server

            Вычислительная техника» Базы данных

            Крыса e it:
            SSRS

            Sql Server Reporting Service

            Computing »Databases

            Оценить:
            SSRS Оцените:
            SSRS

            Вычтенная сдвинутая рамановская спектроскопия

            Разное» Несекретная

            it:
            SSRS

            Savez Sindikata Republike Srpske

            Разное »Несекретный

            Оценить его:
            Оценить:
            ССР

            Советские Социалистические республики

            Сообщество »История