业务流程:一张卡片由一个最低层的单位录入数据,并上报(上报过程可能有N级)到上一级单位,也有可能越级上报。上一级单位可以选择接收或退回,一旦接收后,只能退回,不可删除;且下一级的单位只能浏览,不能修改;未接收的时候,下一级单位可以取消上报。一条记录里应该能明确看出上报的过程和时间以及单位等信息,这样便于查询统计。
想了很久也没有好的办法,希望大家帮忙!!!
(本来可以用多条记录来实现这个流程,但我想用一条记录就可以表示,不知道能不能实现?)。
想了很久也没有好的办法,希望大家帮忙!!!
(本来可以用多条记录来实现这个流程,但我想用一条记录就可以表示,不知道能不能实现?)。
解决方案 »
- 这样的存储过程如何来写?
- 大家看下!!!!!!
- 用INDEXPROPERTY函数的哪个属性可以得到索引的STATISTICS_NORECOMPUTE?
- 急!!! 请问如何用SQL语名实现取得结果集中的某一部分?
- 谁能提供一个完整的嵌套游标的例子?
- varchar能外键关联int类型吗? error1005
- 各位老大救命,怎样写存储过程判断一个表中的每条记录在另一个表有对应的记录
- 难题求教:我想用insert语句后取出的自动编号,再加到当前记录的另外一个字段中,用什么妙计速度最快?谢谢!!!!
- 这个sql语句该怎么写,急急,在线等!!!
- 求一多对多效果?
- 如何调用临时表,急,在线等?
- 一个有关函数的问题,请高手指点
如果一定要记录在一个字段里,用一个varchar(8000)/text字段记录业务流程,每次处理都在text字段最后追加最新的处理信息。
2张预设流程。即所有卡可能的所有流程。类型->流程
2张实际流程。即实际用的卡选择的流程。卡->流程这样可以通过卡->类型的对应,去查询预设流程表获得实际流程。就可以实现你的要求了。
一个表记录卡片信息,一个表记录上报单位,这些单位是有层次的,你可以关注我的blog
http://blog.csdn.net/geniusli/archive/2006/03/16/626155.aspx
来解决分层问题。
前两个表是多对多的关系,所以还需要一个关系表来存放上报信息。t_cardinfo
-------------------------
cardid varchar(20)
cardname varchar(30)
carddate datetime
...
...t_company
-------------------------
companyid varchar(20)
companyname varchar(20)
...
...t_cardcompany
-------------------------
cardid varchar(20)
companyid varchar(20)
是否批准 boolean
是否退回 boolean
上报日期 datetime
批准日期 datetime
退回日期 datetime
...
...
上一级单位可以选择接收或退回,一旦接收后,只能退回,不可删除;且下一级的单位只能浏览,不能修改;未接收的时候,下一级单位可以取消上报。一条记录里应该能明确看出上报的过程和时间以及单位等信息,这样便于查询统计。
至于以上的功能,不规数据库分析与设计问题,是业务规则。
比如:未接收的时候,下一级单位可以取消上报
解决:是否批准为空时可以删除此卡其实所有数据都是在一个数据库内变动,并没有存储在上级单位的电脑上,上级单位看到的只是一个view。