BEvent_客制化BusinessEvent通过Workflow Event接受消息传递(案例)

简介: 2014-08-03 Created By BaoXinjian 一、摘要   CREATE TABLE BXJ_BES_EVENTS_T ( DEMO_ID NUMBER, MESSAGE_NAME VARCHAR2(1...

2014-08-03 Created By BaoXinjian

一、摘要

 

CREATE TABLE BXJ_BES_EVENTS_T
(
  DEMO_ID                 NUMBER,
  MESSAGE_NAME            VARCHAR2(100),
  MESSAGE_KEY             VARCHAR2(100),
  MESSAGE_CONTENTS        CLOB,
  PARAMETER_VALUE1        VARCHAR2(4000),
  PARAMETER_VALUE2        VARCHAR2(4000),
  EVENT_DATE              DATE  
);

CREATE SEQUENCE BXJ_BES_EVENTS_S;

 

 

CREATE OR REPLACE PACKAGE bxj_bes_events_pkg
AS
   --2013 Created By BaoXinjian
   FUNCTION process_an_event (p_sub_guid   IN            RAW,
                              p_event      IN OUT NOCOPY wf_event_t)
      RETURN VARCHAR2;
END;

CREATE OR REPLACE PACKAGE BODY bxj_bes_events_pkg
AS
   FUNCTION process_an_event (p_sub_guid   IN            RAW,
                              p_event      IN OUT NOCOPY wf_event_t)
      RETURN VARCHAR2
   IS
      l_demo_rec   bxj_bes_events_t%ROWTYPE;
   BEGIN
      SELECT   bxj_bes_events_s.NEXTVAL INTO l_demo_rec.demo_id FROM DUAL;

      --get evevent itself
      l_demo_rec.message_name := p_event.geteventname;
      l_demo_rec.event_date := p_event.getsenddate;

      --we can use this key to transfer message only
      l_demo_rec.message_key := p_event.geteventkey;

      --optional, get xml data
      l_demo_rec.message_contents := p_event.geteventdata;

      --optional, get parameter
      l_demo_rec.parameter_value1 :=
         p_event.getvalueforparameter ('PARAMETER1');
      l_demo_rec.parameter_value2 :=
         p_event.getvalueforparameter ('PARAMETER2');

      --do anything here
      INSERT INTO bxj_bes_events_t cbd
        VALUES   l_demo_rec;

      RETURN 'SUCCESS';
   EXCEPTION
      WHEN OTHERS
      THEN
         RETURN 'ERROR';
   END;
END;

 

 

二、创建Business Event

 

 

 

 

 

 

 

 三、创建Workflow接受Event

 

 

 

 四、测试

 

 

Thanks and Regards

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
3月前
|
前端开发 Java API
vertx学习总结5之回调函数及其限制,如网关/边缘服务示例所示未来和承诺——链接异步操作的简单模型响应式扩展——一个更强大的模型,特别适合组合异步事件流Kotlin协程
本文是Vert.x学习系列的第五部分,讨论了回调函数的限制、Future和Promise在异步操作中的应用、响应式扩展以及Kotlin协程,并通过示例代码展示了如何在Vert.x中使用这些异步编程模式。
74 5
vertx学习总结5之回调函数及其限制,如网关/边缘服务示例所示未来和承诺——链接异步操作的简单模型响应式扩展——一个更强大的模型,特别适合组合异步事件流Kotlin协程
|
8月前
|
XML 中间件 数据库
基于jeecgboot的flowable流程支持定时捕获事件
基于jeecgboot的flowable流程支持定时捕获事件
137 0
|
5月前
|
API 数据安全/隐私保护 开发者
【优秀程序设计】【good-practice】聚合系统如何实现通道侧回调的业务结果通知?
【8月更文挑战第3天】本文介绍了公司短信平台聚合系统中,短信通道回调的业务处理方法。文章详细描述了如何通过统一回调接口与合理分层设计优化代码结构,避免烟囱式代码堆砌,提高扩展性和维护性。
63 2
|
5月前
|
消息中间件 存储 Kafka
【Azure 事件中心】Flink消费Event Hub中事件, 使用Azure默认示例代码,始终获取新产生的事件,如何消费旧事件呢?
【Azure 事件中心】Flink消费Event Hub中事件, 使用Azure默认示例代码,始终获取新产生的事件,如何消费旧事件呢?
|
JavaScript 前端开发
“深入理解事件处理器、表单综合案例和组件通信“
“深入理解事件处理器、表单综合案例和组件通信“
40 0
|
消息中间件 定位技术 调度
《移动互联网技术》第八章 消息与服务:掌握不同类型广播监听方式,以及创建通知的方法
《移动互联网技术》第八章 消息与服务:掌握不同类型广播监听方式,以及创建通知的方法
70 0
|
JSON 数据格式
RxSwift核心之序列的创建、订阅与销毁
RxSwift核心之序列的创建、订阅与销毁
123 0
[虚幻引擎插件介绍] DTGlobalEvent 蓝图全局事件, Actor, UMG 相互回调,自由回调通知事件函数,支持自定义参数。
本插件可以在虚幻的蓝图 Actor, Obiect,UMG 里面指定绑定和执行消息,可带自定义参数。 参数支持 Bool,Byte,Int,Int64,Float,Name,String,Text,Vector,Rotator,Transform,Object,Actor。
104 0
Revit空闲事件(Idling Event)增强和外部事件(External Event)
Revit空闲事件(Idling Event)增强和外部事件(External Event)
Revit空闲事件(Idling Event)增强和外部事件(External Event)
|
数据采集 消息中间件 XML
【Esper技术专题】一个简单的事件响应功能的案例(2)复杂事件处理引擎
【Esper技术专题】一个简单的事件响应功能的案例(2)复杂事件处理引擎
331 0