基于数据库的企业级智能表单系统设计(asp.net)-架构
接上一篇 基于数据库的企业级智能表单系统设计(asp.net)-架构
这里只讨论和表单有关的架构,工作流以及系统基础架构部分不在本文内。
智能表单系统包含以下几个大的部分:
- 表单设计器
- 表单引擎
- 数据引擎
- 统计引擎
- 项目源代码
- 基础数据库
如下图所示:
2.1表单设计器的作用:
l 提供基于web方式的所见即所得的可视化表单设计器。
l 提供系统内置的各种类型的控件,例如文本框,下拉框,子表等。
l 提供字段属性设置。
l 提供表单属性设置。
l 提供权限配置。
l 提供样式设计器。
2.2数据引擎的作用:
l 根据用户通过表单设计器设计的表单来自动生成对应的后台数据库表(包括多种数据库的实现)
l 用户通过表单设计器进行的修改同步到后台数据库中。
l 作为数据提供者使用,用以和数据库进行数据库交换。
2.3表单引擎的作用:
l 将用户设计好的表单转化成asp.net源代码文件保存。
l 将asp.net格式的表单文件转化成表单设计器可以读取的格式后,以web方式展现给客户进行设计修改。
l 在vs.net中,表单引擎将控件转化成vs.net可以理解的格式,这样客户可以在vs.net中进行二次开发工作。大大减少学习成本,提供工作效率。
l 用户通过浏览器访问智能表单时,表单引擎参与解析,并生成相应的html代码返回给客户。
l 控制表单权限。
l 记录表单操作日志。
2.4统一入口
统一入口为用户提供了简单的方式来访问系统表单,而将复杂的运算放到后台系统自动处理。用户访问只需要提供针对某个表单的参数即可。主要包括两个参数:
l 表单ID。用以确定用户访问那个表单,是用户在设计保单后保存的一个系统的唯一值。
l 记录ID。用以唯一确定访问那条数据。
对于智能表单的访问分为几种模式:
l 访问列表:对于访问某个表单的数据列表,用户只需要传递一个表单ID的参数即可,系统将返回这个表单的记录(表单引擎会根据权限进行判断和过滤数据)。
l 新增记录:用户需要传递表单ID和一个值为空字符串的记录ID,系统将返回这个表单新增记录的界面。
l 修改记录:用户需要传递表单ID和记录ID,系统将返回这个表单修改记录的界面。
2.5基础数据库
基础数据库为用户提供表单配置的相关信息,以及保存用户的表单记录。主要包含以下部分:
l 表单配置信息表:这个表用来保存用户设计的表单的相关信息,包括表单名称,数据库的表名称,权限信息等等。
l 字段配置信息表:这个表用来保存用户设计的控件的相关信息,包括控件名称,控件在数据库中对应的字段名称,验证信息等等。
l 控件类型表:描述每种控件的类型和作用。
l 数据类型表:一个抽象的字段的数据类型描述,用以在映射到不同的数据库时,自动生成每种数据库对应的字段数据类型。
2.6项目源代码
源代码是一个vs.net的项目,是整个系统的二次开发框架,其中一部分是用户设计的表单源代码文件,用户可以在vs.net中对表单源代码文件做二次开发。项目源代码文件是标准的asp.net文件,这样做的好处是:
l 使用vs.net作为二次开发工具而不是使用自己提供的工具,对于用户来说是一个很熟悉的开发环境,并且vs.net提供的非常强大的功能,远非一般公司可以开发出来的。
l 使用标准的asp.net文件作为表单源代码文件的存储介质,这样可以让用户使用自己熟悉的各种技术,包括html,asp.net,javascript,css等来进行二次开发,大大减少用户的学习成本。
l 因为生成了源代码文件,对智能表单的二次开发基本没有任何限制。
(未完待续)
========================================================
比sharepoint更强大的表单功能,图形化的流程设计,与asp.net完美结合,支持vs.net编程扩展
========================================================