WORKFLOW-软件快速开发平台
调试系统使用说明书

沃克福勒软件快速开发平台
使用白皮书

V 1.1

WORKFLOW-沃克福勒软件快速开发平台-研发平台数据库对象(业务库及配置库)介绍

数据库对象

三、数据库对象

沃客福勒软件快速开发平台数据库分成“业务库”和“配置库”两个库。业务库主要用于存储系统运行过 程中产生的业务数据以及和流程相关的数据;而配置库只用于存储用来配置系统功能,以及用于支撑系统 各个模块有效运行的配置数据,包含不同模块的列表配置、表单的配置、帮助系统的配置、各类菜单按钮 的配置等等...

1、业务库介绍

业务库是企业用来存储业务数据的专用数据库,企业需求开发者可以将新模块运行时所需要存储的数 据保留在业务库中,其库名固定为:windowdb,该库默认会存在一些少量的初始业务数据,用于支撑系 统的基本运行,例如:组织机构(branch_com_dept)、用户账号(person_user_staff)、通知消息 (cms_content)、工作流定义(wf_def)、工作流实例(wf_ins)等等...

业务的研发人员在开发新的功能需求时,业务相关的数据需要保存在该空间中,可以自主建表、视图、 触发器、存储过程等一系列数据库对象,用于保存业务数据甚至处理业务逻辑。

业务表命名规范
序号前缀说明
1branch_分支数据表,用于存储符合父子关系的数据。
2cms_ 负责存储需要公布的展示信息。
3person 负责存储描述人的信息,如:客户、员工、联系人,等等...
4user 登录系统的账号信息。
5wf_def 系统工作流的定义数据。
6wf_ins 定义好的工作流在运行时的流程实例数据。
7im_xls_ 外部文件导入内部系统过程中产生的中间数据。
8_ 两个表的关联数据信息。
表 3

2、配置库以及通用配置介绍

windowdb_conf 负责存储系统展示的页面、表单、提交表单时的操作...等等一系列支撑软件系统本身运行的配置数据。


a)配置表介绍

配置库中的表,例如:003001001_ad、003001001_dd...


b)配置表名称含义

以“_ad”结尾的配置表或视图(Action Data):主要负责向数据库中添加数据、当然也可以修改和删除,还包括操作数据库时候的必要的查询,是在表单提交时负责执行要执行的SQL语句。

以“_dd”结尾的配置表或视图(Data Detail):主要负责展示表单页面中的表单项以及页签,其中会有一些JavaScript脚本来控制表单页面元素的展示效果。

以“_dd_pt”结尾的配置表或视图(Data Detail Print):主要负责以某种模版或样式打印或者显示详细数据,例如:采购单、小票...

以“_hp”结尾的配置表或视图(Help):主要负责存储对应模块帮助系统要展示内容。

以“_ld”结尾的配置表或者视图(List Data):主要负责存储对应模块列表页面的表头部分配置数据,包括表头列、表头搜索框、和规定要导出的列。

以“_ld_th”结尾的配置表或视图(List Data Table Header):主要负责存储对应模块列表页面的表头部分配置数据,包括表头列、表头搜索框、和规定要导出的列。


b)配置表命名规范

序号表或视图名称后缀说明
1_ad表单提交的时候需要处理的sql动作 (Action Data)
2_dd表单数据明细网页(Detail Data)
3_dd_pt明细数据打印模版(Detail Data Print)
4_ld列表数据(List Data)
5_ld_th列表数据的表头(List Data Table Head)
6_hp帮助(Help)
7_im外部数据导入(Import)
8_ln内部数据关联(Link)
表 4


d)软件模块编号和配置表的关系

配置表的表名是以模块编号开头的,例如:003007003004,登录后点击任意一个模块,列表页面左上角都会带有一个“问号”按钮,例如:快捷菜单的配置列表页面,点击“问号”按钮之后,弹出帮助系统,帮助系统位于界面右侧侧边栏,不同模块的帮助的标题位置都显示模块编号,如下图所示:

查看模块编号
图 47

上图右上角显示的模块:003007003004,就是配置快捷菜单的模块编号,配置快捷菜单功能模块所对应的配置库表有:003007003004_ad、003007003004_dd、003007003004_dd_pt、003007003004_hp、003007003004_ld_th等等...只要是以003007003004开头的表,均是该功能模块所对应的配置表。


e)模版编号和配置数据的关系

模版编号在配置库中被标记为“templid”,例如:windowdb_conf.003007003004_dd表对象中就包含templid列,值被标记为1,表示该功能表单的1号模版,提交时,负责处理提交请求的windowdb_conf.003007003004_ad表对象的templid值也要被标记为1,才可以处理提交过来的数据。否则如果两个模版编号不一致,表示不是同一个业务表单。


f)开启/关闭配置库日志

配置库中默认包含三张引擎默认为BLACKHOLE的表对象,分别是db_log_get_static:用于记录配置库中static_code表对象所提供的资源请求记录,db_log_update_col:用于记录更新行sql,db_log_update_row:用于记录更新列sql,由于MySQL的黑洞引擎是不存储数据的,所以默认不记录日志,若需要记录,只需要将存储引擎修改为:MyISAM即可,反之关闭该日志只需要将相关表引擎修改为BLACKHOLE黑洞引擎即可。


g)静态网页html \ javascript \ css文件配置视图

配置库中static_code视图动态地提供调试系统的伪静态资源,目的是方便统一调试js或者网页样式文件。css资源文件在调试页面调用路径为:{basePath}/getResource/{id}/css;javascript脚本资源文件在调试页面调用路径为:{basePath}/getResource/{id}/js;html网页资源文件在调试页面调用的路径为:{basePath}/getResource/{id}/html;以上{basePath}需要更换成项目的基本路径,而{id}需要更换为static_code视图中id的值。Windowdb_conf.static_code视图的字段说明如下表所示:



静态网页资源配置表-配置库视图对象:windowdb_conf.static_code字段说明
字段名说明
1id主键
2static_code静态资源代码
3note静态资源用途说明
表 5


h)动态aJax请求配置表

配置库中query_list表对象用于存储一个可以被aJax请求调用服务方法,该方法提供一个select查询sql语句,用来查询业务库中的数据,反馈到客户端。同时,还可以在查询之前以及查询之后,分别调用两次写库操作,用来处理同步业务。在javascript aJax代码中请求调用的相对网络路径为:{basePath}/query/{code},同时客户端传入的参数,在sql语句中用占位符的方式可以获取到,具体用法表达式:${参数名}或者’#{参数名}’,windowdb_conf.query_list表的字段说明如下表所示:



动态aJax请求配置表-配置库表对象:windowdb_conf.query_list字段说明
字段名说明
1id主键
2code动态资源代码(唯一)
3visible是否可见(是否生效)
4b_sqlb:befor,在执行查询语句之前执行一条写sql,只能以insert、update、delete开头
5sql查询语句,只能以 select 开头,只返回一行一列数据
6a_sqla:after,在执行查询语句之之后执行一条写sql,只能以insert、update、delete开头
表 6


h)动态input输入组件checkpoint检查数据重复功能配置表

配置库中checkpoint表对象用于存储一个可以被aJax请求调用服务方法,在javascript aJax代码中请求调用的相对网络路径为:${basePath}/checkpoint/{id},同时客户端传入的参数,在sql语句中用占位符的方式可以获取到,具体用法表达式:${参数名}或者’#{参数名}’,和query_list的区别就是checkpoint不执行写库操作,checkpoint表字段如下表所示:



动态aJax请求配置表-配置库表对象:windowdb_conf.query_list字段说明
字段名说明
1id主键
2script查询脚本(SQL语句),只能以 select 开头,只返回一行一列数据
表 7

免费下载试用