Office Business Applications

Ключевые сценарии и типовые подходы к реализации. Часть 2

Алексей Федоров

OBA: архитектура и ключевые компоненты

Уровень представления

Использование форм (InfoPath)

Использование регионов форм (Outlook)

Web-компоненты (SharePoint)

Расширение «ленты» (Word, Excel)

Уровень совместной работы и уровень приложения

Выбор между клиентским и серверным кодами

Business Data Catalog

Компоненты связи с данными

Excel Services

Workflow

Уровень данных

Средства разработки

 

В первой части данной статьи (см. КомпьютерПресс № 8’2007) мы выяснили, что такое Office Business Applications, ознакомились с основными задачами, решаемыми с помощью OBA, обсудили возможные уровни таких приложений и рассмотрели ключевые сценарии и основные шаги по созданию Office Business Applications. В этой части нашего обзора речь пойдет об архитектуре Office Business Applications, а также о ключевых компонентах таких приложений.

OBA: архитектура и ключевые компоненты

В плане архитектуры Office Business Applications являются традиционными многоуровневыми (multi-tier) приложениями, в которых можно выделить следующие уровни: клиентский уровень, средний уровень, который включает подуровень приложения и подуровень, отвечающий за хранение бизнес-документов и совместную работу, а также уровень данных. Архитектура типового бизнес-приложения на базе Microsoft Office показана на рисунке.

Для создания Office Business Applications используются различные средства разработки, также показанные на рисунке.

 

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

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

В начало В начало

Уровень представления

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

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

Среди возможных вариантов реализации уровня представления выделим формы InfoPath, электронные таблицы Excel, документы Word, регионы форм в Outlook и web-компоненты.

В начало В начало

Использование форм (InfoPath)

Программный продукт InfoPath 2007 является дизайнером и редактором для Office SharePoint Server 2007. Это средство предоставляет несколько опций для быстрого создания форм, в том числе клиентские формы, информационную панель документов и формы для Workflow.

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

Информационные панели документов представляют собой формы, содержащие поля с метаданными документов и отображаемые в клиентских приложениях. Информационные работники могут использовать такие панели для ввода метаданных, включающих данные о файле, продолжая работать в клиентском приложении Microsoft Office System 2007. Информационные панели документов можно создавать средствами SharePoint Server или в InfoPath 2007.

Формы для Workflow позволяют использовать InfoPath совместно с сервисами документооборота и управления процессами, реализованными в новой версии SharePoint Server 2007. Поддерживается возможность применения форм из клиентских приложений Office или непосредственно через web-браузер.

Более подробно о InfoPath 2007 см. в статье «Работаем с формами — Microsoft Office InfoPath 2007 и Microsoft Office Forms Server» в КомпьютерПресс № 8’2006.

В начало В начало

Использование регионов форм (Outlook)

Регионы форм дают возможность добавить к стандартным формам Outlook 2007 расширенную функциональность. Использование регионов форм позволяет реализовать следующие расширения пользовательского интерфейса:

  • настройка страницы любой стандартной формы по умолчанию;
  • добавление до 30 дополнительных страниц к любой стандартной форме;
  • замена или расширение функциональности любой стандартной формы;
  • отображение нестандартных интерфейсных элементов в панели Reading Pane в дополнение к Inspector’у.

Расположение регионов форм может быть задано в специальном дизайнере, входящем в сосатав Outlook, — Outlook2007 Form Region Designer. Имеется возможность импорта регионов форм в проект по расширению приложения (application-level add-in project) и использования кода на управляемом языке для обработки событий, возникающих при применении регионов форм. Прежде чем перейти к тестированию регионов форм, необходимо задать свойства формы и ассоциировать регион с классом сообщений Outlook.

В начало В начало

Web-компоненты (SharePoint)

Web-компонент (Web part) представляет собой модуль информации, состоящий из панели задач, рамки и информационного наполнения. Страница, называемая Web Part Page, представляет собой web-страницу, содержащую один или более web-компонентов и служащую для консолидации данных — отображения списков, графиков, содержимого других web-страниц, текста, графики и т.п. Используя возможность соединения web-компонентов, мы можем отображать данные в различном виде, выполнять вычисления и отображать их результаты, фильтровать данные в одном компоненте на основе данных из другого компонента — и все это на одной web-странице. Web-компоненты представляют собой базовые блоки для создания решений на платформе Office SharePoint Server 2007 и являются важной частью любого бизнес-приложения на базе Microsoft Office. Web-компоненты, используемые в Office Business Applications, можно разделить на две категории:

  • встроенные web-компоненты — к ним относятся компоненты, входящие в состав Business Data Catalog, компоненты Excel Services, а также компоненты для анализа данных — Business Intelligence Web Parts;
  • дополнительные web-компоненты — их создают разработчики для расширения встроенной функциональности портала. Они используют технологию ASP .NET и могут создаваться средствами Microsoft Visual Studio 2005 и c помощью расширений — Visual Studio Extensions for Windows SharePoint Services v3.
В начало В начало

Расширение «ленты» (Word, Excel)

«Лента» — это новая метафора пользовательского интерфейса, которая предоставляет разработчикам унифицированную модель расширения функциональности таких офисных приложений, как Word 2007 и Excel 2007. Данный интерфейсный элемент обеспечивает объединение связанных команд (в виде интерфейсных компонентов) в группы, размещающиеся в верхней полосе интерфейса. Для выполнения определенных действий группы располагаются на вкладках — многие функции, для доступа к которым раньше использовались меню и панели инструментов, теперь доступны из «ленты». Разработчики могут применять новый интерфейс для добавления или удаления существующих интерфейсных компонентов с целью расширения функциональности или настройки интерфейса для решения специфических задач. Новая модель пользовательского интерфейса позволяет разработчикам поставлять единые «ленты» и панели задач для различных приложений, поддерживающих программные расширения.

Недавно компания Microsoft предоставила возможность лицензирования пользовательского интерфейса Microsoft Office 2007 для использования в приложениях компаний-партнеров. Руководство по созданию интерфейса, схожего по своим эргономическим характеристикам с интерфейсом Microsoft Office 2007, называется «Microsoft Office System 2007 User Interface Design Guidelines» и насчитывает более 120 страниц. Оно доступно для всех разработчиков и компаний, зарегистрировавшихся в программе лицензирования. Подробности — на сайте http://msdn.microsoft.com/officeui.

Более подробно о новом интерфейсе в Office 2007 см. в статьях «Microsoft Office System 2007. Новый пользовательский интерфейс и возможности для разработчиков» в КомпьютерПресс № 10’2006 и «Новый пользовательский интерфейс и возможности для разработчиков. Часть 2» в КомпьютерПресс № 1’2007.

В начало В начало

Уровень совместной работы и уровень приложения

Задача данного уровня — управление совместной работой и обеспечение документоориентированной поддержки совместных действий. К вариантам реализации данного уровня можно отнести библиотеки документов, библиотеки форм, списки и активости на уровне SharePoint. Помимо этого можно использовать сервисы Excel, Workflow, Business Data Catalog и т.п.

По практическим соображениям мы можем объединить этот уровень с уровенем приложения, в задачу которого входит управление бизнес-транзакциями и обеспечение полноты и продолжительности транзакций. К возможным вариантам реализации прикладного уровня можно отнести web-сервисы для доступа к бизнес-приложениям класса SCM, ERP и приложениям предыдущих версий, а также использование сервисов Workflow и Orchestration.

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

В начало В начало

Выбор между клиентским и серверным кодами

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

Стандарт Open XML, используемый и поддерживаемый в Office 2007, позволяет реализовать различные сценарии работы с документами на клиенте и делает возможным включение в состав документов срезов данных. Как известно, ряд приложений, входящих в состав Office 2007, по умолчанию сохраняет файлы в формате Open XML, а пакет обновлений, выпущенный компанией Microsoft, позволяет клиентским приложениями Microsoft Office предыдущих версий читать файлы, сохраненнные в новом формате. Хранение документов в формате XML существенно упрощает создание документов на сервере и манипуляции ими — теперь для таких сценариев не требуется установка клиентских приложений Office на сервере. Новые серверные возможности, такие как заполнение свойств документов, workflow, поиск и ряд других, позволяют существенно расширить область применения Office Business Applications и реализовать возможность работы с офисными документами их серверных процессов. Такие документы могут быть созданы на среднем уровне на лету или могут обрабатыватся на среднем уровне после использования в клиентских приложениях.

Более подробно об Office XML см. в статьях «Office 2007 Open XML Format» в КомпьютерПресс № 6’2006 и «Microsoft Office 2007 Open XML. Часть 2» в КомпьютерПресс № 8’2006.

В начало В начало

Business Data Catalog

Business Data Catalog (BDC) — это один из сервисов платформы Office SharePoint Server 2007, который применяется для интеграции с бизнес-приложениями. Используя BDC, можно отображать данные, извлеченные из бизнес-приложений, в различных элементах Office SharePoint Server 2007 без написания какого-либо кода. BDC — это репозитарий метаданных, позволяющий задавать бизнес-сущности типа клиенты, счета, проводки и т.п. После того как бизнес-сущности описаны, они могут использоваться на web-сайтах и порталах одним из следующих способов:

  • в результатах поиска;
  • в web-компонентах и списках;
  • в механизмах фильтрации;
  • в свойствах документов.

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

Business Data Catalog является ключевым инфраструктурным компонентом, на основе которого реализованы другие возможности работы с бизнес-данными в Office SharePoint Server 2007. BDC обладает встроенной поддержкой отображения данных, извлеченных из баз данных или полученных через web-сервисы. Таким образом, с помощью BDC можно отображать данные, полученные из SAP, Siebel и других бизнес-приложений, либо через web-сервисы, либо из баз данных.

Работа с Business Data Catalog состоит из двух этапов: на первом этапе разработчики описывают интерфейс доступа к бизнес-приложениям, используя модель метаданных, а на втором администраторы регистрируют бизнес-приложения в BDC. После этого бизнес-данные становятся доступными для применения на портале.

В начало В начало

Компоненты связи с данными

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

Библиотеки связей с данными (Data Connectivity Library) — это новый компонент Office SharePoint Server 2007, представляющий собой библиотеку документов, в которой можно публиковать файлы связей с данными. С ее помощью пользователи могут обмениваться ссылками на внешние хранилища данных, управлять такими ссылками и выполнять другие операции, даже не зная технических деталей. Файлы связей с данными легко создавать и обновлять, а разработчики решений могут использовать эти файлы в клиентских приложениях Microsoft Office.

В дополнение к библиотекам связей с данными можно применять BizTalk Adapter Pack — набор адаптеров к приложениям, которые позволяют подключать данные из бизнес-приложений к клиентским компонентам Microsoft Office или к любым другим приложениям, поддерживающим использование web-сервисов.

В начало В начало

Excel Services

Excel Services — это новый компонент Office SharePoint Server 2007, расширяющий возможности Microsoft Office Excel 2007 и позволяющий совместно использовать электронные таблицы, улучшить их управляемость и защищенность, а также реализовать возможность повторного применения моделей, реализованных в электронных таблицах, с помощью масштабируемых серверных вычислений и интерактивного интерфейса на базе web-сервисов.

Ключевыми компонентами Excel Services являются Excel Web Access, Excel Web Services и Excel Calculation Services.

Excel Services обеспечивает коммуникацию между этими тремя компонентами и выполняет балансировку запросов к Excel Calculation Services.

Компоненты Excel Web Access, Excel Web Services и Excel Calculation Services можно разделить на компоненты Excel Web Services, которые используются в web-интерфейсе, и компоненты, которые работают на сервере приложений, — Excel Calculation Services. На сервере приложений также находятся сборки, в которых реализованы функции, расширяющие стандартный набор функций Excel.

Более подробно об Excel Services см. в статье «Основные сценарии использования Excel Services» в КомпьютерПресс № 8’2006.

В начало В начало

Workflow

Используя Workflow, можно управлять любыми компонентами Office SharePoint Server 2007. Простой пример применения Workflow — это получение подтверждения от нескольких пользователей при создании документа. Более сложный пример — сбор информации через формы и ветвление логики Workflow в зависимости от полученных данных. Также можно привести примеры использования Workflow при создании задач для группы пользователей, при отсылке электронной почты определенным ролям с деталями о задаче и при отсылке данных каким-либо внешним адресатам.

Для создания Workflow в Windows SharePoint Services Microsoft предлагаются два средства разработки — Visual Studio 2005 Designer for Windows Workflow Foundation и Office SharePoint Designer 2007. В целом разница между ними заключается в следующем:

  • создание Workflow в Visual Studio 2005 Designer for Windows Workflow Foundation — это задача для профессиональных разработчиков шаблонов Workflow, которые могут быть развернуты на нескольких порталах. Такие шаблоны содержат код и дополнительные активности. После создания шаблона разработчик передает его администратору сервера для развертывания и создания связей с элементами Office SharePoint Server 2007;
  • создание Workflow в Office SharePoint Designer 2007 — это задача для web-дизайнера или информационного работника, которые хотят реализовать Workflow для того или иного списка либо для библиотеки документов. В этом случае дизайнер ограничен набором активностей, имеющихся в списке Safe Controls List, и такие Workflow не могут содержать дополнительного кода. После создания Workflow дизайнер разворачивает шаблон непосредственно в списке или в библиотеке документов — этот шаг является частью создания Workflow без кода.
В начало В начало

Уровень данных

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

Практически все приложения и сервисы должны хранить данные и обращаться к ним. Создаваемое приложение или сервис может иметь один или более источников данных, которые могут быть разных типов. Логика, используемая для доступа к данным, должна обеспечивать методы для запроса к данным и их обновления. Данные, с которыми работает логика приложения, представляют собой бизнес-сущности, описывающие ключевые компоненты бизнес-процессов, автоматизируемых приложением. Далее мы рассмотрим некоторые подходы к работе с данными на уровне Office Business Applications.

Новые форматы файлов на основе XML, поддерживаемые в Office 2007, облегчают запись данных в бизнес-приложения за счет использования механизмов сборки и разборки приложений и возможностей аннотирования содержимого через настраиваемые схемы. Сборка и разборка документов позволяет разработчикам быстро разбирать любой документ Office, извлекать метаданные и данные, которые должны быть занесены в бизнес-приложение. Поддержка механизмов компрессии на уровне .NET Framework 2.0 и 3.0 через пространство имен System.IO.Packaging позволяет отказаться от применения сторонних библиотек или создания собственных.

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

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

Когда пользователь загружает документ для редактирования, серверный процесс должен заполнить архив данными и после этого отослать его пользователю. Документ, который видит пользователь, отображается со встроенными метаданными, и по мере того, как пользователь модифицирует документ, Office 2007 обеспечивает синхронизацию данных. После того как все изменения внесены, пользователь сохраняет документ на сервере, например на Office SharePoint Server 2007, где происходит извлечение метаданных их архива и занесение изменений обратно в бизнес-приложение — либо через доступ к базе данных, либо через сервисы. В рамках Office SharePoint Server 2007 этот процесс может быть смоделирован с применением новых средств дизайна Workflow.

В начало В начало

Средства разработки

Разработчикам, создающим Office Business Applications, доступны различные средства, ряд которых мы рассмотрим далее.

Visual Studio 2005 Tools for the 2007 Microsoft Office System, Second Edition (VSTO 2005 SE) — это бесплатное дополнение к Visual Studio 2005, которое дает разработчикам возможность создавать приложения для платформы Office 2007. В состав VSTO 2005 SE включены следующие функции:

  • создание расширений и дополнений ко всем популярным офисным приложениям, включая версии 2003 и 2007 таких продуктов, как Word, Excel, Outlook, Visio, PowerPoint и InfoPath версии 2007. Поддерживаются загрузка, выгрузка и управление расширениями и дополнениями, написанными на управляемом коде;
  • поддержка программной модели для написания кода для «ленты», панелей задач и регионов форм в Outlook;
  • поддержка дизайна форм InfoPath версии 2007 — можно создавать формы прямо в среде Visual Studio;
  • полная поддержка функциональности Visual Studio 2005 Professional.

Второе средство — Office SharePoint Designer 2007 — это специальный редактор, предназначенный для создания и настройки SharePoint Workflow и соответствующих приложений без написания кода. В его состав входят средства, позволяющие:

  • создавать представления по условиям (conditional view) и формы с проверкой вводимой информации;
  • считывать, записывать и представлять данные из различных источников, включая XML-файлы, базы данных Microsoft SQL Server 2005 и web-сервисы;
  • компилировать данные из разных источников для создания гибких, настраиваемых представлений и отчетов;
  • создавать web-страницы, содержащие web-компоненты, и соединять web-компоненты для реализации различных сценариев бизнес-приложений.

В данной части нашего обзора Office Business Applications мы ознакомились с архитектурой и ключевыми компонентами бизнес-приложений, а также обсудили возможные варианты реализации отдельных уровней OBA с помощью технологий, входящих в состав платформы Microsoft Office 2007. В следующем номере мы продолжим знакомство с Office Business Applications.

В начало В начало

КомпьютерПресс 11'2007

Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует