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大大帮忙申请一个. ...
随机推荐
- vuex秘籍
vue项目开发中,大型项目一般vuex所需要存储的状态一般都很都,这时,我们便需要进性模块化划分,然后 再页面中采用映射来实现state的调用: 目录一般如下: store为总的状态库存放文件. mo ...
- base64 和 Blob 相互转换
Base64 to Blob function dataURLtoBlob(dataurl) { var arr = dataurl.split(','), mime = arr[0].match(/ ...
- 【javascript】jquery杂记
checkbox $("#checkfirst").prop("checked") $('#chk-select-silent').is(':checked') ...
- 21天学通C++_Day6
0.指针&数组 数组是指向其第一个元素的指针,即数组变量就是指针.故可将(*)用于数组,也可将([])用于指针,eg: int MyNums[5] = {0}; int* pNums = My ...
- oracle中查询结果集为空,则得到一个默认值
有同事问我上述问题,我把我的实现思路写出来.子查询把查询的结果和默认的结果全部显示.父查询通过伪列rownum来筛选,如果查询有结果,就有几条就显示几条,而不去显示子查询中的默认值:如果查询没有结果, ...
- BZOJ4152 AMPPZ2014 The Captain 【最短路】【贪心】*
BZOJ4152 AMPPZ2014 The Captain Description 给定平面上的n个点,定义(x1,y1)到(x2,y2)的费用为min(|x1-x2|,|y1-y2|),求从1号点 ...
- Roslyn 入门:使用 Roslyn 静态分析现有项目中的代码
Roslyn 是微软为 C# 设计的一套分析器,它具有很强的扩展性.以至于我们只需要编写很少量的代码便能够分析我们的项目文件. 作为 Roslyn 入门篇文章,你将可以通过本文学习如何开始编写一个 R ...
- 应该抛出什么异常?不应该抛出什么异常?(.NET/C#)
我在 .NET/C# 建议的异常处理原则 中描述了如何 catch 异常以及重新 throw.然而何时应该 throw 异常,以及应该 throw 什么异常呢? 究竟是谁错了? 代码中从上到下从里到外 ...
- 用fiddler设置手机代理
做App测试的朋友可能因为环境的需要,要切换不同的测试环境,这时就需要在自己的电脑上配置好环境,然后在手机上设置代理,用WiFi连自己的电脑,这样一来,手机网络走的就是自己的电脑网络,也就是说,手机的 ...
- Windows常用配置和sublime快捷键
常用配置和快捷键 1.操作系统常用配置 (1)系统调整为最佳性能 (2)文件夹显示设置:显示文件类型.显示路径 (3)任务栏设置:锁定任务栏+使用小图标2.操作系统常用快捷键 win+数字键--快速打 ...