K2 Blackpearl中从数据库直接删除流程实例之K2ServerLog表
转:http://www.cnblogs.com/dannyli/archive/2012/11/29/2794845.html
/************************************************************************************************
** 功能:根据实例ID,删除[K2ServerLog]中的流程实例数据(物理删除,不可恢复,操作前请备份)
** 作者:Danny,Li [xing.dong.li@163.com]
** 日期:2012-11-28
** 版本:v121128
************************************************************************************************
** 返回值 返回值描述
** ------ --------------------------------------------------------------
**
**
************************************************************************************************
** 修订日期 修订作者 修订描述
** ---------- -------- -----------------------------------------------
**
**
************************************************************************************************/
USE [K2ServerLog]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[uSP_DeleteK2ServerLogProcInst]
@procInstID INT -- Process Instance ID
AS
SET NOCOUNT ON
BEGIN
PRINT 'Delete process instance from K2ServerLog for ID = '+ CAST(@procInstID AS VARCHAR(50)) +' starting'
DECLARE @iError INT
SELECT @iError = @@Error
BEGIN TRANSACTION
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInst'
DELETE _ActInst WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstAudit'
DELETE _ActInstAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstAudit'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstDest'
DELETE _ActInstDest WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstDest'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstDestData'
DELETE _ActInstDestData WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstDestData'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstDestDataAudit'
DELETE _ActInstDestDataAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstDestDataAudit'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstDestXml'
DELETE _ActInstDestXml WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstDestXml'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ActInstDestXmlAudit'
DELETE _ActInstDestXmlAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInstDestXmlAudit'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _EscInst'
DELETE _EscInst WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _EscInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _EventInst'
DELETE _EventInst WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _EventInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _IPC'
DELETE _IPC WHERE SrcProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _IPC'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _LogBatch'
DELETE _LogBatch WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _LogBatch'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _LineInst'
DELETE _LineInst WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _LineInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInst'
DELETE _ProcInst WHERE ID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ProcInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInstAudit'
DELETE _ProcInstAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ProcInstAudit'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInstData'
DELETE _ProcInstData WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ProcInstData'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInstDataAudit'
DELETE _ProcInstDataAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ProcInstDataAudit'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInstXml'
DELETE _ProcInstXml WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ActInst'
SELECT @iError = @@ERROR
END
IF @iError = 0
BEGIN
PRINT 'Removing process instance from _ProcInstXmlAudit'
DELETE _ProcInstXmlAudit WHERE ProcInstID = @procInstID
PRINT CAST(@@ROWCOUNT AS VARCHAR(10)) + ' records removed from _ProcInstXmlAudit'
SELECT @iError = @@ERROR
END
IF @iError <> 0
BEGIN
ROLLBACK TRANSACTION
PRINT 'Delete process instance from K2ServerLog for ID = '+ CAST(@procInstID AS VARCHAR(50)) +' rollback'
END
ELSE
BEGIN
COMMIT TRANSACTION
PRINT 'Delete process instance from K2ServerLog for ID = '+ CAST(@procInstID AS VARCHAR(50)) +' commit'
END
END
K2 Blackpearl中从数据库直接删除流程实例之K2ServerLog表的更多相关文章
- K2 Blackpearl中从数据库直接删除流程实例之K2Server表
转:http://www.cnblogs.com/dannyli/archive/2012/11/29/2794772.html /********************************** ...
- EBS中OPM成本更新处理流程及对应的表结构、SLA表
OPM成本更新流程: 1.跑实际成本处理 功能作用:计算成本 2.成本更新 功能作用:更新成本 3.OPM会计预处理程序->活动->提交流程 功能作用:是创建会计事件 ...
- 工作流学习——Activiti流程实例、任务管理四步曲 (zhuan)
http://blog.csdn.net/zwk626542417/article/details/46646565 ***************************************** ...
- Activiti的流程实例及挂起激活(七)
1.1什么是流程实例 参与者(可以是用户也可以是程序)按照流程定义内容发起一个流程,这就是一个流程实例.是动态的.流程定义和流程实例的图解: 1.2启动流程实例 流程定义部署在 activiti 后, ...
- Activiti 流程实例、任务、执行对象及相关的表
一个流程中,流程实例只有一个,执行对象可以有多个(如果存在分支和聚合) SELECT * FROM activiti.act_ru_execution a; #正在执行的执行对象表 SELECT * ...
- 将数据库中的表注册到K2服务中,并封装为Smart Object
转:http://www.cnblogs.com/dannyli/archive/2011/08/15/2139550.html K2 blackpearl项目中经常需要将其他数据中的表注册到K2服务 ...
- 使用C#代码发起K2 Blackpearl流程
转:http://www.cnblogs.com/dannyli/archive/2011/08/02/2125285.html 使用C#代码,发起一个K2的流程,其形式和链接SQL Server数据 ...
- K2 blackpearl 流程开发(二)
转:http://blog.csdn.net/gxiangzi/article/details/8444590 本来想一篇文章把流程开发介绍完的,后来发现实在是太多了,只好分成两部分了.上一篇很简单的 ...
- K2 blackpearl 流程开发(一)
转:http://blog.csdn.net/gxiangzi/article/details/8444060 郁闷,今天K2的license过期了,很多东西都没法用了,还得去找PM大大帮忙申请一个. ...
随机推荐
- es6模块化开发
export导出 import导入 export {a:b} Export default {a:b}
- vue中如何引入全局样式或方法
vue中我么会经常用到通用的一些全局的方法,如何左才能实现全局的复用减少代码累赘呢? 我们一般将公用的方法分装再utils.js文件中,然后再main.js主入口文件中将utils.js中的公共的方法 ...
- wait() ,notify() ,notifyAll(),synchronized 和同步方法锁,对象锁的联系,关系,区别;
一直不明白一个问题,因为在书上关于生产者和消费者的例子里看到一段这样的代码,估计很多人都和我一样迷惑 public synchronized void set(String name, String ...
- Uoj 441 保卫王国
Uoj 441 保卫王国 动态 \(dp\) .今天才来写这个题. 设 \(f[u][0/1]\) 表示子树 \(u\) 中不选/选 \(u\) 时的最小权值和,显然有:\(f[u][0]=\sum ...
- BZOJ3887 [Usaco2015 Jan] Grass Cownoisseur 【tarjan】【DP】*
BZOJ3887 [Usaco2015 Jan] Grass Cownoisseur Description In an effort to better manage the grazing pat ...
- BZOJ2763 JLOI2011 飞行路线 【最短路+DP】
BZOJ2763 JLOI2011 飞行路线 Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n ...
- .NET Core/Framework 创建委托以大幅度提高反射调用的性能
都知道反射伤性能,但不得不反射的时候又怎么办呢?当真的被问题逼迫的时候还是能找到解决办法的. 为反射得到的方法创建一个委托,此后调用此委托将能够提高近乎直接调用方法本身的性能.(当然 Emit 也能够 ...
- Objective-C中的浅拷贝和深拷贝
浅拷贝 浅拷贝就是对内存地址的复制,让目标对象指针和源对象指向同一片内存空间.如: char* str = (char*)malloc(100); char* str2 = str; 浅拷贝只是对对象 ...
- 《DSP using MATLAB》示例Example 6.12
上代码: % x = -8:7 y = TwosComplement(x, 4) y = dec2bin(y, 4); disp(sprintf('%s', [y'; char(ones(1, 16) ...
- pipeline的存储代码
在spider中最后一个函数返回item时会scrapy会调用pipeline里面的 process_item(self, item, spider):函数并传入item,spider等参数在这里可以 ...