数据库应用程序导航的制作方法

文档序号:6349309阅读:273来源:国知局
专利名称:数据库应用程序导航的制作方法
数据库应用程序导航
背景技术
一些数据库管理程序允许开发者创建用于执行与数据库有关的某些功能的数据库应用。举例来说,可以创建允许用户跟踪对学校或慈善团体的捐赠的数据库应用。用户通常通过被用来创建数据库应用或数据库客户机的运行时版本的数据库管理程序(在此称为“数据库客户机应用程序”或简单地称为“数据库客户机”)来访问例如这样的数据库应用程序。结果,不在他们的计算机上安装有数据库客户机或运行时版本的副本的用户将不可以利用数据库应用。为了促进协作且允许没有数据库客户机应用程序的副本的用户访问和利用数据库应用,可以创建使用万维网(“Web”)浏览器和局域网或广域网来访问的一个版本的数据库应用程序。在使用这样的Web可访问的版本的数据库应用程序时,用户可以复制和粘贴基于Web的数据库应用所使用的统一资源定位符(“URL”)。在用户返回到这样的URL时, 用户期望看到与他们在复制URL时所看到的数据相同的数据。如果基于Web数据库应用程序返回不同的结果,用户可能感到挫败或困惑。相对于这些和其他考虑,完成在此呈现的本公开内容。

发明内容
在此描述用于导航数据库应用的概念和技术。根据在此呈现的各实施方式,数据库服务器应用程序被配置为提供通过URL进入到数据库应用程序的可编程接口。可以使用适当地格式化的URL来从数据库应用程序提取特定的结果。URL也由数据库服务器应用程序定期更新以便反映到当前所显示的数据的正确路径。通过使用这一机制,被复制且稍后被用来返回到数据库应用程序的URL将从数据库应用程序返回一致的数据。根据在此呈现的一种实施方式,提供被配置为提供通过URL (在此被称为“数据库服务URL”)进入到数据库应用程序的可编程接口的数据库服务器应用程序。数据库服务 URL是可以被用来从数据库应用程序提取特定的结果的URL。根据一个实现,数据库服务 URL包括标识到加载所请求的数据库对象的目标子表单控件的路径的第一参数。在一种实施方式中,所请求的数据库对象是数据绑定的表单或报告。子表单控件是可以用来在Web 浏览器内显示诸如表单或报告等的数据库对象的用户界面控件。根据其他实现,数据库服务URL包括在子表单控件中加载的数据库对象的名称的第二参数。数据库服务URL也可以包括标识要加载的数据库对象的类型的第三参数。举例来说,第三参数可以标识数据库对象是数据库表单还是数据库报告。根据一些实现,数据库服务URL也包括标识应构成当前所显示的页面的数据库对象的特定的页面的第四参数。也可以提供标识所请求的数据库对象的数据模式的第五参数。举例来说,第五参数可以指示应以操作的添加模式、编辑模式还是只读模式提供数据库对象。数据库服务URL也可以包括用于指定数据库对象的记录源的WHERE (何处)条件的第六参数。WHERE条件可以被用来过滤掉在表单或报告中显示的实际的数据。也可以提供其他参数,例如用于指定如何过滤或排序数据的参数。
根据一些实现,由数据库应用程序使用的数据库服务URL可以由在数据库服务器应用程序内或在其控制下执行的程序代码定期更新。举例来说,可以执行用于在Web浏览器中打开表单的宏动作。宏动作的执行将更新数据库服务URL以便适当地反映所打开的表单的数据库服务URL。以相似的方式,用于打开报告、示出记录、显示表单或报告、原地 (in-place)浏览到数据库对象和用于执行其他功能的宏动作可以适当地更新数据库服务 URL。类似地,对所提供的诸如导航控件等的用于导航数据库应用的用户界面控件的选择也可以引起更新数据库服务URL。可以理解的是,在此使用的术语“宏动作”是指由数据库应用提供的宏。可以理解的是,也可以利用其他类型的可执行组件来提供相似的功能。根据其他实现,在此提供宏动作以便结合提供用于在Web浏览器中原地显示诸如表单或报告等的数据库对象的功能的数据库服务器应用程序使用。通过使用在此被称为 Br0WSeT0(浏览到)宏动作的宏动作,可以在维持数据库应用程序的上下文的同时改变表单或报告的当前视图。根据一个实现,BrowseTo宏动作使用标识到子表单控件的路径的参数、标识要显示的数据库对象的名称的参数和标识数据库对象的类型的参数。在一些实现中,当在适当位置显示数据库对象时,也可以提供和使用标识应被显示为当前页面的数据库对象的页面的参数、标识数据库对象的数据模式的参数和用于指定要由BrowseTo宏动作显示的数据库对象的记录源的WHERE条件的参数。可以理解的是,以上所描述的本主题也可以被实现为计算机控制的装置、计算机进程、计算系统、诸如计算机可读存储介质等的制品或以另一方式实现。从下列的详细描述的阅读和关联的附图的审阅将明显看出这些和各种其他特征。提供本概述以便以简化形式介绍下面在详细描述中进一步描述的概念的选集。本概述不旨在标识所要求保护的本主题关键特征或必要特征,也不预期使用本概述来限制所要求保护的本主题的范围。此外,所要求保护的本主题不限于解决本公开内容的任何部分中提到的任何或所有缺点的实现。


图1是示出说明性的操作环境的各方面和在此呈现的各实施方式所提供的若干软件组件的网络和计算机体系结构图;图2是示出在此呈现的一种实施方式中利用的导航控件的各方面的用户界面图;图3是阐释在此呈现的各实施方式中提供的数据库服务统一资源定位符的各方面的数据结构图;图4是示出利用在各实施方式中在此呈现的各种技术的若干宏动作的软件图;图5-图7是示出阐释在此呈现的各实施方式的分别用于根据在此呈现的各实施方式处理对数据库服务统一资源定位符的请求、更新数据库服务统一资源定位符和执行用于浏览表单或报告的宏动作的各方面的各种例程的流程图;以及图8是示出能够实现在此呈现的各实施方式的各方面的计算系统的说明性的计算机硬件和软件体系结构的计算机体系结构图。详细描述下列详细描述涉及用于导航数据库应用程序的技术。尽管在结合在计算机系统上的操作系统和应用程序执行而执行的程序模块的一般上下文中呈现在此描述的本主题,但本领域中的技术人员应认识到,可以与其他类型的程序模块组合执行其他实现。一般地,程序模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域中的技术人员将明白,可以借助于包括手持式设备、多处理器系统、基于微处理器的或可编程的消费性电子设备、小型计算机、大型计算机等等的其他计算机系统配置实现在此描述的本主题。在下列详细描述中,对附图进行引用,附图形成详细描述的一部分,且作为阐释示出具体的实施方式或示例。现在参见各图,其中贯穿若干图用相同的数字表示相同的元素, 将描述用于导航数据库应用程序的概念和技术。现在转到图1,将提供关于说明性的操作环境和由在此呈现的各实施方式提供的若干软件组件的细节。尤其,图1示出用于提供数据库应用108的系统100的各方面。如图1中所示出的,系统100包括由网络118互连的客户机计算机102和服务器计算机104。 可以理解的是,图1中所阐释的配置仅仅是说明性的,且在此呈现的各种实施方式中可以利用图1中未示出的附加计算系统和网络。还可以理解的是,尽管在此将网络118描述为诸如因特网等的广域网(“WAN”),但在此呈现的各实施方式也可以利用其他类型的局域网禾口 WAN。正如图1中所阐释的,客户机计算机102被配备为执行操作系统和适当的应用程序软件。尤其,客户机计算机102被配置为执行数据库客户机应用程序106。在此简单地称为“数据库客户机”的数据库客户机应用程序106包括被配置为在客户机计算机102上执行的数据库应用程序。举例来说,在一种实现中,数据库客户机应用程序106包括来自华盛顿州雷蒙德市微软公司的ACCESS数据库客户机应用程序。然而,可以理解的是,也可以与在此呈现的软件组件联合使用来自其他销售商的数据库客户机应用程序。如图1中也阐释的,在各实施方式中,数据库客户机应用程序106被配置为允许用户创建数据库应用108。数据库应用108可以由数据库客户机应用程序106或数据库客户机的运行时版本执行。通过使用数据库应用108,客户机计算机102的用户可以以数据库应用108所支持的各种方式与数据库交互。可以理解的是,在一种实施方式中,数据库应用 108是自包含的,包括数据库应用108对其进行操作的实际数据库。根据在此呈现的一种实施方式,数据库客户机应用程序106还被配置为允许用户将导航表单200定义为数据库应用程序108的一部分。如下面参考图2更详细地讨论的, 导航表单200可以包括导航控件202。导航控件202包括可选择标签,每一个可选择标签都可以与诸如表单124A或数据库报告124B等的目标相关联。在使用适当的用户输入设备选择了导航控件202上的可选择标签中的一个时,由数据库应用程序108将与所选择的标签相关联的目标显示在导航表单200中。可以将多个导航控件202添加到相同的导航表单 200。可以理解的是,尽管在此呈现的各实施方式被描述为结合导航控件202操作,但在此呈现的各实施方式不限于这样的实现。相反,可以与允许导航数据库应用程序的几乎任何类型的用户界面控件一起使用在此呈现的各实施方式。根据在此呈现的其他方面,数据库客户机应用程序106也提供用于将包括导航表单200和导航控件202的数据库应用108公布给服务器计算机104的功能。在这一点上,客户机计算机102的用户可以对数据库客户机应用程序106做出将包括导航表单200和导航控件202的数据库应用108公布给服务器计算机104的请求。数据库客户机应用程序106 被配置为响应于接收到这样的请求经由Web服务器应用程序112与Web站点114通信,以便引起将数据库应用108公布给服务器计算机104。在这一点上,数据库客户机应用程序 106可以利用可扩展标记语言(“XML”)或可扩展应用程序标记语言(“XAML”)来生成数据文件。可以理解的是,可以使用其他类型的标记语言或数据文件格式来将这一信息传送给服务器计算机104。通过公布到服务器计算机104,包括导航表单200和导航控件202的数据库应用程序108可以通过服务器计算机104经由Web界面变得可用。尤其,在一种实施方式中,Web 站点114被配置为接收和响应从导航表单200和导航控件202的Web浏览器应用程序110 接收的请求。在此被称为数据库服务器应用程序116的数据库客户机应用程序106的一个版本可以在服务器计算机104上执行。通过使用数据库服务器应用程序116,可以使得包括导航表单200和导航控件202的数据库应用程序108的各种特征变得可通过Web站点114 获得。根据在此呈现的一种实施方式,Web站点114包括来自华盛顿州雷蒙德市微软公司的SHAREP0INT协作系统。然而,可以理解的是,在此呈现的各实施方式可以使用来自其他销售商的其他类型的Web站点。还可以理解的是,尽管Web浏览器应用程序110在此被描述为被用来与包括导航表单200和导航控件202的Web站点114交互,但是可以利用能够请求和渲染Web页面的任何类型的程序。如下面将参考图3-图6更详细地描述,在一些实施方式中,数据库服务器应用程序116被配置为提供通过URL 120(在此被称为“数据库服务URL”)进入数据库应用108 的可编程接口。数据库服务URL是可以被用来从数据库应用108提取诸如表单124A、报告 124B或另一类型的数据库对象等的特定结果的URL。如下面进一步更详细地公开,也由数据库服务器应用程序116定期更新数据库服务URL 120,以便反映到当前所显示的数据的正确路径。通过使用这一机制,被复制且稍后被用来返回到数据库应用程序的URL将从数据库应用108返回一致的数据。现在参见图2,在此呈现的一种实施方式中,将提供关于导航表单200和导航控件 202的操作的附加细节。具体来说,图2阐释由Web浏览器应用程序110生成的表单200 的渲染。如上面简要地讨论,导航控件202包括许多标签204A-标签204C。标签204A-标签204C可以分别与诸如表单124A或报告124B等的目标相关联。在选择了标签204A-标签204C中的一个时,将所关联的目标显示在子表单控件206。如以上所讨论的,子表单控件 206是可以被用来在Web浏览器应用程序110内显示诸如表单或报告等的数据库对象的用户界面控件。可以理解的是,多个导航控件202可以是级联的。此外,导航控件202可以位于表单202上的其他位置处,诸如在左侧、底部或右侧上等。另外,标签204A-标签204C可以采取其他形状或被表示成超链接。如上面参考图1简要地讨论的,在一种实施方式中,数据库服务器应用程序116被配置为提供通过数据库服务URL 120进入数据库应用108的界面。为了确保数据库服务URL 120维持到通过子表单控件206显示的数据库对象的正确路径,每当选择了标签204A-标签204C中的一个,就更新数据库服务URL120。如下面将更详细地描述的,也可以在所提供的用于导航数据库应用108的其他用户界面控件的选择之后以及响应于由数据库应用108执行计划性组件而更新数据库服务URL 120。下面将参考图3-图7提供关于这一功能的细节。现在转到图3,将描述阐释在一些实施方式中提供的数据库服务URL 120的各方面的数据结构图。如图3中示出的,数据库服务URL 120包括地址302A和若干参数302B-参数302G。根据一些实现,用服务器地址以及URL 120的其余部分是进入所请求页面的书签的指示来格式化地址302A。这允许URL 120在Web浏览器应用程序110不重新加载页面的前提下改变。举例来说,在与超文本传输协议(“HTTP”)一起使用时,地址302C可以采取“http://address/pagename#”的形式。可以理解的是,可以将地址302A指定为与其他类型的协议一起使用,且使用主控数据库应用108的适当的服务器计算机104的网络地址来格式化地址302A。如上面简要地提到的,数据库服务URL 120还包括许多参数302B-302G。在一些实施方式中,将参数302B-302G指定为以图3中阐释的次序。然而,可以理解的是,在其他实施方式中,参数302B-302G的次序可以是不同的,且一些参数可以不被用在每一个请求中。在一些实现中,数据库服务URL 120包括标识到子表单控件的路径206的第一参数302B。具体来说,这一参数标识从数据库应用108的主表单到加载指定的数据库对象的目标子表单控件206的路径。数据库应用108的主表单是被直接加载到由Web浏览器110 提供的浏览器窗口的表单。在此使用的术语“数据库对象”可以是指由数据库应用108提供的表单124A、报告124B或另一类型的对象。可以理解的是,根据一种实施方式,参数302B可以被用来加载不同于由参数302D 标识的对象的子表单。举例来说,在一个场景中,如果打开了包含第一子表单的第一表单, 则参数302B标识第一子表单且将由参数302D标识的表单加载到该子表单。在另一场景中,目标路径可以由参数 302B 指定,例如“Forml. Subforml > Form2. Subform2 > Form3. Subform3"0这一参数意味着应将第二表单加载到第一子表单,且然后应将第三表单加载到第二表单的第二子表单。这也指定了应将由参数302D指定的表单加载到第三表单的第三子表单。可以理解的是,也可以与在此呈现的技术一起利用其他或多或少复杂的场景。根据各实现,数据库服务URL 120还包括标识加载到指定的子表单控件206中的数据库对象的名称的第二参数302D。如下面将更详细地讨论的,由参数302D指定的对象也是参数302B、参数302F和参数302G所应用到的数据库对象。根据一个实现,数据库服务 URL 120还包括标识应加载到子表单控件206的数据库对象的类型的第三参数302C。举例来说,在一种实现中,参数302C标识数据库对象是数据库表单124A还是报告124B。根据一些实施方式,数据库服务URL 120可以包括标识应显示为当前页面的要加载到子表单控件206的数据库对象页面的第四参数302E。也可以在数据库服务URL 120中提供标识子表单控件206中显示的数据库对象的数据模式的第五参数302F。举例来说,参数302F可以指示是以操作的添加模式、编辑模式还是只读模式打开数据库对象。如果不指定参数302F,则可以使用与主控子表单控件206的表单相关联的参数来判断是以操作的添加模式、编辑模式还是只读模式中打开被主控在子表单控件206中的数据库对象。根据一些实施方式,可以指定包括有子表单控件206主控的数据库对象的记录源的WHERE条件的第六参数302G。如果已指定,则参数302G的值代替被主控在子表单控件 206中的数据库对象的WHERE条件。可以理解的是,WHERE条件可以被用来指定由被主控在子表单控件206中的数据库对象显示的实际数据。如下面将更详细地讨论的,数据库服务 URL 120和参数302B-302G被数据库服务器应用程序116用来标识数据库应用108的具体的部分。在这一点上,下面提供关于数据库服务器应用程序116的操作的附加细节。如上面简要地讨论的,可以在数据库服务器应用程序116内下执行的程序代码或在其控制下定期更新数据库服务器应用程序116所利用的数据库服务URL 120。具体来说,程序员可以利用图4中示出的宏动作122来实现数据库应用108的各方面。举例来说,在一些实施方式中,Oper^ormO (打开表单)宏动作122A可以被用来打开表单 124A。OpenR印ort ()(打开报告)宏动作122B可以类似地被用来打开报告124B。同样地, GoToRecordO (转到记录)宏动作126C可以被用来显示在表单124A或报告124B内的具体记录。在准许数据库应用108能使Web浏览器应用程序110浏览数据库对象而不改变主表单的上下文的实施方式中,也提供BrowseTo宏动作122D。下面参考图7提供关于BrowseTo 宏动作122D的附加细节。根据各种实施方式,宏动作122A-122D被配置为按照它们的相应的函数的性能来更新数据库服务URL 120。因为宏动作122A-122D被配置为更新数据库服务URL 120,所以数据库应用108的开发者不需要明确地编写这一功能。举例来说,GoToRecordO宏动作 122C将更新数据库服务URL 120以反映到所显示的记录的正确路径。如下面将参考图7更详细地讨论的,BrowseTo宏动作122D将更新数据库URL 120以反映到所显示的表单124A 或报告124B的正确路径。下面将参考图6提供关于宏动作122A-122D的操作的附加细节。可以理解的是,根据一些实施方式,数据库服务器应用程序116被配置为响应于其他类型的输入来更新数据库服务URL 120。举例来说,在通过经由Web浏览器应用程序 110提供的用户界面控件接收对浏览由数据库应用108提供的特定的数据库对象的请求时,数据库服务器应用程序116将更新数据库服务URL 120以反映到所显示的对象的正确路径。举例来说,在一种实现中,数据库服务器应用程序116被配置为响应于以上参考图 1-图2描述的导航控件202中的标签204A-标签204C中的一个的选择而更新数据库服务 URL 120。可以理解的是,也可以响应于对用于导航数据库应用108的其他类型的用户界面控件的选择由数据库服务器应用程序116更新数据库服务URL 120。图5是示出根据在此呈现的一种实施方式的用于处理数据库服务URL 110的一个过程的各方面的流程图。可以理解的是,在此描述的逻辑操作被实现为(1)在计算系统上运行的计算机实现的动作或程序模块的序列和/或被实现为(2)计算系统内的互连的机器逻辑电路或电路模块。该实现是取决于计算系统的性能和其他要求的选择问题。因此,在此描述的逻辑操作不同地被称为状态操作、结构设备、动作或模块。可以以软件、在固件、在专用的数字逻辑和其任何组合实现这些操作、结构设备、动作和模块。还可以理解的是,可以执行比在图中示出和在此描述的操作更多或更少的操作。也可以以与在此描述的那些次序不同的次序执行这些操作。例程500在操作502开始,操作502中,数据库服务器应用程序116从Web浏览器应用程序110接收数据库服务URL 120。在操作504,响应于接收到数据库服务URL 120, 数据库服务器应用程序116标识所期望的数据库对象。在这一点上,数据库服务器应用程序116可以利用由参数302D指定的数据来标识所请求的数据库对象。一旦已经标识了所请求的数据库对象,例程500就进行到操作506。
在操作506,数据库服务器应用程序116加载所指定的表单和子表单并标识应该被用来加载所指定的对象的目标子表单控件206。在这一点上,由参数302B指定的数据可以被用来标识用于加载所指定的数据库对象的适当的子表单控件206。一旦已经标识了目标子表单控件206,例程500进行到操作508,其中数据库服务器应用程序116判断在参数 302G中是否已经指定了 WHERE条件。如果是,则例程500进行到操作510,在操作510,数据库服务器应用程序116用参数302G中所指定的WHERE条件来替代对象的记录源的WHERE 条件。然后,例程500从操作510进行到操作512。在操作512,生成在参数302C中指定的所请求的表单124A或报告124B。可以理解的是,表单124A或报告124B的生成可以涉及数据库服务器应用程序116的查询的性能。 一旦已经生成了所请求的表单124A或报告1MB,例程500就进行到操作514,在操作514, 由参数302E指定的页面构成所请求的表单124A或报告124B的当前页面。然后,例程500 进行到操作516,在操作516,将所请求的表单124A或报告124B返回到Web浏览器应用程序110以便在所标识的子表单控件206中显示。所返回数据库对象的数据模式也被设定为等于由参数302F指定的值。一旦Web浏览器应用程序110接收到数据库对象,就将其显示在子表单控件206中。从操作516,例程500进行到操作518,在操作518,例程500结束。现在转到图6,将描述阐释的数据库服务器应用程序116的用于更新数据库服务URL 120的操作的各方面的说明性的例程600。如以上所描述的,响应于某些宏动作 122A-122D或其他程序组件的执行,更新数据库服务URL 120。根据一个说明性的实施方式,图6中示出的例程600阐释这一过程。例程600在操作602开始,在操作602,数据库服务器应用程序116判断是否已经执行Oper^ormO宏动作122A。如果是,则例程600进行到操作614,在操作614,更新数据库服务URL 120以便反映近来所打开的表单。如果还没有执行Oper^ormO宏动作122A,则例程600从操作602进行到操作604,在操作604,做出是否已经执行OpenR印ort ()宏动作 122B的判断。如果是,则例程600进行到操作614,在操作614,更新数据库服务URL 120以便反映到近来所打开的报告的正确路径。如果还没有打开报告,则例程600从操作604进行到操作606。在操作606,做出关于是否已经执行GoToRecordO宏动作122C的判断。如果是,则例程600从操作606进行到操作614,在操作614,更新数据库服务URL 120以便反映到近来所打开的记录的正确路径。如果还没有执行GoToRecordO宏动作122C,则例程600从操作 606进行到操作608。在操作608,数据库服务器应用程序116判断是否已经执行BrowseTo 宏动作122D。如果是,则更新数据库服务URL 120以便反映在操作614利用BrowseTo宏动作122D显示的表单124A或报告124B。如果没有执行Browseh宏动作122D,则例程600 从操作608进行到操作610,在操作610,数据库服务器应用程序116判断用户界面控件是否被用来导航到由数据库应用108提供的另一表单124A、报告124B或记录。如果是,则在操作614,数据库服务器应用程序116更新数据库服务URL 120以便反映适当的路径。在操作612,数据库服务器应用程序116判断是否选择了导航控件202中的标签 204A-标签204C中的一个。如果是,则例程600从操作612进行到操作614,在操作614,数据库服务器应用程序116更新数据库服务URL 120以便反映所选择的标签204A-204C的目标。如果在操作612没有选择标签204A-标签204C中的一个,则例程600进行到操作616,操作616中,例程600结束。可以理解的是,在一些实施方式中,数据库服务器应用程序116被配置为在软件组件的执行而非宏动作122A-122D的执行之后更新数据库服务URL120。具体来说,数据库服务器应用程序116可以被配置为在Web浏览器应用程序110内所提供的数据库应用108 的视图被改变时更新数据库服务URL。以此方式,不断地将数据库服务URL 120维持在适当的状态。结果,将可预测的结果提供给复制数据库服务URL 120且稍后使用URL 120来返回到数据库应用108的用户。现在参见图7,将提供关于BrowseTo宏动作122D的操作的附加细节。如上面简要地讨论,BrowseTo宏动作122D提供用于在维持数据库应用108的上下文的同时改变表单 124A或报告124B在Web浏览器应用程序110内的当前视图的功能。根据一个实现,BrowseTo宏动作122D采用与在数据库服务URL 120中所利用的那些参数相似的参数。尤其,在一种实现中,BrowseTo宏动作122D采用标识到子表单控件的路径206的参数、标识在子表单控件206内要显示的数据库对象的名称的参数和标识数据库对象的类型的参数。在一些实现中,也可以提供标识应被显示为当前页面的数据库对象的页面的参数、标识数据库对象的数据模式的参数以及用于指定要由BrowseTo宏动作显示的数据库对象的记录源的WHERE条件122D的参数,并在Web浏览器应用程序110中在适当位置显示数据库对象时利用这些参数。图7示出阐释BrowseTo宏动作122D的操作的一个说明性的例程700。尤其,例程 700在操作702开始,在操作702,基于以BrowseTo宏动作122D提供的参数标识要更新的子表单控件206。一旦已经标识了子表单控件206,例程700就进行到操作704,在操作704, 将目标表单124A或报告124B加载到所标识的子表单控件206。然后,例程700进行到操作 706,在操作706,将目标表单124A或报告124B的WHERE子句设定为被传送到BrowseTo宏动作122D中的WHERE子句。然后,例程700继续到操作708,操作708中,将所显示的表单 124A或报告124B的当前页面设定为在被传送给BrowseTo宏动作122D中所指定的页面。 一旦已经设定了当前页面,例程700就进行到操作710,操作710中,Br0wseI10宏动作122D 更新数据库服务URL 120以便反映所显示的表单124A或报告124B。从操作710,例程700 进行到操作712,操作712中,例程700结束。图8示出能够执行在此描述的软件组件的计算机800的说明性计算机体系结构。 图8中示出的计算机体系结构阐释常规的台式计算机、膝上型计算机或服务器计算机且可以被用来执行被描述为在客户机计算机102或服务器计算机104上执行的在此呈现的软件组件的各方面中的任何。图8中示出的计算机体系结构包括中央处理单元802( “CPU”)、包括随机存取存储器814( “RAM”)和只读存储器(“ROM”) 816的系统存储器808以及将存储器耦合到CPU 802的系统总线804。包含例如在启动期间帮助在计算机800内的元件之间传递信息的基本例程的基本输入/输出系统被存储在ROM 816中。计算机800还包括用于存储在此更详细地描述的操作系统818、应用程序和其他程序模块的大容量存储设备810。大容量存储设备810通过被连接到总线804的大容量存储控制器(未示出)连接到CPU 802。大容量存储设备810及其关联的计算机存储介质为计算机800提供非易失性存储。尽管在此包含的计算机存储介质的描述是指诸如硬盘或CD-ROM驱动器等的大容
11量存储设备,但本领域中的技术人员可以理解的是,计算机存储介质可以是可由计算机800 访问的任何可用的计算机存储介质。作为示例而非限制,计算机存储介质可以包括以用于存储诸如计算机可读指令和计算机可执行指令、数据结构、程序模块或其他数据等的信息的任何方法或技术实现的易失性介质和非易失性介质、可移动介质和不可移动介质。例如,计算机存储介质包括但不限于RAM、ROM、EPROM、EEPR0M、闪速存储器或其他固态存储器技术、CD-ROM、数字多用盘 (“DVD”)、HD-DVD、蓝光或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备、或可以被用来存储所期望的信息且可计算机800由访问的任何其他介质。根据各种实施方式,计算机800可以通过诸如网络820等的网络在使用到远程计算机的逻辑连接的联网环境中操作。计算机800可以通过被连接到总线804的网络接口单元806连接到网络820。可以理解的是,网络接口单元806也可以是被用来连接到其他类型的网络和远程计算机系统。计算机800也可以包括用于接收和处理来自包括键盘、鼠标或电子触笔(图8中未示出)许多其他设备的输入的输入/输出控制器812。类似地,输入/ 输出控制器可以向显示屏幕、打印机或其他类型的输出设备(图8中也未示出)提供输出。如上面简要地提到,许多程序模块和数据文件可以被存储在计算机800的大容量存储设备810和RAM 814中,包括适用于控制联网的台式计算机、膝上型计算机或服务器计算机的操作的操作系统818。大容量存储设备810和RAM 814也可以存储一个或多个程序模块。尤其,大容量存储设备810和RAM 814可以存储数据库客户机应用程序106、Web浏览器应用程序110和包括BrowseTo宏动作122D的数据库应用108,上面参考图1-图7详细描述了数据库客户机应用程序106、Web浏览器应用程序110和包括BrowseTo宏动作122D 的数据库应用108中的每一个。大容量存储设备810和RAM 814也可以存储其他类型的程序模块和数据。可以理解的是,在此描述的软件组件可以在被加载到CPU 802并被执行时将CPU 802和整个计算机800从通用计算系统转换成被定制促进在此呈现的功能的专用计算系统。CPU 802可以由任何数量的晶体管或其他分立电路元件构成,这些晶体管或其他分立电路元件可以个别地或共同地假设任何数量的状态。更具体地,CPU 802可以响应于被包含在在此公开的软件模块内的可执行指令操作为有限状态机。这些计算机可执行指令可以通过指定CPU 802如何在各状态之间变迁来转换CPU 802,由此转换构成CPU 802的晶体管或其他分立硬件元件。编码在此呈现的软件模块也可以转换在此呈现的计算机存储介质的物理结构。在这一描述的不同实现中,物理结构的具体转换可以取决于各种因素。这样的因素的示例可以包括但不限于被用来实现计算机存储介质的技术,计算机存储介质是否被表征为主要存储或次级存储等等。例如,如果计算机存储介质被实现为基于半导体的存储器,则可以通过转换半导体存储器的物理状态来在计算机存储介质上编码在此公开的软件。例如,软件可以转换构成半导体存储器的晶体管、电容器或其他分立电路元件的状态。软件也可以转换这样的组件的物理状态以便在其上存储数据。作为另一示例,可以使用磁或光技术来实现在此公开的计算机存储介质。在这样的实现中,在其中编码软件时,在此呈现的软件可以转换磁介质或光学介质的物理状态。这些转换可以包括变更在给定的磁介质内的特定位置的磁性。这些变换也可以包括变更在给定的光学介质内的特定位置的物理特征或特性,以便改变那些位置的光学特性。在不偏离本描述的范围和精神的前提下,物理介质的其他转换是可能的,且提供前述的示例仅是为了促进这一讨论。考虑到以上,可以理解的是,在计算机800发生许多类型的物理变换以便存储和执行在此呈现的软件组件。还可以理解的是,计算机800可以包括其他类型的计算设备,包括手持式计算机、嵌入式计算机系统、个人数字助理和本领域中的技术人员已知的其他类型的计算设备。还预期计算机800可以不包括图8中示出的全部组件,可以包括图8中未明确示出的其他组件,或者可以利用与图8中示出的完全不同的体系结构。基于前述,还可以理解的是,在此已经公开用于导航数据库应用程序的技术。尽管已经用对计算机结构特征、方法论动作和变化动作、具体的计算机器和计算机存储介质来说专用的语言描述了在此呈现的本主题,但应理解,在所附权利要求中界定的本发明并不必定限于在此描述的具体的特征、动作或介质。相反,具体的特征、动作和介质是作为实现权利要求的示例形式而公开的。仅作为阐释提供以上所描述的本主题,且本主题不应被解释成限制。可以在不遵循所阐释和所描述的示例实施方式和应用程序以及不偏离本发明的真实精神和范围的前提下对在此描述的本主题做出各种修改和改变,在下列权利要求中陈述本发明的真实精神和范围。
权利要求
1.一种其上存储有计算机可执行指令的计算机存储介质,各计算机可执行指令在由计算机执行时,使所述计算机接收对数据库对象(124)的请求,所述请求包括具有标识到加载所述所请求的数据库对象(124)的目标子表单控件Q06)的路径的第一参数(302B)、标识所述数据库对象 (124)的名称的第二参数(302D)和标识所述数据库对象(124)的类型的第三参数(302C) 的统一资源定位符(URL) (120);以及响应于接收到所述请求,使用所述URL(120)的各参数(302A-302C)来标识所述数据库对象(IM),且响应于所述请求使所请求的数据库对象(124)被显示在所述子表单控件 (206)中。
2.如权利要求1所述的计算机存储介质,其特征在于,所述URL进一步包括标识应构成当前页面的所述数据库对象的页面的第四参数。
3.如权利要求2所述的计算机存储介质,其特征在于,所述URL进一步包括标识所述数据库对象的数据模式的第五参数。
4.如权利要求3所述的计算机存储介质,其特征在于,所述数据模式包括添加模式、编辑模式或只读模式。
5.如权利要求3所述的计算机存储介质,其特征在于,所述数据库对象包括数据库表单或数据库报告,且其中,所述第三参数标识所述数据库对象数据库表单还是数据库报告。
6.如权利要求3所述的计算机存储介质,其特征在于,所述URL进一步包括指定所述数据库对象的记录源的where条件的第六参数。
7.如权利要求3所述的计算机存储介质,其上还存储有计算机可执行指令,各计算机可执行指令在由所述计算机执行时,引起所述计算机接收执行用于打开表单的宏动作的请求;以及响应于接收到所述请求,打开所述表单并更新所述URL以便反映所述表单的打开。
8.如权利要求3所述的计算机存储介质,其上还存储有计算机可执行指令,各计算机可执行指令在由所述计算机执行时,引起所述计算机接收执行打开报告的宏动作的请求;以及响应于接收到所述请求,打开所述报告并更新所述URL以便反映所述报告的打开。
9.如权利要求3所述的计算机存储介质,其上还存储有计算机可执行指令,各计算机可执行指令在由所述计算机执行时,引起所述计算机接收对执行用于示出记录的宏动作的请求;以及响应于接收到所述请求,使所述记录被显示并更新所述URL以便反映所述记.录的显7J\ ο
10.如权利要求3所述的计算机存储介质,其上还存储有计算机可执行指令,各计算机可执行指令在由所述计算机执行时,引起所述计算机接收对执行用于在原地浏览数据库对象的宏动作的请求;以及响应于接收到所述请求,使所述数据库对象被原地显示并更新所述URL以便反映所述数据库对象的显示。
11.如权利要求3所述的计算机存储介质,其上还存储有计算机可执行指令,各计算机可执行指令在由所述计算机执行时,引起所述计算机从用户界面控件接收对显示数据库对象的请求;以及响应于从用户界面控件接收到所述请求,使所述数据库对象被显示并更新所述URL以便反映所述数据库对象的显示。
12.如权利要求11所述的计算机存储介质1,其特征在于,所述用户界面控件包括导航控件。
13.一种用于在原地显示数据库对象的计算机实现的方法,所述方法包括执行计算机实现的操作,以便接收对在原地显示数据库对象(124)的请求,所述请求包括标识到加载所述所请求的数据库对象(124)的目标子表单控件Q06)的路径的第一参数、所述数据库对象(124)的名称的第二参数标识和标识所述数据库对象(124)的类型的第三参数;以及响应于接收到所述请求,使用各参数标识所述数据库对象(1 ),且响应于所述请求使显示所述所请求的数据库对象(124)被原地显示在所述子表单控件O06)中。
14.如权利要求13所述的计算机实现的方法,其特征在于,对在适当位置显示所述数据库对象的所述请求包括对执行用于原地显示数据库对象的宏动作的请求。
15.如权利要求所述的计算机实现的方法14,其特征在于,所述请求进一步包括标识在所述子表单控件中原地显示所述数据库对象时应构成当前页面的所述数据库对象的页面的第四参数。
全文摘要
提供被配置为提供通过数据库服务统一资源定位符(URL)进入到数据库应用程序的可编程接口的数据库服务器应用程序。可以由在数据库服务器应用程序内或在其控制下执行的程序代码更新由数据库服务URL使用的数据库应用程序。也公开用于结合数据库服务器应用程序使用的提供用于在Web浏览器中在适当位置显示诸如表单或报告等的数据库对象的功能的宏动作。
文档编号G06F17/00GK102428460SQ201080022500
公开日2012年4月25日 申请日期2010年5月12日 优先权日2009年5月19日
发明者A·R·米勒, A·S·格雷瓦尔, C·D·科温顿, K·图帕杰, P·R·卡里莫夫, R·S·库珀, R·麦克明, S·M·格林伯格, S·雷瑟, V·塞尔卡 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1