读书人

建立单据的审批程序数据库怎么建表

发布时间: 2012-02-06 15:52:44 作者: rapoo

建立单据的审批程序,数据库如何建表?
在现实中,有可能会碰到这样的情况,一张单据生成后,需要经过若干个人的审批,有一定的审批程序,有些程序是不可逆的,有些是可逆的,从一个程序到另一个程序,这在手工时代很好完成,也很好控制,但我们如何将这一现实模型反映到数据库中,利用数据库技术来模拟实现类似手工模式的审批过程。

要求有通用性!

欢迎大家讨论,重分奖励!

[解决办法]
通过事务来控制 加上判断 如果审批通过就进行下一个步骤 否则事物回滚到上一个步骤
[解决办法]
每一步都设置字段,第一步流程的字段更新上非空后,进行第二部审批,填写相应的审批意见,时间等,记录完毕后,到第三步流程。
[解决办法]
什么叫反应到数据库?没明白?
[解决办法]
建两表:1、单据表 2、审批流程明细表  通过关键字段将两表建关系。
其中第二个表是审批所走过的流程,包括日期,审批人,审批意见等,可以按实际要求定义。
[解决办法]
看看工作流相关的东西及设计再来说数据库。
[解决办法]
单据表
状态表
审批表
审批历史表
......
如楼上,找个workflow的流程来看一下就明白了.
PS:类似这种审批流程的,现在很多workflow的引擎都已经做到很好了.
不一定要自己开发.
[解决办法]

SQL code
先建立一张领导表其中包含三个字段:  领导姓名   所属级别   级别名称 徐开全      A        董事长 金有才      B        总经理 武松        C        武术顾问...........................                                 总--一级领导ID   是否签字     二级领导ID    是否签字      三级领导ID    是否签字--这些是否签字字段,可以默认为0,表示没签字, 当为1的时候,表示已经签字--只有第一级领导ID非空,是否签字为1的时候,第二级的字段才能允许修改--这就可以用触发器来实现--同理:其他级别
[解决办法]
SQL code
--还有:在他的子级领导还没有签字的时候,他的父级虽然已经签字了,还是可以取消的--否则:只有等他的子级取消了签字后,他的父级才能取消--取消签字,只是一个单据验证的逆过程
[解决办法]
单据表,流程设置表
销售单
销售单号、开单日期、单据类别、数量单价相关字段、业务经理审批、业务审批日期、业务审批意见、仓库审核、仓库审核日期、仓库审核意见
流程设置表
单据类别,审判步骤,审判人

在单据设置表里,设置第一步是谁审批,第二步是谁审判。
在审批窗口,刷新出上一步已经审批,当前没有审批的单据。
审批审批确认后,更新审批人、审批日期、审批意见等字段。

[解决办法]
加字段就可以解决的吧

比如说加个标识字段,默认为0,部门经理审批后该字段更新成1,副总审批后更新成10。。。。。。。。依次类推。
[解决办法]
我决得这样就可以了!

单据汇总表(单据编号,日期,操作员,审核1,审核人1,....审核2,审核N,是否执行(记账)
单据明细表(单据编号,相关的明细字段)

当前主管审核是更改审核1为是,反审核改为否,其它类似!
当单据入账时(更改是否执行为是)
[解决办法]
路过
[解决办法]
工作流
[解决办法]
探讨
我决得这样就可以了!

单据汇总表(单据编号,日期,操作员,审核1,审核人1,....审核2,审核N,是否执行(记账)
单据明细表(单据编号,相关的明细字段)

当前主管审核是更改审核1为是,反审核改为否,其它类似!
当单据入账时(更改是否执行为是)

[解决办法]
工作流 审批流 就是这样
[解决办法]
不要在单据的表上加审核1,审核人2,...要有专门的审批流,毕竟不同单据的审批流程不一样的。
比如单据金额500一下的需要小经理审批就可以了 ,大于500的要一堆人审批才可以通过。
审批表,审批状态表,审批历史表,等等

读书人网 >SQL Server

热点推荐