本帖最后由 kimi 于 2013-11-6 23:16 编辑
您好:关于该问题您可以按照我如下步骤操作:
1、先到视图中把错误数据的id找出来,然后根据id查询动态表单,类似sql如下:
select * from tlk_流程监控回退表单 where ID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6'
2、然后根据这里的文档id,把动态表单中的AUDITORNAMES,AUDITORLIST这两个字段设置为空,类似sql如下:
update tlk_流程监控回退表单 set AUDITORNAMES='',AUDITORLIST='' where ID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6';
3、再根据文档id,把t_document表中的AUDITORNAMES,AUDITORLIST这两个字段设置为空,类似sql如下:
update T_DOCUMENT set AUDITORNAMES='',AUDITORLIST='' where ID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6';
4、再根据文档id,把T_FLOWSTATERT表中的AUDITORNAMES,AUDITORLIST这两个字段设置为空,和把STATELABEL的值设置为您对应结束节点的状态标签名,类似sql如下:
update T_FLOWSTATERT set AUDITORNAMES='',AUDITORLIST='',STATELABEL='完成' where DOCID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6';
5、再根据文档id,去T_NODERT表单查询节点id,类似sql如下:
select * from T_NODERT where DOCID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6'; //T_NODERT表中的id字段值就是T_ACTORRT表对应NODERT_ID字段值
6、再根据第5步查询出来的节点id值,查询T_ACTORRT表的数据,如下图所示:
select * from T_ACTORRT where NODERT_ID in (select id from T_NODERT where DOCID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6');
7、再根据第6步的条件删除T_ACTORRT表中的数据,类似sql语句如下:
delete from T_ACTORRT where NODERT_ID in (select id from T_NODERT where DOCID='11e3-46f2-4e27ae0d-aa7a-99d233fc49f6'); |