+7 (495) 229-0436   shopadmin@itshop.ru 119334, г. Москва, ул. Бардина, д. 4, корп. 3
 
 
Вход
 
 
Каталог
 
 
Подписка на новости
Новости ITShop
Windows 7 и Office: Новости и советы
Обучение и сертификация Microsoft
Вопросы и ответы по MSSQLServer
Delphi - проблемы и решения
Adobe Photoshop: алхимия дизайна
 
Ваш отзыв
Оцените качество магазина ITShop.ru на Яндекс.Маркете. Если вам нравится наш магазин - скажите об этом Google!
 
 
Способы оплаты
 
Курс расчета
 
 1 у.е. = 92.51 руб.
 
 Цены показывать:
 
 
 
 
  
Новости, статьи, акции
 

Строим BusinessView. Часть 2

01.06.2011 09:27
Наталья Пригодина

Эта часть статьи - продолжение работы с Business View. Мы рассмотрим использование этого источника данных в случае необходимости использования прямого SQL-запроса.

Построим Business View на другом соединении и основании данных, чтобы в нашем распоряжении были все возможности Transact-SQL. Не будем подробно останавливаться на создании отдельных объектов, так как в первой части этой статьи они были рассмотрены подробно. Приведем здесь только основные скриншоты.

Подключаться мы будем к базе данных MS SQL Server 2005 TEST, знакомой нам по статьям, описывающим решение задачи с "сотрудниками по дням недели".

Здесь решим подобную задачу, добавив к нашим знаниям о Business View информацию о том, каковы возможности использования прямого SQL-запроса.


 

Итак, получаем Соединение данных TEST, которое сохраняем в специально созданной папке TEST.


Добавляем Основание данных TEST, используя подключение Соединение данных TEST.

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

Мы будем рассматривать более сложный пример, когда нам нужны связи OUTER, с одной стороны, от справочника Employee, а другой стороны, от запроса, возвращающего последовательный список дат в определенным периоде (о нем мы подробно говорили в статье "Кросстаб. Готовим данные."). В Business View все стандартные средства установки связей будут препятствовать установке полного пересечения множеств (декартову произведению). Поэтому нам необходимо самостоятельно обеспечить такое сочетание. Здесь мы тоже воспользуемся запросом. Добавляем Команду в наше Основание данных TEST. Тем же самым пунктом меню, как добавляли и таблицы - Вставка / Вставить таблицы данных. Только выбираем в нашем соединении не конкретную таблицу, а элемент дерева "Добавить команду ". Переименовываем ее, используя Обозреватель свойств, в "Сотрудники_по_дням_недели". Отмечу, что пробелы в наименовании недопустимы.

Соединяем получившуюся "табличку" связями с таблицей фактов Action.

Каждую связь настраиваем отдельно. Нам нужны те самые "внешние" OUTER соединения.

Сохраняем получившееся Основание данных TEST. Здесь следует отметить, что при необходимости возможно создать несколько команд-запросов, обеспечивающих нам необходимые "заготовки" для различных отчетов с кросс-таблицами. Например, сотрудники - типы событий, типы событий - даты за период и так далее, практически все справочники могут участвовать в таких отчетах с "элементарной статистикой".

Далее необходимо создать бизнес-элемент, тот объект, который в дальнейшем при создании отчета будет "табличкой" при подключении к источнику данных.

Размещаем поля и переименовываем их:

Сотрудники_по_дням_недели.DT                                 Дата действия

Сотрудники_по_дням_недели.EmployeeId                  Идентификатор сотрудника

Сотрудники_по_дням_недели.EmployeeName            ФИО сотрудника

Action.ActionId                                                               Идентификатор действия

Сохраняем бизнес-элемент как "Действия по сотрудникам и дням недели". Отмечу еще раз, что это должен быть понятный бизнес-термин.

Создаем бизнес-представление Business View, в которое включаем бизнес-элементы, в нашем случае один бизнес-элемент, который мы назвали "Действия по сотрудникам и дням недели".

Называем бизнес-представление BV_Действия сотрудников. Здесь можно собирать все элементы, которые будем создавать в разрезе сотрудников - и отчеты по статистике, и, например, индивидуальные отчеты сотрудника, за день, за месяц и т.д. В этом случае дизайнеры отчета будут знать, что есть представление, куда обращаться, если нужны данные по сотруднику.

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


Прописываем источник данных для отчета

Далее строим кросс-таблицу, используя созданные элементы, названные по-русски, уже как "поля".


 

Ну, и получившийся отчет

Запрос в нем будет выглядеть так:

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

Заданная ранее (см. предыдущие статьи) задача теперь решена 3 способами - прямым запросом, через источник данных Юниверс и через источник данных Репозитория -Бизнес-представление. Для каждого конкретного случая в практической деятельности нужно рассматривать свой механизм, решать, что будет надежнее создано, менее затратно по времени, более выгодно при сопровождении и т.д. Однако стоит отметить, что все эти механизмы позволяют решать такие задачи, и выбор механизма - только за разработчиком.

  
Помощь
Задать вопрос
 программы
 обучение
 экзамены
 компьютеры
Бесплатный звонок
ICQ-консультанты
Skype-консультанты

Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 
Бестселлеры
Курсы обучения "Atlassian JIRA - система управления проектами и задачами на предприятии"
Microsoft Windows 10 Профессиональная 32-bit/64-bit. Все языки. Электронный ключ
Microsoft Office для Дома и Учебы 2019. Все языки. Электронный ключ
Курс "Oracle. Программирование на SQL и PL/SQL"
Курс "Основы TOGAF® 9"
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год. Электронный ключ
Курс "Нотация BPMN 2.0. Ее использование для моделирования бизнес-процессов и их регламентации"
 

О нас
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.

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

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

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



 

О нас

 
Главная
Каталог
Новинки
Акции
Вакансии
 

Помощь

 
Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 

Способы оплаты

 

Проекты Interface Ltd.

 
Interface.ru   ITShop.ru   Interface.ru/training   Olap.ru   ITnews.ru  
 

119334, г. Москва, ул. Бардина, д. 4, корп. 3
+7 (495) 229-0436   shopadmin@itshop.ru
Проверить аттестат
© ООО "Interface Ltd."
Продаем программное обеспечение с 1990 года