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大大帮忙申请一个. ...
随机推荐
- 一个简单的程序,统计文本文档中的单词和汉字数,逆序排列(出现频率高的排在最前面)。python实现。
仅简单统计英文. from collections import Counter f = open('1') c = Counter() for line in f: g = (x for x in ...
- Java 多线程 2015/9/21
http://lavasoft.blog.51cto.com/62575/27069 http://blog.csdn.net/aboy123/article/details/38307539 ...
- NGUI动态给EventDelegate加参数
示例代码如下: 响应的函数声明为: void OnChange(UIToggle toggle) { if(toggle.value) { // do something } } 添加响应的代码如 ...
- js 字符串和数组注意点
var a="foo"; var b=[ "f","o","o"]; a[1]="o"; b[1]= ...
- web.xml配置详解(2)
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的 ...
- phoenxi elixir 框架几个方便的命令
1. 已有命令 mix app.start # Starts all registered apps mix app.tree # Prints the application tree mix ar ...
- C语言控制台窗体图形界面编程(八):鼠标事件
上次讲的是键盘事件,这次我们介绍鼠标事件. 以下先介绍下鼠标事件的结构体以及相关信息. typedef struct _MOUSE_EVENT_RECORD //鼠标事件结构体 { CO ...
- SpringBoot 接收 单个String入参之解决方案
场景: 在做接口时,有的时候,接口入参只需要一个参数,如果将一个参数封装成一个对象很麻烦,故有了以下方式: 思路: spring自带的参数解析器貌似是不具备这个能力的,所有自定义 方式方法: 1.定义 ...
- kali openvas安装
最新的kali需要用apt-get安装后使用 安装 apt-get install openvas 自动设置 openvas-setup 检测设置 openvas-check-setup 如果检测没有 ...
- Metaweblog博客分发体验
在8月份OpenLiveWriter 这篇文章使用博客客户端撰写做了metaweblog的个人服务,支持通过OpenLiveWriter发博客到本站(OurJS),然后再分发到其他博客平台(目前就os ...