Навигация в приложении базы данных
Иллюстрации
Показать всеИзобретение относится к области управления базами данных, а именно к приложениям базы данных для выполнения некоторых функций относительно базы данных. Технический результат заключается в обеспечении пользователям без копии клиентской прикладной программы базы данных получать доступ и использовать приложение базы данных посредством браузера всемирной паутины (“Web”) и локальной или глобальной сети. Технический результат достигается за счет серверной прикладной программы базы данных, которая обеспечивается таким образом, что она сконфигурирована для предоставления программируемого интерфейса в приложение базы данных посредством унифицированных указателей ресурса (URL) служб базы данных. URL служб базы данных, используемый приложением базы данных, может быть обновлен программно выполнением программного кода в или под управлением серверной прикладной программы базы данных. Также описывается макродействие для использования совместно с серверным приложением базы данных, которое предоставляет функциональные возможности для отображения объекта базы данных, такого как форма или отчет локально в Web-браузере. 2 н. и 17 з.п. ф-лы, 8 ил.
Реферат
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
[0001] Некоторые программы управления базами данных позволяют разработчикам создавать приложения базы данных для выполнения некоторых функций относительно базы данных. Например, может быть создано приложение базы данных, которое позволяет пользователю отслеживать пожертвования школе или благотворительность. Пользователи обычно получают доступ к приложениям базы данных, таким как эта, с помощью программы управления базами данных (называемой в настоящем описании "клиентская прикладная программа базы данных" или просто "клиент базы данных"), используемой для создания приложения базы данных или рабочей версии клиента базы данных. В результате пользователь, который не имеет копии клиента базы данных или рабочей версии, установленной на своем компьютере, будет не в состоянии использовать приложение базы данных.
[0002] Чтобы облегчить совместную работу и позволить пользователям без копии клиентской прикладной программы базы данных получать доступ и использовать приложение базы данных, версия приложения базы данных может быть создана таким образом, чтобы можно было получить доступ, используя браузер всемирной паутины ("Web") и локальную или глобальную сеть. Используя такую доступную посредством Web версию приложения базы данных, пользователи могут скопировать и вставить унифицированный указатель ресурса ("URL"), используемый основанным на Web приложением базы данных. Когда пользователь возвращается к такому URL, он ожидает увидеть те же самые данные, которые он видел в то время, когда он копировал URL. Пользователь может быть расстроен или смущен, если основанное на Web приложение базы данных возвращает другой результат.
[0003] Это относится к этим и другим принципам, которые описывают данное раскрытие.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0004] Понятия и способы описываются в настоящем описании для навигации в приложении базы данных. Согласно вариантам осуществления, представленным в настоящем описании, серверная прикладная программа базы данных сконфигурирована для предоставления программируемого интерфейса в приложение базы данных посредством URL. Правильно отформатированные указатели URL могут быть использованы для извлечения конкретных результатов из приложения базы данных. Указатели URL также программно обновляются посредством серверного приложения базы данных для отражения корректного пути к в настоящее время отображаемым данным. С помощью использования этого механизма, URL, который копируется и позже используется для возвращения к приложению базы данных, возвращает непротиворечивые данные из приложения базы данных.
[0005] Согласно одному варианту осуществления, представленному в настоящем описании, обеспечивается серверная прикладная программа базы данных, которая сконфигурирована для предоставления программируемого интерфейса в приложение базы данных посредством URL (называемым в настоящем описании "URL служб базы данных"). Указатели URL служб базы данных являются указателями URL, которые могут быть использованы для извлечения конкретных результатов из приложения базы данных. Согласно одной реализации, URL служб базы данных включает в себя первый параметр, который идентифицирует путь к целевому средству управления подформой, которое загружает запрошенный объект базы данных. В одном варианте осуществления запрошенным объектом базы данных являются связанные с данными форма или отчет. Средством управления подформой является средство управления интерфейсом пользователя, которое может быть использовано в Web-браузере для отображения объекта базы данных, такого как форма или отчет.
[0006] Согласно другим реализациям, URL служб базы данных включает в себя второй параметр, который идентифицирует имя объекта базы данных для загрузки в средство управления подформой. URL служб базы данных может также включать в себя третий параметр, идентифицирующий тип для объекта базы данных для загрузки. Например, третий параметр может идентифицировать, является ли объект базы данных формой базы данных или отчетом базы данных. Согласно некоторым реализациям, URL служб базы данных также включает в себя четвертый параметр, который идентифицирует конкретную страницу объекта базы данных, которая должна быть сделана в качестве отображаемой в настоящее время страницей. Также может быть обеспечен пятый параметр, который идентифицирует режим данных для запрошенного объекта базы данных. Например, пятый параметр может указывать, должен ли объект базы данных быть обеспечен в режиме добавления, режиме редактирования или режиме только для чтения. URL служб баз данных может также включать в себя шестой параметр для задания условия WHERE (ГДЕ) для источника записи объекта базы данных. Условие WHERE может быть использовано для изменения (отфильтровывания) фактических данных, которые отображаются в форме или отчете. Другие параметры, такие как параметры для задания того, как данные фильтруются или сортируются, могут быть также обеспечены.
[0007] Согласно другим реализациям, URL служб базы данных, используемые приложением базы данных, могут быть обновлены программно посредством выполнения программного кода в или под управлением серверной прикладной программы базы данных. Например, макродействие может быть выполнено для открытия формы в Web-браузере. Выполнение макродействия обновляет URL служб базы данных для правильного отражения URL служб базы данных открытой формы. Подобным образом, макродействия для открытия отчетов, показа записей, отображения формы или отчета, перехода посредством браузера к локальному объекту базы данных и для выполнения других функций, могут обновлять URL служб базы данных соответственно. Точно так же, выбор средств управления пользовательским интерфейсом, обеспеченных для навигации в приложении базы данных, такого как средство управления навигацией, может также вызывать обновление URL служб базы данных. Должно быть оценено, что термин "макродействие", который используется в настоящем описании, относится к макрокоманде (макросу), обеспеченному приложением базы данных. Должно быть понятно, что другие типы выполняемых компонентов могут также быть использованы для обеспечения аналогичных функциональных возможностей.
[0008] Согласно другим реализациям, макродействие предоставляется в настоящем описании для использования совместно с серверным приложением базы данных, которое предоставляет функциональные возможности для отображения объекта базы данных, такого как форма или отчет, локально в Web-браузере. Посредством использования макродействия, называемого в настоящем описании макродействием BrowseTo, текущий вид формы или отчета может быть изменен, в то же время поддерживая контекст приложения базы данных. Согласно одной реализации, макродействие BrowseTo принимает параметры, идентифицирующие путь к средству управления подформой, идентифицирующие имя объекта базы данных для отображения и идентифицирующие тип объекта базы данных. В некоторых реализациях параметры, идентифицирующие страницу объекта базы данных, которая должна быть отображена в качестве текущей страницы, идентифицирующие режим данных для объекта базы данных, и для задания условия WHERE для источника записи объекта базы данных для отображения посредством макродействия BrowseTo, могут также подставляться и использоваться при отображении объекта базы данных локально.
[0009] Должно быть оценено, что вышеописанный объект изобретения может также быть реализован в качестве управляемого компьютером устройства, компьютерного процесса, вычислительной системы, в качестве продукта изготовления, такого как считываемый компьютером носитель данных или другим способом. Эти и различные другие признаки будут очевидны из прочтения следующего Подробного Описания и обзора прилагаемых чертежей.
[0010] Этот раздел сущности изобретения предоставлен для ввода выбора понятий в упрощенной форме, которые дополнительно описываются ниже в Подробном Описании. Этот раздел сущности изобретения не предназначается ни для идентификации основных особенностей или ключевых признаков заявленного объекта изобретения, ни предназначается, чтобы этот раздел сущности изобретения использовался для ограничения области заявленного объекта изобретения. Дополнительно, заявленный объект изобретения не ограничивается реализациями, которые разрешают любые или все несоответствия, отмеченные в какой-либо части настоящего описания.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0011] Фиг.1 является диаграммой сетевой и компьютерной архитектуры, показывающей иллюстративные аспекты операционной среды и некоторых компонентов программного обеспечения, предоставленных вариантами осуществления, представленных в настоящем описании;
[0012] Фиг.2 является диаграммой пользовательского интерфейса, показывающей аспекты управления навигацией, используемые в одном варианте осуществления, представленном в настоящем описании;
[0013] Фиг.3 является диаграммой структуры данных, иллюстрирующей аспекты унифицированного указателя ресурсов служб базы данных, предоставленного в вариантах осуществления, представленных в настоящем описании;
[0014] Фиг.4 является диаграммой программного обеспечения, показывающей некоторые макродействия, которые используют различные способы, представленные в вариантах осуществления настоящего описания;
[0015] Фиг.5-7 являются блок-схемами, показывающими различные операции, которые иллюстрируют аспекты вариантов осуществления, представленные в настоящем описании для обработки запроса унифицированного указателя ресурсов служб базы данных, обновления унифицированного указателя ресурсов служб базы данных, и выполнения макродействия для перехода посредством браузера к форме или отчету, соответственно, согласно вариантам осуществления, представленным в настоящем описании; и
[0016] Фиг.8 является диаграммой компьютерной архитектуры, показывающей иллюстративную архитектуру компьютерного аппаратного обеспечения и программного обеспечения для вычислительной системы, способной реализовать аспекты вариантов осуществления, представленных в настоящем описании.
ПОДРОБНОЕ ОПИСАНИЕ
[0017] Нижеследующее подробное описание направлено на способы для навигации в приложении базы данных. В то время как заявленный объект, описанный в настоящем описании, представляется в общем контексте программных модулей, которые выполняются совместно с выполнением операционной системы и прикладными программами в компьютерной системе, специалисты в данной области техники распознают, что другие реализации могут быть выполнены в комбинации с другими типами программных модулей. Обычно, программные модули включают в себя операции, программы, компоненты, структуры данных и другие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Кроме того, специалисты в данной области техники оценят, что объект изобретения, описанный в настоящем описании, может быть осуществлен с другими конфигурациями компьютерной системы, включающими в себя карманные устройства, мультипроцессорные системы, основанную на микропроцессорах или программируемую бытовую электронику, мини-компьютеры, универсальные компьютеры и т.п.
[0018] В нижеследующем подробном описании делаются ссылки на сопроводительные чертежи, которые являются его частью и которые показываются посредством иллюстрации конкретных вариантов осуществления или примеров. Ссылаясь теперь на чертежи, в которых аналогичные ссылочные позиции представляют аналогичные элементы на нескольких чертежах, ниже описаны понятия и способы для навигации в приложении базы данных.
[0019] Ссылаясь теперь на фиг.1, подробности будут представлены относительно иллюстративной операционной среды и нескольких компонентов программного обеспечения, представленных вариантами осуществления, представленными в настоящем описании. В частности, фиг.1 показывает аспекты системы 100 для обеспечения приложения 108 базы данных. Как показано на фиг.1, система 100 включает в себя клиентский компьютер 102 и серверный компьютер 104, которые связываются посредством сети 118. Должно быть оценено, что конфигурация, иллюстрированная на фиг.1, является просто иллюстративной, и что дополнительные вычислительные системы и сети, не показанные на фиг.1, могут быть использованы в различных вариантах осуществления, представленных в настоящем описании. Должно быть также оценено, что, в то время как сеть 118 описывается в настоящем описании как являющаяся глобальной сетью ("WAN"), такой как Интернет, другие типы локальных и сетей WAN могут также быть использованы вариантами осуществления, представленными в настоящем описании.
[0020] Как иллюстрировано на фиг.1, клиентский компьютер 102 оборудован для выполнения операционной системы и соответствующего программного обеспечения прикладной программы. В частности, клиентский компьютер 102 сконфигурирован для выполнения клиентской прикладной программы 106 базы данных. Клиентская прикладная программа 106 базы данных, которая может называться в настоящем описании просто как "клиент базы данных", содержит прикладную программу базы данных, сконфигурированную для выполнения на клиентском компьютере 102. Например, в одной реализации, клиентская прикладная программа 106 базы данных содержит клиентскую прикладную программу базы данных ACCESS от корпорации MICROSOFT, Редмонд, Вашингтон. Должно быть понятно, однако, что клиентские прикладные программы базы данных от других производителей могут также быть использованы совместно с компонентами программного обеспечения, представленными в настоящем описании.
[0021] Как также иллюстрировано на фиг.1, клиентская прикладная программа 106 базы данных сконфигурирована в вариантах осуществления для разрешения пользователю создавать приложение 108 базы данных. Приложение 108 базы данных может выполняться клиентской прикладной программой 106 базы данных или рабочей версией клиента базы данных. Посредством использования приложения 108 базы данных, пользователь клиентского компьютера 102 может взаимодействовать с базой данных различными способами, поддерживаемыми приложением 108 базы данных. Должно быть оценено, что в одном варианте осуществления приложение 108 базы данных является самодостаточным (автономным), включающим в себя фактическую базу данных, с которой работает приложение 108 базы данных.
[0022] Согласно одному варианту осуществления, представленному в настоящем описании, клиентская прикладная программа 106 базы данных дополнительно сконфигурирована для разрешения пользователю определять форму 200 навигации в качестве части приложения 108 базы данных. Как описано более подробно ниже со ссылкой на фиг.2, форма 200 навигации может включать в себя средство 202 управления навигацией. Средство 202 управления навигацией включает в себя выбираемые вкладки, где каждая из них может быть ассоциирована с целевым компонентом, таким как форма 124A или отчет 124B базы данных. Когда одна из выбираемых вкладок в средстве 202 управления навигацией выбирается, используя соответствующее пользовательское устройство ввода, целевой компонент, ассоциированный с выбранной вкладкой, отображается приложением 108 базы данных в форме 200 навигации. Множественные средства 202 управления навигацией могут быть добавлены к одной и той же форме 200 навигации.
[0023] Должно быть оценено, что, хотя варианты осуществления, представленные в настоящем описании, описываются как работающие совместно со средством 202 управления навигацией, варианты осуществления, представленные в настоящем описании, не ограничиваются этой реализацией. Вместо этого, варианты осуществления, представленные в настоящем описании, могут быть использованы фактически с любым типом управления пользовательским интерфейсом, предоставленным для навигации в приложении базы данных.
[0024] Согласно другим аспектам, представленным в настоящем описании, клиентская прикладная программа 106 базы данных также предоставляет функциональные возможности для публикации (объявления) приложения 108 базы данных, включающего в себя форму 200 навигации и средство 202 управления навигацией, серверному компьютеру 104. В этом отношении, пользователь клиентского компьютера 102 может сделать запрос клиентской прикладной программе 106 базы данных, чтобы приложение 108 базы данных, включающее в себя форму 200 навигации и средство 202 управления навигацией, было опубликовано серверному компьютеру 104. В ответ на прием такого запроса, клиентская прикладная программа 106 базы данных сконфигурирована для связи с Web-сайтом 114 с помощью прикладной программы 112 Web-сервера, чтобы вызвать публикацию приложения 108 базы данных серверному компьютеру 104. В этом отношении, клиентская прикладная программа 106 базы данных может генерировать файл данных, используя расширяемый язык разметки ("XML") или расширяемый язык разметки приложений ("XAML"). Должно быть оценено, что другие типы языков разметки или форматов файлов данных могут быть использованы для передачи этой информации на серверный компьютер 104.
[0025] Посредством публикации для серверного компьютера 104, приложение 108 базы данных, включающее в себя форму 200 навигации и средство 202 управления навигацией, может быть сделано доступным для серверного компьютера 104 с помощью Web-интерфейса. В частности, Web-сайт 114 сконфигурирован в одном варианте осуществления для приема и ответа на запросы, принятые от прикладной программы 110 Web-браузера, на формы 200 навигации и средство 202 управления навигацией. Версия клиентской прикладной программы 106 базы данных, называемая в настоящем описании серверной прикладной программой 116 базы данных, может выполняться на серверном компьютере 104. С помощью серверной прикладной программы 116 базы данных различные особенности приложения 108 базы данных, включающего в себя форму 200 навигации и средство 202 управления навигацией, могут быть доступными через Web-сайт 114.
[0026] Согласно одному варианту осуществления, представленному в настоящем описании, Web-сайт 114 содержит систему SHAREPOINT совместной работы от корпорации MICROSOFT, Редмонд, Вашингтон. Должно быть понятно, однако, что варианты осуществления, представленные в настоящем описании, могут быть использованы с другими типами Web-сайтов другими производителями. Должно быть также понятно, что, хотя прикладная программа 110 Web-браузера описывается в настоящем описании как используемая для взаимодействия с Web-сайтом 114, включающим в себя форму 200 навигации и средство 202 управления навигацией, любой тип программы, способной к запросу и выдаче Web-страницы, может быть использован.
[0027] Как описано более подробно ниже со ссылками на фиг.3-6, серверная прикладная программа 116 базы данных сконфигурирована в некоторых вариантах осуществления для обеспечения программируемого интерфейса в приложение 108 базы данных посредством URL 120 (называемого в настоящем описании "URL служб базы данных"). Указатели URL служб базы данных являются указателями URL, которые могут быть использованы для извлечения конкретных результатов из приложения 108 базы данных, таких как форма 124A, отчет 124B или другой тип объекта базы данных. Как также описано более подробно ниже, URL 120 служб базы данных также обновляется программно серверной прикладной программой 116 базы данных для отражения корректного пути к отображенным в настоящее время данным. С помощью этого механизма, URL, который копируется и позже используется для возвращения в приложение базы данных, возвращает непротиворечивые данные из приложения 108 базы данных.
[0028] Ссылаясь на фиг.2, дополнительные подробности представлены относительно работы формы 200 навигации и средства 202 управления навигацией в одном варианте осуществления, представленном в настоящем описании. В частности, фиг.2 иллюстрирует визуализацию (представление) формы 200, сгенерированной приложением Web-браузера 110. Как обсуждалось кратко выше, средство 202 управления навигацией включает в себя некоторое количество вкладок 204A-204C. Вкладки 204A-204C каждая могут быть ассоциированы с целевым компонентом, таким как форма 124A или отчет 124B. Когда одна из вкладок 204A-204C выбирается, ассоциированный целевой компонент отображается в средстве 206 управления подформой. Как описано выше, средство 206 управления подформой является средством управления пользовательским интерфейсом, которое может быть использовано в прикладной программе 110 Web-браузера для отображения объекта базы данных, такого как форма или отчет. Должно быть понятно, что множественные средства 202 управления навигацией могут быть каскадированы. Кроме того, средство 202 управления навигацией может быть расположено в других местах в форме 202, например, с левой стороны, внизу или с правой стороны. Дополнительно, вкладки 204A-204C могут принимать другие формы или быть представлены в качестве гиперссылок.
[0029] Как описано кратко выше со ссылкой на фиг.1, серверная прикладная программа 116 базы данных сконфигурирована в одном варианте осуществления для предоставления интерфейса в приложение 108 базы данных посредством URL 120 служб базы данных. Для гарантии, что URL 120 служб базы данных поддерживает корректный путь к объекту базы данных, отображенному средством 206 управления подформой, URL 120 служб базы данных обновляется каждый раз, когда выбирается одна из вкладок 204A-204C. Как описано более подробно ниже, URL 120 служб базы данных может также быть обновлен после выбора других средств управления пользовательским интерфейсом, обеспеченным для навигации в приложении 108 базы данных и в ответ на выполнение программных компонентов приложением 108 базы данных. Подробности, относящиеся к этим функциональным возможностям, представлены ниже со ссылками на фиг.3-7.
[0030] Ссылаясь теперь на фиг.3, описывается диаграмма структуры данных, иллюстрирующая аспекты URL 120 служб баз данных, представленные в некоторых вариантах осуществления. Как показано на фиг.3, URL 120 служб базы данных включает в себя адрес 302A и несколько параметров 302B-302G. Согласно некоторым реализациям, адрес 302A отформатирован с адресом сервера и индикацией, что остаток от URL 120 является закладкой к запрошенной странице. Это позволяет URL 120 изменять без прикладной программы 110 Web-браузера повторную загрузку страницы. Например, при использовании с гипертекстовым транспортным протоколом ("HTTP"), адрес 302C может принимать форму "http://address/pagename#". Должно быть понятно, что адрес 302A может быть задан для использования с другими типами протоколов и отформатирован, используя сетевые адреса соответствующего серверного компьютера 104, хостирующего приложение 108 базы данных.
[0031] Как кратко описывалось выше, URL 120 службы базы данных дополнительно включает в себя множество параметров 302B-302G. В некоторых вариантах осуществления параметры 302B-302G заданы в порядке, иллюстрированном на фиг.3. Должно быть понятно, однако, что порядок параметров 302B-302G может быть отличным в других вариантах осуществления и что некоторые из параметров могут не быть использованы в каждом запросе.
[0032] В некоторых реализациях URL 120 служб базы данных включает в себя первый параметр 302B, который идентифицирует путь к средству 206 управления подформой. В частности, этот параметр идентифицирует путь от главной формы приложения базы данных 108 к целевому средству 206 управления подформой, который загружает указанный объект базы данных. Главная форма приложения 108 базы данных является формой, которая загружается непосредственно в окно браузера, выданное Web-браузером 110. Как используется в настоящем описании, термин "объект базы данных" может относиться к форме 124A, отчету 124B или другому типу объектов, выданных приложением 108 базы данных.
[0033] Должно быть понятно, что согласно варианту осуществления параметр 302B может быть использован для загрузки подформ, отличных от объекта, который идентифицируется параметром 302D. Например, в одном сценарии, если первая форма открыта, которая содержит первую подформу, параметр 302B идентифицирует первую подформу, и эта форма, идентифицированная параметром 302D, загружается в эту подформу. В другом сценарии целевой путь может быть задан параметром 302B, таким как: "Form1.Subform1>Form2.Subform2>Form3.Subform3." Этот параметр означает, что вторая форма должна быть загружена в первую подформу и затем третья форма должна быть загружена во вторую подформу второй формы. Это также задает, что форма, заданная параметром 302D, должна быть загружена в третью подформу третьей формы. Должно быть понятно, что другие более или менее сложные сценарии также могут быть использованы со способами, представленными в настоящем описании.
[0034] Согласно реализациям, URL 120 служб базы данных также включает в себя второй параметр 302D, который идентифицирует имя объекта базы данных, который загружается в заданное средство 206 управления подформой. Как описано более подробно ниже, объект, заданный параметром 302D, является также объектом базы данных, к которому применяются параметры 302B, 302F и 302G. Согласно одной реализации, URL 120 служб базы данных также включает в себя третий параметр 302C, который идентифицирует тип для объекта базы данных, который должен быть загружен в средство 206 управления подформой. Например, в одной реализации параметр 302C идентифицирует, является ли объект базы данных формой 124A или отчетом 124B базы данных.
[0035] Согласно некоторым вариантам осуществления, URL 120 служб базы данных может включать в себя четвертый параметр 302E, который идентифицирует страницу объекта базы данных для загрузки в средство 206 управления подформой, которое должно быть отображено в качестве текущей страницы. Пятый параметр 302F может также быть обеспечен в URL 120 служб базы данных, который идентифицирует режим данных для объекта базы данных, отображенного в средстве 206 управления подформой. Например, параметр 302F может указывать, открыт ли объект базы данных в режиме добавления, режиме редактирования или в режиме только для чтения. Если параметр 302F не задан, параметры, ассоциированные с формой, хостирующей средство 206 управления подформой, могут быть использованы для определения, открыт ли хостируемый объект базы данных в средстве 206 управления подформой в режиме добавления, режиме редактирования или в режиме только для чтения.
[0036] Согласно некоторым вариантам осуществления, шестой параметр 302G может быть задан как включающий в себя условие WHERE для источника записи объекта базы данных, хостируемого средством 206 управления подформой. Если задано, значение параметра 302G заменяет условие WHERE объекта базы данных, хостируемого в средстве 206 управления подформой. Должно быть понятно, что условие WHERE может быть использовано для задания фактических данных, отображаемых объектом базы данных, хостируемым в средстве 206 управления подформой. Как описано более подробно ниже, URL 120 служб базы данных и параметры 302B-302G используются серверной прикладной программой 116 базы данных для идентификации конкретной части приложения 108 базы данных. Дополнительные подробности относительно работы серверной прикладной программы 116 базы данных в этом отношении предоставляются ниже.
[0037] Как описано кратко выше, URL 120 служб базы данных, используемый серверной прикладной программой 116 базы данных, может быть обновлен программно программным кодом, выполняемым в или под управлением серверной прикладной программы 116 базы данных. В частности, программист может использовать макродействия 122, показанные на фиг.4, для реализации аспектов приложения 108 базы данных. Например, в некоторых вариантах осуществления макродействие 122A OpenForm() может быть использовано для открытия формы 124A. Макродействие 122B OpenReport() может быть аналогично использовано для открытия отчета 124B. Аналогично, макродействие 126C GoToRecord() может быть использовано для отображения конкретной записи в форме 124A или отчете 124B. Макродействие 122D BrowseTo также представлено в вариантах осуществления, которое разрешает приложению 108 базы данных вынуждать приложение 110 Web-браузера переходить к объекту базы данных без изменения контекста главной формы. Дополнительные подробности относительно макродействия 122D BrowseTo представлены ниже с ссылкой на фиг.7.
[0038] Согласно различным вариантам осуществления, макродействия 122A-122D сконфигурированы для обновления URL 120 служб базы данных, отслеживая эффективность их соответствующих функций. Поскольку макродействия 122A-122D сконфигурированы для обновления URL 120 служб базы данных, разработчик приложения 108 базы данных не должен явно программировать эти функциональные возможности. Например, макродействие 122C GoToRecord() обновляет URL 120 служб базы данных для отражения корректного пути к отображенному отчету. Как описано более подробно ниже со ссылкой на фиг.7, макродействие 122D BrowseTo обновляет URL 120 базы данных для отражения корректного пути к отображенной форме 124A или отчету 124B. Дополнительные подробности относительно работы макродействий 122A-122D представлены ниже со ссылкой на фиг.6.
[0039] Должно быть понятно, что, согласно некоторым вариантам осуществления, серверная прикладная программа 116 базы данных сконфигурирована для обновления URL 120 служб базы данных в ответ на другие типы ввода. Например, когда запрос принимается с помощью средства управления пользовательским интерфейсом, выданного с помощью прикладной программы 110 Web-браузера для навигации к конкретному объекту базы данных, предоставленному приложением 108 базы данных, серверная прикладная программа 116 базы данных обновляет URL 120 служб базы данных для отражения корректного пути к отображенному объекту. Например, в одной реализации, серверная прикладная программа 116 базы данных сконфигурирована для обновления URL 120 служб базы данных в ответ на выбор одного из отчетов 204A-204C в средстве 202 управления навигацией, описанном выше со ссылкой на фиг.1-2. Должно быть понятно, что URL 120 служб базы данных может также быть обновлен серверной прикладной программой 116 базы данных в ответ на выбор других типов средств управления интерфейсом пользователя для навигации в приложении 108 базы данных.
[0040] Фиг.5 является блок-схемой, показывающей аспекты одного процесса для обработки URL 110 служб базы данных согласно одному варианту осуществления, представленному в настоящем описании. Должно быть понятно, что логические операции, описанные в настоящем описании, реализуются (1) в качестве последовательности реализуемых компьютером действий или программных модулей, работающих в вычислительной системе и/или (2) в качестве связанных друг с другом машинных логических схем или схемных модулей в вычислительной системе. Реализация является вопросом выбора, зависящим от производительности и других требований вычислительной системы. Соответственно, логические операции, описанные в настоящем описании, называются по-разному в зависимости от операций состояния, структурных устройств, действий или модулей. Эти операции, структурные устройства, действия и модули могут быть реализованы в программном обеспечении, в программно-аппаратном обеспечении, в цифровой логике специального назначения и любой их комбинации. Должно быть также понятно, что больше или меньше операций может быть выполнено, чем показано на чертежах и описано в настоящем описании. Эти операции могут также быть выполнены в другом порядке, отличном от описываемого в настоящем описании.
[0041] Программа 500 начинается на этапе 502, где серверная прикладная программа 116 базы данных принимает URL 120 служб базы данных от прикладной программы 110 Web-браузера. В ответ на прием URL 120 служб базы данных, серверная прикладная программа 116 базы данных идентифицирует желаемый объект базы данных на этапе 504. В этом отношении, серверная прикладная программа 116 базы данных может использовать данные, заданные параметром 302D для идентификации запрошенного объекта базы данных. Как только запрошенный объект базы данных был идентифицирован, программа 500 переходит к этапу 506.
[0042] На этапе 506 серверная прикладная программа 116 базы данных загружает заданную форму и подформы и идентифицирует целевое средство 206 управления подформой, которое должно быть использовано для загрузки заданного объекта. В этом отношении, данные, заданные параметром 302B, могут быть использованы для идентификации соответствующего средства 206 управления подформой для загрузки заданного объекта базы данных. Как только целевое средство 206 управления подформой было идентифицировано, программа 500 переходит к этапу 508, где серверная прикладная программа 116 базы данных определяет, является ли условие WHERE заданным для параметра 302G. Если да, программа 500 переходит к этапу 510, где серверная прикладная программа 116 базы данных заменяет условие WHERE источника записи объекта на условие WHERE, заданное в параметре 302G. Программа 500 затем переходит от этапа 510 к этапу 512.
[0043] На этапе 512 генерируется запрошенная форма 124A или отчет 124B, как задано в параметре 302C. Должно быть понятно, что генерирование формы 124A или отчета 124B может вовлечь эффективность запроса серверной прикладной программой 116 базы данных. Как только запрошенная форма 124A или отчет 124B сгенерирована, программа 500 переходит к этапу 514, где страница, заданная параметром 302E, делается текущей страницей запрошенной формы 124A или отчета 124B. Программа 500 затем переходит к этапу 516, на котором запрошенная форма 124A или отчет 124B возвращается в прикладную программу 110 Web-браузера для отображения в идентифицированном средстве 206 управления подформой. Режим данных возвращенного объекта базы данных также устанавливается равным значению, заданному параметром 302F. Как только приложение 110 Web-браузера принимает объект базы данных, он отображается в средстве управления 206 подформой. От этапа 516 программа 500 переходит к этапу 518, где она и заканчивается.
[0044] Переходя теперь на фиг.6, описывается иллюстративная программа 600, иллюстрирующая аспекты работы серверного приложения 116 базы данных для обновления URL 120 служб базы данных. Как описано выше, URL 120 служб базы данных обновляется в ответ на выполнение некоторых макродействий 122A-122D или других компонентов программы. Программа 600, показанная на фиг.6, иллюстрируют этот процесс в соответствии с одним иллюстративным вариантом осуществления.
[0045] Программа 600 начинается на этапе 602, где серверная прикладная программа 116 базы данных определяет, было ли макродействие 122A OpenForm() выполнено. Если да, программа 600 переходит к этапу 614, где URL 120 служб базы данных обновляется для отражения недавно открытой формы. Если макродействие 122A OpenForm() не было выполнено, программа 600 переходит от этапа 602 к этапу 604, где выполняется определение относительно того, было ли макродействие 122B OpenReport() выполнено. Если да, программа 600 переходит к этапу 614, где URL 120 служб базы данных обновляется для отражения корректного пути к недавно открытому отчету. Если отчет не был открыт, программа 600 переходит от этапа 604 к этапу 606.
[0046] На этапе 606 выполняется определение относительно того, было ли макродействие 122C GoToRecord() выполнено. Если да, программа 600 переходит от этапа 606 к этапу 614, где URL 120 служб базы данных обновляется для отражения корректного пути к недавно открытому отчету. Если макродействие 122C GoToRecord() не было выполнено, программа 600 переходит от этапа 606 к этапу 608. На этапе 608 серверная прикладная программа 116 базы данных определяет, было ли выполнено макродействие 122D BrowseTo. Если да, URL 120 служб базы данных обновляется для отражения формы 124A или отчета 124B, которое было отображено, используя макродействие 122D BrowseTo, на этапе 614. Если макродействие 122D BrowseTo не было выполнено, программа 600 переходит от этапа 608 к этапу 610, где серверная прикладная программа 116 базы данных определяет, использовалось ли средство управления пользовательским интерфейсом для навигации к другой форме 124A, отчету 124B или записи, обеспеченной приложением 108 базы данных. Если да, серверная прикладная программа 116 базы данных обновляет URL 120 служб базы данных для отражения соответствующего пути на этапе 614.
[0047] На этапе 612 серверная прикладная программа 116 базы данных определяет, была ли одна из вкладок 204A-204C выбрана в средстве 202 управления навигацией. Если да, программа 600 переходит от этапа 612 к этапу 614, где серверная прикладная программа 116 базы данных обновляет URL 120 служб базы данных для отражения целевой выбранной вкладки 204A-204C. Если ни одна из вкладок 204A-204C не была выбрана на этапе 612, программа 600 переходит к этапу 616, где она зака