Recent Blog Entries

Thursday, 10 May 2012

Setting up the AQ Connection from Oracle BRM to AIA 11.2 in the Order to Cash and AABC PIPs

When you install the AIA 11.2 “Comms Order to Cash: SBL CRM and BRM Pre-Built Integration” you will be asked for the BRM Connection Details:

I used the following settings for my environment:

clip_image002

After successful Deployment I got the following errors at startup of soa_server1:

AdapterFrameworkImpl::endpointActivation - Endpoint Activation Error.
The Resource Adapter AQ Adapter was unable to activate the endpoint oracle.tip.adapter.aq.inbound.AQDequeueActivationSpec:{Correlation=DiscountInfoChange, QueueName=BRMQUEUE, DatabaseSchema=brm, SchemaValidation=false} due to the following reason: BINDING.JCA-11975
AQ_INVALID_QUEUE.
Unable to obtain queue table name.
Queue does not exist or not defined correctly.
Drop and re-create queue.

and

AdapterFrameworkImpl::endpointActivation - Endpoint Activation Error.
The Resource Adapter AQ Adapter was unable to activate the endpoint oracle.tip.adapter.aq.inbound.AQDequeueActivationSpec:{Correlation=ProductInfoChange, QueueName=BRMQUEUE, DatabaseSchema=brm, SchemaValidation=false} due to the following reason: BINDING.JCA-11975
AQ_INVALID_QUEUE.
Unable to obtain queue table name.
Queue does not exist or not defined correctly.
Drop and re-create queue.

Cause:

I missed the small note in the 11.2 PIP installation guide saying

Oracle AQ Username: ….Note: This value must be in uppercase (PIN7820) for the OOTB PLM flow to work.

This issue is described in Oracle Support Note ID 1436317.1 : Unable to dequeue data from BRM Queue in O2C Integration

Solution:

Undeploying, reconfiguring  and reinstalling the PIP as mentioned in the note is not necessary. You can correct the invalid lowercase AQ Schema name by modifying the following 2 files:

  • <AIAHome>/services/industry/Communications/BRM/AdapterServices/SyncDiscountInfoChangeBRMAQ/SyncDiscountInfoChangeBRMAQ_aq.jca
  • <AIAHome>/services/industry/Communications/BRM/AdapterServices/SyncProductInfoChangeBRMAQ/SyncProductInfoChangeBRMAQ_aq.jca

Change this to include the uppercase schema name and redeploy both 2 processes:

<property name="DatabaseSchema" value="BRM"/>

Alternatively you can change the value in EM Console:

image

See http://docs.oracle.com/cd/E26778_01/doc.112/e26495/commsordertobill.htm

PS: If you don’t have a fully functional Oracle BRM installation, it is sufficient for the PIP installation to create the BRM schema and the AQ queue:

BEGIN DBMS_AQADM.CREATE_QUEUE_TABLE
(Queue_table => 'brm.brm_qtt',
Queue_payload_type =>
'SYS.AQ$_JMS_TEXT_MESSAGE', compatible =>
'10.0.0');
END;


BEGIN DBMS_AQADM.CREATE_QUEUE (Queue_name
=> 'brm.brmqueue',
Queue_table =>
'brm.brm_qtt');
END;

BEGIN
DBMS_AQADM.START_QUEUE (Queue_name =>
'brm.brmqueue');
END;

No comments:

Post a Comment