cancel
Showing results for 
Search instead for 
Did you mean: 

How to Retrieve the Message ID in a BPM

Former Member
0 Kudos

I have read several post on retrieving the message ID in a BPM and I'm still not clear on the required steps. From what I've read it appears that within the process the message ID is not available to the transformation step.

However, in one thread mentioned that "the target message of the sender would have to be modified to store the message. Then within the Map assign this field using the system constant at runtime."

I'm really not clear on the steps that I should be take to retrieve the message ID. In my BPM the first step is the Recieve step where we recieve the data into a message interface and there is no mapping required. Afterwards you are within the BPM which, from my reading, means that the message ID is no longer availabe. We then have a transformation step and then a Send step to send the data out and once again mapping is not required.

My question is based on the above process how would I retrieve the message Id?

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Yes a BPM is required. The scenario is as follows:

Receive IDOC from R/3

Transformation using JAVA class mapping program

Switch statement evaluating target structure from JAVA class

If supporting data required in other system – Transformation using another JAVA class

If supporting data required but not available - end process

If no supporting data required continue

Switch statement to route output document

Evaluate Target Structure of JAVA class 1 to determine the type of output

. If email – Transformation step to form email for email adapter

If Industry Standard output - Transformation step that uses another JAVA class

Evaluate output from JAVA class 1 to determine vendor

route to appropriate vendor through JAVA class 3 - this module takes the IDOC as input and outputs the industry standard document that will be routed to customer

Send Step – send document or email

Within each of our JAVA mapping programs we do additional processing by updating the database and writing to log files. Since there is a significant amount of work being done in the JAVA modules we have the "create new instance" checked in the transformation steps that are using JAVA mapping programs. Eventually this will be unchecked but for now we need it for development. We want to capture the message id of the outbound Industry standard document that is being routed to the customers.

Former Member
0 Kudos

Yes, I want to actually save the message ID to a field in a structure that is the input to a JAVA Mapping module. Within my JAVA mapping module I actually save data to the database and the return the required information back to XI.

justin_santhanam
Active Contributor
0 Kudos

Audra,

I would suggest you to do the mapping outside BPM. I mean before the data received by BPM do the mapping.

You've receive---> Transformation----->Send, could you plz tell ur scenario, does BPM really needed in this case?

raj.

justin_santhanam
Active Contributor
0 Kudos

Audra,

Are u retrieving the message id and storing it to any field?

raj.