自动生成用户表单界面的方法和系统的利记博彩app

文档序号:10724896阅读:808来源:国知局
自动生成用户表单界面的方法和系统的利记博彩app
【专利摘要】公开了一种用于动态生成用于应用的用户表单界面的方法和系统。该方法包括:访问关于用户界面的对象元数据;基于元数据加载用于用户界面的逻辑描述;检索关于元数据的功能选项,并且基于功能选项确定对用户界面进行的至少一个其他改变的需求;以及检索对于用户表单界面的用户有效的访问权限。该方法进一步包括:使用表单引擎基于预定标准来组织表单元素,以及基于逻辑描述、功能选项、对于用户有效的访问权限和用户设定而自动生成视觉描述数据。此外,基于客户端设备的显示设定,该视觉描述数据提供至定制用户表单界面的客户端设备。
【专利说明】
自动生成用户表单界面的方法和系统
[0001] 相关申请的交叉引证
[0002] 本申请是2015年4月29日提交的俄罗斯专利申请第2015116133号的部分继续,并 且要求其优先权的权益,其全部内容通过引证结合于此。
技术领域
[0003] 本公开总体涉及一种用于生成用于应用的用户界面的系统和方法,并且更具体 地,涉及一种以动态变化屏幕表单的形式执行用户界面的自动生成的系统和方法。
【背景技术】
[0004] 个人计算机以及其他计算设备(诸如智能电话、个人数字助理、平板电脑等)需要 用于用户的用户界面以便与设置在该设备上的应用或服务通信和交互。然而,这些界面的 创建和设计通常是十分耗时且劳动密集的。存在有促进开发者生成用户界面的某些计算机 程序。例如,对于各种类型的平台上的目标屏幕对象的视觉化的许多技术,已知一种系统和 方法被用于创建类似于表单的用户界面,其中,开发者可基于应用的开发模型以及选择的 类型而预先创建所需数据对象的逻辑表单,然后该数据对象与一组逻辑和物理控制元素一 起形成用户界面。然而,该方案是非常劳动密集的,因为开发者必须手动创建每个新表单。 因此,需要如下一种系统和方法:该系统和方法使开发者能够创建其中可自动生成表单的 改进的用户界面。

【发明内容】

[0005] 公开的系统和方法为用户提供具有标准功能的用户界面的灵活且快速的创建,而 不丧失这些界面的质量和工效学(ergonomi c)设计。
[0006] 有利地,公开的系统和方法利用由自动生成表单实现的应用程序方案的微调来提 供增强的灵活性和开发速度,于是,这就确保用户界面的元素的定位和显示与工效学要求 一致。
[0007] 根据一个方面,公开了一种用于动态生成用于应用的用户界面的方法。该方法包 括:访问关于被请求的用户表单界面的对象元数据;基于被访问的所述对象元数据从数据 库加载用于所述用户表单界面的逻辑描述,其中,所述逻辑描述至少包括用于所述用户表 单界面的表单元素和指令的声明;从所述数据库检索关于所述被访问的对象元数据的功能 选项,并且基于所述功能选项确定对所述用户表单界面进行的至少一个其他改变的需求; 检索对于所述用户表单界面的用户有效的访问权限;激活包含格式化规则的表单引擎,所 述格式化规则适于基于预定标准来组织所述表单元素;由所述表单引擎基于所述逻辑描 述、所述功能选项、对于所述用户有效的所述访问权限和用户设定而自动生成用于所述用 户表单界面的视觉描述数据,所述视觉描述数据是非特定于设备的;以及基于客户端设备 的显示设定而向定制所述用户表单界面的所述客户端设备提供所述视觉描述数据。
[0008] 根据另一方面,预定标准包括逻辑、工效学、美学以及商业标准的集合。
[0009] 根据另一方面,客户端设备的显示设定包括如下至少一个:客户端设备的屏幕的 尺寸、客户端设备的屏幕的指定分辨率、客户端设备的屏幕的指定字体、客户端设备的操作 系统以及客户端设备的浏览器。
[0010] 根据另一方面,该方法包括:如果用户不适当地将数据输入表单元素中的至少一 个,则在与邻近于该表单元素的窗口中的用户表单界面的特定元素相关的客户端设备上显 示信息消息。
[0011] 根据另一方面,用于用户表单界面的逻辑描述进一步包括:关于表单元素的尺寸 和顺序中的一个或多个的信息。
[0012] 根据另一方面,逻辑描述进一步包括:至少一个表单元素或表单元素的组群,以及 应用于多个相关表单的一个或多个全局指令。
[0013] 根据另一方面,逻辑描述进一步包括:一个或多个指令,所述一个或多个指令适用 于利用所述检索的表单数据打开新的表单用户界面。
[0014] 根据另一方面,公开了一种用于动态生成应用表单的服务器系统。根据该方面,该 服务器系统包括:数据库,配置为存储用于至少一个用户表单界面的逻辑描述,其中,所述 逻辑描述至少包括用于所述用户表单界面的表单元素和指令的声明;网络界面,配置为:访 问关于被请求的用户表单界面的对象元数据,基于被访问的所述对象元数据从所述数据库 加载用于所述用户表单界面的至少一个逻辑描述,其中,所述逻辑描述至少包括用于所述 用户表单界面的表单元素和指令的声明,从所述数据库加载关于所述被访问的对象元数据 的功能选项,并且基于所述功能选项确定对所述用户表单界面进行的至少一个其他改变的 需求,以及检索对于所述用户表单界面的用户有效的访问权限,以及表单引擎格式化规则, 适于基于预定标准来组织所述表单元素,并且基于所述逻辑描述、所述功能选项、对于所述 用户有效的所述访问权限和用户设定而自动生成用于所述用户表单界面的视觉描述数据, 所述视觉描述数据是非特定于设备的,其中,所述网络界面被配置为基于客户端设备的显 示设定而向定制所述用户表单界面的所述客户端设备提供所述视觉描述数据。
[0015] 根据另一方面,一种存储在非易失性计算机可读存储介质上的计算机程序产品, 该计算机程序产品包括用于动态生成应用表单的计算机可执行指令,该指令包括用于如下 的指令:访问关于被请求的用户表单界面的对象元数据;基于被访问的所述对象元数据从 数据库加载用于所述用户表单界面的逻辑描述,其中,所述逻辑描述至少包括用于所述用 户表单界面的表单元素和指令的声明;从所述数据库检索关于所述被访问的对象元数据的 功能选项,并且基于所述功能选项确定对所述用户表单界面进行的至少一个其他改变的需 求;检索对于所述用户表单界面的用户有效的访问权限;激活包含格式化规则的表单引擎, 所述格式化规则适于基于预定标准来组织所述表单元素;由所述表单引擎基于所述逻辑描 述、所述功能选项、对于所述用户有效的所述访问权限和用户设定而自动生成用于所述用 户表单界面的视觉描述数据,所述视觉描述数据是非特定于设备的;以及基于客户端设备 的显示设定而向定制所述用户表单界面的所述客户端设备提供所述视觉描述数据。
[0016] 公开的系统和方法比常规的用户界面生成方法较少费力,因为用户不需要开发 (BP,设计、绘制元素树,编程它们的行为)用于配置对象中的每一个的所有可能的形式。因 此,开发的过程或应用的方案的微调被大体加快。
[0017] 此外,公开的系统和方法扩大技术资源的工具套件,使得可以以自动化方式创建 用于相同元数据对象的两个或多个表单。从属于该对象的表单的任一中可被指定作为主要 的一个。
[0018] 示例性方面的以上简化概括用来提供对公开的系统和方法的基本理解。该概括不 是所有预期方面的广泛概述,并且并非旨在识别所有方面的关键或决定性元素或者描绘本 公开的任何方面或所有方面的范围。它的唯一目的是以简化形式呈现一个或多个方面,作 为接下来的本公开的更详细描述的前奏。为了完成以上内容,本公开的一个或多个方面包 括描述的特征,并且尤其是在权利要求中指出的特征。
【附图说明】
[0019] 结合至本说明书且构成本说明书的一部分的附图示出本公开的一个或多个示例 性方面,并且该附图与【具体实施方式】一起用来说明它们的原理和执行过程。
[0020] 图1示出根据示例性方面的用于自动生成用户界面的方法的流程图。
[0021] 图2(a)和图2(b)示出根据示例性方面的用于自动生成用户界面的系统的框图。
[0022] 图3是根据示例性方面的示例性通用计算机系统的示图,在该示例性通用计算机 系统上,可部署用于用户界面的自动生成的系统和方法。
[0023] 图4示出根据示例性方面的在设计编程过程中执行的软件应用的屏幕截图。
[0024]图5示出根据示例性方面的XML形式描述的示例性逻辑结构。
[0025] 图6(a)和图6(b)示出根据示例性方面的在运行(执行模式)时发起的软件产品屏 幕截图。
[0026] 图7示出根据示例性方面的在设计(设计模式)时运行的软件应用的屏幕截图。
[0027] 图8示出根据示例性方面的提供用户设定的配置的软件应用的屏幕截图。
【具体实施方式】
[0028] 本文描述的示例性方面是在用于以动态变化屏幕形式的形式自动生成用户界面 的系统、方法以及计算机程序产品的环境下。本领域普通技术人员将理解,用于自动化用户 界面生成的系统和方法的示例性方面的以下描述仅是说明性的,并且并非旨在以任何方式 限制。对于本领域技术人员,其他方面将自身轻易暗示本公开的益处。现在将详细参考附图 所示的示例性方面的执行过程。贯穿附图和以下描述,在可能的程度上,相同的参考指示符 将用于指代相同项。
[0029] 具体地,用于用户界面的自动生成的系统和方法包括硬件和软件平台,该硬件和 软件平台提供用于帐户任务、电子文档、企业资源管理等的自动化的应用方案。硬件和软件 平台组成具有外围输入/输出设备的通用计算机,该通用计算机包括,例如,PC兼容设备或 合并至在其上安装有通用操作系统的局域网的若干计算机,并且该通用计算机也具有专用 软件以实现公开的方法。根据示例性方面,专用软件是可在其环境用户应用中执行的软件。 在下文中,终端用户或终端用户的群组将与其操作的完整功能也将被称为"用户应用"。公 开的系统和方法涉及促进并加速用户应用的自动开发和/或定制的软件平台。
[0030] 公开的系统和方法为用户应用的开发者提供以构建器的方式从元数据对象组装 定制化用户应用的能力,该元数据对象包括例如,目录、文档、信息记录、帐目图表等。应理 解,这些种类的元数据对象被设置/描述在用于设计者的平台中。根据示例性方面并且如图 7所示,例如,元数据对象可分别表征为"目录"、"文档"、"信息寄存器"、"帐目图表"。根据一 个方面,元数据对象中的每一个包含与其他元数据对象起作用和与其他元数据交互的其自 身算法。
[0031] 在一个示例性方面中,用户应用的用户界面将主要包括多个表单。用户应用的终 端用户将主要操作这些表单。表单用于包含在数据库中的信息的显示和编辑。根据示例性 方面,基于对象访问特定表单。例如,开发者将首先创建对象(例如,图4所示的目录"类别车 辆(Category Vehicles)")或文档,并且随后该对象被用于创建表单。更具体地,如图4所示 (以下详细讨论的),"配置"树设置有"目录(Catalogs)"、"车辆(Vehicles)"以及随后的"表 单(?〇1'1118)"。因此,如所示的,表单"?〇1'11^111:〇2"425是目录"车辆(¥611;[(3168)"420的子目录。
[0032] 根据一个方面,与其他元数据对象一样,表单可保存作为数据库中的某些信息结 构。物理地,元数据对象可存储在具有关于由终端用户(用户数据)组装的主题区域的信息 的相同数据库中,或者可存储在单独数据库中。根据一个方面,终端用户不编辑元数据,并 且因此,不具有改变配置的功能的能力,这是配置的开发者或管理员的任务。
[0033]基于以下将详细讨论的逻辑描述,公开的系统和方法产生用于向终端用户显示的 表单的外观。在该过程中,系统考虑要显示的数据的各种性能(诸如类型),以便以对终端用 户最大的便利设置表单的元素。当显示(绘制)表单时,元素(其包括元素树以及指令界面的 元素)的具体定位由系统自动执行。
[0034] 根据示例性方面,表单的逻辑描述可包括一组若干组件,包括但不限于此,例如:
[0035] ?元素或元素树-一组对象,该组对象被配置为确定表单的视觉呈现并且提供与 终端用户的交互;
[0036] ?细节(属性)-描述表单在其操作中使用的数据的对象(包括数据的类型和来 源);
[0037 ] ?指令/动作组-预定用于每个特定表单的动作;
[0038] ?指令界面-在表单中显示的一组指令(例如,交互按钮或菜单等),该表单可使用 (执行)用于特定表单或者用于该表单与其链接的整个对象;
[0039] ?选项-对象,当将表单加载至存储器时,该对象的值决定表单的特定副本的行 为,在一个方面中,在表单副本的"寿命"的过程中,参数保持不变,它可用于从一个表单向 另一表单预传输值;以及
[0040] ?模块-以内置语言编写的程序,该程序负责:操作元素、处理事件、读取和写入在 表单中编辑的数据并且将表单的数据转换为对应的数据库记录,并且反之亦然。
[0041] 根据示例性方面,该表单的功能由元素树、细节(表单操作的数据)以及执行的动 作(指令)确定。因此,当由开发者访问特定表单以生成用户界面时,由系统访问与该表单有 关的相应元素树、要素(requisite)和动作。
[0042]表单可属于配置的特定元数据对象或者不与任何特定元数据有关。如上相对于图 4所述的,可提供如下的示例性情况:其中,首先使用元数据创建对象,并且随后可基于该对 象创建表单(例如,"?〇1'11^111:〇2"425,其是目录"车辆(>611;[0168)"420的子目录)。然而,也应 理解,存在有该表单不属于任何对象且是独立的情形。例如,表单可增加"常用表单(Common forms)",诸如"更改密码(ChangePassword)"710,这有助于设计者改变用户数据的密码,例 如,如图7所示。
[0043] 根据示例性方面,使用构建至其内部的预定规则的系统将自动创建用于元数据对 象(诸如,目录、文档、信息记录)的表单。有利地,在每次添加新的元数据对象时,开发者不 需要设计和"绘制"具有元素树的新表单。
[0044] 除了自动创建表单以外,用户应用的开发者可使用表单编辑器创建/编辑表单,限 定它的要素(requisite)、指令以及可显示元素的构成,并且也通过各种设定确定元素的布 置,确定元素的序列并且指定期望的宽度和高度,由此以相对于终端用户的操作更便利的 顺序组成、布置和显示表单元素。
[0045] 为了指定将要在终端用户的屏幕上显示的表单的外观,以树的形式使用描述,该 树包括表单的元素,诸如:输入字段、标记、开关、按钮、具有边界的面板、具有页面(书签)的 面板、页面本身、指令面板、表,也包括元素(栏)等等。如上所述,图4示出表单元素430的树 的示例性屏幕截图。此外,图5示出相同的树表单元素,但是以XML结构的形式示出。应理解, 示例性树不限于根据图4和图5所示的示例性元素和/或屏幕上的元素位置的具体定位。相 反,这些示例性方面仅示出元素的序列和群组。
[0046] 如上所述,表单要素用于将该表单链接至必需的数据。具体地,该要素表示由该表 单显示的数据的列表。该要素在指令列表中编辑。开发者具有添加或移除表单的细节的能 力。
[0047] 如以上进一步描述的,表单中的所有动作由指令执行,该指令用作一个动作或另 一动作应如何被执行的描述。表单的指令在指令列表中编辑。借助于存储在数据库中的一 组性能,开发者具有增加和移除表单的指令以及分配它们的性能的能力。根据一个方面,对 于每个指令,当该指令被用户调用时,开发者可指示将执行的程序。为了使指令开始执行其 功能,它必须链接至该表单的必需元素(即,与其相关的事件)。
[0048] 根据一个方面,对于要开发的配置的表单,开发者可使用表单自身的指令(即,本 地指令)以及在整个配置的指令界面中使用的全局指令。在该方面中,当基于当前表单的数 据的某些参数与指令(例如,这可以是针对关于仓库中的在库库存的报告的调用,目前,该 调用在费用发票表单中被选择)一起发送时,全局指令可以是简单的(诸如,打开另一目录 或文档的指令)且可参数化的。
[0049] 在一个方面中,针对给定类型的对象而生成的所有表单可具有相同行为。因此,对 于"目录"类型的任意给定对象,人们可请求显示该对象的元素、该对象的个体元素、目录组 的列表,并且从该目录中选择元素和元素组。为了使得能够执行这种标准动作,人们将针对 每个类型对象生成一组从属表单,其中当执行相应动作时,将使用该从属表单。
[0050] 例如,针对对象"承包人目录(Contractors directory)",生成了用于编辑个别选 定承包人(例如,名称、地址、电话、纳税人ID、管理者的全名等)的要素卡(requisites card)中的一些或所有字段的第一表单,以及输出承包人的完整列表的第二表单。借助于该 第二表单,用户可观看和分类该列表,移去承包人的整个组等。
[0051]在一种情况下,如果必需向用户应用增加新的对象及其表单,并且如果不必创建 用于给定对象的任意其他表单(诸如,具有不同设计或特定外观的那些表单),则开发者可 仅增加用户应用的新对象,并且系统将自动使用构建至该系统中的规则以生成表单的对象 组所需的最小值。
[0052]因此,当添加新对象或打开特定数据对象时,系统自动加载该表单的早期开发的 逻辑描述的对象,将使用关于该对象的所有数据显示和编辑该对象。如果存在这种描述,则 系统加载逻辑描述,并且基于它,存在表单的进一步生成。
[0053]相反,如果没有加载这种描述,则系统可随后确定加载的对象的类型,就是说,该 系统确定它与配置的什么类型的元数据对象(例如,目录、文档、信息记录、帐目图表等)有 关。在确定对象类型之后,系统从包含配置的所有已知类型的元数据对象的基本逻辑描述 的规则组中选择应用于给定对象的规则,并且生成逻辑描述。
[0054]根据示例性方面,在终端用户在他或她的屏幕上看到表单之前,系统将执行以下 操作:生成表单、转换表单、输出(即,绘制)表单。因此,在已经获得该对象的表单的逻辑描 述之后(自动生成还是由开发者预先保存),系统开始转换它。该转换涉及基于功能选项、访 问权限以及用户设定的使用而改变用户界面的步骤。基于功能选项来改变用户界面使得有 可能在应用方案中挑选出在执行时可被打开和关闭的功能,而不改变应用方案本身。
[0055]取决于终端用户的访问权限,系统准确地确定哪些数据不能够为了在表单中显示 或编辑而向用户呈现。借助于用户设定,用户自己可打开和关闭显示所需的表单元素。因 此,基于描述、功能选项、访问权限和用户设定,系统为特定用户提供表单的视觉呈现的显 示(绘制)。
[0056]此外,借助于该系统,可实现各种方法,其中,在显示(绘制)该表单的视觉呈现并 且终端用户开始操作它之后,当用户在输入数据时出错时,参考表单的具体元素输出信息 消息,该信息消息在位于那些表单元素以下的表单的特定窗口中显示。例如,如果,当创建 新文档时,用户在日期字段中输入文本或未能填充强制字段,则系统在所述特定窗口中告 诉他这一点。
[0057]图1示出根据示例性方面的自动生成用户界面的方法100的流程图。如示出的,初 始,当用户开始生成用户界面的自动处理时,在步骤105中,公开的系统访问关于被请求的 用户界面的一个或多个对象。具体地,根据参考图4的实例,用户可例如,在主菜单中选择特 定对象,用户可选择"车辆(Vehicles)"引导,即,"目录车辆(Catalog Vehicles)"。这表示 用户对该目录感兴趣,并且所以系统可示出具有来自该目录的信息的适当表单。
[0058]接下来,在步骤110中,该方法确定对象的表单逻辑描述是否由开发者限定且保 存。如果是,该方法100进行至步骤115,在步骤115中,针对用于加载对象的表单确定逻辑描 述的存在。可选地,如果对象的表单逻辑描述未被开发者预定,则该方法进行至步骤120,其 中在步骤120中,它被限定。再次,一旦被限定,该方法进行至步骤115,其中在步骤115中,确 定用于加载对象的表单的逻辑描述的存在。为了执行公开的方法,现在将相对于图2(a)和 图2(b)描述系统。
[0059]具体地,图2(a)和图2(b)示出根据示例性方面的用于自动生成用户界面的系统 200的框图。应理解,系统200可使用计算机系统(诸如,以下相对于图3描述的计算机系统) 来实现。应理解,以下描述的各种数据可存储在如图3所示的系统存储器22上。此外,如本领 域的技术人员将理解的,以下关于图2(a)和图2(b)讨论的模块(即,生成器和执行器)可实 现为软件/硬件模块。如本文使用的,术语"模块"例如指的是现实世界的设备、组件或者使 用硬件实现的组件的布置(诸如,借助专用集成电路(ASIC)或现场可编程门阵列(FPGA))或 者作为硬件和软件的组合(诸如,借助微处理器系统),以及一组指令以实现模块的功能,该 模块(在执行时)将微处理器系统转换为专用设备。模块也可实现为两个的组合,其中,单独 由硬件实现某些功能,并且由硬件和软件的组合实现其他功能。在某些执行过程中,模块的 至少一部分(以及在某些情况下模块的所有)可在通用计算机的处理器上执行。因此,每个 模块可实现为各种合适配置,并且不应限于本文中例证的任意示例性实施方式。
[0060] 现在参考图2(a)和2(b),示例性方面示出公开的系统的模块与数据库的交互。具 体地,图2所示的系统暗示不具有用于对应对象的,预布置的和存储的逻辑描述表单。此外, 图2(b)的系统200暗示具有对应对象的预先制备和存储(在开发阶段)的表单的逻辑描述。 鉴于此,图4(上述)示出简单测试应用的开发的实例,其是针对"客户(Customers)"目录410 提供的,其中,不存在形状的描述。相反,"车辆(Vehicles)"目录420已被提前开发,并且保 留表单"F 〇rmAUt〇2"425的逻辑描述。然而,在执行过程中,将自动针对用户生成表单,例如, 图6(a)所示。
[0061] 返回参考图2(a),用户可基于"客户(Customers)"目录410访问特定对象。在该情 况中,系统可检查并确保用于该对象的预存储的逻辑描述表单存在还是不存在。如示出的, 表单LogDescH即,逻辑描述)生成器220访问感兴趣的对象的对象元数据211,并且接收关 于对象的类型及其他特性的信息。基于接收的信息,生成器220自动生成用于对象的描述的 逻辑表单,并且向表单外观生成器280的表单输入提供逻辑表单。依次,生成器280是"表单 引擎"的类型,该"表单引擎"被配置为基于格式化规则(使用"用户设定241,例如)而无需数 据从而生成将来表单的外观、格式等等。替代的,为了该目的,除了逻辑描述以外,三个参数 是包括如下的输入:存储在(例如)电子数据库240中的功能选择("F0")260、访问权限 ("UR")270以及用户设定241。根据示例性方面,用户设定241可包含格式化规则,该格式化 规则被适配为基于逻辑、工效学、美学以及商业标准的预定集合来组织表单元素。因此,终 端用户可将要定制的这些用户设定限定为他们的偏好等,包括,例如,表单上的不同元素的 外表和定位。
[0062]图8示出根据示例性方面的提供用户设定的配置的软件应用的屏幕截图。根据示 例性方面,用户可重新布置字段(可选地)以改变字段外观中的一些,并且如果期望,使得未 使用字段中的一些不可见(如果不需要)。
[0063]如具体示出的,屏幕截图示出用于制备/改变用户设定241的界面,如以上用于图2 (a)和2(b)描述的。根据一个方面,用户设定241可限于:互换字段(即,使得未使用的字段不 可见(如果不需要))、改变字段的外观和位置,例如,在绝对项中明确指定元素尺寸。根据一 个方面,用户不能添加新的字段。
[0064]因此,鉴于用户权限270、功能选项("F0")260以及用户设定241,在表单外观生成 器280中,逻辑描述将被改变(与它如何由开发者存储在元数据表单212中相比较)。随后,逻 辑描述将可选地转换为中间视图,即视觉描述,其后,该中间视图准备转移至客户端。
[0065] 在图2(a)和图2(b)所示的客户端上,由表单外观生成器280生成的描述所得到的 表单将被传输至图形输出转换器290的输入。图形输出转换器290被配置为优化针对客户端 设备的具体特性(诸如工作站、智能电话等)得到的表单的形状。
[0066] 在一个示例性方面中,网络客户端(即,客户端)上的图形输出转换器290的执行过 程可实现为例如,在Java脚本或ActiveX浏览器环境中可下载和可执行。如另一实例,Unix 系统下的瘦客户端的执行过程,其中,Unix系统从安装数据包deb文件(installation package. deb)安装作为客户端应用的一部分,客户端应用以C++编写。
[0067]根据示例性方面,图形输出转换器290的输出提供已经足够详述的视觉描述,以便 基于其屏幕的尺寸、指定分辨率、使用的屏幕字体、操作系统(诸如客户端应用(浏览器或瘦 客户端))等来确保特定客户端设备上的绘制元素。根据一个方面,为了视觉呈现,图形输出 转换器290的输出可包含绝对项中的所有视觉元素的精确尺寸和坐标。
[0068]此外,当已经限定表单的外观和形状时,填入表单执行器模块295可被访问,并且 表单数据域的数据内容(即,"用户数据")242也可从关于感兴趣的对象的数据库240访问。 随后,表单数据可显示在对应显示单元(监视器、智能电话显示器等)上。
[0069] 如以上提及的,图2(b)示出使得开发者能够启动期望格式的逻辑描述的系统,该 系统也利用表单逻辑描述(LogDescr)生成器220。如以上提及的,生成器220被配置为访问 对象元数据211,并且基于接收的信息接收关于对象的类型和其他特性的信息。此外,生成 器220自动生成用于该对象的一些初始表单的逻辑描述,并且向开发者提供要修改的逻辑 描述。使用描述("Descr")编辑器230(根据示例性方面,其是可选的),开发者能够对表单的 逻辑描述做出改变并且存储修改的表单作为表单元数据212的一部分。
[0070] 在如图2(b)所示的应用的第二阶段中,当开发者访问特定对象时,系统被配置为 检查并确认在用于对象的表单元数据212中,存在预存储的逻辑表单描述。根据示例性方 面,预存储的逻辑表单描述是提供至表单外观生成器280的逻辑描述。依次,生成器280生成 非特定于设备的外观以及将来表单的格式,但是不包括如上所述的数据。为了该目的,除了 逻辑描述以外,表单提供有输入三个参数,包括功能选项("F0")260、用户许可(用户访问权 限-"UR")270和用户设定/偏好241。
[0071] 此外,当表单的外观和格式早已设置在最终的设备特定概况中时,访问填入表单 执行器模块290,并且由模块290进一步访问关于感兴趣对象的表单数据域242的数据内容。 [0072]应理解,元数据212图表、功能特征260、用户访问权限270以及用户设定241的表单 中的图像提供作为四个单独来源(即,存储地点),并且根据示例性方面,它们示出为物理上 存储在不同的数据库中,但是可选地设置在单个数据库中。然而,应理解,提供这些类型的 数据作为单独来源;数据可在不同时间由不同用户生成,等等。具体地,表单元数据212可由 开发者配置限定,功能选项260可由实施者限定,该功能选项将一般配置与特定公司的需要 适配,例如,访问权限270可由公司内的管理员配置(尽管这些可不时被修改),并且最终用 户设定241可由每个个体最终用户设定,以定制他们的偏好等。
[0073] 返回参考图1,步骤115具体涉及:基于访问的对象元数据(例如,图2的对象元数据 211),从数据库加载用于表单的一个或多个逻辑描述,其中,逻辑描述包括用于表单的表单 元素和指令的声明。一旦加载逻辑描述,则该方法进行至步骤125,在步骤125中,读取关于 对象的功能选项。根据一个方面,该方法进一步包括:基于读取的功能选项确定用于用户界 面中的其他改变的需要。接下来,该方法读取或确定访问权限(步骤130)以及应用至用户的 用户设定(步骤135)。
[0074] -旦该信息被检索,该方法在步骤140中,基于根据功能选项、访问权限和用户设 定修改的逻辑描述,生成最终的非特定于设备的表单的视觉描述。随后,表单的描述可从服 务器端发送至客户端。
[0075] 在客户端上,在步骤145中,表单的描述经过特定设备转换,使得表单被定制用于 特定客户端设备。如上提及的,该定制化可基于显示设定,该显示设定包括:其屏幕的尺寸、 指定分辨率、使用的屏幕字体、操作系统(诸如客户端应用(浏览器或瘦客户端))等。最后, 在步骤150中,随后,表单(即,用户界面)可使用数据对象填充,以在生成的表单中显示它 们,并且可制备用于表单的外观形状数据用于在屏幕上向用户显示。
[0076]图3描述可用于实现公开的用于自动生成用于应用的用户界面的系统和方法的计 算机系统5的一个示例性方面。计算机系统5可包括,但不限于,个人计算机、笔记本、平板电 脑、智能电话、网络服务器、路由器或其他类型的处理设备。如示出的,计算机系统5可包括 由系统总线10连接的一个或多个硬件处理器15、存储器20、一个或多个硬盘驱动(多个硬盘 驱动)30、光驱动(多个光驱动)35、串行端口(多个端口)40、图形卡45、音频卡50和网络卡 (多个卡)55。系统总线10可以是包括使用各种已知总线架构中的任一种的存储器总线或存 储控制器、外围总线以及本地总线的几类总线结构中的任一种。处理器15可包括一个或多 个英特尔?芯部2四线组2.33GHz处理器或其他类型的微处理器。
[0077]系统存储器20可包括只读存储器(R0M)21和随机存取存储器(RAM)23。存储器20可 实现为DRAM(动态RAM)、EPROM、EEPR0M、快闪或其他类型的存储器结构。ROM 21存储基本输 入/输出系统22(BIOS),该输入/输出系统包含基本例程,该基本例程诸如在启动过程中,帮 助将信息在计算机系统5的模块之间转移。RAM 23存储负责程序的管理和协调以及计算机 系统5中的硬件资源的分配和共享的操作系统24(0S),诸如"Windows?7 Professional或 其他类型的操作系统。存储器20也存储应用和程序25。存储器20也存储由程序25使用的各 种运行数据26。
[0078] 计算机系统5可进一步包括诸如SATA HDD的硬盘驱动(多个驱动)30,以及用于从 诸如⑶-R0M、DVD-R0M或其他光介质的可移除光盘读取或写入至可移除光盘的光盘驱动(多 个驱动)35。驱动器30和35及其相关联计算机可读介质提供实现本文公开的算法和方法的 计算机可读指令、数据结构、应用和程序模块/子例程的非易失性存储。尽管示例性计算机 系统5采用磁盘和光盘,但是本领域技术人员应理解,可存储由计算机系统5可访问的数据 的其他类型的计算机可读介质,诸如,磁带盒、闪存卡、数字视频磁盘、RAM、ROM、EPR0M以及 其他类型的存储器也可用在计算机系统5的可选方面中。
[0079]计算机系统5进一步包括多个串行端口40,诸如通用串行总线(USB),用于连接(多 个)数据输入设备75,诸如键盘、鼠标、触摸板及其他。串行端口 40也可用于连接(多个)数据 输出设备80(诸如打印机、扫描仪及其他)以及(多个)其他外围设备85(诸如外部数据存储 设备等)。系统5也可包括:用于与显示器60或诸如触摸屏显示器的其他视频再生设备交接 的图形卡45(诸如nVidia? GeForee?GT 240M或其他视频卡)。系统5也可包括用于经由 内部或外部扬声器65再生声音的音频卡50。此外,系统5可包括:用于将计算机系统5连接至 诸如因特网的网络70的(多个)网络卡55(诸如以太网、Wi-Fi、GSM、蓝牙或其他有线、无线或 蜂窝网络接口)。
[0080]在各个方面中,本文描述的系统和方法可在硬件、软件、固件或其任意组合中实 现。如果在软件中实现,则该方法可存储作为非易失性计算机可读介质上的一个或多个指 令或代码。计算机可读介质包括数据存储器。通过举例而非限制性的方式,这种计算机可读 介质可包括:可用于以指令或数据结构的形式携带或存储期望程序代码并且可由通用计算 机的处理器访问的RAM、R0M、EEPR0M、CD-R0M、闪存或其他类型的电存储介质、磁存储介质或 光存储介质或任意其他介质。
[0081] 为了清晰起见,本文中并未公开该方面的所有常规特征。应理解,在开发本公开的 任意实际执行过程时,必须做出很多特定于执行过程的决定,以便实现开发者的特定目标, 并且这些特定目标将根据不同执行过程和不同开发者而改变。应理解,这种开发努力可能 是复杂且耗时的,但是然而,它是用于了解本公开的益处的本领域普通技术人员的工程师 的常规任务。
[0082] 此外,应理解,本文使用的措辞或专业词汇用于描述并非限制的目的,使得本说明 书的专业词汇或措辞由本领域技术人员结合相关领域(多个领域)的技术人员的知识,根据 本文呈现的教导和引导来解译。此外,并非旨在将说明书或权利要求中的任何术语归因于 不常见或特殊的含义,除非明确如此阐述。
[0083]本文公开的各个方面包括与本文中经由说明指出的已知模块的现在和将来的已 知等同物。此外,尽管已经示出和描述方面和应用,但是对于了解本公开的益处的本领域技 术人员来说,显而易见的是,在不偏离本文公开的概念的情况下,比以上提及的更多变形是 可能的。
【主权项】
1. 一种动态生成用于应用的用户表单界面的方法,所述方法包括: 访问关于被请求的用户表单界面的对象元数据; 基于被访问的所述对象元数据从数据库加载用于所述用户表单界面的逻辑描述,其 中,所述逻辑描述至少包括用于所述用户表单界面的表单元素和指令的声明; 从所述数据库检索关于所述被访问的对象元数据的功能选项,并且基于所述功能选项 确定对所述用户表单界面进行的至少一个其他改变的需求; 检索对于所述用户表单界面的用户有效的访问权限; 激活包含格式化规则的表单引擎,所述格式化规则适于基于预定标准来组织所述表单 元素; 由所述表单引擎基于所述逻辑描述、所述功能选项、对于所述用户有效的所述访问权 限和用户设定而自动生成用于所述用户表单界面的视觉描述数据,所述视觉描述数据是非 特定于设备的;以及 基于客户端设备的显示设定而向定制所述用户表单界面的所述客户端设备提供所述 视觉描述数据。2. 根据权利要求1所述的方法,其中,所述预定标准包括逻辑、工效学、美学以及商业标 准的集合。3. 根据权利要求1所述的方法,其中,所述客户端设备的显示设定包括如下至少一个: 所述客户端设备的屏幕的尺寸、所述客户端设备的所述屏幕的指定分辨率、所述客户端设 备的所述屏幕的指定字体、所述客户端设备的操作系统以及所述客户端设备的浏览器。4. 根据权利要求1所述的方法,进一步包括:如果所述用户不适当地将数据输入所述表 单元素中的至少一个,则在与邻近于所述表单元素的窗口中的所述用户表单界面的特定元 素相关的所述客户端设备上显示信息消息。5. 根据权利要求1所述的方法,其中,用于所述用户表单界面的所述逻辑描述进一步包 括:关于表单元素的尺寸和顺序中的一个或多个的信息。6. 根据权利要求1所述的方法,其中,所述逻辑描述进一步包括:至少一个所述表单元 素或所述表单元素的组群,以及应用于多个相关表单的一个或多个全局指令。7. 根据权利要求1所述的方法,其中,所述逻辑描述进一步包括一个或多个指令,所述 一个或多个指令适用于利用所述检索的表单数据打开新的表单用户界面。8. -种用于动态生成应用表单的服务器系统,所述系统包括: 数据库,配置为存储用于至少一个用户表单界面的逻辑描述,其中,所述逻辑描述至少 包括用于所述用户表单界面的表单元素和指令的声明; 网络界面,配置为: 访问关于被请求的用户表单界面的对象元数据, 基于被访问的所述对象元数据从所述数据库加载用于所述用户表单界面的至少一个 逻辑描述,其中,所述逻辑描述至少包括用于所述用户表单界面的表单元素和指令的声明, 从所述数据库加载关于所述被访问的对象元数据的功能选项,并且基于所述功能选项 确定对所述用户表单界面进行的至少一个其他改变的需求,以及 检索对于所述用户表单界面的用户有效的访问权限;以及 表单引擎格式化规则,适于基于预定标准来组织所述表单元素,并且基于所述逻辑描 述、所述功能选项、对于所述用户有效的所述访问权限和用户设定而自动生成用于所述用 户表单界面的视觉描述数据,所述视觉描述数据是非特定于设备的, 其中,所述网络界面被配置为基于客户端设备的显示设定而向定制所述用户表单界面 的所述客户端设备提供所述视觉描述数据。9. 根据权利要求8所述的服务器系统,其中,所述预定标准包括逻辑、工效学、美学以及 商业标准的集合。10. 根据权利要求8所述的服务器系统,其中,所述客户端设备的显示设定包括如下至 少一个:所述客户端设备的屏幕的尺寸、所述客户端设备的所述屏幕的指定分辨率、所述客 户端设备的所述屏幕的指定字体、所述客户端设备的操作系统以及所述客户端设备的浏览 器。11. 根据权利要求8所述的服务器系统,其中,所述网络界面进一步被配置为:如果所述 用户不适当地将数据输入所述表单元素中的至少一个,则在与邻近于所述表单元素的窗口 中的所述用户表单界面的特定元素相关的所述客户端设备上显示信息消息。12. 根据权利要求8所述的服务器系统,其中,用于所述用户表单界面的所述逻辑描述 进一步包括:关于表单元素的尺寸和顺序中的一个或多个的信息。13. 根据权利要求8所述的服务器系统,其中,所述逻辑描述进一步包括:一个或多个所 述表单元素的组群。14. 根据权利要求8所述的服务器系统,其中,所述逻辑描述进一步包括:一个或多个全 局指令以及一个或多个指令中的至少一个,所述一个或多个全局指令应用于多个相关表 单,所述一个或多个指令适用于利用所述检索的表单数据打开新的表单用户界面。15. -种存储在非易失性计算机可读存储介质上的计算机程序产品,所述计算机程序 产品包括用于动态生成应用表单的计算机可执行指令,所述指令包括用于如下项的指令: 访问关于被请求的用户表单界面的对象元数据; 基于被访问的所述对象元数据从数据库加载用于所述用户表单界面的逻辑描述,其 中,所述逻辑描述至少包括用于所述用户表单界面的表单元素和指令的声明; 从所述数据库检索关于所述被访问的对象元数据的功能选项,并且基于所述功能选项 确定对所述用户表单界面进行的至少一个其他改变的需求; 检索对于所述用户表单界面的用户有效的访问权限; 激活包含格式化规则的表单引擎,所述格式化规则适于基于预定标准来组织所述表单 元素; 由所述表单引擎基于所述逻辑描述、所述功能选项、对于所述用户有效的所述访问权 限和用户设定而自动生成用于所述用户表单界面的视觉描述数据,所述视觉描述数据是非 特定于设备的;以及 基于客户端设备的显示设定而向定制所述用户表单界面的所述客户端设备提供所述 视觉描述数据。16. 根据权利要求15所述的计算机程序产品,其中,所述预定标准包括逻辑、工效学、美 学以及商业标准的集合。17. 根据权利要求15所述的计算机程序产品,其中,所述客户端设备的显示设定包括如 下至少一个:所述客户端设备的屏幕的尺寸、所述客户端设备的所述屏幕的指定分辨率、所 述客户端设备的所述屏幕的指定字体、所述客户端设备的操作系统以及所述客户端设备的 浏览器。18. 根据权利要求15所述的计算机程序产品,进一步包括用于如下项的指令:如果所述 用户不适当地将数据输入所述表单元素中的至少一个,则在与邻近于所述表单元素的窗口 中的所述用户表单界面的特定元素相关的所述客户端设备上显示信息消息。19. 根据权利要求15所述的计算机程序产品,其中,用于所述用户表单界面的所述逻辑 描述进一步包括:关于表单元素的尺寸和顺序中的一个或多个的信息。20. 根据权利要求15所述的计算机程序产品,其中,所述逻辑描述进一步包括:所述表 单元素的一个或多个群组以及应用于多个相关表单的一个或多个全局指令中的至少一个。
【文档编号】G06F17/30GK106095767SQ201610282352
【公开日】2016年11月9日
【申请日】2016年4月29日 公开号201610282352.X, CN 106095767 A, CN 106095767A, CN 201610282352, CN-A-106095767, CN106095767 A, CN106095767A, CN201610282352, CN201610282352.X
【发明人】奥迪·哈利科维奇·德鲁特, 谢尔盖·杰奥尔杰维奇·努拉利耶夫, 维塔利·亚历山德罗维奇·菲利波夫, 德米特里·利沃维奇·扎列茨基
【申请人】1C有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1