一种表单再现的实现方法技术

技术编号:10949265 阅读:83 留言:0更新日期:2015-01-23 10:40
本发明专利技术提出了一种表单再现的实现方法,所述方法包括以下步骤:a.为用户提供一表格形式设计界面,包括设计区域和工具栏,设计区域为可编辑的单元格,工具栏包含可设定属性和样式的功能按钮或选项,用户基于该界面自定义表单内容;b.识别用户自定义的表单内容,包括:识别用户在任意单元格自定义的数据和/或属性;识别自定义的数据和/或属性的样式及布局位置;c.捕获设计完成的表单区域,将该区域内的表单内容转换为格式化数据,并存储为可解析源文件;d.解析表单源文件,将其再现为可交互的表单界面。本发明专利技术将用户自定义的表单内容以格式化数据存储,可方便解析时快速、准确地定位数据以再现用户自主设计的表单界面。

【技术实现步骤摘要】

本专利技术涉及表单设计,尤其涉及。
技术介绍
表单,作为数据采集的入口,是软件应用系统中的重要元素。一个优秀的表单可以为用户起到友好的指引作用,也给用户带来良好的用户体验。 现有技术中的表单设计工具,通常封装了许多复杂的组件和控件,多面向专业开发人员设计使用,在表单设计完成后,一般需要经过与其他代码整合、编译、部署甚至数据库等支持才能将表单完整地呈现,其表单再现过程较为耗时且占用大量的代码空间和编译时间。
技术实现思路
基于上述背景,本专利技术提出,旨在通过解析源文件的方式快速便捷地再现用户设计的表单。 本专利技术的主要技术方案为: ,包括以下步骤: a.为用户提供一表格形式设计界面,包括设计区域和工具栏,设计区域为可编辑的单元格,工具栏包含可设定属性和样式的功能按钮或选项,用户基于该界面自定义表单内容; b.识别用户自定义的表单内容,包括: 识别用户在任意单元格自定义的数据和/或属性; 识别用户自定义数据和/或属性的样式及布局位置; c.捕获设计完成的表单区域,将该区域内的表单内容转换为格式化数据,并存储为可解析源文件; d.解析表单源文件,将其再现为可交互的表单界面,包括: 依据格式化规则读取格式化数据中的各个关键字及键值; 根据各个关键字和键值所代表的含义,将格式化数据解析为对应的表单元素; 识别表单元素,将其再现为可交互的表单界面。 进一步,所述步骤a中,所述可编辑的单元格包括可选定和编辑内容的单元格。 进一步,所述步骤b中,所述识别用户在任意单元格自定义的数据和/或属性包括: 用户在任意单元格内自定义数据后,该单元格内的数据作为默认格式展现;若用户在与该单元格相邻的单元格内定义了属性,则将该单元格内的数据标识为与相邻单元格属性对应的属性名称。 进一步,所述步骤c中,所述表单区域包括: 非空单元格所在的最上行边界、最下行边界,与非空单元格所在的最左列边界、最右列边界所形成的矩形区域。 进一步,所述非空单元格包括:已定义数据内容或属性的单元格。 进一步,所述的属性包括可设置限定条件的数据类型,限定条件包括长度、大小。 在该技术方案中,以表格作为设计界面,可以方便用户像使用办公表格一样设计表单内容和布局,同时也利于软件系统准确定位表单内容。另外,将用户自定义的表单内容以格式化数据存储为源文件,既节省代码空间、便于存储,又方便解析时快速、准确地读取数据。而且,源文件的方式不局限于生成web表单或本地客户端表单,可以更灵活地支持多种表单实现方式,以再现用户自主设计的表单界面。 【附图说明】 图1为本专利技术实施例提供的表单再现的实现方法的流程图。 【具体实施方式】 为使本专利技术的目的、技术方案和优点更加清楚明白,下面结合具体实施例和附图对本专利技术进一步阐述。 参见图1所示,本专利技术提供的表单再现的实现方法主要包括如下的步骤: 步骤101,基于表格设计界面自定义表单内容。 本专利技术实施例中,为用户提供表格形式的设计界面,设计界面包含设计区域和工具栏。其中,设计区域为可编辑的表格,形如excel表格形式,用户可在任意单元格内自定义表单内容;工具栏包含可设定样式和属性的功能按钮或选项,方便用户灵活设计表单内容的显示效果和自定义属性。 另外,用户自定义属性时,包括:用户可为自定义的表单数据选择数据类型并限定其约束条件,例如用户需要定义具有文本属性的姓名,则可以选择文本数据类型,并限定其长度不超过20个字符。 步骤102,识别表单内容。该步骤包括: 识别用户在任意单元格自定义的数据和/或属性。用户在任意单元格内自定义数据后,该单元格内的数据作为默认格式展现,例如在任意单元格输入内容“日期”,则默认将其作为文本识别;若用户在与该单元格相邻的右侧单元格内定义了属性为日期数据类型,则将该单元格内的“日期”标识为与右侧单元格日期属性对应的属性名称,标识对应关系后,用户改变其中任意一个单元格内容的布局,不影响其对应关系;需要说明的是,本实施例以常见的属性名称与属性左右对齐方式进行阐述,因此以相邻的右侧单元格为例,但本专利技术的技术方案并不仅限于此。多样化的表单设计中,也可能出现属性名称与属性上下对齐或其他对齐方式,也可以选择相邻的下方单元格或其他单元格。 识别用户自定义数据和/或属性的样式及布局位置。对于设置了样式的单元格内容,将其多种样式作为整体样式信息存储,例如字体的颜色、大小等;表单内容的布局位置则以单元格所在表单设计区域的行列值来识别。 步骤103,判断是否设计完成,已完成则执行步骤104,否则,返回步骤101,继续设计表单; 步骤104,捕捉设计完成的表单区域。 识别非空单元格所在的最上行边界、最下行边界、最左列边界、最右列边界,其所形成的矩形区域为用户设计完成的表单区域,矩形外的空白表格区域忽略不计。非空单元格包括已定义了数据内容或属性的单元格; 步骤105,格式化表单内容,存储为源文件。 将自定义的数据、属性、样式和布局位置转换为格式化数据,其数据格式可以是现有的数据交互格式如json、xml等,或其他约定规则的数据格式。例如属性可使用json串形式表不为{ sysid: U01020 , proname:姓名,propdatatype: STR, proplength..” 20 },表示该属性定义了姓名为字符串形式,且长度不超过20个字符。 再如,为方便web表单应用,表单内容也可用形如html语言中的table控件格式表不: 〈table〉 <tr> <td bgcolor = red > 姓名:〈/td> <td>< ! —property schema—></td> </tr> ...... 〈/table〉 将格式化后的数据存储为可解析的源文件,如文本文件、xml文件、html文件等。 步骤106,解析源文件。该步骤包括: 读取文件中的格式化数据,并根据约定的格式化规则读取数据中的关键字(key)和键值(value); 根据关键字和键值所代表的含义,将其解析为对应的表单元素,表单元素包括使用html、xml、VFP等语言设计的表单语言或控件。例如将步骤105中的属性{ sysid: U01020 , proname:姓名,propdatatype: STR , prop Iength: 20 }解析为 html 表单元素,贝U可表示为:〈input type = text name =姓名maxlength = 20 >。 步骤107,将解析后的表单内容再现。将解析后得到的表单元素,结合对应的表单设计语言,封装后形成完整的表单界面再现给用户使用。例如,步骤105中的table格式数据解析成对应的html语言的table控件后,则可直接嵌入到html页面中使用,从而再现为表格。 需要进一步说明的是,本领域的技术人员应当意识到,本实施例中所使用的数据格式和代码语言仅为了更清楚地阐述本专利技术的技术方案而举例,而非对本专利技术的限制,本专利技术的技术方案并不仅限于此。 以上所述,仅为本专利技术较本文档来自技高网...

【技术保护点】
一种表单再现的实现方法,其特征在于,该方法包括以下步骤:a.为用户提供一表格形式设计界面,包括设计区域和工具栏,设计区域为可编辑的单元格,工具栏包含可设定属性和样式的功能按钮或选项,用户基于该界面自定义表单内容;b.识别用户自定义的表单内容,包括:识别用户在任意单元格自定义的数据和/或属性;识别用户自定义数据和/或属性的样式及布局位置;c.捕获设计完成的表单区域,将该区域内的表单内容转换为格式化数据,并存储为可解析源文件;d.解析表单源文件,将其再现为可交互的表单界面,包括:依据格式化规则读取格式化数据中的各个关键字及键值;根据各个关键字和键值所代表的含义,将格式化数据解析为对应的表单元素;识别表单元素,将其再现为可交互的表单界面。

【技术特征摘要】
1.一种表单再现的实现方法,其特征在于,该方法包括以下步骤: a.为用户提供一表格形式设计界面,包括设计区域和工具栏,设计区域为可编辑的单元格,工具栏包含可设定属性和样式的功能按钮或选项,用户基于该界面自定义表单内容; b.识别用户自定义的表单内容,包括: 识别用户在任意单元格自定义的数据和/或属性; 识别用户自定义数据和/或属性的样式及布局位置; c.捕获设计完成的表单区域,将该区域内的表单内容转换为格式化数据,并存储为可解析源文件; d.解析表单源文件,将其再现为可交互的表单界面,包括: 依据格式化规则读取格式化数据中的各个关键字及键值; 根据各个关键字和键值所代表的含义,将格式化数据解析为对应的表单元素; 识别表单元素,将其再现为可交互的表单界面。2.根据权利要求1所述的方法,其特征在于,所述...

【专利技术属性】
技术研发人员:牟春林
申请(专利权)人:苏州精易会信息技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1