Расширение возможностей сотрудничества при использовании внешних данных

Изобретение относится к области компьютерных систем. Техническим результатом является обеспечение эффективного доступа к внешним хранилищам данных. Вычислительное устройство включает в себя инструкции, которые при их исполнении процессором предписывают процессору: создавать модуль каталога бизнес-данных, который осуществляет доступ к данным, размещенным во внутреннем хранилище данных и внешнем хранилище данных, и производит операции над этими данными, причем модуль каталога бизнес-данных принимает запрос на данные, определяет, размещены ли данные во внутреннем хранилище данных или во внешнем хранилище данных, и осуществляет доступ к данным, размещенным во внешнем хранилище данных, и создавать модуль предоставления внешних данных, предоставляющий данные, к которым осуществлен доступ из внешнего хранилища, причем модуль предоставления внешних данных отображает данные из внешнего хранилища данных для представления их на клиентском вычислительном устройстве. Пользователь может осуществлять доступ к данным из внешнего хранилища данных и производить операции над ними так, как если бы это были данные из внутреннего хранилища данных. 3 н. и 17 з.п. ф-лы, 9 ил.

 

Предпосылки создания изобретения

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

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

Краткое описание изобретения

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

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

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

Данное краткое описание сущности изобретения дано для введения в упрощенной форме подборки концепций, которые будут подробно описаны в разделе «Подробное описание», в упрощенной форме. Данное краткое описание сущности изобретения не предназначается для идентификации ключевых или неотъемлемых признаков заявляемого изобретения, также оно не предназначается и для использования любым способом для ограничения объема заявляемого изобретения.

Описание чертежей

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

Фиг. 1 показывает пример сетевой компьютерной системы.

Фиг. 2 показывает пример серверного вычислительного устройства из системы, изображенной на Фиг. 1.

Фиг. 3 показывает пример логических модулей серверного вычислительного устройства, изображенного на Фиг. 2.

Фиг. 4 показывает пример логических модулей иллюстративного модуля каталога бизнес-данных по Фиг. 3.

Фиг. 5 показывает пример логических модулей иллюстративного модуля предоставления списка внешних данных по Фиг. 3.

Фиг. 6 показывает логическую блок-схему для примерного способа создания списка внешних данных.

Фиг. 7 показывает логическую блок-схему для примерного способа формирования представления списка внешних данных.

Фиг. 8 показывает логическую блок-схему для примерного способа отправки новой формы.

Фиг. 9 показывает логическую блок-схему для примерного способа удаления конкретного экземпляра субъекта.

Подробное описание изобретения

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

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

Следующие реализации изобретения, приведенные в качестве примеров, описываются здесь по отношению к платформе совместной работы Sharepoint®, разработанной корпорацией Microsoft (Redmond, Washington). Тем не менее, концепции настоящего раскрытия также применимы к другим системам, в которых существует потребность в интеграции данных, размещенных во внешних хранилищах, в программную платформу.

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

Приведенная в качестве примера сетевая компьютерная система 100 включает в себя клиентское вычислительное устройство 105, серверное вычислительное устройство 110, локальную бизнес-систему 115, локальное хранилище 120 данных, множество внешних бизнес-систем 125a-c (в совокупности, внешние бизнес-системы 125) и внешние хранилища 130 данных a-c (в совокупности, внешние хранилища 130 данных). Кроме того, показаны первая сеть связи 135a и вторая сеть связи 135b (в совокупности, сеть связи 135). Также возможны и иные варианты реализации примерной сетевой вычислительной среды 100.

Сеть связи 135 - это двунаправленный тракт связи для передачи данных между одним или несколькими вычислительными устройствами. В примерном варианте реализации изобретения, первая сеть связи 135a образует внутренний тракт связи для передачи данных между клиентским вычислительным устройством 105 и серверным вычислительным устройством 110. Вторая сеть связи 135b образует внешний тракт связи для передачи данных между серверным вычислительным устройством 110 и внешней бизнес-системой 125.

Вообще, сеть 135 связи может быть любой из ряда беспроводных или проводных сетей типа WAN, LAN, Интернет или иных сетей пакетного типа, таких, что элементы сети 100 могли бы обмениваться данными посредством этих сетей. Также возможны и иные варианты реализации сети связи 135.

В показанном примере, сеть 135a - это сеть, расположенная «внутри» по отношению к платформе 140 бизнес-данных. Сеть 135a является «внутренней», поскольку сеть 135a есть сеть типа LAN или WAN, доступ к которой возможен только с устройств 105, 110 и прочих устройств, расположенных за средствами обеспечения безопасности, такими как сетевой экран, связанный с платформой 140 бизнес-данных.

Сеть 135b - это сеть, доступ к которой возможен со множества вычислительных устройств, расположенных вне платформы 140 бизнес-данных. Например, сетью 135b может быть Интернет или другая сеть, доступ к которой возможен извне платформы 140 бизнес-данных.

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

Локальная бизнес-система 115 - это вычислительное устройство, включающее в себя одну или несколько бизнес-систем, обеспечивающих бизнес-приложения. Локальная бизнес-система 115 обычно включает в себя бизнес-логику, которая производит операции с данными, расположенными в одном или нескольких хранилищах данных, таких как локальное хранилище 120 данных, подробно описанное ниже. Одним из примеров локальной бизнес-системы может служить Windows SharePoint Services 3.0, предоставляемая корпорацией Microsoft. Также возможны и иные варианты реализации локальной бизнес-системы 115.

Локальное хранилище 120 данных - это среда хранения данных, построенная по принципу реляционного хранилища данных или по любому другому принципу построения устройств постоянного хранения данных. Локальное хранилище 120 данных сохраняет данные в предопределенном формате, так что серверное вычислительное устройство 110 может запрашивать хранящиеся в нем данные, изменять их и управлять ими. Например, локальное хранилище 120 данных может являться базой данных с поддержкой XML, такой как, например, база данных, основывающаяся на языке структурированных запросов (SQL). В определенных вариантах реализации локальное хранилище 120 данных может содержать множество устройств хранения данных, логически сгруппированных между собой в конфигурацию «ферма». Также возможны и иные варианты реализации локального хранилища данных 120.

Как показано на Фиг. 1, клиентское вычислительное устройство 105, серверное вычислительное устройство 110, локальная бизнес-система 115 и локальное хранилище 120 данных логически сгруппированы внутри платформы 140 бизнес-данных так, чтобы функционально работать в качестве программной бизнес-платформы. Например, пользователь может взаимодействовать с приложением Web-браузера на клиентском вычислительном устройстве, чтобы использовать функциональность соответствующих устройств 110, 115 и локального хранилища 120 данных в качестве инструмента управления бизнес-данными и сотрудничества с одним или несколькими другими пользователями, работающими внутри платформы 140 бизнес-данных.

Одним из примеров вариантов реализации такой платформы бизнес-данных является платформа совместной работы Sharepoint®, разработанная корпорацией Microsoft. В представленном примере варианта реализации, компонент платформы может быть выполнен как Office SharePoint Server 2007, а компонент сервисов может быть воплощен как Windows SharePoint Services 3.0, соответственно. Также возможны и иные варианты реализации платформы 140 бизнес-данных.

Внешние бизнес-системы 125 подобны локальной бизнес-системе 115, как описано выше, за исключением работы вне платформы 140 бизнес-данных. Каждая соответствующая внешняя бизнес-система 125a-c может включать в себя одну или более бизнес-систем, которыми предоставляются бизнес-приложения.

Например, одна или более внешних бизнес систем 125a-c могут быть ERP-системой (системой планирования ресурсов предприятия) от SAP America, Inc. Of Newtown Square, Pennsylvania, или любой другой общей системой управления взаимоотношениями с клиентами. Вообще, каждая из соответствующих внешних бизнес-систем 125a-c может быть производственной («Line-of-business») системой любого типа, включающей в себя внешнюю сервисную или программную систему с бизнес-логикой, выполняющей операции над данными в реляционном хранилище данных или любом другом устройстве постоянного хранения данных.

В представленном в качестве примера варианте реализации, каждая из соответствующих внешних бизнес-систем 125a-с коммуникативно соединена с соответствующим внешним хранилищем данных 130a-c. Внешние хранилища 130 данных могут быть сконфигурированы таким же образом, как и локальное хранилище 120 данных, как описано выше, где каждое соответствующее внешнее хранилище 130a-c отформатировано таким образом, чтобы соответствующая внешняя бизнес-система 125a-c могла производить операции над данными, размещенными в этом хранилище. Также возможны и иные варианты реализации внешних хранилищ данных 130.

Способом, аналогичным описанному выше, в отношении элементов платформы 140 бизнес-данных, пользователь может взаимодействовать с приложением Web-браузера на клиентском вычислительном устройстве 105 для использования функциональностей серверного вычислительного устройства 110, внешних бизнес-систем 125 и внешних хранилищ данных 130 как инструмента управления бизнес-данными и сотрудничества с одним или несколькими другими пользователями, работающими в контексте платформы 140 бизнес-данных.

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

Например, как подробно описано ниже, серверное вычислительное устройство 110 может быть сконфигурировано таким образом, чтобы выполнять операцию отображения, за счет которой внешние бизнес-данные переносятся в контекст платформы бизнес-данных 140. В представленном примере серверное вычислительное устройство 110 реализует множество способов для представления и обработки соответственных внешних бизнес-данных, которые аналогичны способам представления и обработки бизнес-данных, размещенных внутри платформы 140 бизнес-данных. Таким образом внешние бизнес-данные представляются пользователю и обрабатываются так, как если бы они были собственными (т.е. «внутренними») для платформы 140 бизнес-данных.

Фиг. 2 показывает подробный вид серверного вычислительного устройства 110, изображенного на Фиг. 1. Как упоминалось выше, в показанном примере серверное вычислительное устройство 110 - это вычислительное устройство, включающее в себя по меньшей мере один процессор 205 и системную память 210.

Например, серверное вычислительное устройство 110 может являться персональным компьютером, портативным персональным компьютером или карманным персональным компьютером. Серверное вычислительное устройство 110 может включать в себя любое число устройств ввода/вывода, центральный процессор, устройства хранения данных, сетевое устройство и любые другие функциональные устройства, обеспечивающие обработку и передачу данных.

В зависимости от конфигурации и типа вычислительного устройства, системная память 210 может быть энергозависимой (например, памятью с произвольным доступом (RAM)), энергонезависимой (например, памятью, доступной только для чтения (ROM), флэш-памятью и т.д.) или любой их комбинацией. Системная память 210 может хранить операционную систему 215 для управления работой вычислительного устройства. Одним из примеров операционной системы 215 может служить операционная система Windows®, разработанная корпорацией Microsoft, или сервер, такой как, например, Microsoft Office SharePoint Server 2007, также разработанный корпорацией Microsoft.

Системная память 210 может также включать одно или несколько программных приложений 220 и может включать в себя программные данные. Программные приложения 220 могут включать в себя множество различных типов одно- и многофункциональных программ, таких как программа электронной почты, программа-календарь, программа Интернет-браузера, программа работы с электронными таблицами, программа для сбора информации и составления отчета, программа обработки текстов и многие другие. Одним из примеров таких программ может служить пакет приложений Office®, разработанный корпорацией Microsoft.

Серверное вычислительное устройство 110 может обладать дополнительными особенностями или функциональностью. Например, серверное вычислительное устройство 110 может также включать в себя дополнительные устройства хранения данных (съемные и/или несъемные), такие как, например, магнитные диски, оптические диски или магнитная лента. Подобное дополнительное хранилище изображено на Фиг. 2 с помощью съемного хранилища 225 и несъемного хранилища 230. Машиночитаемые носители информации могут включать в себя физические энергонезависимые и энергозависимые, съемные и несъемные носители, реализованные с помощью любой методики или технологии хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Системная память 210, съемное хранилище 225 и несъемное хранилище 230 - все являются примерами машиночитаемых носителей информации. Компьютерные носители информации включают в себя (но не в ограничительном смысле) RAM, ROM, EEPROM, флэш-память или память, созданную по другой технологии, CD-ROM, DVD или другие оптические носители, магнитные кассеты, магнитную ленту, носитель на магнитных дисках или другие магнитные носители либо любой другой носитель, который может быть использован для хранения желаемой информации и к которому может осуществить доступ серверное вычислительное устройство 110. Любые такие компьютерные носители информации могут быть частью серверного вычислительного устройства 110.

Серверное вычислительное устройство 110 может также содержать устройство(-а) ввода 235, такие как клавиатура, мышь, перо, устройство голосового ввода, сенсорное устройство ввода и т.п. Другие устройства вывода 240, такие как дисплей, динамики, принтер и т.п., также могут быть включены.

Серверное вычислительное устройство 110 может также содержать коммуникационное соединение 245, обеспечивающее связь с прочими вычислительными устройствами (например, клиентскими вычислительными устройствами, серверными вычислительными устройствами, базами данных), такими как внешние бизнес-системы 125, через сеть (например, сеть связи 135 по Фиг. 1) в распределенной вычислительной сетевой среде. Коммуникационное соединение 245 является одним из примеров коммуникационных сред. Коммуникационные среды, как правило, воплощают машиночитаемые инструкции, структуры данных, программные модули и прочие данные в модулированном информационном сигнале, таком как несущая волна или другой механизм передачи, и включают в себя любые среды доставки информации. Термин «модулированный информационный сигнал» подразумевает сигнал, один или несколько параметров которого устанавливаются или изменяются таким образом, чтобы закодировать информацию в этом сигнале. Например, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, а также беспроводные среды, такие как акустические, радиочастотные, инфракрасные и прочие беспроводные среды.

В приведенных в качестве примеров вариантах реализации, клиентское вычислительное устройство 105 по Фиг. 1 может быть сконфигурировано таким же образом, как и серверное вычислительное устройство 110, как описано выше. Клиентское вычислительное устройство 105 может также содержать приложение Web-браузера, которое формирует изображение графического интерфейса пользователя. Таким образом, пользователь может взаимодействовать с онлайн-контентом с помощью Web-страницы. В приведенных в качестве примера вариантах реализации, приложением Web-браузера является программа-клиент, использующая гипертекстовый протокол передачи данных (НТТР) для выполнения запросов на онлайн-контент к Web-серверам. Одним примером подобного приложения Web-браузера может служить Internet Explorer®, разработанный компанией Microsoft.

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

На Фиг. 3 показан пример логических модулей серверного вычислительного устройства 110, изображенного на Фиг. 2. Серверное вычислительное устройство 110 включает в себя приведенный в качестве примера модуль 305 каталога бизнес-данных (BDC-модуль) и приведенный в качестве примера модуль 310 предоставления списка внешних данных (EDL-модуль).

BDC-модуль 305 и EDL-модуль 310 работают вместе, чтобы интегрировать бизнес-данные, размещенные во внешних хранилищах данных 130, в контекст платформы бизнес-данных 140. Например, в одном из вариантов реализации BDC-модуль 305 и EDL-модуль 310 совместно генерируют и визуализируют «список внешних данных» для бизнес-данных из внешнего хранилища данных 130a на графическом интерфейсе пользователя Web-браузера, запущенного на клиентском вычислительном устройстве 105. Пользователь клиентского вычислительного устройства 105 может осуществлять доступ к этим внешним бизнес-данным и/или производить над ними операции таким же образом, как пользователь мог бы осуществлять доступ и производить операции в отношении данных, размещенных внутри платформы бизнес-данных 140.

Приведенный в качестве примера BDC-модуль 305 включает в себя логические модули программного обеспечения, исполняющего на серверном вычислительном устройстве 110, что позволяет BDC-модулю 305 осуществлять доступ к и/или оперировать с данными, находящимися во внешних хранилищах данных 130. В общем, когда пользователь, взаимодействующий с приложением Web-браузера через клиентское вычислительное устройство 105, запрашивает данные, BDC-модуль 305 принимает этот запрос и определяет, размещены ли запрошенные данные внутри или снаружи платформы 140 бизнес-данных 140. Определив статус запрошенных данных, BDC модуль производит обработку запроса данных.

В приведенных в качестве примера вариантах реализации, когда запрос данных ассоциирован с бизнес-данными, размещенными снаружи платформы 140 бизнес-данных, BDC-модуль 305 извлекает бизнес-данные различных типов из внешних хранилищ данных 130, используя API-вызовы, поддерживаемые соответствующими внешними бизнес-системами 125, поскольку бизнес-логика внешних бизнес-систем 125 представляется в виде набора API. В приведенных в качестве примера вариантах реализации, соответствующие API каждой соответствующей внешней бизнес-системы 125a-c определяют разрешенные операции наряду с одним или несколькими предопределенными ограничениями касаемо отличающихся визуализации и операций над бизнес-данными, размещенными в соответствующих внешних хранилищах данных 130a-c.

В одном аспекте, информация об API, связанных с соответствующими внешними бизнес-системами 125a-c, содержится в данных, размещенных в локальном хранилище данных 120, к которому может быть осуществлен доступ BDC-модулем 305. Кроме того, прочие данные, связанные с каждой из соответствующих внешних бизнес-систем 125a-c, также могут быть сохранены в локальном хранилище данных 120, включая различные параметры и определения структур, используемых BDC-модулем 305 для доступа к данным и их получения из внешних хранилищ данных 130.

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

Приведенный в качестве примера EDL-модуль 310 включает в себя логические модули программного обеспечения, запущенного на серверном вычислительном устройстве 110, позволяющие EDL-модулю 310 предоставлять бизнес-данные, размещенные во внешних хранилищах данных 130, в контекст платформы 140 бизнес-данных. Например, EDL-модуль 310 включает в себя алгоритмы, отображающие внешние бизнес-данные на «формы» и «представления» для последующей презентации этих данных на клиентском вычислительном устройстве 105 посредством приложения Web-браузера. В одном аспекте, предоставление внешних бизнес-данных относится к процессу создания конфигурации для внесения изменений в продукт.

В приведенных в качестве примера вариантах реализации, «представление» соответствует способам показа на экране внешних бизнес-данных на основе конфигурации соответствующих внешних бизнес-систем 125 и соответствующих внешних хранилищ данных 130 согласно данным, размещенным в локальном хранилище данных 120, как описано выше. «Форма» соответствует способам, относящимся к данным для обновления внешних бизнес-данных, сохраненных в соответствующих внешних хранилищах данных 130. Таким образом предоставленные формы и представления включают в себя контент, согласующийся с разрешенными операциями, реализованными в интерфейсах API соответствующих внешних бизнес-систем 125, и позволяют осуществлять доступ к внешним бизнес-данным и изменять их с помощью разрешенных CRUDQ-операций (операций создания, чтения, обновления, удаления и запроса), как будет подробно описано ниже.

Фиг. 4 показывает подробный вид примера логических модулей, BDC-модуля 305, изображенного на Фиг. 3. В приведенных в качестве примера вариантах реализации, BDC-модуль 305 включает в себя приведенный в качестве примера модуль параметров 405 и приведенный в качестве примера модуль сущностей 410.

Модуль параметров 405 содержит программное обеспечение, осуществляющее доступ к параметрам соединений и определениям множества бизнес-систем, которые могут моделироваться BDC-модулем 305 и к которым он может осуществлять доступ как к источнику бизнес-данных и бизнес-логики. В приведенных в качестве примера вариантах реализации, конкретные параметры соединений и определения для соответствующих бизнес-систем содержатся в данных, сохраненных в локальном хранилище данных 120, доступ к которому может быть осуществлен с помощью модуля параметров 405.

Вообще, бизнес-системы могут быть определены как существующие как в контексте платформы 140 бизнес-данных, так и вне его. Например, могут быть определены параметры соединений и определения для локальной бизнес-системы 115 и соответствующих внешних бизнес-систем 125a-c. Кроме того, BDC-модуль 305 является расширяемым в том смысле, что в любое время могут быть определены новые бизнес-системы с соответствующими параметрами и определениями.

Модуль сущностей 410 включает в себя программное обеспечение, создающее определения бизнес-объектов, инкапсулирующие набор определенных атрибутов, относящихся к бизнес-объекту, упоминаемому здесь как «субъект». В представленных в качестве примера вариантах реализации, субъекты и соответствующие атрибуты содержатся в данных, хранящихся в локальном хранилище данных 120, доступ к которому можно осуществить с помощью модуля сущностей 410.

Вообще, экземпляр субъекта содержит элементы данных, которые могут быть данными простого типа, обеспечивающего представление скалярных типов данных, таких как целые числа и строки, либо сложного типа, обеспечивающего представление структурированного поля, такого как Адрес (Address). Например, экземпляр субъекта, такого как «Customers» (клиенты) или «Employees» (служащие), может включать в себя данные в виде табличных списков. В представленном в качестве примера варианте реализации, экземпляр субъекта «Customers» (клиенты) может включать в себя табличный список данных, содержащий столбцы, в которые входят такие поля, как Customer Name (имя клиента), Orders (заказы), Products (изделия) и Addresses (адреса), где табличный список включает в себя элементы данных, присвоенные каждому соответствующему столбцу и строке.

В одном аспекте, атрибуты сущностей могут содержать множество определений, предписывающих, каким образом можно осуществить доступ к полям и соответствующим элементам данных, относящимся к конкретному субъекту, изменить их или произвести их визуализацию. Например, атрибуты субъекта, связанные с методами, назначенными CRUDQ-операциям, могут предписывать разрешенные CRUDQ-операции и связанную с этими операциями функциональность. Например, если метод типа «Creator» (создатель) определен в рамках атрибутов субъекта, то разрешается создание нового экземпляра субъекта. Кроме того, как будет подробно описано ниже, CRUDQ-операции могут быть логически сгруппированы в Группу Представлений (View Group), которая позволяет предоставлять каждую из соответствующих форм и представлений, связанных с субъектом.

Предоставленные формы и представления будут обладать соответствующими функциональными возможностями, связанными, например, с определенными методами, назначенными CRUDQ-операциям внутри Группы Представлений. Например, если метод «Creator» (создатель) определен внутри Группы Представлений субъекта, то на Web-странице может быть предоставлен элемент меню «New» (новый), который пользователь может выбрать для создания нового экземпляра субъекта. Другие приведенные в качестве примера методы включают в себя метод типа «Finder» (искатель) или «Special Finder» (специальный искатель), соответствующие представлению; метод типа «Updater» (обновитель), позволяющий обновлять одно или несколько свойств конкретного экземпляра субъекта; а также метод типа «Deleter» (уничтожитель), позволяющий удалять конкретный экземпляр субъекта.

Как упоминалось выше, в конкретных вариантах реализации методы, назначенные CRUDQ-операциям для соответствующих представлений и форм, могут быть логически сгруппированы в Группу Представлений. Вообще, субъект может содержать множество групп представлений. Например, одно конкретное представление для экземпляра субъекта «Customers» (клиенты) может соответствовать набору столбцов, включающих в себя «First Name» (имя), «Last Name» (фамилия) и «Company Name» (название компании). В конкретных вариантах реализации это специальное представление может поддерживать только операцию просмотра, в которой соответствующая Группа Представления может содержать только методы типа «Finder» (искатель) или «SpecificFinder» (специальный искатель), как будет подробно описано ниже.

В приведенных в качестве примера вариантах реализации также возможны и другие типы определенных атрибутов сущностей. Например, может быть определен атрибут «Identifier» («Идентификатор»), который представляет постоянные идентификационные данные конкретного субъекта, такие как первичный ключ, так чтобы соответствующий субъект мог быть идентифицирован. Кроме того, может быть определен атрибут «Filter Descriptor» («Дескриптор фильтра»), включающий в себя критерии для фильтрации элементов данных, возвращаемых после активации метода, назначенного соответствующей CRUDQ-операции. Некоторыми примерами критериев фильтрации данных могут служить такие критерии, как критерий «Page Number» (номер страницы), критерий «Wildcard» (групповой символ), критерий «Comparison» (сравнение) и другие. Кроме того, может быть определен атрибут «Actions» (Действия), включающий в себя действия, являющиеся ссылками в виде универсального указателя информационного ресурса (URL), которые могут быть связаны с субъектом.

Кроме того, может быть определен атрибут «Relationships» («Отношения»), содержащий ссылки на одну или несколько сущностей, на которые определена ассоциация. В приведенных в качестве примера вариантах реализации, ассоциации представляют собой отношения между одной или несколькими сущностями. Кроме того, может быть определен атрибут «Access» («Доступ»), содержащий методы, которые могут быть использованы администратором для установки прав доступа (т.е. CRUDQ-операции). Множество других методов или типов атрибутов сущностей также может быть определено.

Фиг. 5 показывает подробный вид логических модулей приведенного в качестве примера EDL-модуля 310, изображенного на Фиг. 3. В приведенных в качестве примера вариантах реализации, EDL-модуль 310 включает в себя приведенный в качестве примера модуль 505 генерации схемы и приведенный в качестве примера модуль 510 визуализации и генерации форм и представлений (FVGR).

С одной стороны, приведенный в качестве примера модуль 505 генерации схемы (Schema) и FVGR-модуль 510 позволяют EDL-модулю 310 производить интеграцию бизнес-данных, размещенных во внешних хранилищах данных 130, в контекст платформы 140 бизнес-данных с помощью отображения соответствующих бизнес-данных на формы и представления для презентации пользователю с помощью графического интерфейса пользователя, реализуемого приложением Web-браузера на клиентском вычислительном устройстве 105. В соответствии с принципами настоящего изобретения, предоставляемые формы и представления включают в себя контент, согласующийся с разрешенными операциями, реализованными в интерфейсах API соответствующих внешних бизнес-систем 125, как установлено BDC-модулем 305.

В одном аспекте, модуль генерации схем 505 содержит программное обеспечение, осуществляющее доступ к определениям сущностей, определенным в модуле сущностей 410, как описано выше. Вообще, модуль 505 генерации схемы осуществляет доступ к соответствующему субъекту и всем ассоциированным атрибутам, содержащимся в данных, размещенных в локальном хранилище данных 120. Например, модуль 505 генерации схемы может принимать запрос на доступ к субъекту «Customers» (клиенты) и выполнять опись атрибутов, определенных в нем. В приведенном в качестве примера варианте реализации, субъект «Customers» (клиенты) может быть определен внутри контекста платформы 140 бизнес-данных и, таким образом, по умолчанию, может содержать все методы, связанные со стандартными CRUDQ-операциями, включая метод «Creator» (создатель), метод «Specific Finder» (специальный искатель), метод «Updater» (обновитель), метод «Deleter» (уничтожитель). Соответственно, по запросу модуль 505 генерации схемы производит опись, которая будет отражать присутствие перечисленных CRUDQ-методов для субъекта «Customers».

В качестве еще одного примера, модуль 505 генерации схемы может принимать запрос на доступ к субъекту «Employees» и выполнять опись определенных в нем атрибутов. В приведенном в качестве примера варианте реализации, субъект «Employees» может быть определен вне контекста платформы 140 бизнес-данных и, таким образом, может не содержать все из CRUDQ-методов. Например, субъект «Employees» может не включать в себя метод «Creator», и, таким образом, по запросу, модуль 505 генерации схемы произведет опись, в которой укажет, что субъект «Employees» имеет только метод «Specific Finder», метод «Updater» и метод «Deleter».

FVGR-модуль 510 включает в себя программное обеспечение, осуществляющее доступ к модулю 505 генерации схемы с целью запросить опись атрибутов, определенных в соответствующем субъекте. Впоследствии, на основании установленной описи, FVGR-модуль 510 генерирует формы и представления для последующей презентации пользователю клиентского вычислительного устройства 105 с помощью графического интерфейса пользователя, реализованного в приложении Web-браузера. Таким образом, предоставляемые формы и представления содержат контент, согласующийся с типами данных внешних бизнес-данных, размещенных в соответствующих внешних хранилищах данных 130, и разрешенными бизнес-операциями, реализованными в интерфейсах API соответствующей внешней бизнес-системы 125, как установлено BDC-модулем 305.

Например, в отношении субъекта «Customers», как описано выше, FVGR-модуль 510 осуществляет доступ к модулю 505 генерации схемы с целью запросить опись атрибутов субъекта «Customers». В приведенном в качестве примера варианте реализации, модуль генерации схем 505 выполняет опись и возвращает определенные атрибуты, включая метод «Creator», метод «Specific Finder», метод «Updater» и метод «Deleter».

Впоследствии, FVGR-модуль 510 создает формы и представления в ответ на запрос релевантных данных из экземпляра субъекта «Customers», выполненный клиентским вычислительным устройством 105. Это может включать в себя, например, создание элемента меню «New» (новый) и создание Web-страницы «NewItem.aspx», когда обнаружен метод «Creator». Если найден метод «Updater», то это может включать в себя создание элемента меню «Edit» (редактирование) и создание Web-страницы «EditItem.aspx» (элемент редактирования). Если найден метод «Deleter», то это может включать в себя создание элемента меню «Delete» (стереть). Кроме того, как будет подробно описано ниже, если найден метод «Specific Finder», то это может включать в себя создание элемента меню «View» (вид) и, в процессе формирования списка внешних данных, создание нового представления формы «DispItem.aspx», где метод «Specific Finder» будет опрошен на предмет возвращаемых им полей и будет добавлен в виде полей на экранную форму «DispItem.aspx».

Аналогично, в отношении субъекта «Employees», как описано выше, FVGR-модуль 510 осуществляет доступ к модулю 505 генерации схемы с целью запросить опись атрибутов субъекта «Employees». В приведенном в качестве примера варианте реализации, модуль 505 генерации схемы выполняет опись и возвращает полученные определенные атрибуты, включая метод «Specific Finder», метод «Updater» и метод «Deleter».

Впоследствии, FVGR-модуль 510 предоставляет формы и представления в ответ на запрос внешних бизнес-данных, выполненный клиентским вычислительным устройством 105. В приведенных в качестве примера вариантах реализации, это может также включать создание форм и представлений в отношении метода «Specific Finder», метода «Updater» и метода «Deleter» таким же образом, как описано выше для субъекта «Customers». Однако в приведенном в качестве примера варианте реализации, метод «Creator» не будет обнаружен в субъекте «Employees» и, следовательно, на экране не будет показана соответствующая форма с соответствующими ссылками.

Примеры, описанные здесь, включают в себя визуализацию бизнес-данных в приложении Web-браузера. Однако системы и способы настоящего изобретения могут быть применены к любому клиентскому процессу формирования изображения, такому как, например, визуализация с помощью расширяемого языка разметки приложений (XAML) для Windows Presentation Foundation (WPF).

Как описано выше, платформа 140 позволяет пользователю осуществлять доступ к данным, расположенным как во внутренних, так и во внешних хранилищах, просматривать эти данные и производить операции над ними. Примеры таких операций описаны ниже со ссылкой на Фигуры 6-8.

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

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

На этапе 615 серверное вычислительное устройство выполняет процедуру отображения, во время которой типы данных, соответствующие элементам данных внешнего источника данных, отображаются в поля типов данных, являющиеся собственными для предпочитаемой бизнес-платформы. Например, экземпляр субъекта «Customers» может иметь «First Name» и «Last Name», имеющие элементы данных стокового типа («string»). Серверное вычислительное устройство отобразит элементы данных «First Name» и «Last Name» в поля типа данных, имеющего тип «string», которые являются собственными для платформы бизнес-данных. В вариантах реализации, где предпочтительной платформой бизнес-данных является, например, SharePoint, этап 615 может отобразить элементы данных «First Name» и «Last Name» субъекта типа «Customers» в поле «SPList», которое является полем с типом данных «string», что позволяет визуализировать внешние бизнес-данные в виде форм и представлений в контексте платформы SharePoint. Таким образом, процедура отображения по этапу 615 работает для сопряжения внешних бизнес-данных с бизнес-платформой так, как если бы это были ее внутренние данные.

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

На этапе 625 серверное вычислительное устройство анализирует опись атрибутов, полученную на этапе 605, чтобы определить, какие методы, ассоциированные с CRUDQ-операциями, определены внутри сущностей, хранящихся в локальном хранилище данных. В некоторых вариантах реализации, методы логически группируются внутри Группы Представлений, поставленной в соответствие каждой форме и представлению для конкретного субъекта.

На этапе 630 серверное вычислительное устройство создает представления для каждого метода «Finder», обнаруженного в Группе Представлений на этапе 625. В приведенных в качестве примера реализациях, серверное вычислительное устройство создает Web-страницу для каждой Группы Представлений, содержащей метод «Finder», и конфигурирует Web-раздел представления, который будет визуализирован на Web-странице. В одном аспекте, Web-раздел использует представление на языке разметки совместных приложений (CAML), сгенерированное на основе XML из метода «Finder», и составляет список всех полей типов данных, которые будут возвращены в представлении. В одном аспекте, Web-страница конфигурируется таким образом, чтобы в момент ее просмотра пользователем выполнялся «Finder» и внешние бизнес-данные извлекались из внешнего хранилища данных и оформлялись серверным вычислительным устройством в тот вид, в каком пользователь может ожидать в контексте платформы бизнес-данных.

На этапе 635 серверное вычислительное устройство создает формы для каждого метода «Update», найденного в Группе Представлений на этапе 625. Например, «Edit Form» («форма редактирования») создается тогда, когда соответствующая Группа Представлений содержит метод «Update» (обновление). В приведенных в качестве примера вариантах реализации, серверное вычислительное устройство создает Web-страницу для каждой Группы Представлений, содержащей метод «Update», и конфигурирует Web-раздел формы для визуализации на Web-странице. На этапе 640 серверное вычислительное устройство отображает действия, связанные с соответствующими внешними бизнес-данными, на индивидуально конфигурируемые действия платформы бизнес-данных. Например, могут быть созданы ссылки на URL, которые могут относиться к субъекту.

Фиг. 7 показывает логическую блок-схему приведенного в качестве примера способа формирования изображения списка внешних данных 700. На этапе 705 серверное вычислительное устройство осуществляет доступ к локальному хранилищу данных и выполняет опись атрибутов, определенных в рамках определений всех сущностей, хранящихся в локальном хранилище данных. Серверное вычислительное устройство анализирует опись атрибутов так, что, например, серверное вычислительное устройство может вызвать API внешней бизнес-системы, позволяющий извлечь внешние бизнес-данные. В иллюстративных вариантах реализации, приведенные в описании атрибуты включают в себя, например, атрибуты «LobSystemInstance», «EntityNamespace» (пространство имен субъекта), «EntityName» (имя субъекта), имя «SpecificFinder» (имя специального искателя), которые полностью определяют Группу Представлений для соответствующего субъекта.

На этапе 710 для соответствующего метода «Finder», идентифицированного в описи на этапе 705, имя метода «Finder» сохраняется в виде CAML-представления аналогично, например, этапу 630 приведенного в качестве примера способа 600, как описано выше. На этапе 715 серверное вычислительное устройство вызывает API внешней системы бизнес-данных, чтобы определить набор фильтров в «Finder» и сконфигурировать значения фильтров на основании значений, сохраненных в CAML-представлении.

На этапе 720 серверное вычислительное устройство выполняет метод «Finder», чтобы извлечь внешние бизнес-данные из внешнего источника данных. На этапе 725 извлеченные данные переупорядочиваются в соответствии с CAML-представлением, при этом одно или несколько сортировок, фильтраций и размещения по страницам применяются к извлеченным данным. Вообще, извлеченные данные загружаются в память в виде таблицы данных, причем для предотвращения необходимости многократного копирования данных в таблице используется схема индексирования. На этапе 730 производится визуализация HTML в Web-страницу для извлеченных данных, обработанных способом, согласующимся с этапом 725. В приведенном в качестве примера варианте реализации, извлеченные данные визуализируются на основании поля типа данных, являющегося собственным для платформы бизнес-данных.

Фиг. 8 показывает логическую блок-схему для приведенного в качестве примера способа отправки новой формы 800. На этапе 805 серверное вычислительное устройство собирает значения полей формы из локального хранилища данных. В приведенных в качестве примера вариантах реализации, этап 805 реализуется при выборе пользователем «OK» в форме «Edit» на визуализируемой Web-странице, чтобы произвести сбор значений полей формы HTML.

На этапе 810 серверное вычислительное устройство осуществляет доступ к локальному хранилищу данных и выполняет опись атрибутов, определенных в рамках определений всех сущностей, хранящихся в локальном хранилище данных. Таким образом, серверное вычислительное устройство может вызывать API внешних систем бизнес-данных, позволяющий извлечь внешние бизнес-данные. В иллюстративных вариантах реализации, приведенные в описании атрибуты включают в себя, например, атрибуты «LobSystemInstance», «EntityNamespace», «EntityName» и имя «SpecificFinder», которые полностью определяют Группу Представлений для соответствующего субъекта.

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

На Фиг. 9 показана логическая блок-схема приведенного в качестве примера способа удаления конкретного экземпляра субъекта 900. На этапе 910 серверное вычислительное устройство осуществляет доступ к локальному хранилищу и выполняет опись атрибутов, определенных в рамках определений всех сущностей, хранящихся в локальном хранилище данных. Серверное вычислительное устройство анализирует опись атрибутов, получая, например, атрибут «Identifier» субъекта, представляющий идентификационные данные конкретного субъекта, такие как первичный ключ, так чтобы соответствующий субъект мог быть идентифицирован.

На этапе 915 серверное вычислительное устройство анализирует опись атрибутов, полученную на этапе 910, таким образом, например, что серверное вычислительное устройство может вызвать API внешней системы бизнес-данных, позволяющий извлечь внешние бизнес-данные. В иллюстративных вариантах реализации, приведенные в описи атрибуты включают, например, атрибуты «LobSystemInstance», «EntityNamespace», «EntityName» и имя «SpecificFinder», которые полностью определяют Группу Представлений для соответствующего субъекта. На этапе 920 серверное вычислительное устройство выполняет метод «Deleter».

Приведенные здесь варианты реализации изобретения могут быть реализованы в виде логических операций в вычислительном устройстве в сетевой среде вычислительных систем. Логические операции могут быть реализованы как: i) последовательность машиноисполняемых инструкций, этапов или программных модулей, выполняющихся на вычислительном устройстве, и ii) соединенные между собой логические или аппаратные модули, запущенные в вычислительном устройстве.

Например, логические операции могут быть реализованы как алгоритмы в программном обеспечении, прошивке (Firmware), аналоговых/цифровых схемах и/или любой их комбинации без выхода за рамки объема настоящего раскрытия. Программное обеспечение, прошивка или подобная последовательность машиноисполняемых инструкций может быть закодирована и размещена на машиночитаемом носителе, а также может быть закодирована с помощью сигнала, передаваемого несущей волной между вычислительными устройствами.

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

1. Вычислительное устройство, содержащее:
процессор;
системную память, соединенную с процессором, причем системная память содержит инструкции, которые при их исполнении процессором предписывают процессору:
создавать модуль каталога бизнес-данных, который осуществляет доступ к данным, размещенным во внутреннем хранилище данных и внешнем хранилище данных, и выполняет операции над этими данными, причем модуль каталога бизнес-данных принимает запрос на данные, определяет, расположены ли данные во внутреннем хранилище данных или во внешнем хранилище данных, осуществляет доступ к данным, размещенным во внешнем хранилище данных, с использованием одного или более вызовов интерфейсов прикладного программирования (API), связанных с внешним хранилищем данных, при этом информация об API, связанных с внешним хранилищем данных, содержится во внутреннем хранилище данных, причем данная информация включает в себя разрешенные операции и одно или более заранее заданных ограничений в отношении воспроизведения внешних данных и выполнения операций над внешними данными, и создает определения бизнес-объектов, которые заключают в себе набор заданных атрибутов, относящихся к бизнес-объектам, причем данный набор заданных атрибутов включает в себя: атрибут-идентификатор, который представляет постоянные идентификационные данные конкретного субъекта; атрибут фильтра, который включает в себя критерии для фильтрации элементов данных, возвращаемых из внешнего хранилища данных; атрибут действий, который включает в себя ссылки в виде универсального указателя информационного ресурса, связанного с конкретным субъектом; атрибут отношений, который включает в себя ссылку на по меньшей мере один субъект, на который задана ассоциация; и атрибут доступа, который включает в себя методы для установки прав доступа;
создавать модуль предоставления внешних данных, предоставляющий из внешнего хранилища данных данные, к которым осуществляется доступ, отображающий внешние данные из внешнего хранилища данных в формы и представления, генерируемые модулем предоставления внешних данных, для презентации пользователю и доступа со стороны пользователя на клиентском вычислительном устройстве посредством графического пользовательского интерфейса, при этом формы и представления содержат контент, относящийся к разрешенным операциям, реализованным в интерфейсах прикладного программирования внешних бизнес-систем, связанных с внешним хранилищем данных, причем эти разрешенные операции включают в себя: метод Creator (Создатель), который генерирует первый выбираемый элемент меню, обеспечивающий пользователю возможность создавать новый экземпляр субъекта, включающий в себя данные для сохранения во внешнем хранилище данных; метод SpecificFinder (Специальный искатель), который генерирует второй выбираемый элемент меню, обеспечивающий пользователю возможность просматривать данные, связанные с экземпляром субъекта; метод Updater (Обновитель), который генерирует третий выбираемый элемент меню, обеспечивающий пользователю возможность модифицировать по меньшей мере одно свойство экземпляра субъекта; и метод Deleter (Уничтожитель), который генерирует четвертый выбираемый элемент меню, обеспечивающий пользователю возможность удалять экземпляр субъекта,
при этом пользователь может осуществлять доступ к данным из внешнего хранилища данных и выполнять над ними операции аналогично доступу к и выполнению операций над данными из внутреннего хранилища данных.

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

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

4. Вычислительное устройство по п.3, в котором параметры соединений включают в себя определения как для внутренних хранилищ данных, так и для внешних хранилищ данных.

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

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

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

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

9. Способ получения бизнес-данных, содержащий этапы, на которых:
создают определения бизнес-объектов, которые заключают в себе набор заданных атрибутов, относящихся к бизнес-объектам, причем данный набор заданных атрибутов включает в себя: атрибут-идентификатор, который представляет постоянные идентификационные данные конкретного субъекта; атрибут фильтра, который включает в себя критерии для фильтрации элементов данных, возвращаемых из внешнего хранилища данных; атрибут действий, который включает в себя ссылки в виде универсального указателя информационного ресурса, связанного с конкретным субъектом; атрибут отношений, который включает в себя ссылку на по меньшей мере один субъект, на который задана ассоциация; и атрибут доступа, который включает в себя методы для установки прав доступа;
осуществляют доступ к определениям субъектов и выполняют опись атрибутов, заданных в них;
принимают запрос на данные, размещенные в хранилище данных;
определяют, размещены ли данные во внутреннем хранилище данных или во внешнем хранилище данных;
в случае если данные размещены во внешнем хранилище данных, осуществляют доступ к внешним данным во внешнем хранилище данных с использованием одного или более вызовов интерфейсов прикладного программирования (API), связанных с внешним хранилищем данных, при этом информация об API, связанных с внешним хранилищем данных, содержится во внутреннем хранилище данных, причем данная информация включает в себя разрешенные операции и одно или более заранее заданных ограничений в отношении воспроизведения внешних данных и выполнения операций над внешними данными;
отображают внешние данные из внешнего хранилища данных в формы и представления, генерируемые для презентации пользователю, которые включают в себя контент, относящийся к разрешенным операциям, реализованным в интерфейсах прикладного программирования внешних бизнес-систем, связанных с внешним хранилищем данных, причем эти разрешенные операции включают в себя: метод Creator (Создатель), который генерирует первый выбираемый элемент меню, обеспечивающий пользователю возможность создавать новый экземпляр субъекта, включающий в себя данные для сохранения во внешнем хранилище данных; метод SpecificFinder (Специальный искатель), который генерирует второй выбираемый элемент меню, обеспечивающий пользователю возможность просматривать данные, связанные с экземпляром субъекта; метод Updater (Обновитель), который генерирует третий выбираемый элемент меню, обеспечивающий пользователю возможность модифицировать по меньшей мере одно свойство экземпляра субъекта; и метод Deleter (Уничтожитель), который генерирует четвертый выбираемый элемент меню, обеспечивающий пользователю возможность удалять экземпляр субъекта;
представляют внешние данные из внешнего хранилища данных пользователю таким же образом, как внутренние данные из внутреннего хранилища данных; и
позволяют пользователю оперировать внешним хранилищем данных аналогично выполнению операций над внутренними данными из внутреннего хранилища данных.

10. Способ по п.9, дополнительно содержащий этап, на котором задают элементы данных, которые представляют скалярные типы.

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

12. Способ по п.9, в котором при осуществлении доступа к определениям субъектов и выполнении описи заданных в них атрибутов дополнительно осуществляют доступ к параметрам соединения для множества различных внешних хранилищ данных.

13. Способ по п.12, в котором параметры соединения включают в себя определения как для внутренних хранилищ данных, так и для внешних хранилищ данных.

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

15. Машиночитаемый носитель, содержащий машиноисполняемые инструкции, которые при их исполнении вычислительным устройством предписывают вычислительному устройству выполнять этапы, согласно которым:
создают определения бизнес-объектов, которые заключают в себе набор заданных атрибутов, относящихся к бизнес-объектам, причем данный набор заданных атрибутов включает в себя: атрибут-идентификатор, который представляет постоянные идентификационные данные конкретного субъекта; атрибут фильтра, который включает в себя критерии для фильтрации элементов данных, возвращаемых из внешнего хранилища данных; атрибут действий, который включает в себя ссылки в виде универсального указателя информационного ресурса, связанного с конкретным субъектом; атрибут отношений, который включает в себя ссылку на по меньшей мере один субъект, на который задана ассоциация; и атрибут доступа, который включает в себя методы для установки прав доступа;
осуществляют доступ к определениям субъектов и выполняют опись атрибутов, заданных в них;
принимают запрос на данные, размещенные в хранилище данных;
определяют, размещены ли данные во внутреннем хранилище данных или во внешнем хранилище данных;
в случае если данные размещены во внешнем хранилище данных, осуществляют доступ к внешним данным во внешнем хранилище данных с использованием одного или более вызовов интерфейсов прикладного программирования (API), связанных с внешним хранилищем данных;
отображают внешние данные из внешнего хранилища данных в формы и представления, генерируемые для презентации пользователю клиентского вычислительного устройства, при этом формы и представления содержат контент, который согласуется с разрешенными операциям, реализованными в API внешних бизнес-систем, связанных с внешним хранилищем данных, при этом информация об этих API, связанных с внешним хранилищем данных, содержится во внутреннем хранилище данных, причем данная информация включает в себя разрешенные операции и одно или более заранее заданных ограничений в отношении воспроизведения внешних данных и выполнения операций над внешними данными, включая параметры, данные безопасной авторизации и информацию фильтрации, при этом разрешенные операции включают в себя: метод Creator (Создатель), который генерирует первый выбираемый элемент меню, обеспечивающий пользователю возможность создавать новый экземпляр субъекта, включающий в себя данные для сохранения во внешнем хранилище данных; метод SpecificFinder (Специальный искатель), который генерирует второй выбираемый элемент меню, обеспечивающий пользователю возможность просматривать данные, связанные с экземпляром субъекта; метод Updater (Обновитель), который генерирует третий выбираемый элемент меню, обеспечивающий пользователю возможность модифицировать по меньшей мере одно свойство экземпляра субъекта; и метод Deleter (Уничтожитель), который генерирует четвертый выбираемый элемент меню, обеспечивающий пользователю возможность удалять экземпляр субъекта;
представляют внешние данные из внешнего хранилища данных пользователю в одном из представлений или форм таким же образом, как внутренние данные из внутреннего хранилища данных; и
позволяют пользователю оперировать внешним хранилищем данных аналогично выполнению операций над внутренними данными из внутреннего хранилища данных.

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

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

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

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

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



 

Похожие патенты:

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

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

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

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

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

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

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

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

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

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

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

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

Изобретение относится к способу памяти данных для хранения компьютерного программного продукта и устройству для безопасной передачи данных. Технический результат заключается в повышении безопасности передачи данных. Устройство содержит блок (2) предоставления для предоставления соединений (DV) данных от различных начальных компонентов (SK) через, соответственно, по меньшей мере, один промежуточный компонент (ZK) к общему целевому компоненту (ZK'), блок (3) объединения для объединения промежуточных компонентов (ZK) в зависимости от криптографической информации (KI) в один промежуточный компонент (ZK) посредством, по меньшей мере, одного обмена сообщениями, причем обмен сообщениями выполняется согласно способу с совместно используемым ключом, способу http-Дайджест-Аутентификации, способу запроса-ответа, ключевого хеш-способа, хеш-функции, способу Диффи-Хеллмана и/или способу цифровой подписи и блок (4) передачи для передачи данных (D) от начальных компонентов (SK) через объединенный промежуточный компонент (ZK) к целевому компоненту (ZK). 3 н. и 11 з.п. ф-лы, 12 ил.

Изобретение относится к области синхронизации частей файла с помощью серверной модели хранения информации в клиент-серверной компьютерной сети. Техническим результатом является повышение защищенности данных при синхронизации. Изменения в содержимом электронного документа могут быть приняты на клиентском компьютере. Содержимое может быть включено в первую часть файла, сохраненного на серверном компьютере. Первая часть может включать в себя первый поток, который включает в себя содержимое электронного документа. Файл может включать в себя множество частей, причем каждая часть включает в себя один или более потоков. Клиентский компьютер может формировать метаданные во второй части файла. Метаданные могут быть ассоциированы с изменениями в содержимом электронного документа в первой части. Вторая часть может затем быть отдельно синхронизирована с серверным компьютером, чтобы сохранять метаданные. Первая часть может затем быть отдельно синхронизирована с серверным компьютером, чтобы сохранять изменения, сделанные в содержимом электронного документа. 3 н. и 11 з.п. ф-лы, 7 ил.

Изобретение относится к области компьютерных сетей, а именно к клиент-серверным компьютерным сетям. Технический результат заключается в увеличении производительности сети и снижении задержки в доставке электронных документов, запрошенных пользователями. Технический результат достигается за счет использования предварительной обработки на сервере для развертывания статических представлений электронных документов в компьютерной сети. Электронный документ может быть опубликован из клиентского компьютера на первом серверном компьютере в компьютерной сети. Во время публикации первый серверный компьютер может создавать статическое представление электронного документа и приложение просмотра для просмотра статического представления электронного документа на клиентском компьютере. Первый серверный компьютер может сохранять статическое представление электронного документа и приложение просмотра на втором серверном компьютере для доставки на клиентский компьютер. 2 н. и 5 з.п. ф-лы, 5 ил.

Изобретение относится к области распределения информации резервного копирования по местоположениям хранения в основанной на сети архитектуре резервного копирования. Техническим результатом является повышение эффективности резервного копирования. Может быть реализовано виртуальное распределение по уровням информации резервного копирования в местоположениях хранения в архитектуре резервного копирования. Статистические модели используются, чтобы динамически перераспределять информацию резервного копирования среди местоположений хранения и/или уровней, чтобы гарантировать доступность данных, минимальную задержку при восстановлении и минимальное использование полосы частот при восстановлении. Кроме того, эвристические способы или способы машинного обучения могут применяться, чтобы упреждающе обнаруживать отказы или другие изменения в местоположениях хранения таким образом, что информация резервного копирования может быть перераспределена соответственно до возникновения отказа. 2 н. и 13 з.п. ф-лы, 10 ил.

Изобретение относится к области высокопроизводительных многопроцессорных вычислительных систем. Техническим результатом является обеспечение надежных высокоэффективных сетей с большим числом процессорных узлов. Системная сеть с топологией расширенного n-мерного R-ичного обобщенного гиперкуба, n≥2, R≥3, характеризуется тем, что сеть имеет вид n-мерного R-ичного расширенного обобщенного гиперкуба из Rn узлов, при этом в каждом узле расположен абонент и полный коммутатор (n+1)×(n+1), а для связи узлов каждого из n×Rn-1 ребер обобщенного гиперкуба имеется расширенный самомаршрутизируемый неблокируемый коммутатор R×R, состоящий из коммутаторов m×m, m≥2, каждый из R портов которого соединен одним каналом с коммутатором (n+1)×(n+1) каждого из R узлов ребра, причем оставшийся порт каждого из коммутаторов подсоединен к абоненту своего узла. 5 ил., 2 табл.
Изобретение относится к вычислительной технике. Технический результат заключается в повышении надежности комплекса и обеспечении быстрого ввода в эксплуатацию утраченных из-за неисправности оборудования ресурсов. Аппаратно-вычислительный комплекс с повышенными надежностью и безопасностью в среде облачных вычислений включает в себя связанные между собой и соединенные посредством сети первую группу рабочих ЭВМ и вторую группу ЭВМ для хранения программных сессий, а также ЭВМ управления, через которую связаны вторая группа ЭВМ для хранения программных сессий, высокопроизводительные вычислительные ресурсы и разделяемые файловые хранилища, причем в него дополнительно введены гипервизор, система обеспечения безопасности, включающая в себя модуль обнаружения и предотвращения вторжений, модуль межсетевого экранирования и модуль защиты от несанкционированного доступа и система обеспечения отказоустойчивости, включающая в себя модуль обеспечения отказоустойчивости на уровне аппаратных ресурсов, модуль мониторинга сервисных виртуальных машин и модуль обеспечения отказоустойчивости сервисов.

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