要实现类似工作流的东西A提交给B B通过提交给C C通过提交给D D退回给C  C退回给B B退回给A
A再提交给B 现在卡在退回这里了
因为提交或退回一次 数据库里会增加一条数据
ID 标题 提交人 接收人 关联ID(同一个流程同一个ID)
 
D退回给C这没问题
问题是C退回的时候只能退回给B 
B退回AD退回给C的时候
D是提交人 C是接收人
怎么去判断C退回的时候去提取B这个值?

解决方案 »

  1.   

    哈哈,标准OA流程引擎阿字段标示阿, 肯定要前进有记录,后退就直接根据前进的记录人ID 读取不行吗?
      

  2.   

    MaterTable: Add  CurrentStatus  int (1,2,3,4) 记录当前级别 接受+1,退回-1
    另一张基础数据表  1=A,2=B,3=C  关联下
      

  3.   

    比如说一请假的流程是这样
    --流程表Flow:FlowId 流程ID,Step 步骤,UserNo人员编号
    FlowId Step UserNo
    1,1,B
    1,2,C
    1,3,D
    1,4,E
    --提交表:ID:请假条的ID,FlowId,Step,UserNo同上,Flag:0提交,1回退
    Id,FlowId,Step,UserNo,Flag
    1 ,1     ,1   ,B     ,0
    1 ,1     ,2   ,C     ,0
    1 ,1     ,3   ,D     ,0--回退的时候,根据FlowId,Step-1到Flow表找要回退的人。
      

  4.   

    工作流表設計:關聯ID       源     目的       操作時間
    ----------------------------------------------
    RelationID  Source Destination OperationTime
      

  5.   

    个人觉得提交用1 ,没有提交用0 或null 标识,!很容易做到楼主的要求的!!