|
|
本帖最后由 spiral 于 2013-1-22 16:26 编辑
Q:流程过程中如果出现多个状态的错误时候应该如何通过修改数据库修复数据
原帖:http://www.teemlink.com/bbs/viewthread.php?tid=164815
A:您好,你可以通过数据库,对比正常数据与错误数据的差别,并且进行修复,涉及到的表有:t_document、tlk_a、T_NODERT、T_ACTORRT、T_RELATIONHIS、T_ACTORHIS、T_FLOWSTATERT、AUTH_a、T_PENDING、T_FLOW_INTERVENTION
(通过sql来修复多状态并不建议,请慎重使用)- --以下为客户分享例子
- select * from TLK_Travelexpense where item_number='201212130007'
- select * from t_pending where state='11e2-44c9-2c7d717f-a28c-5351ab9509f1' --or state='11e2-3f77-845cd274-93f4-9d720e93f720'
- select * from dbo.T_FLOW_INTERVENTION where docid='11e2-44c7-99df397b-a28c-5351ab9509f1'
- SELECT * FROM T_RELATIONHIS vo WHERE vo.DOCID='11e2-44c7-99df397b-a28c-5351ab9509f1' ORDER BY vo.actiontime
- select * from T_FLOWSTATERT where DOCID='11e2-44c7-99df397b-a28c-5351ab9509f1'
- select * from T_NODERT where DOCID='11e2-44c7-99df397b-a28c-5351ab9509f1'
- --表单表
- --这里的state要和T_FLOWSTATERT的id及T_RELATIONHIS这里的flowstatert_id相同
- update TLK_travelexpense set statelabel='草稿' ,auditornames='xxx'
- where item_number='201212130007'
- --待办表
- --这里的state要和T_FLOWSTATERT的id及T_RELATIONHIS这里的flowstatert_id相同
- update t_pending set statelabel='草稿' ,auditornames='xxx'
- --audituser='11e2-3a0e-80dee300-aa48-f33b08f48f50' --(上一节点的审批人)
- where state='11e2-44c9-2c7d717f-a28c-5351ab9509f1' --(错误的,或新增的流程节点)
- --流程审批参与表
- update t_flow_intervention set statelabel='草稿'
- where docid='11e2-44c7-99df397b-a28c-5351ab9509f1'
- --表单审批人待办消息
- --这里的value为人员ID,就是需要他办理的人
- --update AUTH_UNITREIMBURSE set value='11e2-3a0e-54856ee2-aa48-f33b08f48f50'
- --where VALUE = '11e2-3a0e-65fba5d3-aa48-f33b08f48f50' and doc_id='11e2-4371-2f568172-81ce-67d7745d55fe'
- --删除错误的流程历史
- delete t_relationhis where flowstatert_id='11e2-44c9-3841af38-a28c-5351ab9509f1'
- --删除错误的流程启动项
- delete T_FLOWSTATERT where id='11e2-44c9-3841af38-a28c-5351ab9509f1'
- --删除错误的流程节点
- delete t_nodert where flowstatert_id='11e2-44c9-3841af38-a28c-5351ab9509f1'
复制代码 |
|