移动客户关系管理中的递归导航的制作方法

文档序号:6361751阅读:130来源:国知局
专利名称:移动客户关系管理中的递归导航的制作方法
移动客户关系管理中的递归导航相关申请的交叉引用本申请主张2010年9月17日提交的临时申请N0.61/384,150的优先权,其整体通过引用合并于此。
背景技术
企业应用是很多业务的必需部分,并且将有价值的服务提供给其用户。例如,企业应用提供客户关系管理(CRM)、资源规划、人力资源管理等。将参照把销售和市场服务提供给其用户的示例性CRM来描述本发明,应理解,本发明不限于此。CRM是广泛实施的策略,用于管理公司与客户的互动、顾客、以及销售前景。CRM涉及用于组织、自动化和同步业务过程(主要是销售活动,但也包括市场、客户服务和技术支持)的技术。CRM的总体目标在于寻找、吸引并且赢得新客户,培育并且保持公司已有的客
P坐厂寸ο用户可以经由耦合到实施CRM的数据处理系统的桌面计算机系统来访问CRM服务。也可以通过移动设备(例如智能电话或平板计算机)来访问CRM服务。将参照经由用户的移动设备将CRM服务提供给用户来描述本发明,应理解,本发明不限于此。

发明内容
—种用于递归(recursive)导航的方法和装置。在所述方法的一实施例中,响应于从移动设备接收到第一请求而生成第一应答。所述第一应答生根据页面定义而生成,所述第一应答包括从逻辑数据模型的第一对象而不是所述逻辑数据模型的第二对象所选择的数据。所述第一对象和第二对象彼此不同。响应于从所述移动设备接收到第二请求而生成第二应答。所述第二应答根据所述页面定义而生成,所述第二应答包括从所述第二对象而不是所述第一对象所选择的数据。


通过参照附图,可以更好地理解本发明,并且其诸多目的、特征和优点对本领域技术人员变得明显。图1图示了采用移动CRM的示例系统的相关组件。图2图示了图1中所采用的示例服务器的相关组件。图3图示了图1中所采用的移动设备上显示的示例页面。图4图示了图1中所采用的移动设备上显示的示例页面。图5图示了图1中所采用的移动设备上显示的示例页面。图6图示了图1中所采用的移动设备上显示的示例页面。图7图示了图1中所采用的移动设备上显示的示例页面。图8图示了图1中所采用的移动设备上显示的示例页面。图9图示了图1中所采用的移动设备上显示的示例页面。
图10图示了图1中所采用的示例服务器的相关组件。图11示出图10所示的系统实现的过程的相关方面。图12示出图11的堆栈中所存储的示例项目的相关成分。图13是可以在图1、图2或图10的系统中采用的示例计算机系统的框图。不同附图中使用相同的附图标记来指示相似或相同的项。
具体实施例方式现今的销售和市场劳动力比以往更具移动性。为了减少销售窝工时间(downtime),增加客户面对时间,并且赢得更多订单,很多公司现在采用移动CRM以在雇员在路上时将它们的业务向前推进。移动CRM使用户能够更高效地使用CRM服务,例如通过他们的移动设备上所显示的用户界面(UI)或页面来创建、浏览和/或更新销售机会、联系人、线索(leads)、日程表条目等。图1以框图形式示出提供示例性移动CRM的系统100的相关组件。系统100包括移动设备(例如智能电话)102和104,其与在服务器106上执行的CRM进行无线通信。可以经由服务器106所发送的并且由移动设备102或104所显示的用户界面(下文中也称为页面)来访问CRM所提供的服务。如以下将更完整地描述的那样,CRM与设计和操作基本不同的移动设备一起操作。换句话说,CRM被设计为独立于包括不同的外观及其感觉的移动设备特征。CRM实施模型视图控制器(model-view-controller)架构。CRM包括包含多个视图或页面定义的单个元数据驱动的应用。响应于从移动设备102或104接收到页面请求,CRM将逻辑数据模型的数据与所选择的页面定义合并或绑定,其结果被序列化并作为对其请求的应答而被发送到移动设备102或104。移动设备102或104接收应答,对内容进行反序列化,显示包括所合并的数据和其它成分的可视化表示的对应页面。页面可以显示为具有对于移动设备102或104而言原生的外观和感觉。在服务器106上执行的CRM与包括一个或多个关系数据库114的存储系统112进行数据通信。仅用于说明,假设存储系统112包括单个数据库114,其存储逻辑数据模型的业务对象的数据。对象可以表示存储一组实例变量或属性(也称为特性(attribute))以及与其它业务对象的关联的逻辑条目,由此编织表示业务关系的对象的映射。业务对象可以表示包含关系数据库114的一个或多个表中保持的相关数据的数据条目。业务对象可包括映射到这些表的业务组件。业务对象是将相关业务组件结合在一起的对象类型。业务组件被认为在表之上提供一层包装(wrappping)。机会集(opportunities)、账户集(accounts)和联系人(contacts)集是业务对象的示例。继续参照图1,图2示出图1的服务器106的示例,以框图形式示出相关组件。存储器202存储用于CRM的应用定义。应用定义包括页面定义(也称为“视图”),其中的一些被可视化地表示。页面定义形成移动设备102或104可以显示的页面的基础。每个页面定义可以用于在任何或所有移动设备102或104上呈现页面。在存储器202中视觉地表示示例性页面定义。“跳板(springboard)”页面定义可以用于呈现具有以二维图案布置的图标的页面。每个图标可以表示逻辑数据模型内的小应用或高级业务对象。“账户集”、“机会集”和“联系人集”页面定义可以用于以列表模式呈现分别具有多个账户、多个机会和多个联系人的名称或其它信息的页面。“账户”、“机会”和“联系人”页面定义可以用于以表单模式呈现分别具有来自一账户、一机会和一联系人的数据的页面。“账户表单”、“机会表单”和“联系人表单”页面定义可以用于以用户可编辑表单模式呈现分别具有来自一账户、一机会和一联系人的数据的页面。可以构思存储器202中的其它页面定义。可以使用Java Server Faces (JSF)技术来建立存储器202中的应用定义,应理解,本发明不应受限于此。JSF提供用于创建可以在移动设备上显示的页面的标准可重复使用的组件。JSF提供有用的特殊标签以增强页面定义。每个标签产生相关的组件。JSF也可以用于将页面组件映射到数据模型,标识待由移动设备所采用的资源等。虽然页面定义在服务器106上运行,但是它们显示在移动设备102或106上。页面定义可以用于将逻辑数据模型204呈现为适合于移动设备的用户经由移动设备上显示的页面来进行交互的形式。逻辑数据模型204管理应用定义的业务对象数据,对关于其状态的信息的请求(通常来自页面定义)进行响应,并且对来自控制逻辑206的改变状态的指令进行响应。在某种意义上,逻辑数据模型204提供对包括账户、联系人、机会等的业务对象的访问,其中的一些可视地表示在图2中。逻辑数据模型204既是数据,又是操纵应用定义的数据所需的业务/域逻辑。除了与接口 208和序列化系统210进行数据通信之外,可以采用在处理器上执行的指令的形式的控制逻辑206还与存储器202内所包含的应用定义进行数据通信。控制逻辑206可以经由接口 208从任何移动设备102或104接收页面请求。响应于接收到页面请求,控制逻辑206可以访问存储器202或页面导航堆栈(其将在下面得到更完整的描述)中的应用定义,以选择形成对请求的正确应答所需的适当页面定义或其相关组件。基于页面请求中所包含的信息来选择从存储器202检索到的或来自页面导航堆栈的页面定义。所选择的页面定义可以包含用于从逻辑数据模型204的适当业务对象检索所需数据的元数据。控制逻辑206可以对逻辑数据模型204的业务对象进行调用,以检索页面定义所需的数据。序列化系统210可以将所选择的页面定义与从业务对象检索到的数据进行合并或绑定,其结果随后被序列化并且作为应答发送到请求移动设备。图3-9示出移动设备102响应于从CRM接收到应答而显示的示例页面。这些页面还示出递归导航的示例,如将更完整地描述的那样。继续参照图2,图3示出响应于用户调用与CRM的会话而在移动设备104的触敏屏幕300上显示的示例页面。更特别地,当用户开始与CRM的会话时,移动设备104生成并向CRM发送对跳板页面的请求。响应于接收到该请求,控制逻辑206选择存储器202中的跳板页面定义。序列化系统210进而利用跳板页面定义给出并序列化一应答。移动设备104响应于从CRM接收到应答而显示具有可激活的图标304-314的页面302。图标304-314对应于CRM的高级业务对象或小应用。在移动设备104上显示跳板页面302之后,用户可以经由图标304-314访问各种CRM服务。为了示范,用户可以激活机会集图标306,以检索可能感兴趣的多个机会的列表。响应于激活图标306,移动设备104生成对机会集页面的请求,并将其发送到CRM。该页面请求和后续页面请求应包括会话标识或唯一地标识CRM与移动设备104之间的会话的其它信息。如以下将更完整地描述的那样,CRM可以使用会话标识来管理用于各移动设备的页面导航堆栈。
控制逻辑206从移动设备104接收请求,并且作为响应,基于该请求中所包含的信息从存储器202选择机会集页面定义。所选择的机会集页面定义被提供给序列化系统210,以用于呈递。在该过程期间,控制逻辑206选择存储应答所需数据的模型204的对象(下文中又称为条目)。模型条目选择可以基于所选择的页面定义中的信息和/或其它信息,例如在各个页面导航堆栈中最后进入的项中所包含的信息。在当前示例中,控制逻辑206选择模型204的机会条目以提供机会集页面定义直接或间接地标识的数据。从机会条目选择和检索的数据与机会集页面定义合并,其结果被序列化并且被发送到移动设备104。此外,当应答发送到移动设备104时,控制逻辑206可以将新的项推送到所提及的导航页面堆栈上。新的堆栈项应包含与应答有关的信息,例如用于呈递应答的页面定义(例如机会集页面定义)的拷贝以及检索用于应答的数据所使用的模型条目(例如机会模型条目)的标识。图4示出在移动设备104接收到CRM所发送的应答并且对其进行反序列化之后,移动设备104所显示的示例性“机会集”页面402。类似于以列表模式给出的其它页面,页面402旨在示范以列表显示多个元素(例如,多个机会)。列表中的每个机会(例如“Pinnacle服务器”)可以是可激活的(例如有效页面链接)。为了说明,将假设移动设备所显示的列表模式中的每项都是有效页面链接。用户可以向前导航或“点击(drill down)”以通过激活对应页面链接来访问关于任何机会的更详细信息。为了示范,用户可以激活页面402所显示的“Pinnacle服务器”链接。响应于此,移动设备104生成并且发送针对Pinnacle服务器机会页面的请求。控制逻辑206接收该请求,并且基于该请求中的信息而选择机会页面定义。所选择的机会页面定义被提供给序列化系统210。控制逻辑206选择模型条目,以提供机会页面定义直接或间接地标识的数据。选择可以基于所选择的机会页面定义和/或推送到对应的页面导航堆栈上的最后一项中的信息。在当前示例中,选择机会模型条目。如以下将更完整地描述的那样,对于由单行模型数据支持的页面定义,选择模型204中的根条目(例如机会模型条目)。从机会条目选择和检索数据,并且数据与机会页面定义合并,其结果被序列化并且被发送到移动设备104。此外,控制逻辑206创建新项并且将其推送到导航页面堆栈上。新的页面堆栈项应包含与发送到移动设备104的应答对应的信息(例如模型204的机会条目的标识、对Pinnacle服务器机会唯一的过滤值、机会页面定义的拷贝等)。图5示出在移动设备104从CRM接收到应答并且对其进行反序列化之后,移动设备104所显示的“Pinnacle服务器机会”页面502的示例。类似于以表单模式呈现的其它页面,页面502旨在示范以表单显示多个元素。Pinnacle服务器机会页面502具有移动设备104所显示的其它页面(例如图4所示的机会集页面402)的外观和感觉。例如,页面402和502都包括“后退”按钮,其可以用于向后导航到前一页面。如果激活页面502的后退按钮,则移动设备104将生成后退请求并且将其发送到CRM。在一实施例中,每当任何页面中的任何后退按钮被激活时,移动设备104就发送相同的一般后退请求。响应于后退请求,控制逻辑206可以从页面导航堆栈弹出最后一项,该项包括与页面502有关的信息。然后,控制逻辑206可以使用最近添加的堆栈项中的页面定义(例如机会集页面定义)和来自最近添加的堆栈项中标识的模型条目(例如机会模型条目)的数据来重建产生页面402的应答。应答被重建并用于随后的序列化和发送到移动设备104。除了来自模型的已经中途改变的任何数据之外,页面的重新显示应该是相同的。
返回到图5,“Pinnacle服务器机会”页面502中显示很多元素是可激活的页面链接。例如,“Pinnacle”销售账户是到对应的账户页面的有效链接。为了示范,移动设备104的用户可以激活移动设备104上显示的Pinnacle销售账户页面链接。响应于激活该页面链接,移动设备104生成对Pinnacle账户页面的请求并且将其发送到CRM。控制逻辑206接收该请求,并且响应于此,基于该请求中的信息而选择账户页面定义存储器202。账户页面定义被提供给序列化系统210以用于呈递。在该过程期间,控制逻辑206选择存储给出Pinnacle账户应答所需的数据的模型204的适当条目。可以基于所选择的页面定义内包含的信息和/或对应的页面堆栈的最近添加的项中的信息而选择账户条目。在当前示例中,由于账户页面定义由单行模型数据支持,因此选择模型204的账户条目以提供用于页面定义的数据。控制逻辑206从账户页面定义直接或间接地标识的模型204的账户条目选择数据。所选择的数据与账户页面定义合并,并且随后被串行化,以用于发送到移动设备204。此夕卜,控制逻辑206可以创建新的项并且将其推送到对应的导航页面堆栈上,其可以包含账户模型条目标识、对Pinnacle账户唯一的信息、用于给出应答的账户页面定义的拷贝等。图6示出在移动设备104从CRM接收到应答并且对其进行反序列化之后,移动设备104所显示的示例“Pinnacle”账户页面602。类似于图5所示的机会页面502,账户页面602以表单模式呈现。账户页面602中的一个或多个元素可以是账户页面中的有效页面链接。例如,页面602的“机会集”和“联系人集”元素都是有效页面链接。机会集页面链接可以通向仅列出针对Pinnacle销售账户的所有机会的机会集页面。联系人集页面链接可以通向仅列出针对Pirmacle销售账户的所有联系人是联系人集页面。用户可以通过激活任一有效链接而向前导航到这些后续页面。为了示范,用户可以激活页面602的机会集链接,响应于此,移动设备104生成机会集页面请求,并且将其发送到CRM。该页面请求可以与移动设备104响应于用户激活图3的机会集图标306而发送的机会页面请求相似或相同。控制逻辑206接收该请求,并且响应于此,基于该请求中的信息而从存储器202选择机会集页面定义。机会集页面定义被提供给序列化系统210,以用于呈递。控制逻辑206还选择存储机会页面定义所需的数据的模型204的条目。该模型条目的选择可以基于机会页面定义的信息和/或最近添加到页面堆栈的项中的信息。在该当前示例中,由于机会集页面被选择,并且账户是最近推送到页面导航堆栈的项中标识的模型条目,所以控制逻辑206选择模型204的“账户机会”条目,其关联到账户的根条目。在一实施例中,如果所选择的页面定义(例如机会集页面定义)是数据模型的多行或者可以由数据模型的多行支持,则控制逻辑206应选择通过将最近推送的堆栈项中的模型标识与所选择的页面定义中标识的根条目标识串连在一起(如果它们不同的话)而产生的模型条目。在当前示例中,机会集页面定义是多行或者能被多行支持,在页面导航堆栈的最近推送项中“账户”被标识为模型条目,在机会集页面定义中机会被标识为根模型条目。结果,控制逻辑206连接它们两个以创建“账户机会”,其被选择为模型条目,序列化系统210应从其接收数据以用于应答。控制逻辑206从机会集页面定义直接或间接地标识的模型204的账户机会条目选择数据。所选择的数据与机会集页面定义合并,其结果被序列化并且发送在移动设备104中。此外,控制逻辑206将新的项推送到导航页面堆栈上,该项标识机会账户模型条目、机会集页面定义的拷贝以及对于Pinnacle销售账户唯一的标识符。图7示出在移动设备104接收到CRM所发送的应答并且对其进行反序列化之后,移动设备104所显示的示例“机会集”页面702。该页面类似于图4所示的机会集页面402以列表模式呈现。不同于页面402,页面702仅列出联系到Pinnacle销售账户而出现的机会。此外,就像机会集页面402那样,页面702中显示的每项是到另一页面的有效链接。为了示范,用户可以激活页面702上显示的“Pinnacle服务器”机会链接。响应于此,移动设备104可以生成并且发送对Pinnacle服务器机会页面的请求。这是与在显示图5所示的页面之前移动设备104发送的请求相同或相似的请求。控制逻辑206从移动设备104接收请求,并且实施与用于生成和发送导致图5中显示的页面的应答的步骤相同的步骤。更具体地说,控制逻辑206选择适当的模型条目204,并且存储应答所需的数据。在该示例中,由于机会页面定义由来自模型204的单行数据支持,因此选择机会模型条目。来自机会模型条目的数据被选择并且由序列化系统210与机会页面定义合并,其结果被序列化并且发送到移动设备104。控制逻辑206还将新的项输入到页面导航堆栈中,其包括机会页面定义的拷贝、机会模型条目标识以及对于Pinnacle服务器机会唯一的标识符。图8示出在移动设备104接收到应答并且对其进行反序列化之后显示的机会页面802。除非特定机会的数据已经改变,否则该页面应与图5所示的页面相同。用户可以寻求在逻辑数据模型内创建新的条目(例如新的机会、账户、联系人等)。例如,机会集页面702包括“创建”按钮,其可以由移动设备104的用户激活。该按钮使得用户能够创建新的机会。为了示范,当用户激活图7所示的创建按钮时,移动设备104生成并发送在Pinnacle机会集列表内创建新机会的请求。CRM206响应于此从存储器202选择可编辑的机会表单页面定义。该页面被呈递并且随后在其被发送到移动设备104之前被序列化。移动设备104进行反序列化并且显示对应页面。图9示出移动设备104上显示的示例可编辑表单902。该页面使用户能够将数据输入到选择字段。图6或图7示出经由示例性递归导航到达的页面。正常来说,CRM禁止导航的递归。在递归导航的情况下,用户将不能从图5所示的机会页面502向前导航到图6所示的账户页面602。而是,用户将需要后退导航到图3所示的跳板页面302,接着从账户集图标308开始向前导航到感兴趣的页面。此外,用户将不能从账户页面602向前导航以到达图7所示的机会集页面702。用户可以后退导航到图3所示的跳板页面302,接着向前导航到机会集页面,但是机会集页面可能没有被过滤以仅显示与销售账户“Pinnacle”相关联的机会集的列表。图10更详细地示出图2所示的系统。如上所述,CRM能够进行递归导航。控制逻辑206与堆栈存储器1006进行数据通信,堆栈存储器1006被配置为存储一个或多个页面堆栈,每个页面堆栈对应于CRM与相应移动设备之间的会话。为了说明,页面堆栈1010与移动设备104关联。逻辑数据模型204构造为包括根条目,例如机会、账户和联系人。图10所示的机会集表、账户集表和联系人集表是支持逻辑模型204中的条目的表的示例。逻辑数据模型204构造有与根条目有有限关系深度的非根条目。逻辑模型定义根条目与非根条目(例如“账户机会”)之间的关系。例如,“账户机会”和“账户联系人”条目被关联到根账户条目。模型204是实现递归导航的一种结构的示例。继续参照图10,图11示出控制逻辑206和序列化系统210执行以实现递归导航的一实施例的相关操作方面。图11的过程始于步骤1102,控制逻辑206从移动设备104接收到请求时。响应于此,控制逻辑206访问该请求中所标识的页面堆栈,并且读取页面定义、模型条目标识以及推送到页面堆栈上的最后一项中的任何其它信息,如步骤1104所示。在步骤1106中,控制逻辑206确定该请求是否将在数据模型204中创建新的条目(entry)或者行(row)。如果该请求将创建新行,则控制逻辑206选择数据模型204中的其中将创建新行的条目。该选择基于在步骤1104中从页面堆栈读取的模型条目标识。例如,控制逻辑206可以基于步骤1104中从页面堆栈1010读取的标识而选择机会条目或账户机会条目。在步骤1112中,控制逻辑206在该所选择的模型条目中创建新行,其进而将填充有将从移动设备104接收到的数据。此后,过程结束。然而,如果在步骤1106中确定该请求将不在数据模型中创建新行,则过程进入1114,控制逻辑206确定该请求是用于向前还是向后页面导航。如果请求是用于向后页面导航,则控制逻辑206读取推送到堆栈1010上的最后一项旁边的一项。更具体地说,处理进入步骤1116,控制逻辑206弹出输入到堆栈1010中的最后一项。然后,控制逻辑206从堆栈1010中最近输入的项读取页面定义、模型条目和过滤关键词,如步骤1120所示。步骤1120中读取的页面定义连同步骤1120中标识的模型条目所提供的、页面定义所需的数据被一起提供给序列化系统210和过滤器(根据需要)。来自所标识的模型条目的数据可以被过滤并且与页面定义合并,其结果然后被序列化,以用于发送到移动设备。然而,如果在步骤114中该请求是用于向前页面导航,则过程进入步骤1122,控制逻辑206使用步骤1102中接收到的请求的信息来从存储器202选择适当的页面定义。在步骤1124中,控制逻辑206确定步骤1122中选择的页面定义是被数据模型204的单行还是多行支持。如果页面定义被单行支持,则在步骤1126,控制逻辑206从数据模型204选择适当根条目(例如机会、账户、联系人等),以用于呈递应答所需的数据。然而,如果步骤1122中选择的页面定义得到数据模型中的多行的支持,则在步骤1130中,控制逻辑206基于步骤1104中读取的模型条目标识以及步骤1122中选择的页面定义所指定的根条目而选择根条目或与其相关的条目。更具体地,控制逻辑206选择通过将在步骤1104中从堆栈1010读取的模型条目标识与步骤1122中选择的页面定义中标识的根条目的标识串连在一起(如果二者不同的话)而标识的模型条目。如果标识并非不同,且如果从堆栈1010读取的标识不是“主页”,则在1132中,控制逻辑206选择所选择的页面定义中标识的根条目。此后,在步骤1132中,序列化系统210将所选择的页面定义与所选择的模型条目的数据绑定,其结果被发送到移动设备。在步骤1134中,控制逻辑206创建新的项并将其推送到存储器1006内的页面堆栈上。除了任何过滤信息之外,该新的项还应包括在步骤1130中选择的定义的拷贝以及在步骤1130中选择的模型条目的标识。图12A-12C示出响应于生成并且发送分别产生图6、图7和图8所示页面的应答而将项推送到其上的页面堆栈1010。页面堆栈1010内的每个项包括页面定义的拷贝、用于支持对应的页面定义的模型条目的标识、以及过滤关键词(例如表关键词),过滤关键词来自数据库的表之一,如果由于向后导航而重新显示页面或如果过滤了的列表将要呈现在页面中,则该过滤关键词可用作过滤器。堆栈中的项按照其中的条目的顺序来布置。因此,在图12A中,项4是堆栈1010的最近输入的项。项4对应于图6中移动设备104上显示的“Pinnacle”账户页面602。在基于堆栈项而重建应答的情况下,关键词AlO被提供为过滤值。图13描述适合于实施本发明的计算机系统1310的框图。计算机系统1310可以表示图1和图2所示的各种计算机系统(例如服务器或客户端)。计算机系统1312包括:总线1312,其互连计算机系统1310的主要子系统,例如中央处理器1314、系统存储器1317 (典型地,RAM,但其也可以包括ROM、快闪RAM等)、输入/输出控制器1318、外部音频设备(例如经由音频输出接口 1322的扬声器系统1320)、外部设备(例如经由显示适配器1326的显示屏幕1324)、串行端口 1328和1330、键盘1332 (与键盘控制器1333进行接口连接)、存储接口 1334、可操作为接收软盘1338的软盘驱动器1337、可操作为与光纤信道网络1390连接的主机总线适配器(HBA)接口卡1335A、可操作为连接到SCSI总线1339的主机总线适配器(HBA)接口卡1335B以及可操作为接收光盘1342的光盘驱动器1340。还包括的是鼠标1346 (或经由串行端口 1328耦合到总线1312的其它点击设备)、调制解调器1347 (经由串行端口 1330耦合到总线1312)以及网络接口 1348 (直接耦合到总线1312)。总线1312允许中央处理器1314与系统存储器1317之间的数据通信,系统存储器917可以包括只读存储器(ROM)或闪存(均未示出)以及随机存取存储器(RAM)(未示出),如上所述。RAM通常是操作系统和应用程序可以加载到的主存储器。除了代码以外,ROM或闪存还可以包含基本输入输出系统(BIOS),其控制基本硬件操作(例如与外围组件的交互)。驻留计算机系统1310的应用通常存储在计算机可读介质(例如硬盘驱动器(例如固定盘1344)、光驱(例如光驱1340)、软盘单元1337)或其它存储介质上,并且可以经由它们而接受访问。此外,应用可以是当经由网络调制解调器1347或接口 1348访问时根据应用和数据通信技术所调制的电信号的形式。存储接口 1334与计算机系统1310的其它存储接口一样,可以连接到用于存储和/或检索信息的标准计算机可读介质(例如固定盘驱动器1344)。固定盘驱动器1344可以是计算机系统1310的一部分,或可以是分离的并且通过其它接口系统接受访问。调制解调器1347可以提供经由电话链路到远程服务器或经由互联网服务提供商(ISP)到互联网的直接连接。网络接口 1348可以提供经由直接网络链路到远程服务器经由POP (入网点)到互联网的直接连接。网络接口 1348可以使用无线技术来提供这种连接,包括数字蜂窝电话连接、蜂窝数字分组数据(⑶PD)连接、数字卫星数据连接等。例如图13所示的计算机系统的操作已经是本领域公知的,并且在本发明中不详细讨论。用于实现CRM的代码可以存储在计算机可读存储介质(例如系统存储器1317、固定盘1344、光盘1342或软盘1338中的一个或多个)中。存储器1320还用于在处理器1310执行指令期间存储临时变量或其它中间信息。计算机系统1310上所提供的操作系统可以是MS-DOS 、MS-WINDOWS 、OS/2 、UNIX 、Linux 或其他已知的操作系统。虽然已经结合若干实施例描述了本发明,但本发明并非意图受限于在此阐述的具体形式。而是,旨在覆盖这些替换、修改和等同物,只要能合理地包括在所附权利要求所定义的本发明的范围内。
权利要求
1.一种方法,包括: 响应于从移动设备接收到第一请求而生成第一应答,其中所述第一应答根据页面定义而生成,且其中所述第一应答包括从逻辑数据模型的第一对象而不是所述逻辑数据模型的第二对象所选择的数据,其中所述第一对象和第二对象彼此不同; 响应于从所述移动设备接收到第二请求而生成第二应答,其中所述第二应答根据所述页面定义而生成,且其中所述第二应答包括从所述第二对象而不是所述第一对象所选择的数据。
2.按权利要求1所述的方法,其中,基于所述页面定义的元数据从所述第一对象选择数据,且其中基于所述页面定义的元数据从所述第二对象选择数据。
3.按权利要求1所述的方法,还包括: 响应于从所述移动设备接收到另一请求而生成另一应答,其中所述另一应答包括来自所述逻辑数据模型的另一对象的数据,其中所述另一应答根据另一页面定义而生成,其中所述页面定义和所述另一页面定义彼此不同; 将项推送到堆栈上,其中所述项包括所述另一对象的标识、以及另一页面定义的标识或其拷贝。
4.按权利要求3所述的方法,还包括: 响应于从所述移动设备接收到所述第二请求而读取所述堆栈中的所述另一对象的标识; 响应于读取所述 另一对象的标识而选择所述第二对象; 响应于选择所述第二对象而从所述第二对象检索数据; 其中,使用从所述第二对象检索的数据来生成所述第二应答。
5.一种包括指令的计算机可读存储器,其中,计算机系统响应于执行所述指令而实施一方法,所述方法包括: 响应于从移动设备接收到第一请求而生成第一应答,其中所述第一应答根据页面定义而生成,且其中所述第一应答包括从逻辑数据模型的第一条目而不是所述逻辑数据模型的第二条目所选择的数据,其中所述第一条目和第二条目彼此不同; 响应于从所述移动设备接收到第二请求而生成第二应答,其中所述第二应答根据所述页面定义而生成,且其中所述第二应答包括从所述第二条目而不是所述第一条目所选择的数据。
6.按权利要求5所述的计算机可读存储器,其中,基于所述页面定义的元数据从所述第一条目选择所述数据,且其中基于所述页面定义的元数据从所述第二条目选择所述数据。
7.按权利要求5所述的计算机可读存储器,其中,所述方法还包括: 响应于从所述移动设备接收到另一请求而生成另一应答,其中所述另一应答包括来自所述逻辑数据模型的另一条目的数据,其中所述另一应答根据另一页面定义而生成,其中所述页面定义和所述另一页面定义彼此不同; 将项推送到堆栈上,其中所述项包括所述另一条目的标识、以及另一页面定义的标识或其拷贝。
8.按权利要求7所述的计算机可读存储器,其中,所述方法还包括:响应于从所述移动设备接收到所述第二请求而读取所述堆栈中的所述另一条目的标识; 响应于读取所述另一条目的标识而选择所述第二条目; 响应于选择所述第二条目而从所述第二条目检索数据; 其中,使用从所述第二条目检索的数据来生成所述第二应答。
全文摘要
一种用于递归导航的方法和装置。在所述方法的一实施例中,响应于从移动设备接收到第一请求而生成第一应答。所述第一应答根据页面定义而生成,所述第一应答包括从逻辑数据模型的第一对象而不是所述逻辑数据模型的第二对象所选择的数据。所述第一对象和第二对象彼此不同。响应于从所述移动设备接收到第二请求而生成第二应答。所述第二应答根据所述页面定义而生成,所述第二应答包括从所述第二对象而不是所述第一对象所选择的数据。
文档编号G06F17/30GK103098055SQ201180044371
公开日2013年5月8日 申请日期2011年9月19日 优先权日2010年9月17日
发明者W·卡特, S·塔德帕里, R·亚瑟恩 申请人:甲骨文国际公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1