cancel
Showing results for 
Search instead for 
Did you mean: 

Understanding Correlation

Former Member
0 Kudos

Hi All,

even after going through some of the forum i could not get the meaning of correlation. Please explain.

Accepted Solutions (1)

Accepted Solutions (1)

former_member335553
Active Contributor
0 Kudos

hi

Correlation as the name implies is used to correlate / connect the message so that they are assigned to the correct process Instance / BPM.

Correlation joins messages that have the same value for one or more XML elements.bringing a loose coupling of messages: at design time, it enables you to define which message a receive step must wait for, without knowing the message ID.

For example, in a process, receivestep_1receives the message purchaseorder, while receivestep_2receives the message salesorder. Receivestep_1creates a correlation that defines that the corresponding sales order must have the same purchase order number. Receivestep_2uses this correlation. This means that an instance of the process processes a purchase order and the corresponding sales order, which has the same purchase order number.

If it satisfies the relevant correlations, a message can be processed in multiple processes. However, a message is only delivered once per process.

/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi

Answers (3)

Answers (3)

Former Member
0 Kudos

also refer these

See the Bellow Links And You will Surely Get the Meaning of Correlation

/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi

/people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm

/people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi

http://help.sap.com/saphelp_nw04/helpdata/en/a5/64373f7853494fe10000000a114084/content.htm

Check this rcently discussed thread on correlation:

these are usefullinks:

http://help.sap.com/saphelp_nw04/helpdata/en/12/f9bb2fe604a94cbcb4c50dc510b799/frameset.htm

http://help.sap.com/saphelp_nw04/helpdata/en/12/f9bb2fe604a94cbcb4c50dc510b799/frameset.htm

Thanks!!

Former Member
0 Kudos

Hi ranjeet

refre these for more explanation

Go thru this blog to understand about correlations.

Understanding Correlation in XI by Sravya Talanki

Correlation

We use a correlation to assign messages that belong together to the same process instance. A correlation joins messages that have the same value for one or more XML elements. A correlation is therefore a loose coupling of messages: at design time, it enables you to define which message a receive step must wait for, without knowing the message ID.

Correlating Objects:

A correlation enables you to identify objects that belong together, for example, a quotation and the relevant sales order. This involves correlating the objects by using one or more common elements, for example, the quotation number. When you define a Workflow, you can specify the object that the Workflow must wait for, without having to enter the ID of the object.

Mulitcast:

http://help.sap.com/saphelp_nw70/helpdata/en/11/13283fd0ca8443e10000000a114084/frameset.htm

have a look at the following

/people/pooja.pandey/blog/2005/07/27/idocs-multiple-types-collection-in-bpm

1--> Open the correlation editor and in the correlation container.

2--> Give the name of the field that correlates the two files i.e unique for the files received in two receive steps.

3--> Give the message intefaces name that are used to collect the files in the Involved messages.

4--> include the name of the correlation in the activate correlations field of the receive step properties.

Thanks!!

Pls rewards if useful

henrique_pinto
Active Contributor
0 Kudos

Hey Ranjeet,

there are some integration scenarios when you need to refer to another previously sent message. For this reference, you need some common information in the payload of both the currently processed message and the previous message you want to refer to.

For example, suppose you have a sender synchronous call with a purchase order. This call is then sent to a legacy system, as 2 aynchronous calls. First you send the request message, asynchronously, and later the legacy returns the response message, also asynchronously. In order for your system to know that this response is related to that purchase order, in the response they send for example the purchase order number (which was also included in the request message). Then, you can use this Purchase Order Number as a correlation string in your BPM, and the response will be sent to the proper BPM instance (the one which executed that request).

But correlations are not exclusive to BPM. For example, JMS adapter natively has a correlationID for messages in the queues which relate to each other (that's why you can implement a Sync/Async bridge without BPM, for JMS scenarios).

Regards,

Henrique.

Former Member
0 Kudos

hi Henrique ,

as you suggested Ranjeeet the scenario of bpm using correlation.

For example, suppose you have a sender synchronous call with a purchase order. This call is then sent to a legacy system, as 2 aynchronous calls. First you send the request message, asynchronously, and later the legacy returns the response message, also asynchronously. In order for your system to know that this response is related to that purchase order, in the response they send for example the purchase order number (which was also included in the request message). Then, you can use this Purchase Order Number as a correlation string in your BPM, and the response will be sent to the proper BPM instance (the one which executed that request).

<b>can i have the example scenario of this case or similar one</b> .

thanx

HONEY