on 12-19-2006 3:19 PM
Hi all,
Case 1: one DebMas IDoc ==> XI ==> one XML-file : no problems with mapping.
Case 2: several DebMas IDoc's ==> XI ==> one XML-file : problems with mapping.
Explanation:
Incoming DebMas IDoc's:
Businesspartner 1 : no Customer Master Partner Functions (E1KNVPM).
Businesspartner 2 : Customer Master Partner Functions (E1KNVPM).
Businesspartner 3 : Customer Master Partner Functions (E1KNVPM).
Businesspartner 4 : Customer Master Partner Functions (E1KNVPM).
After bundling into one XML-file:
Businesspartner 1 : no Customer Master Partner Functions (E1KNVPM).
Businesspartner 2 : no Customer Master Partner Functions (E1KNVPM) !!!!
Businesspartner 3 : Customer Master Partner Functions of Bp 2 (E1KNVPM) !!!!.
Businesspartner 4 : Customer Master Partner Functions of Bp 3 (E1KNVPM) !!!!.
All the payloads of the IDoc's are correct.
In the message mapping we use a Container for the Partner Functions (shown as below)
Is this a serious bug in the mapping of SAP XI ?
Does anyone knows how to solve this serious problem.
E1KNVVM -
> Partner_Container
E1KNVPM -
> Partner
PARVW -
> ParnerRole
KUNN2 -
> PartnerNumber
Regards,
Theo Pijlman
Hi,
When there is no data for a particular occurence of the field, the value is populated as [], i.e a context change.
You need to use collapse contexts, to ensure that the order of the values in the source is maintained in the target.
Use the display queue, option(in message mapping) for the field in question to look at the values in the queue.
This might give you a better idea of the context changes that I am talking about.
Regards,
Smitha.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Example:
Input idoc has field F1 with occurence 0..unbnd
My input values for field F1 is
1
none
2
3
Say, I have a mapping, F1---->TargetF1
In the target only 3 TargetF1s will be created for the values 1,2,3 and nothing will be created for the field F1 with no value.
To overcome this, use collapse contexts.
F1->collapsecontexts>TargetF1
This way, the TargetF1 fields created will have the following values:
1
blank
2
3
Collapse contexts makes sure that a target is created, even if there is a context change specified at the source.
Hope this is clear.
Regards,
Smitha.
The solution for this problem:
After a lot of try_and_error I used node function "exists" in the message mapping between E1KNVVM <==> Partner_Container and the problem was solved.
Regards,
Theo Pijlman
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.