on 04-20-2010 8:32 PM
I am using PI 7.1, and I have a 2:1 mapping that takes two input messages and combines them. The mapping itself is very simple: it takes message A, adds two values from message B and creates message C.
This mapping is in a transformation step in a BPM. Message A has several values stored in its dynamic configuration, but after the transformation step, the dynamic configuration values are no longer available (message C has no DynamicConfiguration object in the SOAP Header).
I tried adding a UDF to the mapping that attempts to read and print one of the dc values contained in message A, but I get a null value. It's as if the dc values that came in with message A are destroyed once the 2:1 mapping begins. How can I pass on these original dc values?
I would appreciate any help you could offer!
Thanks,
David
The DC values that I need were read from a database and placed in DC by a Java function called by a UDF. Changing the process to write the values to the Message A structure rather than using DC would not be very simple. I could always write these values to a staging table in a database instead of DC and then read them from the DB every time, but wasn't DC created so that we wouldn't have to use work-arounds like this?
Thanks!
David
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
2:1 mapping....that means you are collecting.....now before messageA enters your BPM make an Interface Determination which will be MessageA --> MessageA....now in here apply Dynamic Configuration and get the values in the target MessageA fields....and then in the BPM access these fields....the fields will be the nodes/ elements of MessageA structure....once inside the BPM Dynamic Configuration does not work....you have to get the values beforehand.
Regards,
Abhishek.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Abhishek,
Thanks for the response. I don't understand when you say that DC does not work in a BPM. I tried removing the second input message (just making it a 1:1 mapping inside the BPM as a test), and the DC values were read and passed successfully. I also have a mapping in the exception branch in the BPM that reads a value in from DC without problems. It would appear that the problem is the fact that the problem mapping is 2:1 rather than that it's in a BPM, right?
Thanks!
David
The eaiest way is creating a different structure for the payload, where the values of DC are included and do a mapping before entering the BPM.
This mapping would be mostly 1:1 mapping, as the source and target structure differs only by the additional DC fields in the target payload.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
85 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.