How to specify the ADB_OPCODE value while sending messagesto an ADB subscriber ? The subscriber class does not have the ADB_OPCODE field in the class schema.

How to specify the ADB_OPCODE value while sending messagesto an ADB subscriber ? The subscriber class does not have the ADB_OPCODE field in the class schema.

book

Article ID: KB0085351

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks Plug-in for Database -
Not Applicable -

Description

Resolution:
Yes the ADB subscriber class will not have ADB_ fields.
This is a known behaviour.(Note: ADB 4.2 includes ADB_OPCODE)

As a workaround you have to use the exception table class
on the publisher side to send the message to the ADB Subscriber.
This class will have ADB_OPCODE where one can specify a value
of "1/2/3/4" ( INSERT/UPDATE/DELETE/UPSERT ).

If there is no exception table defined for the subscription , please
specify one. If an exception table cannot be defined for some reason,
then the other workaround is to configure a dummy publication service
for the destination table and then use the publication class created
to send the message to ADB subscriber.

The reason for this behaviour is as follows :-

The ADB subscriber uses two classes on subscription: one to
define the incoming message, the other to define the schema
of the destination table.Usually, the incoming message class
is a superset of the destination table class. For example,
EMPLOYEES would define the destination table and P_EMPLOYEES
would define the incoming message. From the publisher,
one would send a P_EMPLOYEES message and set the ADB_OPCODE there.
ADB would then refer to the EMPLOYEES class to determine
which fields to pick out of the message.
That would be the standard way to do it for ADB.

Issue/Introduction

How to specify the ADB_OPCODE value while sending messagesto an ADB subscriber ? The subscriber class does not have the ADB_OPCODE field in the class schema.