CN108369481B - 用于创建可配置表单,配置表单以及用于表单流和表单相关的方法和系统 - Google Patents
用于创建可配置表单,配置表单以及用于表单流和表单相关的方法和系统 Download PDFInfo
- Publication number
- CN108369481B CN108369481B CN201680057310.4A CN201680057310A CN108369481B CN 108369481 B CN108369481 B CN 108369481B CN 201680057310 A CN201680057310 A CN 201680057310A CN 108369481 B CN108369481 B CN 108369481B
- Authority
- CN
- China
- Prior art keywords
- file
- flow
- mandatory
- item
- executable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 224
- 230000009471 action Effects 0.000 claims abstract description 21
- 230000008569 process Effects 0.000 claims description 59
- 238000010586 diagram Methods 0.000 claims description 30
- 238000009877 rendering Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 9
- 239000003550 marker Substances 0.000 claims description 8
- 230000000977 initiatory effect Effects 0.000 claims 2
- 101000857680 Xenopus laevis Runt-related transcription factor 1 Proteins 0.000 description 33
- 238000013461 design Methods 0.000 description 28
- 238000012986 modification Methods 0.000 description 20
- 230000004048 modification Effects 0.000 description 20
- 239000000047 product Substances 0.000 description 15
- 230000003993 interaction Effects 0.000 description 12
- 230000000875 corresponding effect Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 7
- 238000007792 addition Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 239000012634 fragment Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000000969 carrier Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- -1 container ships Substances 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 235000019580 granularity Nutrition 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/174—Form filling; Merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
- Compositions Of Oxide Ceramics (AREA)
- Soft Magnetic Materials (AREA)
Abstract
本公开涉及创建可配置表单并用于配置表单,以及创建可配置的流表单流程文件并配置流表单流程文件,并且用于可以从存储在数据存储库中的表单流流程文件集合自动发现对一类记录执行的一些或全部可用动作。建立可配置表单可以包括接收配置有可接受性过滤器的表单文件和被配置为打开或关闭的至少一个非强制性表单项,并且在适用性过滤器中,建立至少一个环境,在该至少一个环境下,非强制性表单项要被应用于表单文件中,以及生成可配置表单文件。在图形用户界面上,连同强制性表单项,还可以取决于适用性过滤器确定的已建立环境来描述非强制性表单项。公开了搜索列表,其可以在没有代码的情况下挑选应使用哪些数据源。
Description
相关申请的交叉引用
本申请要求于2015年7月31日提交的澳大利亚临时申请No 2015903059的优先权,其内容以引用方式并入本文中。
本申请还要求于2015年8月31日提交的澳大利亚临时申请No 2015903534的优先权,其内容以引用方式并入本文中。
本申请还要求于2016年5月6日提交的澳大利亚临时申请No 2016901683的优先权,其内容以引用方式并入本文中。
技术领域
公开了用于创建可配置表单并用于配置表单以及创建可配置流表单流程文件和配置流表单流程文件的方法和系统。还公开了用于表单流和表单项、记录和/或表单相关的方法和系统。
背景技术
包括可执行表单项的表单可以通过多种方式构建。传统上,它们是由业务分析师或设计师设计的,然后由程序员编码。特别是在需要用户交互和输入的系统和方法的情况下,可执行内容,特别是表单项,按次序、顺序或流进行显示。可执行表单的流通常由供应者或供应商预编程。为了满足客户的需求和要求,供应商或供应者经常进行定制修改,因为他们通常需要对基础系统编程代码进行一些修改。虽然一些系统允许用户修改或创建内容,但这些更改通常限于对内容的显示方式(例如内容文本和位置)进行改变。
大多数内容,特别是表单,由业务分析师或设计师设计,然后由程序员编码。特别是在需要用户交互和输入的系统和方法的情况下,所显示的内容以及内容的顺序或流程通常由供应者或供应商预编程。为了满足客户的需求和要求,供应商或供应者经常进行定制修改,因为他们通常需要对基础系统编程代码进行一些修改。此外,由于系统通常是专有的,所以客户或用户通常被阻止修改内容或流,除了一些基本的和通常粗略的设置之外。
虽然一些系统允许用户修改或创建内容,但这些通常限于改变内容的显示方式,诸如内容文本和位置。此外,虽然内容可以由用户轻松定制,但内容流通常完全无法定制。也就是说,先前系统被预编程以按照特定顺序或次序显示内容。该顺序可以基于用户的输入而改变,但这些改变的顺序也预编程到整个系统中。
预编程系统的使用需要针对个人用户和客户定制,这不仅限制了系统的范围,而且限制了其使用寿命。例如,当法规改变时,内容和特定形式可能需要更新。当需要系统更新时,客户或用户必须向供应商请求或接收系统更新。系统更新需要时间来创建,并且还必须定制以在现有的已定制系统中工作。更新和定制的工作导致系统更新前的漫长延迟。由于定制这类系统的困难和较长的更新过程,用户或客户成本可能相对高于系统的基本系统价格,这取决于所需的定制量。
企业型软件系统是用于满足组织需要而不是个人的为特定目的而设计软件。例如,企业型软件系统可以使用符合当前法规或标准的表单。表单可以包括一个或多个表单项,它是产品内的允许数据输入和数据管理的显示屏幕项。当这些法规或标准更新后,当前表单通常会变得过时,这需要创建表单的新版本或创建其它表单以填补现有表单与新法规之间的监管差距。或者,可以创建表单的更新的新版本,但它必须被编程为通常以平台为基础跨多个平台存在并运行。因此,更新表单的时间和费用会增加。
发明内容
在特定的行业,例如货运业,有许多利用表单的企业。大多数人都熟悉国际货轮运输公司,诸如集装箱船、航空货运和火车运输。但是,在货物抵达集装箱船或航空货运运输公司之前以及货物抵达港口或码头之后,有一些企业将货物搬运到国际运输公司或从国际运输公司搬运。具体而言,有些货运代理实际上并没有搬运货物,而是利用地面运输公司的服务(往往是许多运输公司)来搬运货物。货运代理可能需要可执行表单,这些可执行表单被标准化以供其地面运输公司使用。通过这种方式,如果货运代理能够向其运输公司提供表单将是有益的,该表单是可配置的但可以为货运代理获取必要信息(在可执行表单项中)。
其它行业也是如此,包括任何类型的可执行内容传递者。例如,利用独立销售顾问(例如保险公司)的行业可能需要标准化但可配置的表单。另一示例是银行和独立贷款经纪人。这些行业中的每一个都有他们希望在获取基本标准信息时可配置的表单。例如,如果贷款经纪人只从事商业房地产工作,那么银行的任何可执行表单(包括关于住宅房地产的查询(可执行表单项))都不会与该特定经纪人相关。在这种情况下,允许经纪人消除与住宅借款人有关的可执行表单中的表单项或添加其它表单项可能是有益的。此外,参考表单流的顺序或次序,设计者可能希望提供可在其中配置流表单的环境(circumstance)。此外,如果格式也被标准化,则这可能是有益的。通过这种方式,数据可以更容易地从表单中提取出来,因此对于企业或其它实体更为有用。
公开了计算设备的图形用户界面的方法和系统,包括:描绘表示包括第一表单项和第二表单项的表单项的标记的布置,所述第一表单项是强制性表单项,由强制性项图标对此进行指示,所述第二表单项是非强制性项,由非强制项图标对此进行指示,由此能够将所述非强制性项图标选择为关闭或打开所述非强制性表单项,使得所述非强制性表单项能够被包括在可执行表单中或不被包括在可执行表单中;以及表示可执行表单的标记的布置,由此显示与所述强制性表单项有关的标记,并且如果所述非强制性项图标被选择为打开,则显示与所述非强制性表单有关的标记。还公开了图形用户界面的方法和系统,其包括表示可执行表单的标记的布置,由此显示与所述强制性表单项有关的标记,并且如果所述非强制性项图标被选择为关闭,则不显示与所述非强制性表单有关的标记。
还公开了用于配置包括表单项的表单文件的方法和系统。表单文件配置有可接受性过滤器,其用于在表单文件中确立哪些非强制性表单项可配置,即打开或关闭。适用性过滤器建立了在其下非强制性表单项将应用于可执行表单文件中的环境。
在其下非强制性表单项将应用于可执行表单文件中的环境可以包括由设计者或开发者提供的对可以在其下做出特定配置的环境进行限制的设置。例如,如果开发者希望只有特定用户可以启用可执行表单的表单项的时区输入信息,则环境将包括特定用户。另一方面,如果开发商希望只有特定公司部门能够启用表单的货币汇率信息表单项,则环境将包括公司部门。通过非强制性表单项的状态,即根据适用性过滤器中列出的情况来进行打开或关闭,可以生成已修改的可执行表单文件。
还公开了用于配置表单流流程文件的方法和系统。表单流流程文件提供了多个表单的次序、顺序或流,并且可以经由至少一个路径提供对表单文件的访问。表单流流程文件可以配置有可接受性过滤器,用于在表单流流程文件中建立被配置为打开或关闭的非强制性路径。在适用性过滤器中,建立可以配置非强制性路径的环境,可以生成已修改的表单文件流程文件。在下面详细描述表单流程文件。
适用性过滤器可以为默认、公司、分部、部门、客户、位置、表单标识符和表单流标识符中的至少一个提供过滤器,但不限于此。不同的参数在本讨论的范围内。适用性过滤器可以由可执行表单文件或表单流流程文件的标头提供。此外,可以以任何合适的方式提供适用性过滤器,以便它提供用于确定可以选择打开或关闭非强制性表单项的环境。
所公开的用于创建或建立可配置表单的系统和方法可以包括接收配置有可接受性过滤器的表单文件和被配置为打开或关闭的至少一个非强制性表单项,并且在适用性过滤器中建立至少一个环境,在该至少一个环境下,非强制性表单项要被应用于表单文件中,以及生成可配置表单文件。
所公开的用于配置表单的方法和系统可以包括接收表单文件,该表单文件包括可配置为打开或关闭的至少一个非强制性表单项,该可执行表单文件具有适用性过滤器以确定允许将非强制性表单项选择为打开或是关闭。取决于适用性过滤器允许将一个或多个非强制性表单项确立为打开或关闭,可以建立包括至少一个非强制性表单项的已修改的表单文件。
所公开的用于创建或建立可配置表单流流程文件的方法和系统可以包括接收表单流流程文件,该表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,该表单流流程文件配置有可接受性过滤器和被配置为打开或关闭的至少一个非强制性路径,并且在适用性过滤器中建立至少一个环境,在该至少一个环境下,至少一个非强制性路径要被应用于表单文件中,以及生成可配置表单流流程文件。
公开了用于修改表单流流程文件的方法和系统,该方法和系统可以包括接收表单流流程文件,该表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,该表单流流程文件配置有可接受性过滤器和配置为打开或关闭的至少一个非强制性路径。取决于适用性过滤器是否允许将非强制性路径选择为打开或关闭,选择是否将非强制性路径确立为打开或关闭,以及在确立至少一个非强制性路径的情况下,生成已修改的表单流流程文件。
取决于如何根据其数据类型和/或其控件类型来定义表单,可以在单个交易或流程中使用许多不同的表单。例如,货运中使用的表单可以涉及会计、佣金、集装箱场、转运、净需求计算、组织、评级、中转仓库等的不同方面。这些表单可以通过作为表单流流程文件存储的表单流来连接,该表单流提供了将用户从表单流流程中的一个表单引导到另一表单的逻辑条件。也就是说,表单流定义了访问一个或多个相关表单的逻辑路径。下面详细描述表单和表单流的开发。
当表单流流程文件可以访问表单、表单文件或记录时,可以在满足表单流的条件时检索表单。在建立表单的过程中,同时建立表单流可能是有益的。另一方面,一旦建立了特定类型的表单流,其可以是可重复使用的。如果已经存储表单流流程文件,则表单设计者可以访问它以使用其它表单创建表单流流程。
在下面讨论的用于设计和建立表单和表单流的基础产品中,可以提供预定的表单项。各行业对表单都有典型要求,例如,保险业务可能与汽车经销商有不同的要求。因此,表单项可以根据表单设计师的特定行业量身定做。在目前描述的产品中,直到点击表单项并将其拖动到表单设计器屏幕,表单项的可执行特征才被硬编码。通过这种方式,可执行代码/控件被分开存储并且可以与不可执行表单项标记分开更新。
可以从列表中点击表单项并拖动到设计器屏幕上以创建可能具有特定的数据类型的表单。当可执行时,表单项可能具有特定类型的可执行特征,例如通过特定控件类型的控件来提供。当用户希望重新使用在系统上生成的表单流流程文件或者作为产品提供的模板而没有当前描述的方法和系统的益处时,用户需要通过名称来搜索存储的表单流流程文件,以希望找到适用于受关注的表单文件的表单流流程文件。用户很可能不会找到用于所需目的的表单流流程文件,因为数据类型代码和控件类型代码不是人类可读的并且是嵌入的。如果有可能,无论如何,用户会花很多时间这样做。这里提出的问题是从基础的基于计算机的产品本身达到顶点的问题。该产品是基于计算机的,因此所公开的用于提供系统问题解决方案的系统和方法是基于计算机的解决方案。所提供的解决方案是,代替用户搜索存储表单流流程文件的机器可读代码以确定它们表示的哪些流程可适用于特定记录、表单或表单项,当前描述的方法和系统提供了基于所识别的表单项来经由用户界面使表单流可用于用户。所识别的表单项可以仅包括数据类型,特别是如果它尚未成为表单的一部分。如果已经用下面描述的控件进行了硬编码,并且是表单的一部分,则它可能包括控件类型。因此,存在对可执行内容和内容流创建系统和方法的需求,并且更具体地是可执行表单和表单流创建系统和方法,其可以允许用户容易地将表单流流程应用于表单或表单项。
作为本文使用的术语的背景,可执行意味着用户或远程输入的输入或交互(拉或推)都可能导致输出发生。可执行内容的示例是表示表单逻辑的可执行表单项。例如,当表单项字段被用户或通过其它手段填充时,数据作为输出被传送给服务器。其它示例可以包括选择选项,其中当选择时,将诸如用户选择之类的输出发送给服务器。可能会发生多次执行。例如,可以将数据保存到服务器,并且可以显示另一可执行表单项或传送通过后续内容的路径。作为执行结果发生的特定输出可以包括任何类型的输出。例如,输入或与可执行内容的交互可能导致生成或显示不可执行的内容,诸如警报。
在创建可执行表单期间,需要能够以表单在各种表单因素上会出现的方式来查看该表单。此外,需要允许用户按顺序或表单流来布置多个表单。显示器上的表单流可以类似于流程图,使得当表单被使用时,它们可以以特定顺序执行,这取决于对表单流的表单的表单项目的响应以及基于其它外部因素(诸如运营所在国,或一年中的月份等)。通过这种方式,用户可以构建可重复使用的表单并轻易地更新表单,并在一个或多个过程中使用它们。在表示表单项的标记与可执行表单项之间进行区分。标记可供用户选择以成为表单中的可执行表单项,如下文涉及基础方法和系统的部分中所讨论的。类似地,流控件标记可供用户选择以成为表单流流程内的流控件。
公开了用于包括显示设备、处理器和存储器的设计器设备的系统和方法,将表单文件与表单流流程文件相关的方法,其中,所述表单文件包括数据类型或控件类型中的至少一个,并存储在表单文件存储器中,且多个表单流流程文件包括控件类型,存储在表单流流程文件存储器中,单个表单流流程文件包括对一个或多个表单文件的引用,所述方法包括:在所述显示设备上显示至少一个表单文件的表示,并且响应于经由所述显示设备的引用表单文件的用户输入,将所述表单文件与存储在表单流流程文件存储器中的一个或多个表单流流程文件相关,所述相关至少部分地基于所述表单文件的数据类型或控件类型。此外,响应于先前的相关步骤,启动对表单流流程文件的一个或多个表示的列表的描述,所述表单流流程文件包括对所述表单文件的引用,以及显示与所述表单文件相关的表单流流程文件的一个或多个表示的列表。
公开了用于在图形用户界面上渲染记录的表示的计算机实现的方法和系统,该表单或记录具有可对其执行特定动作的类型,然后可以从存储在数据存储库中的表单流流程文件集合自动发现对该类型的记录或对单个记录执行的全部可用动作。通过这种方式,所公开的方法和系统可以利用搜索列表,其可以在没有代码的情况下挑选应使用哪些数据源。所公开的方法和系统用于将至少一个表单流与表单流相关,该至少一个表单流被配置为包括具有可对其执行特定动作的类型的表单或记录,然后在图形用户界面上渲染表示来自该表单流集合的表单流的至少一个图标以能够供用户选择,该至少一个表单流被配置为包括具有可对其执行特定动作的类型的记录,并且在接收到选择表单流图标的指令之后,将记录配置为所选表单流的可执行元素,以便可以在表单或记录上执行特定动作。
还公开了一种包括显示设备、处理器和存储器的计算机实现的系统的方法,该方法访问存储在存储器中的表单流流程文件,该方法包括在显示器上显示第一表单和第二表单的表示,该第一表单和第二表单配置有数据类型和控件类型中的至少一个,以及在显示屏幕上提供表示可执行流控件的流控件标记。该方法还包括接收对选择所述流控件标记的第一流控件标记的指令,结合所显示的第一表单和第二表单调用选择的流控件,并在所述显示屏幕或另一显示屏幕上显示第一表单流流程图,所述第一表单流流程图包括结合所调用的所选择的流控件对所述第一表单和所述第二表单的表示的布置,然后保存第一表单流流程文件,所述第一表单流流程文件包括对所述第一表单和所述第二表单的数据类型或控件类型的指示以及对包括与其它表单流流程文件一起存储的第一表单流流程文件的所选择的流控件的指示。还公开了随后显示与所述第一表单相关的标记,通过所述第一表单的数据类型和控件类型中的至少一个与存储在适用于所述第一表单的存储器中的表单流流程文件相关,显示至少一个表单流流程文件的表示,以供用户选择,以及接收对选择表单流流程文件的指令。
还公开了一种包括显示设备、处理器和存储器的计算机实现的系统的方法,所述方法用于生成表单流流程文件,所述表单流流程文件在至少两个表单之间提供控制逻辑,每个表单具有数据类型和控件类型中的至少一个,所述方法包括:将表示流控件的多个流标记和表示至少一个表单的标记发送给设计器设备,从所述设计器设备接收包括对至少一个流控件标记的选择的指令,在结合所述至少一个表单的图形表示来选择所述流控件标记之后,调用流控件以生成表示表单流流程文件的表单流流程图,所述表单流流程文件包括所述至少一个表单和至少一个调用的流控件的布置,以及存储所述表单流流程文件,使得当在所述设计器设备上显示所述至少一个表单的表示时所述表单流流程文件是可访问的。
附图说明
图1描绘了例如可以在图形用户界面上提供的示例可执行表单布局;
图2描述了图形用户界面,其中外部虚线内的字段已被选择,即最外面的面板;
图3进一步示出了强制性表单项和非强制性表单项;
图4描绘了与图1、图2和图3不同的布置的表单文件;
图5示出了在运输公司业务中可以选择的非强制性表单项的示例;
图6描绘了可以表示包括生成表单流流程文件中的强制性和非强制性路径的表单流流程文件的流程图;
图7A和图7B描绘了访问表单流的列表视图和网格视图;
图7C描绘了根据所公开的方法和系统生成表单流流程文件,存储它然后重新使用它的流程图;
图7D是示例内容和内容流系统;
图8是另一示例内容和内容流系统;
图9是表单创建过程的示例;
图10是插入控制代码的示例表单创建界面;
图11是利用表单创建特征的示例表单创建界面;
图12是示例表单创建过程;
图13是示例表单流创建界面;
图14是使用表单流创建特征的示例表单流创建过程的示例;
图15是包括示例表单和表单过程的示例设计服务器;以及
图16是所公开的系统和方法的使用示例。
图17示出了表单设计器表面的示例。
图18示出了表单流设计器表面的示例。
图19示出了配置模式下的表单流。
图20演示了可以如何配置搜索控件。
具体实施方式
图1描绘了例如可以在图形用户界面上提供的示例可执行表单布局。下面是可执行内容和可执行内容流创建的系统和方法的详细描述,其描述了构建可执行表单文件和表单流流程文件的方式。虽然可执行表单文件和表单流流程文件的术语可以在下面的详细描述中被引用,但是下面的描述并不意图将构建可执行表单或流表单流程文件的方式限制为应用于目前公开的系统和方法。
图1中描绘的示例表单布局可以在计算设备的图形用户界面上渲染。存储表单文件的位置可以是远程的或本地的。可以检索和显示表单文件,以便其示出图1、图2、图3或图4中的表单的不同部分或任何其它合适的方式。
图1中描绘了托运人部分1、收货人部分3、收货详情5、投递详情7、空白部分9、服务级别部分11和包裹部分13。这些示例部分可以是可执行表单,其由虚线圈出以指示它们包括一个或多个表单项。在这个示例中,外部虚线15指示这些部分表示可执行表单。
虚线表示特定的可执行表单配置。可以有更多或更少的虚线。虚线或任何其它代表性的边界或分区描述可以位于用户确定它们应该在的任何地方。虚线的位置不一定与本讨论的范围相关。
图2描绘了图形用户界面,其中外部虚线15内的区域被选择,即最外面的面板。示出了托运人部分1、收货人部分3、收货详情5、投递详情7。图标17描绘了强制性表单项,而图标18描绘了非强制性字段项。强制性和非强制性的指示可以采取任何形式。非强制性的也被称为可选的。
在图2中,取决于适用性过滤器,在图形用户界面上展示被描绘为非强制性的项、收货详情5、递送详情7。下面将更详细地讨论适用性过滤器。在图2中,还有可用的或可选的表单项21。可选的表单项21也是非强制性的,并且可以在图形用户界面上提供,这取决于适用性过滤器是否允许将非强制性表单项选择为打开或是关闭。图形用户界面描述可选表单项21和非强制表单项5和7的方式是设计选择的问题,任何合适的非强制性表单项的布置都在本讨论的范围内。非强制性表单项不需要划分为可选表单项。
例如在空白部分9处,可以将一个或多个可选表单项21插入到表单中。如下面详细讨论的,可以将标记从列表21拖动到表示视图中。例如,当点击、拖动或放置列表21的项的标记时,系统可以插入使表单项可执行的代码。虽然目前公开的系统和方法不一定涉及在被选择时插入可执行代码的特征,但是这类系统和方法在本讨论的范围内。除了点击、拖动或放置之外的其它动作可能导致代码被链接或绑定到选定的表单项。
参考图3,可以在图形用户界面上渲染表单的一部分,包括表单项5的面板。渲染的设计特征可以是用户或设计者选择的。在这个示例中并如图2所示,设计者显示器上的表单项还包括放置的设计选择。向用户提供设计选择的任何方式都在本讨论范围之内。
图3还示出了强制性表单项21和非强制性表单项23和25。取决于适用性过滤器,在图形用户界面上展示被描绘为非强制性的项(收货准备23和收货关闭25)。还示出了取决于适用性过滤器在图形用户界面上展示的可用字段27。除了打开/关闭非强制性字段之外,如果所有表单项都可以在可执行表单中重新定位,则将是有益的。
图4描绘了与图1、图2和图3不同的布置的表单文件。第31栏中描绘了诸如图2的5和7的强制性表单项或图3的表单项21。第33栏中描绘了诸如图2的1和3的非强制性表单项或图3的表单项23和25。第35栏中描绘了诸如图2的列表21中的表单项之类的可选的(其也是非强制性的)表单项以及图3的列表27中的表单项。
图4还描绘了表单文件的标头37。标头通常指的是通常用于解析的补充数据,其放置在被存储或传输的数据块的开始处。在数据传输中,标头后面的数据有时称为有效载荷或主体。标头37可以提供适用性过滤器以确定是否允许将非强制性表单项选择为打开或是关闭。在这个示例中,表单文件的标头可以包含默认设置、公司、客户、位置和特定表单文件标识符。表单文件标识符如下所述。
因此,例如,利用贷款经纪人的银行可以提供表单文件,并且基于使用表单的特定经纪人(被标识为所列出的公司),银行可以提供非强制性表单项和可选的(其也是非强制性的)表单项。标头可以提供实体或人员可以打开或关闭非强制性表单项的其他粒度。
图5示出了在运输公司业务中可以选择的非强制性表单项39的示例。非强制性表单项39a和39b示出呈现表单项的不同方式。如果一家公司只使用列出的两种类型,干货车41和平台卡车43,则它可以选择两个表单项以包括在他们的所配置的表单文件中。还可以呈现其它非强制性表单项。通过选择平台卡车43,可以呈现不同类型的平台卡车的列表45。此外,还可以呈现另一列表47。列表45和47可以提供非强制性表单项,从中选择要包括在他们的所配置的表单中的表单项等等。
用户可以是示例标头中描述的实体之一。在接收到可执行表单文件之后,例如在用户的计算机上,图4中示出为标头的适用性过滤器可以确定是否允许将非强制性表单项选择为打开或是关闭。在图5中,取决于适用性过滤器是否允许将非强制性表单项选择为打开或是关闭,在这种情况下,选择与车辆类型相关的表单项,可以选择是否将非强制性表单项确立为打开或关闭。在建立非强制性表单项的情况下,可以生成已修改或配置的可执行表单文件并保存以供使用和/或后续修改,该表单文件包括至少一个强制性表单项。
如上所述,可以使用相同的过程来配置表单流流程文件。只需配置一个表单文件,公开了用于配置表单流流程文件的方法和系统。图6描绘了可以表示表单流流程文件的流程图。如下面详细描述,可执行表单可以按照可以类似流程图的顺序或次序进行布置,并且可以作为表单流流程文件进行存储。在流程图中,顺序或次序中可能的路径可以用箭头指示。在这个示例中,有箭头a、b、c、d、e、f和g。如下所述,可以存储流表单流程文件。标识为公司、客户、位置或任何其它合适的名称的用户(例如在标头中)可以接收配置有可接受性过滤器的表单流流程文件。
简要转向图6,存在强制性和非强制性路径。在例如以下面详细描述的方式生成表单流流程文件时,表单设计者还可以在表单流流程文件中建立被配置为打开的强制性路径51和被配置为打开或关闭的非强制性路径53和/或55。示例强制性路径51是图6的路径a、b和c。非强制性路径53是图6的路径e和d。可选路径(其也是非强制性的)是图6的路径f和g。在适用性过滤器57中,设计者可以建立强制性路径51和非强制性路径53和/或55将应用于表单流流程文件中的情况。通过用户,在建立强制性55和非强制性路径53和/或55,并且建立适用性过滤器的情况下,可以生成已修改或配置的表单流流程文件并储存以供使用或稍后修改。
如下所述,以下面描述的方式构建可执行表单文件和表单流流程文件是有益的。如上所述,提供定制或配置由不同实体或人员使用的表单文件和表单流流程文件而不需要重新编码表单的能力也是有益的。可配置表单文件和表单流流程文件还可能包括不可执行的内容。任何可执行内容都在本讨论的范围之内。
存在对可执行内容和内容流创建系统和方法的需求,并且更具体地是可执行表单和表单流创建系统和方法,其可以允许用户容易地访问表单流流程和/或将表单流流程应用于表单或表单项。表单流流程文件可以由该系统的用户创建,或者可以作为产品中的模板提供。下面提供了基础系统和方法的详细描述。
公开了用于可以从存储在数据存储库中的表单流流程文件集合自动发现对某类型记录执行的一些或全部可用动作的计算机实现的方法和系统。通过这种方式,所公开的方法和系统可以利用搜索列表,其可以在没有代码的情况下挑选应使用哪些数据源。所公开的方法和系统用于将至少一个表单流与记录、表单或表单项相关,该至少一个表单流被配置为包括具有可对其执行特定动作的类型的表单或记录,并且在接收到选择表单流图标的指令之后,将记录配置为所选表单流的可执行元素,以便可以对记录、表单或表单项执行特定动作。
简要参考基础系统和方法,公开了允许用户访问表示可执行表单项但不可执行的标记,点击并将它们拖动到显示屏幕上的空间中,并构建可执行表单项的表单的方法和系统。当选择不可执行的表单项(例如,通过点击和拖动)时,插入控制代码,然后表单项变为可执行的。因为表单项在例如表单查看器中显示时变得可执行,所以用户将不需要考虑如何定义表单项发挥作用的方式。也就是说,在单个步骤中,用户将选择一个特定类型的表单项来构建表单,并且这个表单将立即可执行。所公开的方法和系统允许可执行表单项在用户构建表单时被布置和重新布置。然后,表单可以成为表单流即流程图的一部分,其指示诸如‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’等控件。
如上所述,表单流提供事件的次序。例如,表单流流程文件可能包括以下指令:示出表单1,示出表单2,运行规则,或自动跳转到示出表单5。用户可以定义所有这些过程步骤,因为这些是用户在出货记录上可能想要做的事情类型。备选地,表单流可以以模板形式提供给产品。无论如何,根据目前公开的流程和方法,流程表单自动出现,而不是手动查看它们直到搜索屏幕。
如上所述,表单的表单项包括数据类型和/或执行代码。当表单流具有特定类型的内容和/或与其关联的执行代码时,其可以自动成为表单项或表单的选项。具有其数据类型(内容)和/或执行代码的表单项或表单被映射到表单流。表单流动作的列表是动态的,因为当用户做出表单流并存储它们时,列表会更改。
参考图7A,表单项、表单或记录可以以任何方式呈现。也就是说,表单项、表单或记录被表示和渲染在图形用户界面上。如图7A中所示,表单项或表单在列表10中被描绘为图标。这些表单项、表单或记录是可以在其上执行特定动作的类型。也就是说,如果执行代码与它们关联,则它们是可执行的。通过将光标移到列表上,或者一些其它方法(诸如右击列表中的项),用户可以查看表示表单流文件的菜单项12。也就是说,表单流文件通过图标渲染在图形用户界面上。渲染的表单流流程文件被配置为包括具有可以对其执行特定动作的类型的记录、表单或表单项。
与可对其执行特定动作的内容/记录的类型相关的表单流不是被硬编码,而是通过图标描绘并渲染,其中该列表可以动态地构建。这个过程不仅在构建访问表单项的表单流中节省了时间,还为用户提供了对可用于产品使用的可能性的更好理解。用户不需要知道可用的不同类型的流表单的益处,但是当给出使用它们的选项时,他们对使用哪一个流表单的判断可能会改变,并且可能改进,使得由用户生成的最终产品会比较好。当用户选择任何合适的特定表单流时,他们可能会看到类似于图13和图14的屏幕,其示出了表单流流程图和表单流流程图中的表单项。可能会为他们提供进行该特定表单流或者查看另一表单流的选项。可以为用户给予机会以进一步定制此时的流表单并将其保存以便将其添加到表单流存储器,如图15中所示。
在不同的视图(网格视图)中,通过右击可以为用户提供表单流。这里,在可展开的网格上示出两个不同的表单项20和22。当网格的项20被展开时,与列表视图类似,两个可选表单流是可见的。对于表单项22,有三个表单流。
图7C描绘了根据所公开的方法和系统生成表单流流程文件,存储它表单流流程文件,然后重新使用表单流流程文件的流程图。如上所述,可以显示第一表单40和第二表单42。可以通过从例如流表单控件标记列表中选择44流表单控件标记来形成表单流流程文件,使得第一表单和第二表单与表单流控件46相关。表单流流程文件然后可以保存在表单流流程文件存储器50中,被保存48在与第一表单和第二表单相关并且包括对第一表单和/或第二表单的数据类型或控件类型的指示的表单流流程文件存储器50中。
仍然参考图7C,可以在与其曾被显示40时的时间不同的时间显示52第一表单。当用户希望将表单流应用于表单时,可以根据显示的第一表单54的数据类型和/或控件类型确定表单流。可以从表单流流程文件存储器50中检索包括匹配表单项56的那些表单。可以通过默认设置来显示某些表单。也就是说,在表单流是有条件的情况下,只有在记录/表单匹配条件的情况下才可以显示表单流。例如,假设网格中列出了5个任务:3个空运货件和2个海运货件。对于所有5条记录,可能会示出2个表单流,然后可能会有某些表单流只示出空运货件,某些表单流只示出海运货件。
其它表单流可以是与实施所公开的系统和方法的产品一起包括的模板。在显示屏幕上可以示出用于表单流的一个或多个选项,如图7A和图7B的示例所示。当然,任何合适的渲染都在本讨论的范围内,包括渲染图标和表单流名称。因此,该方法包括显示供用户选择的一个或多个流程文件的表示60。在选择表单流流程文件之后,表单与所选流表单流程文件相关62。可选地,所公开的方法和系统可以包括提示用户从与表单流相关的表单中进行选择64。
该系统提供了对表单流流程文件进行分类的能力。通过这种方式,所公开的方法和系统可以利用搜索列表,其可以在没有代码的情况下挑选应使用哪个数据源。可以构建特定的表单流,但如前所述,表单流也可以被标记,以使其不会出现在特定表单项的搜索屏幕上,即使表单项具有适当的数据类型或该表单流的执行代码。表单流也可以以特定的顺序呈现,这取决于与它们相关的表单项。此外,表单流可以是有条件的。例如,对于空运货件,可以使用特定的表单流。如果表单项针对海运货件,则条件可能包括不显示该特定表单流。因此,当您右击一个记录或表单项或其它项目时,您将获得另一表单流。通过这种方式,所公开的系统和方法提供了在设计所有情况环境(design everything environment)而不是编码所有情况方案(code everything approach)中操作的能力。由于表单流链接到数据类型和/或执行代码,所以搜索屏幕链接到数据类型和或执行代码,因此该链接可用。在有条件的流表单的情况下,表单流可用于这五种条件下的特定类型的货件。特定类型货件的表单流可以设置为在需要时呈现。
基础方法和系统的描述:
所公开的基础系统和方法使得能够在不编程的情况下创建可执行内容和内容流。例如,可执行内容可以包括交互式内容。在一个实施例中,内容是表单,并且内容流是表单流。在本公开中,可执行内容将涉及可执行表单。本讨论中没有任何内容旨在将内容限制为表单,然而,表单实施例提供对所公开的系统和方法的现成的说明。
所公开的系统和方法实现了可执行表单和表单流的创建,并且例如可以使用中央服务器、设计器设备和用户设备之间的关系而在简洁计算环境中创建、存储和发送所创建的内容以及内容流。创建的表单和表单流在任何环境、业务线或使用表单的系统中都很有用。通常,所公开的系统和方法提供表示表单逻辑的可视布局,因此用户可以可视化或图形化地创建表单和表单流,而不需要编写计算语言来创建表单或表单流。
运输商品和货物的物流是需要许多表单的行业的示例,因为它是高度管制的全球性行业。当法规改变时,表单和表单流通常需要改变。所公开的示例表单和表单流系统和方法可以在货运物流环境中发挥作用。本领域技术人员将认识到,这里公开的表单和表单流方法和系统可以应用于使用或需要表单的任何环境或系统,甚至更广泛地,所公开的系统和方法可以应用于使用可执行内容和内容流的任何地方。
如上所述,所描述的可执行内容可以是各种类型的,包括可能需要用户输入的交互式内容,其中的表单是可执行内容的类型。更具体地说,本讨论将集中于作为可执行内容的可执行表单。图7D是可执行表单和表单流创建系统100的示例。表单可以在设计设备110上设计并存储在服务器120上。提供执行所公开方法的功能的任何其它系统配置都在本讨论内。设计设备110还用于创建也存储在服务器120上的表单流。如上所述,表单流是在用户设备140请求的过程执行期间访问各种表单的顺序。表单流是基于用户与表单流中表单的交互,将表单项显示给用户所依据的逻辑。
最终,当表单和表单流创建过程完成时,在用户设备140上执行表单流期间,根据用户的需要从服务器检索表单流流程文件。当在用户设备上执行表单流流程文件期间需要表单流流程的表单时传递该表单。如果服务器/网络访问受限,则表单可以存储在用户设备140上。表单和表单流两者可以存储在同一服务器120上,如图7D中所示,或者可选地,可以彼此分开地存储,如可以在诸如基于云的计算系统之类的分布式系统中进行。由于表单和表单流是分开存在的,因此即使两者可以存储在同一服务器或系统上,这也不是必要的。任何类型的用户设备都在本讨论的范围内。
当表单流确定所显示的相关表单的次序、顺序和/或布置或其它配置时,表单流可以被视为流程图。表单流可以包括流元素,诸如“if”条件、switch条件,while循环、jump/goto语句、决策语句、确认消息和其它流元素。表单流定义了访问一个或多个相关表单的逻辑路径。关于用户输入和交互的响应或规则可以包括在表单流中,用于确定要检索和/或显示的后续内容。在某些情况下,可能在表单流中不需要用户输入或交互,如上所述。输入和交互可以包括从用户设备、数据库、内联网或互联网检索信息。这种输入可以包括例如GPS数据或环境传感器读数。
设计设备或设计器设备110可以用于创建表单文件和表单流流程文件,表单文件和表单流流程文件可以存储在服务器120上以供用户设备140使用。设计设备的任何其它配置都在本讨论的范围内。例如,设计设备可以是一个以上的设备,例如,多方参与内容流的内容。
图8是另一示例表单和表单流系统200。在这个示例中,用户处理输入可以由用户设备240发送给用户服务器250。用户服务器250可以与数据库255通信,处理输入可以存储在该数据库中和/或其它信息存储在该数据库中。处理输入将包括插入到字段中、拉取或推送的数据。例如,针对“预订方”字段,处理输入可以是“Joe′s BBQ”(参见图10,项421)。如果该字段用于“运输公司”,那么处理输入可以是“弗兰克货运”。用户服务器250可以接收处理输入并使用存储在连接的数据库255上的信息或工具来比较或处理它们。
为了说明许多系统变化,图8示出了设计服务器220和可选数据库225,其在性质和功能上可以与图7的服务器120和数据库125类似。在图8所示的示例中,用户设备将内容输入发送给用户服务器250,因此设计服务器220可以完全起到设计服务器的作用,作用包含用户设备完成所选任务可能需要的内容、内容流、业务规则和其它内容相关项。
在图8的表单和表单流系统200中,设计设备210用于创建存储在设计服务器220上的表单和表单流。用户设备240可以向设计服务器220请求处理并且将接收表单和表单流。设计服务器220还可以包括业务规则。数据库225还可以与设计服务器220通信。数据库225可以包括其它可执行内容、业务规则或其它信息。可以使用网络或其它电子通信协议或方法将图8的表单和表单流系统200的各种元素或任何其它系统配置在彼此之间传送。
图9描绘了表单创建过程300。表单设计器从提供的列表或多个表单标记中选择第一表单标记310。表单标记(标记)可以是表单元素,诸如输入框或其它交互内容。第一表单标记由设计器320放置和定位在设计器设备或其它合适系统的表单视图420(参见图10)中。例如,将标记从列表拖动到表单视图中。例如,当点击、拖动或放置标记时,系统插入使表单项可在表单中执行的代码。除了点击、拖动或放置之外的其它操作可能导致代码被链接或绑定到选定的表单项。可以通过任何合适的方式完成选择。可将执行代码添加到表单项中使其在之前不可执行之处成为可执行的任何动作都在本讨论的范围内。选择是讨论该特征的便捷方式。应该理解的是,在本讨论的精神范围内,导致之前不可执行的表单项变得可执行的任何方式都在本讨论的范围内。
任何其它定位表单项以使其包括在表单中的方式都在本讨论的范围内,特别是在用户图形界面中使用的那些方式。这里描述的点击和拖动方法是常见的用户界面方法。可以选择第二表单标记330,并将其放置和定位在表单视图420内。可以重复选择和放置表单标记中的过程,直到期望的标记被包括在表单视图420内。一旦表单视图中的表单完成350,设计器可以查看完整的表单以及各种标记及其在表单视图420内的位置。
现在参考图10,当用户点击表单项列表410中字段,将其拖动或放置到表单视图420上时,系统将如下操作:(1)系统将通过使用下面的映射表来确定要放到表单视图420上的是什么类型的控件;以及(2)系统将用于该特定控件的XAML插入到表单的XAML中,该XAML指定a)控件的类型,以及b)插入/拖动到表单中的字段(城市、州、邮政编码等)。在完成表单之后,XAML将被序列化。序列化意味着将被拖动到表单视图420(参见图4)上的事物转换为可以作为文本(XAML)存储在数据库中的结构。反序列化意味着从数据库中读取XAML并重建表单,以用于另外的设计器修改或准备执行。
映射表
作为背景,可扩展应用标记语言(XAML)是用于定义用户界面的基于XML的语言。任何其它此类语言都在本讨论范围之内。因此,当表单渲染引擎读取序列化表单XAML时,可以确定如何解释可执行表单项以生成可执行表单。下面解释该过程以及如何实现它。通过这种方式,用户无需担心表单项如何发挥作用,在单个可重复的步骤中就可构建表单。
图10描绘了由于所公开的系统和方法允许用户将表单列表410中的字段拖动到正在表单视图420上创建的表单上,所公开的系统和方法将表示相关控件的XAML插入到特定类型的表单中,其“链接”或绑定到拖动的字段。也就是说,系统识别数据类型并在表单视图420中插入控件。这样的字段例如是表单标记1和表单标记2。当用户保存表单450时,将所有控件序列化成单个XAML块,并且将该XAML块保存到数据库中。
将被拖到表单视图420上的内容转换为可作为文本(XAML)存储在数据库中的结构,需要创建一组XAML扩展来控制某些可配置选项,包括但不限于针对字段要显示什么标题,它应该是只读还是允许输入,接受输入地址的控件是否应该显示‘国家’字段等。
通过这种方式,用户在一个步骤中布置可执行表单项以生成可执行表单。由于上述2(b)(被插入/拖动到表单的字段(城市、州、邮政编码等),系统确定从数据存储器加载什么数据作为表单(在该表单中用户输入输入或在系统内的其它地方捕获并使用的数据),或者确定在用户输入时将什么数据推送给数据存储器。可执行表单项可能不需要用户交互。更确切地说,可以基于在用户设备内存储或生成的数据(诸如时间戳、位置或其它用户设备数据)来检索输入。
图10中描绘的另一特征是指表单因素。表单因素字段432可以是确定用户设备显示大小、分辨率和其它参数的可选表单因素的列表。表单因素限定了设计人员可以在其中设计创建表单的区域。如图10中所示是平板电脑表单因素,然而在表单构建过程期间,表单视图420上的表单因素可以改变为另一表单因素。其它表单因素包括智能手机、电脑屏幕或其它常见用户设备类型。所选表单因素432可以用于确定表单视图420。可以通过“表单服务”来实现改变表单因素,该表单服务使得转换成以所需语言(以XAML、HTML或JSON(或者具有特定表单因素的“原生”设备无论使用哪种渲染语言))的渲染。具体地说,创建一组用于在每种设备类型上渲染的XAML扩展可能需要确保表单在运行时与“设计”时相比几乎完全相同。如上所述,在表单视图420中,表单因素可以改变。
为了向用户提供一步式解决方案来创建可执行表单文件和可在不同原生平台上操作的表单流流程文件,涉及创建数据类型到控件类型的映射,并使得控件足够智能以理解这些数据类型以及它们之间的细微差别,以三种语言创建具有用于每个控件类型的片段的能力,允许在每个控件类型(例如宽度、高度、只读、标题、文本包装等)上使用多个选项(并使这些选项以几乎相同的方式在所有三种语言中工作),并确保针对每个片段的三种语言版本中的每一种的几乎相同的用户体验。使控件足够智能以便在点击、拖动或拖放到表单视图上时理解数据类型,涉及为每种语言的每个控件创建片段。然后每个片段内都有一系列“占位符”,诸如~宽度~、~高度~等。每个片段后面都有代码,针对每种语言,该代码用于指示如何用相关语言和平台解释这些选项中的每一个。
创建这种转换集需要大量程序员进行大量精心的工作,然后执行这个大型项目需要精心的计划、卓越的生产力管理和不断的测试。
对于每个设备,存在表单渲染引擎。该引擎知道如何渲染特定设备的表单。它可以用XAML、HTML或JSON渲染。首先,客户端设备向表单服务请求表单。表单服务将已设计和存储的XAML转换为所需的语言(XAML、HTML或JSON)。对于每个‘控件类型’(文本框、日期选择器等),存在一段代码来定义每种语言(即XAML、HTML和JSON)的控件。例如,当将XAML表单转换为JSON时,例如,每个XAML控件都将替换为JSON等效项。结果可能是JSON表单与原始设计的XAML表单几乎相同。
图12描绘了所述表单流设计器系统和方法的过程。显示可选择的可执行表单和流控件的列表610并且从表单列表中选择第一表单620。选择第一流控件630并且将其与第一表单相关640。然后可以选择第二表单650并且将其与第一流控件相关660。显示完成的表单流,示出各种选择的表单和流控件670。当保存时,表单流被使用XAML(但不限于XAML)来序列化并存储。
图13描绘了表单流设计器。表单流确定了多个表单的次序、顺序和/或布置或其它配置。表单流可以包括流元素,诸如“if”条件、switch条件,while循环、jump/goto语句、决策语句、确认消息和其它流元素。在示例流中,表单流可以用作逻辑语句,其将各种表单链接在各种路径中,并且用户基于他们与表单的交互而体验单一路径。在示例表单流中,表单流控件可以作为逻辑语句,其将各种表单链接在各种路径中,其中用户可以基于他们与表单的交互而体验单一路径。表单流可以导致非奇异(non-singular)流,并且用户可以有多种选择。
表单流流程文件不包含相关表单文件。当请求流程时,用户设备接收该流程的表单流流程文件。表单流流程触发用户设备以基于用户与至少一个先前表单的交互来请求或检索所选表单。如果用户只有受限的服务器访问权限,则表单文件可以存储在用户的设备上。
图13示出了表单可以位于图形用户界面上。就像使用表单视图界面一样,流程设计器中的表单可以移动成任何顺序,被复制和粘贴等。流控件可以位于表单之间,并且也可以移动到不同的位置。也就是说,当诸如734的流控件被点击、拖动或放置在表单流设计器用户界面中时,代码被插入到表单流中。可以对表单流进行编辑,因为当表单流流程文件被保存时,XAML代码将被序列化。同样,如果希望在保存后进行更改,则XAML代码将被反序列化,然后再进行序列化。
图14是示例表单流创建过程800。显示可选表单和流控件的列表810,并且从表单的列表中选择第一表单820。选择第一流控件830并将其与第一表单相关840。然后可以选择第二表单850并且将其与第一流控件相关860。显示完成的表单流,示出各种选择的表单和流控件870。
流控件834显示在流控件窗口830中并显示在流控件图810上。流控件834链接到如图810中所示的相关的表单。当流控件834被拖动到流表单查看器时,流控件被调用,这意味着表单流是可执行的。与表单类似,当用户将表单拖动到表单流设计器或流元素(IF、WHILE、LOOP、JUMP、GOTO等)时,这些表单将作为序列化XAML存储在表单流定义中。系统将读取序列化表单流XAML并确定如何解释表单流中的每个元素,并生成遵循所设计的表单流的可执行系统。当表单流被执行时,表单流可以在某些表单项执行时调用表单。一旦表单流与表单824和流控件834一起完成,可以使用保存表单流按钮840保存表单流流程或将其发布到服务器或其它网络位置。
图15是包括表单910和表单流920的示例设计服务器900。业务规则930可以可选地存储在设计服务器900上。如图1和图2中所示,系统配置可以包括多个远程服务器。如上所述,当表单流流程文件访问表单文件时,表单文件910和表单流流程文件920在服务器900内可以彼此分开存储。表单流1可以从表单910中选择一个或多个表单,并且可以选择不同的表单流,诸如表单流2。各种表单流流程可以使用相同的表单。表单流n被描绘为表明可以在表单流中使用任何表单,并且序列化XAML代码的控制代码链接表单,使得用户可以体验与表单的无缝交互。
参考图16,许多物流系统(诸如专有的WiseTech Global CargoWise OneTM系统)使用大量表单来正确记录货物并规划其路线。由于大多数货物海运的国际性质,这些表单可能需要经常更新。此外,物流系统与现有传统系统的整合可能需要为每个客户独特地定制物流系统。在物流系统内使用上述表单创建和表单控件创建工具可以使客户或系统供应商能够响应于法规变更而快速有效地创建和编辑表单。此外,表单和表单控件的可定制性可以帮助与现有或其它客户系统整合。客户可以使用系统提供的工具来创建自己的定制表单和流。
货运代理是一个利用表单的行业。还有很多其它的包括保险和银行业务的行业。货运管理模块可以包括货运跟踪和监视模块、货运安全模块、运输和车辆跟踪模块以及货运物流模块中的至少一个。可执行表单可以涉及货运的方面,并且每个表单流流程文件可以涉及货运的货运管理的方面。表单可以是例如与特定管辖区相关的海关申报单。用户设备可以与货运发货人、货运代理、货运运输公司和货运收件人中的至少一个相关联。可以将表单数据库和表单流流程文件数据库分别配置为可由多个用户设备(包括寄件人设备、货运代理设备、运输公司设备和收件人设备)访问。任何用户设备都在本时论的范围内。
所公开的货运管理系统可以包括货运表单数据库,其被配置为存储多个可执行货运表单,该多个可执行货运表单中的每个涉及一个或多个货运的方面,每个存储的可执行货运表单包括由用户从表示对应货运表单项的多个可执行货运表单项标记中选择的一个或多个货运表单项标记,该多个可执行货运表单项标记中的每一个都显示在用户设备上。所公开的货运管理系统还可以包括货运表单流流程数据库,其被配置为存储多个货运表单流流程,每个存储的货运表单流流程包括对应的货运表单流控件,每个货运表单流控件调用与存储在货运表单数据库中的一个或多个货运表单相关联的所选货运流控件。所公开的货运管理系统还可以包括货运管理模块,该货运管理模块被配置为在从用户设备接收到请求之后,接收货运表单和货运表单流流程中的至少一个并且将接收到的货运表单和货运表单流流程中的该至少一个发送给用户设备。
所公开的货运管理系统可以包括货运表单数据库,其被配置为存储多个可执行货运表单,每个所存储的可执行货运表单包括由用户从表示对应货运表单项的多个货运表单项标记中选择的一个或多个货运表单项标记,每个存储的货运表单都是可执行的并且基于从用户接收到的包括对一个或多个货运表单项标记的选择的指令而创建。所公开的货运管理系统还可以包括货运表单流流程数据库,其被配置为存储多个货运表单流流程,每个所存储的货运表单流流程包括对应的货运表单流控件,货运表单流控件在被调用时提供与存储在货运表单数据库中的一个或多个货运表单相关的所选货运流控件。另外,可以包括货运跟踪和监视模块,其被配置为访问货运表单数据库和货运表单流流程数据库中的一个或两者,货运跟踪和监视模块还被配置为存储和处理与第一货运有关的数据,该货运与存储在货运表单数据库中的第一货运表单和存储在货运表单流流程数据库中的第一货运表单流流程中的一个或两者相关,该货运跟踪和监控模块还被配置为从货运表单数据库中检索第一货运表单并且从货运表单流流程数据库中检索第一货运表单流流程。
所公开的货运管理系统可以包括货运表单数据库,其被配置为存储多个可执行货运表单,每个所存储的可执行货运表单包括由用户从表示对应货运表单项的多个货运表单项标记中选择的一个或多个货运表单项标记,每个存储的货运表单都是可执行的并且基于从用户接收到的包括选择一个或多个货运表单项标记的指令而创建。还可以包括货运表单流流程文件数据库,其被配置为存储多个货运表单流流程,每个所存储的货运表单流流程包括对应的货运表单流控件,货运表单流控件在被调用时提供与存储在货运表单数据库中的一个或多个货运表单相关联的所选货运流控件。此外,所公开的货运管理系统可以包括货运跟踪和监视模块,其被配置为访问货运表单数据库和货运表单流流程文件数据库中的一个或两者,货运跟踪和监视模块还被配置为存储和处理与第一货运有关的数据,该货运与存储在货运表单数据库中的第一货运表单和存储在货运表单流流程文件数据库中的第一货运表单流流程中的一个或两者相关,该货运跟踪和监控模块还被配置为从货运表单流流程数据库中检索第一货运表单流流程文件并且从货运表单数据库中检索第一货运表单。对表单流流程文件和/或表单文件的请求可以包括对用户设备表单因素的指示。对表单流流程文件和/或表单文件的请求可以包括对用户设备的原生设备渲染语言的指示。
公开了允许用户访问表示可执行表单项的标记,点击并将它们拖动到显示屏幕上的空间,并构建可执行表单项的表单的方法和系统。所公开的方法和系统允许可执行表单项在用户构建表单时被布置和重新布置。在显示器上构建的表单是可执行的,因为当将标记拖动到表单视图屏幕上时,执行代码附加在表单项上。然后,表单可以成为表单流即流程图的一部分,其指示诸如‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’等控件。因为表单项在例如表单查看器中显示时变得可执行,所以用户将不需要考虑如何定义表单项发挥作用的方式。也就是说,在单个步骤中,用户将选择特定类型的表单项来构建表单,并且这个表单将立即可执行。
公开了用于实现可定制可执行内容和可定制可执行内容流的方法和系统。更具体而言,公开了用于实现可定制表单(诸如可执行表单)和表单流(诸如包括可执行表单的表单流)的方法和系统。更具体地说,公开了创建可执行表单的方法,其中在显示屏幕上提供表示多个可执行表单项的表单标记。表单项由标记表示。接收对从表单标记中选择第一表单标记的指令,并且选择第一表单标记。然后显示所选择的第一表单标记,并且接收对选择表单标记中的第二表单标记的另外的指令。选择第二表单标记。所选择的第一表单标记和第二表单标记以特定顺序被显示为具有可执行表单项的可执行表单。
在示例中,然后执行可执行表单项。在其他示例中,可以经由闭锁设备完成对接收选择第一标记和第二标记的指令,该闭锁设备可以闭锁在显示器的屏幕上的标记上并将该标记移动到显示屏幕上的另一位置或另一显示屏幕上。此外,一些示例方法还改变所选第一标记和所选第二标记的特定顺序,使得可执行表单项处于另一特定顺序。在一些示例中,表示显示屏幕上的多个可执行表单项的标记被划分为可执行表单项的类别。
还公开了创建可执行表单的方法,其中在显示屏幕上提供表示多个可执行表单项的表单标记,并且接收对选择表单标记中的第一标记的指令。选择第一种表单标记并显示所选的第一表单标记。接收对选择表单标记中的第二表单标记的指令并选择第二表单标记。所选第二表单标记和所选第一表单标记以特定顺序显示为具有可执行表单项的第一可执行表单。重复这些步骤以生成第二可执行表单,并且可选地生成附加可执行表单,并且还显示第二可执行表单。
还公开了基于表单并且在一些示例中基于上述可执行表单创建表单流流程的方法。在显示屏幕或任何其它显示屏幕上提供表示流控件的流标记。接收对选择流标记的第一流标记的指令。当位于表单流查看器或显示器上时,第一流标记调用所选流控件。接收对在显示屏幕或另一显示屏幕上结合调用的所选流控件来布置第一可执行表单和第二可执行表单中的一个或两者的指令。在显示屏幕或另一显示屏幕上显示表单流流程图。表单流流程图包括结合调用的所选流控件的第一可执行表单和第二可执行表单。
还公开了创建可定制表单的方法,其包括从服务器向设计器设备发送多个表单项标记。服务器从设计器设备接收第一指令。第一指令包括对多个表单项标记中的至少一个的选择。生成可执行表单,其包括多个表单项标记中所选择的至少一个来作为表单项。在一些示例中,可执行表单可以存储在表单数据库中。可执行表单可以被发送给设计器设备和用户设备中的一个或两者。在一些示例中,指令包括对多个可执行表单项标记中的至少两个的选择,并且服务器从设计器设备接收第二指令。第二指令包括多个可执行表单项中所选择的至少两个的顺序。在一些示例中,第一指令和第二指令作为组合指令被同时发送给服务器。服务器还可以从设计器设备接收第三指令。第三指令可以包括针对以下至少一项的修改、添加和/或删除:对多个可执行表单项中至少两个的选择,以及多个可执行表单项中所选择的至少两个的顺序。
在创建可定制表单的一些示例方法中,创建了一个以上的可定制表单。多个可定制表单可以存储在表单数据库中。还公开了具有以与所描述的方法相同的方式发挥作用的系统组件的对应系统。
公开了创建可定制表单的其它示例方法。这些方法包括设计器设备向服务器发送创建可定制表单的请求,并从服务器接收包括多个表单项标记的数据消息。多个表单项标记显示在设计器设备的显示器上。设计器设备接收第一用户输入,该第一用户输入包括对多个表单项标记中的至少一个的选择。包括多个表单项标记中所选择的至少一个的数据消息被发送给服务器。接收可执行表单,该可执行表单包括多个表单项标记中所选择的至少一个中的每一个的可执行代码。在一些示例中,所接收的可执行表单被显示在所设计的设备的显示器上。此外,在一些示例中,在设计器设备的显示器上显示多个表单项标记包括显示按照表单项标记的类型分类的多个表单项标记的组。在一些示例方法中,可以在设计器设备上执行所接收的可执行表单。
在一些示例中,设计器设备可以接收第二用户输入,该第二用户输入包括对显示器或表单查看器上的多个表单项的选择的修改、添加和/或删除。在一些示例中,第一用户输入包括对至少两个多个可执行表单项的选择,并且第二用户输入可以在设计器设备处被接收。第二用户输入包括针对以下至少一项的修改、添加和/或删除:对多个可执行表单项的选择,以及对多个可执行表单项的选择的顺序。如同以上其它示例一样,可以重复所公开的创建可定制表单的方法以创建多个可执行表单。
公开了创建可定制表单的另外附加方法。服务器将多个表单项标记发送给设计器设备。多个表单项标记中的每一个表示对应的可执行表单项。服务器从设计器设备接收第一指令,该第一指令包括对多个表单项标记中的至少一个的选择。生成可执行表单,其包括对应于多个可执行表单项标记中所选择的至少一个中每一个的表单项。
公开了用于创建可定制表单的系统,并且包括表单项标记数据库、服务器和处理器。表单项标记数据库被配置为存储多个表单项标记,每个表单项标记表示对应的可执行表单项。服务器被配置为将多个表单项标记的至少一部分发送给设计器设备,并且还被配置为从设计器设备接收第一指令,该第一指令包括对多个表单项标记中的至少一个的选择。处理器被配置为生成可执行表单,该可执行表单包括多个表单项标记中所选择的至少一个中的每个的可执行表单项。在一些示例中,服务器可以被配置为在从设计器设备接收到对多个表单项的至少一部分的请求之后发送该多个表单项的该至少一部分。
在指令包括选择至少两个多表单项标记的示例系统中,服务器可以被配置为从设计器设备接收第二指令,该第二指令包括针对以下至少一项的修改、添加和/或删除:对多个表单项中的至少两个的选择,以及多个可执行表单项中所选择的至少两个在表单查看器上的顺序。服务器可以被配置为将可执行表单发送给设计器设备,并且在另外示例中可以在从设计器设备接收到对可执行表单的请求之后将可执行表单发送给设计设备。
还公开了可执行表单是第一可执行表单并且服务器还被配置为从设计器设备接收第二指令的系统。第二指令包括对多个表单项标记中的至少一个的第二选择。处理器还被配置为生成第二可执行表单,该第二可执行表单包括与用于第二可执行表单的多个表单项标记中所选择的至少一个中每个相关联的可执行控件。该系统还可以包括被配置为存储生成的可执行表单的可执行表单数据库。此外,在从设计器设备接收到对所生成的可执行表单的请求之后,服务器还可以被配置为将所生成的可执行表单发送给设计器设备。该系统还可以包括被配置为存储第一可执行表单和第二可执行表单的可执行表单数据库。在其他示例中,在从设计器设备接收到对第一可执行表单和第二可执行表单中的一个或两者的请求之后,服务器还被配置为发送生成的第一可执行表单和第二可执行表单中的一个或两者。
还公开了用于创建表单流流程的方法。在显示器上显示第一表单和第二表单,并且在显示器上还提供流控件的流标记。接收对选择流标记中的第一流控件标记并显示第一表单和第二表单的指令。所选择的流控件被结合所显示的第一表单和所显示的第二表单来调用。第一表单的流程图显示在显示屏幕或另一显示器上。第一表单流流程图包括第一表单和第二表单结合被调用的所选流控件的布置。在另外示例中,可以接收对结合显示屏幕上的所选流控件来重新布置第一表单和第二表单中的至少一个的指令,并且第二表单流流程图可以显示在显示屏幕或任何其它显示屏幕上。第二表单流流程图可以包括第一可执行表单和第二可执行表单。表单流创建过程中的任何这些表单都可以执行。
公开了用于创建表单流流程的方法,其包括将与至少一个表单有关的流控件的多个流标记以及至少一个表单的图形表示发送给设计器设备。接收来自设计器设备的指令并且其包括对与至少一个表单有关的至少第一流控件标记的选择。结合至少一个表单调用第一流控件标记且将其与该至少一个表单相关,以创建包括至少一个表单和至少第一流控件标记的布置的第一表单流流程图。第一个表单流流程图可以发送给设计器设备。在从设计器设备基于第一表单流流程图接收到对至少一个表单的请求之后,可以将该至少一个表单发送给设计器设备。
在一些示例中,至少一个表单包括第一表单和第二表单,并且在基于第一表单流流程图接收到对第一表单的第一请求之后,将第一表单发送给设计器设备。在基于第一表单流流程图接收到对第二表单的第二请求之后,将第二表单发送给设计器设备。如同上面的示例一样,表单可以是可执行的表单。
公开了创建表单流流程的另外附加方法,其包括提供流控件的多个流标记以及至少一个表单的图形表示,以及接收包括对与至少一个表单有关的流控件的一个或多个流标记的选择的指令。接收到的指令被发送给服务器,并且基于所发送的指令接收表单流流程图。表单流流程图包括至少一个表单的布置。在一些示例中,基于接收到的表单流流程图来发送针对至少一个表单的请求。多个表单可以包括第一表单和第二表单。在一些示例中,选择与第一表单和第二表单相关的流控件的一个或多个流标记,并且表单流流程图包括第一表单和第二表单的布置。
基于表单流流程图发送对第一表单的请求。如果需要,还可以基于表单流流程图发送对第二表单的请求。任何这些表单都可以执行。在设计器设备的显示器上显示流控件的多个流标记和至少一个表单的图形表示。表单流流程图也可以显示在设计器设备的显示屏幕上。在一些示例中,接收对重新布置流控件的一个或多个流标记以及至少一个表单中的至少一项的指令,并且可以包括一个或多个if/then/else条件逻辑。还公开了用于所公开表单流流程的离线操作模式。发送离线消息,并且响应于离线消息的发送,连同与表单流流程图相关的至少一个表单中的每一个来接收表单流流程图。
为了总结基础技术,公开了创建表单流流程的方法,其中从设计器设备发送指令。将包括设计器设备的表单因素的数据消息发送给服务器。表单因素可以包括移动表单因素、平板电脑表单因素和桌面/笔记本电脑表单因素。表单流流程图可以用与设计器设备的表单因素兼容的计算语言来接收。
其它公开的使用表单流流程的方法包括在服务器处从用户设备接收针对第一表单流的请求。第一表单流包括第一表单流控件的流程。每个表单流控件都与存储在表单数据库中的至少一个表单相关。第一表单流被发送给用户设备。服务器从用户设备接收针对第一表单流控件中指示的第一表单的第一请求。服务器还从用户设备接收包括用户设备的表单因素的数据传输。第一表单在用户设备的表单因素中发送给用户设备。
所公开的使用表单流流程的方法还可以包括从用户设备接收针对在第一表单流控件中指示的第二表单的第二请求并将第二表单发送给用户设备。第二表单以与用户设备的表单因素兼容的计算语言进行发送。第一表单流可以存储在表单流数据库中,并且可以是可执行的。表单因素可以包括移动表单因素、平板电脑表单因素和桌面/笔记本电脑表单因素。在一些示例中,第一请求和数据传输由服务器同时接收。
还公开了使用具有服务器和处理器的表单流流程的系统。该服务器被配置为从设计器设备和用户设备中的一个接收表单因素数据。表单因素数据可以包括与设计器设备和用户设备中的一个相关的表单因素。服务器还被配置为从设计器设备接收针对关于流控件的多个流标记和来自存储在表单数据库中的多个表单的至少一个表单的图形表示的请求,并接收包括对选择与至少一个表单有关的流控件的一个或多个流标记的指令。此外,服务器被配置为基于接收到的指令发送表单流流程图。表单流流程图包括至少一个表单的基于所选择的流控件的一个或多个流标记的布置。处理器被配置为结合至少一个表单调用对与该至少一个表单有关的流控件的一个或多个流标记的选择,以创建包括该至少一个表单的布置和所选流标记的第一表单流流程图。
本公开旨在解释如何根据该技术来形成和使用各种实施例,而不是限制其真实的、预期的和合理的范围和精神。前面的描述并非旨在穷举或限制于所公开的确切形式。鉴于上述教导,修改或变更是可能的。选择和描述实施例以提供对所描述的技术的原理及其实际应用的最佳说明,并且使本领域的普通技术人员能够在各种实施例中并且在适合预期的特定用途的各种修改下利用该技术。当根据它们公平、合法和公平地享有的宽泛性进行解释时,所有这类修改和变更都在由所附权利要求及其所有等效物确定的本发明的范围内,如可以在本申请专利的未决期间进行修改。
示例
在一个示例中,所公开的方法和系统被实现为平台,该平台向产品经理和业务分析师提供使得他们(即非技术人员)构建整个业务产品/应用的工具或构建块集。此外,他们可以一次构建这些产品,并部署到多个不同的软件和硬件平台,包括iOS、Android、WindowsPhone、Windows CE,Windows、Mac和Linux。
主要的工具或构建块是:
●表单设计器
●表单流设计器
●表单和表单流配置器
●业务规则设计器
●业务测试设计器
对于上述每个区域,这个示例将解释:
●工具的用途
●相关术语的定义
●工具的设计
●工具的使用示例
表单设计器
表单设计器允许业务分析师创建表单,表单然后被用作产品的一部分。业务分析师将相关数据元素拖动到表单的表面上来构建表单。表单也可以称为页面、表面、门户、网站、仪表盘或外观。表单包含动作(菜单、按钮、图块)和/或数据元素(文本框、下拉菜单、日期控件、网格、列表)和/或可视化元素(图、图表、仪表盘)。
当业务分析师创建新表单时,他们首先挑选他们正在设计的数据或记录类型。此时,数据元素将基于表单的数据类型而被自动发现并显示。这些数据元素分类为数据类别,诸如日期/时间字段、字符串字段、数字字段、相关列表、相关记录和图像。然后业务分析师可以拖动相关的数据元素。此外,业务分析师还可以拖动其它视觉元素(例如,面板和组框)以允许其表单的逻辑布局。在内部,对于每种类型的数据元素或控件(面板/组框),该平台具有编程代码/标记的表示,其允许该控件在多个平台中渲染。
●用于Windows桌面应用程序的可扩展应用程序标记语言(XAML)
●用于Windows CE的JavaScript对象表示法(JSON)
●用于Web浏览器、iOS、Android和Windows Phone/Surface的具有KnockoutJS绑定的HTML
当多个元素被拖动到表面上时,设计服务器220创建作为这些单独数据元素和控件的组合的整个“文件”。服务器220将该文件作为“数据”存储为应用程序的一部分。该文件以平台中立的格式存储,并表示有关数据元素或控件的相关信息,包括诸如以下项:
●元素相关的数据字段的技术名称
●布局设置,包括颜色、边距、大小和位置
●任何控件特定的属性或选项,诸如日期控件是否显示时间元素
换句话说,服务器220以中间语言创建表单,该中间语言可以被转换为设备特定的表示。当单个设备向服务器请求特定的表单时,服务器将了解客户端正在使用哪个平台并立即将存储的表单表示转换为正确的表示(XAML、JSON或具有KnockoutJS的HTML),并将转换的表单传递给客户端。然后,客户端应用程序可以以原生理解的格式渲染该表单。
图17示出了表单设计器表面的示例,其中一些数据元素和视觉元素被拖动到表面上。
下面的代码示出了用于特定控件的Windows CE、XAML、JSON和具有KnockoutJS的HTML中的数据表示,该特定控件是用于显示文本/字符串信息的“文本框”控件。
具有KnockoutJS的HTML
Windows桌面(WPF XAML)
表单流设计器
表单流设计器允许业务分析师创建用户应该如何体验系统的流。流可以被定义为用户可以针对特定操作目的而完成的任务。流可能包含按顺序的任务、并行任务、可选任务和强制任务。其中一些任务可能有用户界面,同时有些可能是后台任务。当业务分析师定义表单流模板时,他们能够‘直观地’(使用拖放)构建用户将如何体验系统的流程图。这包括以下能力:
●示出表单,用于数据输入
●执行后台进程,诸如将XML消息发送给作业方
●询问用户一个问题以确定下一步骤
●基于对作业数据进行评估的条件做出自动决策
基本上,这允许非技术资源以构建可以执行的整个功能系统程序,而不需要技术编码。
该流定义存储在数据库中,并且可以由任何客户端应用程序经由Web服务调用来检索。客户端应用程序(Windows桌面、HTML、Windows CE等)能够解释该表单流定义,并执行相关任务,诸如向用户示出表单等。每个客户端平台都具有对每种任务类型的实现,这也被称为执行引擎。这允许在任何这些平台上解释单个表单流而无需修改。
图18示出了表单流设计器表面的示例,其中加载了示例表单流。
表单和表单流配置器
表单和表单流配置器允许客户(最终用户)在他们自己的系统中配置表单和表单流,以允许系统针对他们的特定操作或他们的一部分业务的特定操作甚至是他们的特定客户进行定制。
表单配置器控制视觉元素如何显示在表单上:位置、可见性(隐藏/可见)以及某些元素(诸如下拉列表)的内容。表单流配置器允许排除可能不适用于业务特定部分或特定客户的表单流的某些部分。配置模板按诸如客户、公司、分部或部门等各种参数将已配置的项目分组在一起。这允许用户指定配置模板所应用的级别。
当业务分析师设计表单时,他或她决定适用于大多数用户的布局。分析师指出哪些视觉元素是必需的,而哪些可以由配置表单的用户隐藏。还可以指定可在配置期间添加到表单布局的附加元素的列表。这样可以在预定义的约束条件下更改表单布局,从而保持产品的可支持性。此外,可以在配置期间删除下拉列表和搜索控件内的可用选项,以便仅显示与某个业务领域或特定客户相关的项。
表单流可以被设计为具有多个后续步骤,要求用户进行选择。在表单流配置过程中,可能会禁用某些步骤,使用户在运行时更容易选择相关步骤。配置模板包含所有上述配置项目。配置模板可以是:
●默认:适用于所有用户
●客户特定的:适用于属于特定客户的用户
●公司/分部/部门特定的:适用于属于特定公司、分部或部门的用户
在内部,配置项以最适合该项类型的方式进行存储:
●表单布局:存储已配置表单的XAML。
●列表项:排除项被以XML格式存储。
●表单流步骤:禁用步骤被以XML格式存储。
●可以扩展配置项数据格式以存储附加配置类型。
图19示出了配置模式下的表单流。在这个示例中,用户从面板中删除了几个字段,禁用了表单流步骤,并且即将在表单周围移动面板。
图20演示了可以如何配置搜索控件以排除与特定配置无关的项。
上述步骤可以通过对应计算机系统内的模块或其它手段来执行。这包括诸如函数、类、代码文件、库或对象之类的软件装置以及包括通过消息传递体系结构连接的中间件服务的服务装置。在其它示例中,装置包括硬件装置,诸如虚拟机、网络服务器、ASIC、FPGA、CPU和GPU。
本公开旨在解释如何根据该技术来形成和使用各种实施例,而不是限制其真实的、预期的和合理的范围和精神。前面的描述并非旨在穷举或限制于所公开的确切形式。鉴于上述教示,修改或变更是可能的。选择和描述实施例以提供对所描述的技术的原理及其实际应用的最佳说明,并且使本领域的普通技术人员能够在各种实施例中并且在适合预期的特定用途的各种修改下利用该技术。当根据它们公平、合法和公平地享有的宽泛性进行解释时,所有这类修改和变更都在由所附权利要求及其所有等效物确定的本发明的范围内,如可以在本申请专利的未决期间进行修改。本领域技术人员将会理解,在不脱离本公开的广泛总体范围的情况下,可以对上述实施例进行多种变更和/或修改。因此,本实施例在所有方面都被认为是说明性的而非限制性的。
本领域技术人员将会理解,在不脱离本公开的广泛总体范围的情况下,可以对上述实施例进行多种变更和/或修改。因此,本实施例在所有方面都被认为是说明性的而非限制性的。
Claims (84)
1.一种用于建立可配置表单的方法,包括:
接收配置有可接受性过滤器的表单文件和被配置为打开或关闭的至少一个非强制性表单项;
在适用性过滤器中建立至少一个环境,在所述至少一个环境下,所述非强制性表单项要被应用于所述表单文件中;以及
生成可配置表单文件。
2.根据权利要求1所述的方法,其中,利用所应用的适用性过滤器和被确立为打开或关闭的非强制性表单项,所述方法还包括生成已修改的表单文件。
3.根据权利要求1所述的方法,其中,所述表单文件还包括强制性表单项。
4.根据权利要求1所述的方法,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
5.根据权利要求1所述的方法,其中,所述适用性过滤器由所述表单文件的标头提供。
6.根据权利要求1所述的方法,其中,所述表单文件存储在远程服务器上。
7.根据权利要求1所述的方法,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问所述表单文件。
8.根据权利要求1所述的方法,其中,所述非强制性表单项是可执行的。
9.根据权利要求2所述的方法,其中,在将非强制性表单项应用于所述表单文件之后提供执行代码。
10.根据权利要求3所述的方法,其中,所述强制性表单项是可执行的。
11.一种用于建立可配置表单文件的系统,包括:
计算设备,所述计算设备被配置为接收表单文件,所述表单文件配置有可接受性过滤器和非强制性表单项,所述非强制性表单项被配置为当所述可接受性过滤器应用于所述非强制性表单项时打开或关闭;
相同或不同的计算设备,其被配置为建立至少一个环境,在所述至少一个环境下,适用性过滤器要被应用于至少一个非强制性表单项;以及
生成可配置表单文件。
12.根据权利要求11所述的系统,包括被配置为确定是否应用所述适用性过滤器的计算设备。
13.根据权利要求11所述的系统,包括被配置为根据是否应用所述适用性过滤器来将所述非强制性表单项确立为打开或关闭并且被配置为生成已修改的表单文件的计算设备。
14.根据权利要求11所述的系统,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
15.根据权利要求11所述的系统,其中,所述适用性过滤器由所述表单文件的标头提供。
16.根据权利要求11所述的系统,其中,所述表单文件存储在远程服务器上。
17.根据权利要求11所述的系统,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问所述表单文件。
18.一种用于建立可配置表单流流程文件的方法,包括:
接收表单流流程文件,所述表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,所述表单流流程文件配置有可接受性过滤器以及被配置为打开或关闭的至少一个非强制性路径;
在适用性过滤器中建立至少一个环境,在所述至少一个环境下,所述至少一个非强制性路径要被应用于所述表单文件中;以及
生成可配置表单流流程文件。
19.根据权利要求18所述的方法,其中,利用所应用的适用性过滤器和被确立为打开或关闭的非强制性路径,所述方法还包括生成已修改的表单流流程文件。
20.根据权利要求18所述的方法,其中,所述表单流流程文件还包括至少一个强制性路径。
21.根据权利要求18所述的方法,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
22.根据权利要求18所述的方法,其中,所述适用性过滤器由所述表单文件的标头提供。
23.根据权利要求18所述的方法,其中,所述表单流流程文件存储在远程服务器上。
24.根据权利要求18所述的方法,其中,能够经由与所述表单流程文件分开存储的表单流流程文件来访问所述表单文件。
25.一种用于建立可配置表单流流程文件的系统,包括:
计算设备,所述计算设备被配置为接收表单流流程文件,所述表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,所述表单流流程文件配置有可接受性过滤器和非强制性路径,所述非强制性路径被配置为当所述可接受性过滤器应用于所述非强制性路径时打开或关闭;
相同或不同的计算设备,其被配置为建立至少一个环境,在所述至少一个环境下,适用性过滤器要被应用于至少一个非强制性路径;以及
生成可配置表单流流程文件的相同或不同计算设备。
26.根据权利要求25所述的系统,包括被配置为确定是否应用所述适用性过滤器的计算设备。
27.根据权利要求25所述的系统,包括被配置为根据是否应用所述适用性过滤器来将所述非强制性路径确立为打开或关闭并且被配置为生成已修改的表单流流程文件的计算设备。
28.根据权利要求25所述的系统,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
29.根据权利要求25所述的系统,其中,所述适用性过滤器由所述表单流流程文件的标头提供。
30.根据权利要求25所述的系统,其中,所述表单流流程文件存储在远程服务器上。
31.根据权利要求25所述的系统,其中,表单流流程文件与表单文件分开存储。
32.一种用于修改表单文件的方法,包括:
接收包括至少一个能够被配置为打开或关闭的非强制性表单项的表单文件,所述表单文件具有用于确定是否允许将非强制性表单项选择为打开或关闭的适用性过滤器;
取决于所述适用性过滤器是否允许将所述非强制性表单项选择为打开或关闭,选择是否将非强制性表单项确立为打开或关闭;以及
在确立至少一个非强制性表单项的情况下,生成已修改的表单文件。
33.根据权利要求32所述的方法,其中,所述已修改的表单文件包括至少一个强制性表单项。
34.根据权利要求32所述的方法,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
35.根据权利要求32所述的方法,其中,所述适用性过滤器由所述表单文件的标头提供。
36.根据权利要求32所述的方法,其中,所述表单文件存储在远程服务器上。
37.根据权利要求32所述的方法,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问所述表单文件。
38.根据权利要求32所述的方法,其中,所述非强制性表单项是可执行的。
39.根据权利要求32所述的方法,其中,在向所述表单文件选择非强制性表单项之后提供执行代码。
40.根据权利要求33所述的方法,其中,所述强制性表单项是可执行的。
41.一种用于修改表单文件的系统,包括:
计算设备,所述计算设备被配置为接收包括至少一个能够配置为打开或关闭的非强制性表单项的表单文件,所述表单文件具有用于确定是否允许将非强制性表单项选择为打开或关闭的适用性过滤器;
相同或不同的计算设备,其被配置为取决于所述适用性过滤器是否允许将所述非强制性表单项选择为打开或关闭,选择是否将非强制性表单项确立为打开或关闭;以及
被配置为在确立至少一个非强制性表单项的情况下,生成已修改的表单文件的相同或不同的计算设备。
42.根据权利要求41所述的系统,其中,所述已修改的表单文件包括至少一个强制性表单项。
43.根据权利要求41所述的系统,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
44.根据权利要求41所述的系统,其中,所述适用性过滤器由所述表单文件的标头提供。
45.根据权利要求41所述的系统,其中,所述表单文件存储在远程服务器上。
46.根据权利要求41所述的系统,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问所述表单文件。
47.一种用于修改表单流流程文件的方法,包括:
接收表单流流程文件,所述表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,所述表单流流程文件配置有可接受性过滤器以及被配置为打开或关闭的至少一个非强制性路径;
取决于适用性过滤器是否允许将所述非强制性路径选择为打开或关闭,选择是否将非强制性路径确立为打开或关闭;以及
在确立至少一个非强制性路径的情况下,生成已修改的表单流流程文件。
48.根据权利要求47所述的方法,其中,所述已修改的表单流流程文件包括至少一个强制性路径。
49.根据权利要求47所述的方法,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
50.根据权利要求47所述的方法,其中,所述适用性过滤器由所述表单流流程文件的标头提供。
51.根据权利要求47所述的方法,其中,所述表单流流程文件存储在远程服务器上。
52.根据权利要求47所述的方法,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问表单文件。
53.一种用于修改表单流流程文件的系统,包括:
计算设备,所述计算设备被配置为接收表单流流程文件,所述表单流流程文件被配置为根据路径提供对至少一个表单文件的访问,所述表单流流程文件配置有可接受性过滤器以及被配置为打开或关闭的至少一个非强制性路径;
相同或不同的计算设备,其被配置为取决于适用性过滤器是否允许将所述非强制性路径选择为打开或关闭,选择是否将非强制性路径确立为打开或关闭;以及
被配置为在确立至少一个非强制性路径的情况下,生成已修改的表单流流程文件的相同或不同的计算设备。
54.根据权利要求53所述的系统,其中,所述已修改的表单流流程文件包括至少一个强制性表单项。
55.根据权利要求53所述的系统,其中,所述适用性过滤器包括针对默认、公司、分部、部门、客户、位置、表单文件标识符和表单流流程文件标识符中的至少一个的字段。
56.根据权利要求53所述的系统,其中,所述适用性过滤器由所述表单流流程文件的标头提供。
57.根据权利要求53所述的系统,其中,所述表单流流程文件存储在远程服务器上。
58.根据权利要求53所述的系统,其中,能够经由与所述表单文件分开存储的表单流流程文件来访问表单文件。
59.一种包括图形用户界面的计算设备,其中,所述图形用户界面包括:
表示包括第一表单项和第二表单项的表单项的标记的布置,所述第一表单项是强制性表单项,由强制性项图标对此进行指示,所述第二表单项是非强制性项,由非强制项图标对此进行指示,由此能够将所述非强制性项图标选择为关闭或打开所述非强制性表单项,使得所述非强制性表单项能够被包括在可执行表单中或不被包括在可执行表单中;以及
表示可执行表单的标记的布置,由此显示与所述强制性表单项有关的标记,并且如果所述非强制性项图标被选择为打开,则显示与所述非强制性表单有关的标记。
60.根据权利要求59所述的计算设备,其中,所述图形用户界面还包括表示可执行表单的标记的布置,由此显示与所述强制性表单项有关的标记,并且如果所述非强制性项图标被选择为关闭,则不显示与所述非强制性表单有关的标记。
61.一种将表单文件与表单流流程文件相关的方法,用于包括显示设备、处理器和存储器的设计器设备,其中,所述表单文件包括数据类型或控件类型中的至少一个,并存储在表单文件存储器中,且多个表单流流程文件包括控件类型,存储在表单流流程文件存储器中,单个表单流流程文件包括对一个或多个表单文件的引用,所述方法包括:
在所述显示设备上显示至少一个表单文件的表示;
响应于经由所述显示设备的引用表单文件的用户输入,将所述表单文件与存储在表单流流程文件存储器中的一个或多个表单流流程文件相关,所述相关至少部分地基于所述表单文件的数据类型或控件类型;
响应于先前的相关步骤,启动对表单流流程文件的一个或多个表示的列表的描述,所述表单流流程文件包括对所述表单文件的引用;以及
显示与所述表单文件相关的表单流流程文件的一个或多个表示的列表。
62.根据权利要求61所述的方法,还包括:
经由用户输入,从与所述表单文件相关的表单流流程文件的一个或多个表示的列表中进行选择;以及
将所述表单流流程文件与所述表单文件相关。
63.根据权利要求62所述的方法,其中,当访问所述表单流流程文件并且在所述表单流流程中需要所述表单文件时,从所述表单文件存储器检索所述表单文件。
64.根据权利要求61所述的方法,其中,所述表单流流程文件的流控件在表单之间提供‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’逻辑中的至少一个。
65.根据权利要求61所述的方法,其中,所述表单文件是不可执行的。
66.根据权利要求61所述的方法,其中,所述表单文件是可执行的。
67.一种包括显示设备、处理器和存储器的计算机实现的系统的方法,所述系统用于生成将表单文件与表单流流程文件相关,所述方法包括:
在图形用户界面上渲染记录的表示,所述记录具有能够对其执行特定动作的类型;
从存储在数据存储库中的表单流流程文件集合中,对至少一个表单流流程文件进行相关,所述至少一个表单流流程文件被配置为包括具有能够对其执行所述特定动作的类型的记录;
在所述图形用户界面上将表示来自所述表单流流程文件集合的表单流流程文件的至少一个图标渲染为能够供用户选择,所述至少一个表单流流程文件被配置为包括具有能够对其执行所述特定动作的类型的记录;以及
在接收到选择表单流流程文件图标的指令之后,将所述记录配置为所选择的表单流流程文件的可执行元素,从而能够对所述记录执行所述特定动作。
68.根据权利要求67所述的方法,其中,所述记录是表单。
69.根据权利要求67所述的方法,其中,所述特定动作取决于输入。
70.根据权利要求69所述的方法,其中,所述输入是至少一个用户输入和被访问的输入。
71.根据权利要求67所述的方法,其中,在选择表单流流程文件图标之后,所述表单流流程文件的控件能够提供与所述可执行元素相关的‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’逻辑中的至少一个。
72.根据权利要求67所述的方法,其中,所述表单流流程文件集合存储在表单流流程文件存储器中。
73.根据权利要求67所述的方法,其中,所述表单流流程文件集合中的至少一个是在所述计算机实现的系统内生成的。
74.一种包括显示设备、处理器和存储器的计算机实现的系统的方法,所述方法访问存储在存储器中的表单流流程文件,所述方法包括:
在显示器上显示第一表单和第二表单的表示,所述第一表单和所述第二表单配置有数据类型和控件类型中的至少一个;
在显示屏幕上提供表示可执行流控件的流控件标记;
接收选择所述流控件标记的第一流控件标记的指令;
结合所显示的第一表单和第二表单调用所选择的流控件;
在所述显示屏幕或另一显示屏幕上显示第一表单流流程图,所述第一表单流流程图包括结合所调用的所选择的流控件对所述第一表单和所述第二表单的表示的布置;
保存第一表单流流程文件,所述第一表单流流程文件包括对所述第一表单和所述第二表单的数据类型或控件类型的指示以及对包括与其它表单流流程文件一起存储的第一表单流流程文件的所选择的流控件的指示;
随后显示与所述第一表单相关的标记;
通过所述第一表单的数据类型和控件类型中的至少一个与存储在适用于所述第一表单的存储器中的表单流流程文件相关;
显示至少一个表单流流程文件的表示,以供用户选择;以及
接收选择表单流流程文件的指令。
75.根据权利要求74所述的方法,其中,供选择的所述至少一个表单流流程文件的所显示的表示是所述第一表单流流程文件的表示。
76.根据权利要求74所述的方法,其中,在由用户选择表单流流程文件之后,所述方法还包括:
基于所述第二表单的数据类型和控件类型中的至少一个,将第二表单与所选择的表单流流程文件相关相关联;以及
在所述显示屏幕上提供所确定的第二表单的表示,以供用户选择。
77.根据权利要求74所述的方法,其中,与所述第一表单和所述第二表单有关的表示中的至少一个是不可执行的。
78.根据权利要求74所述的方法,其中,与所述第一表单和所述第二表单有关的表示中的至少一个是可执行的。
79.根据权利要求74所述的方法,其中,所述表单流流程文件的流控件在表单之间提供‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’逻辑中的至少一个。
80.一种包括显示设备、处理器和存储器的计算机实现的系统的方法,所述方法用于生成表单流流程文件,所述表单流流程文件在至少两个表单之间提供控制逻辑,每个表单具有数据类型和控件类型中的至少一个,所述方法包括:
将表示流控件的多个流标记和表示至少一个表单的标记发送给设计器设备;
从所述设计器设备接收包括对至少一个流控件标记的选择的指令;
在结合所述至少一个表单的图形表示来选择所述流控件标记之后,调用流控件以生成表示表单流流程文件的表单流流程图,所述表单流流程文件包括所述至少一个表单和至少一个调用的流控件的布置;以及
存储所述表单流流程文件,使得当在所述设计器设备上显示所述至少一个表单的表示时所述表单流流程文件是可访问的。
81.根据权利要求80所述的方法,还包括将表单文件与表单流流程文件相关,其中,所述表单文件存储在表单文件存储器中,且包括流控件的多个表单流流程文件存储在表单流流程文件存储器中,单个表单流流程文件包括对一个或多个表单文件的引用,所述方法包括:
在所述显示设备上显示至少一个表单文件的表示;
响应于经由所述显示设备的引用表单文件的用户输入,相关到所述表单文件的数据类型或控件类型,所述表单文件的数据类型或控件类型是存储在表单流流程文件存储器中的一个或多个表单流流程文件的元素;
响应于先前的相关步骤,启动对表单流流程文件的一个或多个表示的列表的描述,所述表单流流程文件包括对所述表单文件的数据类型或控件类型中的至少一个的引用;以及
显示与所述表单文件相关的表单流流程文件的一个或多个表示的列表。
82.根据权利要求80所述的方法,其中,所述表单流流程文件的流控件在表单之间提供‘if’、‘then’、‘else if’、‘goto’、‘jump’、‘while’逻辑中的至少一个。
83.根据权利要求80所述的方法,其中,所述表单流流程文件包括对第一可执行表单和第二可执行表单的访问。
84.根据权利要求80所述的方法,其中,所述至少一个表单是包括执行控件的可执行表单。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2015903059A AU2015903059A0 (en) | 2015-07-31 | Systems and Methods for Executable Content and Executable Content Flow Creation | |
AU2015903059 | 2015-07-31 | ||
AU2015903534A AU2015903534A0 (en) | 2015-08-31 | Methods and systems for creating configurable forms and for configuring forms | |
AU2015903534 | 2015-08-31 | ||
AU2016901683 | 2016-05-06 | ||
AU2016901683A AU2016901683A0 (en) | 2016-05-06 | Methods and systems for form flow and form correlation | |
PCT/AU2016/050678 WO2017020073A1 (en) | 2015-07-31 | 2016-07-29 | Methods and systems for creating configurable forms, configuring forms and for form flow and form correlation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108369481A CN108369481A (zh) | 2018-08-03 |
CN108369481B true CN108369481B (zh) | 2021-07-16 |
Family
ID=57942123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680057310.4A Active CN108369481B (zh) | 2015-07-31 | 2016-07-29 | 用于创建可配置表单,配置表单以及用于表单流和表单相关的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10643025B2 (zh) |
EP (1) | EP3329354A4 (zh) |
CN (1) | CN108369481B (zh) |
AU (2) | AU2016302392B2 (zh) |
WO (1) | WO2017020073A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11467808B2 (en) * | 2015-07-31 | 2022-10-11 | Wisetech Global Limited | Systems and methods for executable content and executable content flow creation |
FR3049343A1 (fr) | 2016-03-22 | 2017-09-29 | Dover Europe Sarl | Dispositif de mesure de debit et de viscosite et son utilisation dans une imprimante |
US11281850B2 (en) * | 2017-12-28 | 2022-03-22 | A9.Com, Inc. | System and method for self-filing customs entry forms |
CN108959458B (zh) * | 2018-06-15 | 2022-02-18 | 南京国通智能科技有限公司 | 数据生成和使用方法、系统、介质及计算机设备 |
CN111078680B (zh) * | 2018-10-18 | 2023-09-26 | 杭州海康威视数字技术股份有限公司 | 表格信息处理方法、装置、电子设备及可读存储介质 |
CN109491646B (zh) * | 2018-10-18 | 2022-08-05 | 北京字节跳动网络技术有限公司 | 一种消息录入方法、装置、电子设备及可读介质 |
CN109460358B (zh) * | 2018-10-22 | 2022-01-28 | 杭州电魂网络科技股份有限公司 | 基于Cmdb的配置管理方法及系统 |
CN109783555B (zh) * | 2018-12-13 | 2021-07-30 | 东软集团股份有限公司 | 表单模板存储方法、装置、存储介质及电子设备 |
USD923649S1 (en) * | 2018-12-28 | 2021-06-29 | Atlantic Technical Organization | Display having a graphical user interface for a software directed at optimizing parallel execution of processes |
CN110162301B (zh) * | 2019-04-01 | 2023-07-04 | 贵州力创科技发展有限公司 | 一种表单渲染方法、装置和存储介质 |
CN110162760A (zh) * | 2019-05-23 | 2019-08-23 | 武汉神算云信息科技有限责任公司 | 一种基于流程环节的表单定制方法 |
US11204690B1 (en) * | 2020-03-05 | 2021-12-21 | Unqork, Inc. | Systems and methods for software development and deployment platforms having advanced workflow and event processing capabilities and graphical version controls |
CN114201538B (zh) * | 2020-09-02 | 2024-09-10 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及智能设备、计算机存储介质 |
US11361033B2 (en) * | 2020-09-17 | 2022-06-14 | High Concept Software Devlopment B.V. | Systems and methods of automated document template creation using artificial intelligence |
JP2022099555A (ja) * | 2020-12-23 | 2022-07-05 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
CN114118031B (zh) * | 2021-11-17 | 2023-08-29 | 之江实验室 | 一种端到端的抹平表单差异性的方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436498A (zh) * | 2011-11-14 | 2012-05-02 | 深圳市华力特电气股份有限公司 | 一种报表生成方法以及相关装置 |
CN102681832A (zh) * | 2011-03-17 | 2012-09-19 | 新奥特(北京)视频技术有限公司 | 一种基于xml的交互方法及装置 |
CN102841883A (zh) * | 2011-06-08 | 2012-12-26 | 株式会社Pfu | 表单提供装置以及表单提供方法 |
CN103218707A (zh) * | 2013-04-10 | 2013-07-24 | 沈阳昭软软件有限公司 | 一种在工作流系统中实现动态表单的方法 |
CN103631570A (zh) * | 2012-08-21 | 2014-03-12 | 镇江雅迅软件有限责任公司 | 一种表单自定义方法 |
CN103793223A (zh) * | 2013-12-27 | 2014-05-14 | 远光软件股份有限公司 | 一种规则创建方法及系统 |
CN103838706A (zh) * | 2012-11-22 | 2014-06-04 | 江苏现代造船技术有限公司 | 一种可定制流程与表单的柔性管理信息系统 |
CN104808603A (zh) * | 2014-01-03 | 2015-07-29 | 费希尔-罗斯蒙特系统公司 | 用于用户显示或者工厂监控系统的具有快速可编辑特性的可重用的图形元素 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5999948A (en) * | 1997-09-03 | 1999-12-07 | 3Com Corporation | Dynamic configuration forms in network management software |
US6128730A (en) * | 1997-12-29 | 2000-10-03 | Bull Hn Information Systems Inc. | Method and apparatus for multilevel software configuration having administrator and software driven override limiting capabilities |
US6314415B1 (en) * | 1998-11-04 | 2001-11-06 | Cch Incorporated | Automated forms publishing system and method using a rule-based expert system to dynamically generate a graphical user interface |
US8099758B2 (en) * | 1999-05-12 | 2012-01-17 | Microsoft Corporation | Policy based composite file system and method |
US8161081B2 (en) * | 2001-03-16 | 2012-04-17 | Michael Philip Kaufman | System and method for generating automatic user interface for arbitrarily complex or large databases |
CA2344074A1 (en) * | 2001-04-17 | 2002-10-17 | George Wesley Bradley | Method and system for cross-platform form creation and deployment |
US20020176628A1 (en) * | 2001-05-22 | 2002-11-28 | Starkweather Gary K. | Document imaging and indexing system |
US9898462B2 (en) * | 2001-09-20 | 2018-02-20 | Wellogix Technology Licensing, Llc | Process and system for providing and managing offline input of field documentation to a complex project workflow system |
JP2004280473A (ja) * | 2003-03-14 | 2004-10-07 | Fujitsu Ltd | ワークフロープログラム生成装置および方法 |
US7769794B2 (en) * | 2003-03-24 | 2010-08-03 | Microsoft Corporation | User interface for a file system shell |
US20060173773A1 (en) * | 2003-07-10 | 2006-08-03 | Ettinger Richard W Jr | Systems and methods for automated offer-based negotiation |
US7516414B2 (en) * | 2004-02-02 | 2009-04-07 | International Business Machines Corporation | System and method for tab order mapping of user interfaces |
GB2411984A (en) * | 2004-05-05 | 2005-09-14 | Business Integrity Ltd | Updating forms |
US7437358B2 (en) * | 2004-06-25 | 2008-10-14 | Apple Inc. | Methods and systems for managing data |
US20060095372A1 (en) * | 2004-11-01 | 2006-05-04 | Sap Aktiengesellschaft | System and method for management and verification of invoices |
US20060129539A1 (en) * | 2004-12-09 | 2006-06-15 | Masashi Nakatomi | Information processing device and method thereof |
US7770124B2 (en) * | 2005-02-11 | 2010-08-03 | Microsoft Corporation | Using a description language to build a management system |
US20070250783A1 (en) * | 2006-04-24 | 2007-10-25 | Ehealthinsurance Services, Inc. | Method and system to provide online application forms |
CA2578466A1 (en) * | 2007-01-12 | 2008-07-12 | Truecontext Corporation | Method and system for customizing a mobile application using a web-based interface |
US20080208794A1 (en) * | 2007-02-22 | 2008-08-28 | Mckesson Medical-Surgical Minnesota Supply Inc. | Method, system, and computer program product for integrating data between disparate and host systems |
US8380533B2 (en) * | 2008-11-19 | 2013-02-19 | DR Systems Inc. | System and method of providing dynamic and customizable medical examination forms |
EP2467974B1 (en) * | 2009-08-21 | 2019-02-27 | Nokia Solutions and Networks Oy | Data completion for managed objects |
US20120102543A1 (en) * | 2010-10-26 | 2012-04-26 | 360 GRC, Inc. | Audit Management System |
US9928375B2 (en) * | 2011-06-13 | 2018-03-27 | International Business Machines Corporation | Mitigation of data leakage in a multi-site computing infrastructure |
GB201112665D0 (en) * | 2011-07-22 | 2011-09-07 | Vodafone Ip Licensing Ltd | Data anonymisation |
US9891780B2 (en) * | 2013-08-30 | 2018-02-13 | Verizon Patent And Licensing Inc. | User-based customization of a user interface |
WO2015065423A2 (en) * | 2013-10-31 | 2015-05-07 | Hewlett-Packard Development Company, L.P. | Treemap optimization |
US9696890B2 (en) * | 2015-05-06 | 2017-07-04 | International Business Machines Corporation | File-centric form selection based on number of mandatory and optional input fields of a form satisfied by a selection of files |
-
2016
- 2016-07-29 CN CN201680057310.4A patent/CN108369481B/zh active Active
- 2016-07-29 WO PCT/AU2016/050678 patent/WO2017020073A1/en active Application Filing
- 2016-07-29 US US15/749,072 patent/US10643025B2/en active Active
- 2016-07-29 EP EP16831967.1A patent/EP3329354A4/en not_active Ceased
- 2016-07-29 AU AU2016302392A patent/AU2016302392B2/en active Active
-
2020
- 2020-04-11 US US16/846,294 patent/US10936802B2/en active Active
-
2022
- 2022-09-19 AU AU2022235518A patent/AU2022235518B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681832A (zh) * | 2011-03-17 | 2012-09-19 | 新奥特(北京)视频技术有限公司 | 一种基于xml的交互方法及装置 |
CN102841883A (zh) * | 2011-06-08 | 2012-12-26 | 株式会社Pfu | 表单提供装置以及表单提供方法 |
CN102436498A (zh) * | 2011-11-14 | 2012-05-02 | 深圳市华力特电气股份有限公司 | 一种报表生成方法以及相关装置 |
CN103631570A (zh) * | 2012-08-21 | 2014-03-12 | 镇江雅迅软件有限责任公司 | 一种表单自定义方法 |
CN103838706A (zh) * | 2012-11-22 | 2014-06-04 | 江苏现代造船技术有限公司 | 一种可定制流程与表单的柔性管理信息系统 |
CN103218707A (zh) * | 2013-04-10 | 2013-07-24 | 沈阳昭软软件有限公司 | 一种在工作流系统中实现动态表单的方法 |
CN103793223A (zh) * | 2013-12-27 | 2014-05-14 | 远光软件股份有限公司 | 一种规则创建方法及系统 |
CN104808603A (zh) * | 2014-01-03 | 2015-07-29 | 费希尔-罗斯蒙特系统公司 | 用于用户显示或者工厂监控系统的具有快速可编辑特性的可重用的图形元素 |
Also Published As
Publication number | Publication date |
---|---|
US10643025B2 (en) | 2020-05-05 |
AU2016302392A1 (en) | 2018-02-08 |
US10936802B2 (en) | 2021-03-02 |
AU2022235518B2 (en) | 2024-04-04 |
EP3329354A4 (en) | 2019-03-20 |
US20200242300A1 (en) | 2020-07-30 |
US20180225273A1 (en) | 2018-08-09 |
AU2022235518A1 (en) | 2022-10-13 |
WO2017020073A1 (en) | 2017-02-09 |
CN108369481A (zh) | 2018-08-03 |
EP3329354A1 (en) | 2018-06-06 |
AU2016302392B2 (en) | 2022-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108369481B (zh) | 用于创建可配置表单,配置表单以及用于表单流和表单相关的方法和系统 | |
US10019239B2 (en) | Systems and methods for enhancing software products through integrated development environment running on host computer | |
CN108369514B (zh) | 用于可执行内容和可执行内容流创建的系统和方法 | |
US7899846B2 (en) | Declarative model editor generation | |
CN108475267B (zh) | 用于可执行内容和可执行内容流分发的系统和方法 | |
AU2015101037A4 (en) | Systems and Methods for Executable Content and Executable Content Flow | |
AU2015101034A4 (en) | Systems and Methods for Executable Content and Executable Content Flow | |
AU2015101035A4 (en) | Systems and Methods for Executable Content and Executable Content Flow | |
AU2015101033A4 (en) | Systems and Methods for Executable Content and Executable Content Flow | |
AU2015101036A4 (en) | Systems and Methods for Executable Content and Executable Content Flow | |
AU2016202908A1 (en) | Methods and systems for creating configurable forms and for configuring forms | |
AU2015101135A4 (en) | Platform-agnostic systems and methods for executable content and executable content flow distribution | |
Wang et al. | Using the Navigation Controller | |
Vesterli | Oracle Visual Builder Cloud Service Revealed | |
AU2015224516B1 (en) | Systems and methods for executable content and executable content flow creation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240530 Address after: New South Wales Australia Patentee after: Huizi Global (Licensing) Co.,Ltd. Country or region after: Australia Address before: New South Wales, Australia Patentee before: WISETECH GLOBAL LTD. Country or region before: Australia |
|
TR01 | Transfer of patent right |