cancel
Showing results for 
Search instead for 
Did you mean: 

Technical Context Object in ccBPM

Former Member
0 Kudos

Hi,

I'm trying to use a technical context object (filename) as part of a condition in a ccBPM. Although I can see the correct value of the dynamic attribute in sxmb_moni (e.g. adapter-specific attributes are set correctly), the condition is not evaluated correctly.

Is this a XI bug?

Regards,

Torsten

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Torsten,

Your requirement is not very clear. Do you mean the condition you used in Receiver determination object is not evaluated correctly?

If so, this is not a bug in XI. The problem might be due to some wrong configuration. If, I am missing something, do explain your scenario a bit more...

Regards,

Jai Shankar

Former Member
0 Kudos

Hi Jai,

my scenario is as follows:

I'm getting a file using file sender adapter. The file is given to a ccBPM. Inside the ccBPM, there is a branch. And in the condition of the branch, I want to check the value of the dynamic attribute.

I know that I could use a "dummy" mapping and evaluate the result, but I wonder, that I can not use the context object opportunity as this is a better solution in my opinion.

Regards,

Torsten

bhavesh_kantilal
Active Contributor
0 Kudos

Torsten,

If you look into this thread and read through the discussion you will get some insight on why a few parameters are not accessible inside the BPM.

<i>We ran into the same issue and submitted an OSS Message about it. Here's the response from OSS:

it's a known issue.

when programming a mapping you must differenciate between two cases:

Will your mapping be executed on the BPE (business process engine) or

within an ordinary step on the integration server.

Due to the different functionality of the BPE (e.g. split/merge) some

parameters are not accessible and will not be evatuated there. This is a

behaviour that was designed that way.

if you are calling the mapping from the BPE engine, the MEssage ID

and other constants are not accessible. The BPE engine can

split/merge XI messages and then i makes no sense to correlate

the messages in the BPE engine to any Message ID.

If you are executing the mapping

within an ordinary step on the integration server

all Mapping Runtime Constants mentioned in the document under

http://help.sap.com/saphelp_nw04/helpdata/

en/84/4afc51f65c4e4fabfbbbd25f548ab7/frameset.htm

->Design -> Designing Mappings-> Imported Archives (XSLT/Java)

->java mapping

are accessible.

A possible solution for your problem would be to map the MESSAGE ID

into the Xi payload before the XI message is transferred to the

BPE engine. In the BPE engine you can then read the MessageID

from the XI payload.</i>

Regards

Bhavesh

Former Member
0 Kudos

Hi Bhavesh,

it seems as if this is the reason - in this case unfortunately. Thanks for your help!

Regards,

Torsten

Torsten Engel

Answers (3)

Answers (3)

Former Member
0 Kudos
udo_martens
Active Contributor
0 Kudos

Hi Torsten,

i had some problems with the condition editor as well. If you click on a element of the XSD a path is put to the condition field. Change the path, it has to do with the namespace, so if you put something like "//myElement/myField" it will work (only with double slash, not with full path and namespace).

Regards,

Udo

Former Member
0 Kudos

Hi Udo,

did you try this with technical context objects? I don't think that I can edit the path for technical context objects.

Regards,

Torsten

bhavesh_kantilal
Active Contributor
0 Kudos

Hi,

There are a few SOAP header parameters that are not accessible inside the BPM.

For instance , the message Id is also not accessilbe inside the BPM. Look into this blog and the thread in it for more,

/people/michal.krawczyk2/blog/2005/06/11/xi-how-to-retrieve-messageid-from-a-bpm

Alternate Idea would be to use a mapping before your message enters the BPM ( in the Interface determination ) and read the filename here and add it to some field ( maybe a dummy field ) so that it can be accessed in the BPM.

Regards

Bhavesh