BEP, Banner Events Publisher, can be used to capture the data change on the specific tables, like ODI
There are a lot of pre-defined events for the Ellucian delivered tables

Today, I will show you how to use BEP for the user-defined tables.

First, lets create a test table, two columns {TABLE_NAME}_VPDI_CODE and {TABLE_NAME}_GUID are mandatory, because the trigger the BEP generated uses these two columns. We don’t have to fill them.

create table baninst1.bep_test_1(
id number,
name varchar2(30),
gender char(1),
comments varchar2(3000),
bep_test_1_VPDI_CODE varchar2(6),
bep_test_1_guid varchar2(36),
constraint pk_bep_test_1 primary key (id)
)


Then, go to the BEP console, create a new event.
I use USER. as the prefix of the event name. The prefix is used by RabbitMQ to route data to the different queues.


Go to Capture Data tab to add this table into the event.
I am using ID as the reference column.
In BEP, the reference column can only be one column, we can use GUID if it is meaningful.


Go to Triggers table to make sure the trigger was created. If not, click Activate and then Refresh


To the RabbitMQ:
http://emb1.pprd.odu.edu:15672/
Create a queue named user_defined_queue, with a binding


Then, we can insert a data into baninst1.bep_test_1

insert into  baninst1.bep_test_1 values(8,'bbb','F','ccc','dasda','dasdasdsadasd');
commit;


Then, monitor table baninst1.bep_test_1 to wait until the message is consumed

select * from cdcadmin.BEP_MULTI_CONSUMER_TABLE


Go to the page of the queue user_defined_queue
We can check the message in RabbitMQ here

The format of the message in “DEFAULT” integration type:

Message 1
The server reported 2 messages remaining.
Exchange
bep_events_topic
Routing Key
USER.BEP_TEST_1
Redelivered

Properties
app_id:
BEP
priority:
0
delivery_mode:
2
headers:
event:
USER.BEP_TEST_1
content_type:
application/json
Payload 
624 bytes
Encoding: string
{
  "businessEvent": "USER.BEP_TEST_1",
  "messageId": "161572425917",
  "timeStamp": "2020-06-03T15:53:22.897-04:00",
  "sourceOfChange": "Banner",
  "key": "8",
  "entity": "BEP_TEST_1",
  "changeType": "INSERT",
  "changeData": [
    {
      "name": "ID",
      "new": "8"
    },
    {
      "name": "NAME",
      "new": "bbb"
    },
    {
      "name": "GENDER",
      "new": "F"
    },
    {
      "name": "COMMENTS",
      "new": "ccc"
    },
    {
      "name": "BEP_TEST_1_VPDI_CODE",
      "new": "dasda"
    },
    {
      "name": "BEP_TEST_1_GUID",
      "new": "dasdasdsadasd"
    }
  ],
  "additionalData": []
}
Message 2
The server reported 1 messages remaining.
Exchange
bep_events_topic
Routing Key
USER.BEP_TEST_1
Redelivered

Properties
app_id:
BEP
priority:
0
delivery_mode:
2
headers:
event:
USER.BEP_TEST_1
content_type:
application/json
Payload 
624 bytes
Encoding: string
{
  "businessEvent": "USER.BEP_TEST_1",
  "messageId": "161572451091",
  "timeStamp": "2020-06-03T16:00:26.028-04:00",
  "sourceOfChange": "Banner",
  "key": "8",
  "entity": "BEP_TEST_1",
  "changeType": "DELETE",
  "changeData": [
    {
      "name": "ID",
      "old": "8"
    },
    {
      "name": "NAME",
      "old": "bbb"
    },
    {
      "name": "GENDER",
      "old": "F"
    },
    {
      "name": "COMMENTS",
      "old": "ccc"
    },
    {
      "name": "BEP_TEST_1_VPDI_CODE",
      "old": "dasda"
    },
    {
      "name": "BEP_TEST_1_GUID",
      "old": "dasdasdsadasd"
    }
  ],
  "additionalData": []
}
Message 3
The server reported 0 messages remaining.
Exchange
bep_events_topic
Routing Key
USER.BEP_TEST_1
Redelivered

Properties
app_id:
BEP
priority:
0
delivery_mode:
2
headers:
event:
USER.BEP_TEST_1
content_type:
application/json
Payload 
752 bytes
Encoding: string
{
  "businessEvent": "USER.BEP_TEST_1",
  "messageId": "161572557570",
  "timeStamp": "2020-06-03T16:30:32.796-04:00",
  "sourceOfChange": "Banner",
  "key": "7",
  "entity": "BEP_TEST_1",
  "changeType": "UPDATE",
  "changeData": [
    {
      "name": "ID",
      "old": "7",
      "new": "7"
    },
    {
      "name": "NAME",
      "old": "bbb",
      "new": "bbb"
    },
    {
      "name": "GENDER",
      "old": "M",
      "new": "F"
    },
    {
      "name": "COMMENTS",
      "old": "ccc",
      "new": "ccc"
    },
    {
      "name": "BEP_TEST_1_VPDI_CODE",
      "old": "dasda",
      "new": "dasda"
    },
    {
      "name": "BEP_TEST_1_GUID",
      "old": "dasdasdsadasd",
      "new": "dasdasdsadasd"
    }
  ],
  "additionalData": []
}