flowable流程引擎,自定义函数清除流程相关数据(删除历史,任务,部署等)

news/2024/7/9 22:21:16 标签: postgresql, flowable, activity

-- 通过流程实例id,删除运行中的任务和历史相关数据
CREATE OR REPLACE FUNCTION public.f_delete_act_data_by_processid(_processid text)
 RETURNS void
 LANGUAGE plpgsql
AS $function$
begin
      delete   from  act_ru_actinst  where proc_inst_id_ =_processId; 
      delete   from  act_ru_identitylink  where proc_inst_id_ =_processId;
      delete   from  act_ru_task  where proc_inst_id_ =_processId;
      delete   from  act_ru_variable  where proc_inst_id_ =_processId;
      delete   from  act_ru_execution  where proc_inst_id_ =_processId;

      delete  from  act_hi_actinst where proc_inst_id_ =_processId  ;
      delete  from  act_hi_comment where proc_inst_id_ =_processId  ;
      delete  from  act_hi_identitylink  where proc_inst_id_ =_processId  ;
      delete  from  act_hi_procinst where proc_inst_id_ =_processId  ;
      delete  from  act_hi_taskinst where proc_inst_id_ =_processId  ;
      delete  from  act_hi_varinst  where proc_inst_id_ =_processId  ;
end;
$function$
;

-- 通过项目id,删除项目,及关联的任务,任务日志,流程等相关数据
CREATE OR REPLACE FUNCTION public.f_delete_project_all_by_id(_projectid integer)
 RETURNS integer
 LANGUAGE plpgsql
AS $function$
begin

-- 先删除流程信息,掉上面自定义函数的函数
        execute  format('select f_delete_act_data_by_processId(process_id)   from base_task_info
        where project_id ='||_projectId||'  and process_id  is not null');

-- 再删除业务信息
        execute format( 'delete from  base_task_log where project_id ='||_projectId||' ') ;
        execute format( 'delete from  base_task_info where project_id ='||_projectId||' ') ;
        execute format( 'delete from  base_project_info where id ='||_projectId||' ') ;
         return 1;
end;
$function$
;


http://www.niftyadmin.cn/n/362081.html

相关文章

centos docker容器化部署nginx php项目(详细版)

一、nginx和php的一些原理 1、nginx 是一个 web 服务器,它只能处理静态文件,无法处理 PHP Python 等具体程序语言的请求。所以,原理是这样,用户统一先请求到 nginx,nginx 会再把请求转发给 php-fpm。 2、php-fpm是处…

如何在华为OD机试中获得满分?Java实现【组装新的数组】一文详解!

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Java华为OD机试真题(2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述…

零碳光储 数能未来 | 全系光储产品实力吸睛,科士达精彩亮相SNEC 2023

5月24日,光伏行业最具影响力的全球性展会——“SNEC 2023”在上海盛大开幕。作为行业领先的全能方案供应商,科士达以“零碳光储 数能未来”为主题,携全系光储产品及解决方案重磅亮相。 展会现场,科士达展出的全系解决方案涵盖分布…

《汇编语言》- 读书笔记 - 第3章-寄存器(内存访问):mov、add、sub、push、pop

《汇编语言》- 读书笔记 - 第3章-寄存器(内存访问) 3.1 内存中字的存储问题 3.1 3.2 DS 和 [address]问题 3.2 3.3 字的传送问题 3.3问题 3.4 3.4 mov、add、sub 指令3.5 数据段问题 3.53.1~3.5 小结检测点 3.1 3.6 栈3.7 CPU 提供的栈机制问题 3.6 3.8 …

linux以www用户nologin情况下执行shell命令和配合git实践

在linux中建立网站时,我们一般分配一个www之类的用户给网站应用程序。 如果我们使用root或者具有管理员权限的账号在网站目录下去创建文件时,会遇到各种权限问题。 这时我们可以切换到www用户,这类用户一般是nologin,不允许登录。…

【TRT】使用TensorRT进行分类模型推理

1. pytorch 模型导出为onnx模型 1.1 pytorch 模型代码 import torch import torchvision import cv2 import numpy as npclass Classifier(torch.nn.Module):def __init__(self):super().__init__()#使用torchvision自带的与训练模型, 更多模型请参考:https://tensorvision.r…

23种设计模式之命令模式(Command Pattern)

前言:大家好,我是小威,24届毕业生,在一家满意的公司实习。本篇文章将23种设计模式中的命令模式,此篇文章为一天学习一个设计模式系列文章,后面会分享其他模式知识。 如果文章有什么需要改进的地方还请大佬不…

郑州信源招标采购系统 定制

概述: 招标采购系统是郑州信源运用“互联网”、大数据、人工智能、区块链、物联网等新兴技术,结合供应链管理理念,以招标采购为核心,提供交易、管理、数据、服务、监管为一体的高标准采购管理平台,招标采购系统根据客户…