Кратко о реальном использовании MS SQL Server Reporting Services в компаниях-клиентах Epicor|Scala

В настоящий момент как минимум десяток клиентов Epicor|Scala в России промышленно используют этот механизм. Самое первое внедрение состоялось в 2005 году в Санкт-Петербурге в компании «СоюзБалтКомплект», о чём Microsoft писал на своём сайте ещё в январе 2006 года: Получить более подробную информацию можно: Статья «Промышленная группа «Союз» выбирает технологию Microsoft SQL Server 2000 Reporting Services … [Подробнее…]

Включение отчётов в меню iScala

Отчёты MS SQL Server Reporting Services могут вызываться из меню iScala. Разумеется, раньше тоже можно было вызывать любые html страницы из меню Скалы, однако, новое здесь состоит в том, что вызывая отчёт из меню, можно автоматически передать некоторые параметры из сессии iScala. Попробуем добавить в меню тот самый матричный отчёт по складу, который был создан … [Подробнее…]

Автоматизация создания связанных отчётов при сложной структуре

При создании связанных отчётов приходится «вручную» копировать их названия и описания, а самое главное, параметры печати родительского отчёта не передаются связанному отчёту, причем изменить их «вручную» с помощью интерфейса невозможно. Разные компании по-разному «обходят» эту проблему, например, написав самостоятельно утилиты создания связанных отчётов или передачи им свойств из «родительского» отчёта. Для знакомства с одним из … [Подробнее…]

Подписки на отчёты

К сожалению, этот вопрос мы сможем рассмотреть только в теории, т.к. на виртуальной машине не представляется возможным развернуть полноценный почтовый сервер, а кроме того, Express версия SQL Server’а, которая используется для Вашего обучения, не содержит этой функциональности. Более подробно Вы сможете познакомиться с этой функциональностью на своём рабочем сервере, сейчас мы лишь кратко познакомимся с … [Подробнее…]

Пользовательские «хотелки»: «А можно сделать сортировку и Автофильтр, как в Excel’е?»

Начнём с того, что сделать, в принципе, можно очень многое, и мы сейчас в этом убедимся. Для этого добавьте к проекту существующий отчёт «SortingAndFilteringExample.rdl». Запустите его на выполнение: Попробуйте задать другие поля для каскадной сортировки, только следует помнить, что нельзя указать дважды одно и то же поле. Разумеется, можно было бы сделать параметр «Сортировка2» зависимым … [Подробнее…]

Использование функций: Как вывести сумму прописью?

Включить в отчёт код с заранее написанными функциями можно двумя способами. Первый – добавить его непосредственно в свойствах отчёта на закладку «Код». Добавьте к проекту существующий отчёт «SumAsStringExample.rdl». Перейдите на закладку «Код» в свойствах отчёта. Посмотрите, какие функции здесь описаны: Вернитесь к макету отчёта: Как можно видеть на картинке выше, вызов функции осуществляется с помощью … [Подробнее…]

Отчёты с многозначными параметрами

Чтобы познакомиться с подобного рода отчётами воспользуемся готовым отчётом «Список подборки подборки для нескольких заказов», который уже размещён на сервере: Добавьте этот существующий отчёт к нашему проекту из папки «Мои документы». Обратите внимание, здесь мы не будем использовать хранимые процедуры, а будем использовать запрос, непосредственно внутри отчёта и использовать конструкцию типа «where o.OR01001 in (@OrderNumbers)». … [Подробнее…]

Альтернативный вариант перехода из отчёта в отчёт: переход к URL-адресу

В окне изменения выражения поля «Перейти к URL-адресу» вставьте следующее выражение: =Globals!ReportServerUrl & «?» & Globals!ReportFolder & «/GLTransaction&rs:Command=Render&CC=01&YY=» & right(year(Fields!TransactionDate.Value),2) & «&TrNo=» & Fields!TransactionNumber.Value При переходе по такой ссылке отчёт будет открыт в окне без навигации (без ссылок на папки, где он находится). Кроме того, отчёт можно открыть в отдельной закладке или отдельном окне. Недостатком … [Подробнее…]

Добавление к проекту существующих отчётов

Для экономии времени воспользуемся 2-мя готовыми отчётами. Сначала добавьте необходимые хранимые процедуры и функции, используя готовые запросы «05_create_usr_RS_GL_Transaction.sql» и «06_create_usr_RS_DetailedCustomerTurnoverByAccountNumber.sql» После этого вернитесь в Visual Studio и щёлкните правой кнопкой мыши на папке «Отчёты» обозревателя решений, затем выберите «Добавить -> Существующий элемент». Перейдите в папку «Мои Документы» и выберите файл «GLTransaction.rdl» После добавления отчёта откройте … [Подробнее…]

Создание отчёта с элементом «Матрица»

Создадим новый отчёт. Для его создания проделайте следующие действия: Создайте хранимую процедуру «usr_RS_StockBalanceMatrix», используя для этого готовый файл «04_create_usr_RS_StockBalanceMatrix.sql» Создайте пустой отчёт и назовите его «StockBalanceMatrix» Создайте в отчёте новый набор данных «StockBalanceMatrix» на базе хранимой процедуры «usr_RS_StockBalanceMatrix» Создайте в отчёте новый набор данных на базе хранимой процедуры «usr_RS_GetCompanies» и привяжите его к параметру отчёта … [Подробнее…]

Добавление параметра «Код компании»

Добавим параметр в наш отчёт, чтобы его можно было использовать с данными любой, а не только «01» компании. Для этого модернизируем хранимую процедуру. Откройте готовый файл «02_alter_usr_RS_StockBalanceSimple.sql» и выполните запрос для БД «ScalaDB»: Перейдём в Visual Studio и щёлкнем на закладке «Данные», затем на пиктограмме «Обновить»: Вам будет предложено ввести значение автоматически добавившегося параметра @CC. … [Подробнее…]

Модификация отчёта

Вернёмся в Visual Studio для того, чтобы откорректировать наш отчёт. Выделите целиком таблицу как объект. Сделайте это по аналогии с тем, как Вы выделяете все поля листа в Excel. После выделения таблицы щёлкните правой кнопкой мыши на рамке выделения и выберите «Свойства» Установите флажки, как на картинке ниже и нажмите «ОК»: Вернувшись обратно, выделите столбец … [Подробнее…]