on 01-20-2010 12:08 PM
Hello all,
i have a scenario MAIL -> PI -> MAIL.
I am working with standard XSD with multiple external references and namespaces for my outbound and inbound structureq. All messages have different structures that i cannot merge because of different namespace untouchable.
I have a Sender Mail Adapter in order to read my mailbox with an interface filling in it.
I know the interface i need to use only when i am reading a specific field in the mail attachment.
My problem is that the interface in the CC refers to one Interface mapping while i need something dynamic. I cannot use also condition in receiver determination or interface determination due to my standard structure.
I would like something to allow me to choose what Interface mapping i use... I recall that each XSD structure are different, this is the main problem for me.
It must be a way to do it but i don't find it, someone got an idea ?
Thanks,
Jean-Philippe
Hi!
Did you think about the opportunity to use BPM? There you can analyze your source message and then decide what mapping has to done etc.
Regards
Heinrich
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Heinrich,
I've thought about that but i was hoping to avoid that.
Why ? Because i have more than 20 differents possible messages i can receive by mail so that's mean, more than 20 branchs in my condition step ! I was hoping to find a more simple way to do it..
Jean-Philippe
Edited by: Jean-Philippe PAIN on Jan 20, 2010 2:16 PM
You can define an XPATH expression independently from the sender interface in the condition editor. You don't even have to chose the right sender interface. You can create a dummy interface and just don't give any real structure. During runtime the xpath condition should be checked by PI. Do you understand, what I mean?
You mean that i use the condition in a receiver determination but, from what i understand, the xpath you use is related to the sender interface (the outbound structure) which is different each time in my case. In that case, i should have as many lines in my receiver determination that i have different interface determination evenif the service receiver is the same no ?
But, if i am understanding well what you are saying, PI doesn't really care about the structure in it ? And when you build your Interface determination it's linked via the sender interface with the receiver determination no ? So if i put a dummy interface, i cannot build a correct interface determination and so on...
Can you be more specific please or give me a simple exemple ?
Edited by: Jean-Philippe PAIN on Jan 20, 2010 2:45 PM
OK, if you always have the same receiver, you should give the condition in the interface determination. On which PI version are you working?
In fact PI doesn't care as much about real fitting interface structures as long as you do not wish to do validation or so. You just have to configure things right. E.g. you can chose as interface the IDoc WBBDLD04, but you give the PI an INVOIC01. If you just transport the message, nobody cares.
Now, if you read the mails from your mailbox with a dummy interface, you actually don't know, what's in your message. You're sending the message always to the same receiver system, so you don't have to give any condition here. Now in interface determination, you give all the interfaces that possibly could be on the inbound side. For each interface you now have to put a condition, where you check with an xpath expression, if it is maybe a WBBDLD04 or an INVOIC01 or a DELVRY03 or whatever you have to check.
Until this evening, i am currently workin on PI 7.0 but from tomorrow, i will be on 7.1.
Ok, i am beginning to understand what your are saying. To be clear, i can put any interfaces in my receiver determination, the important thing is fill up correctly the interface determination, is that right ?
If that's right, what is the purpose of the receiver determination then and how do you link you interface determination with the receiver determination (e.g. the overview for receiver determination will be in red then)
am i clear ?
In the receiver determination you configure which receiver system/service is available for the combination of your sender-system/service and the sender-interface. Creating the interface determination, you have to give the same sender-information as you have given in the receiver determination. When chosing the receiver interface and the needed mapping, you have to know, what king of structure your message has, so the mapping can be processed successfully.
By the way, the sender information in your sender agreement has to be the same as for the receiver determination.
In the interface determination you have to chose the right interface mapping for the sender and receiver interface. You have to make sure to configure this right. During runtime, if you have done everything right, PI takes the sender message and tries to map it into the receiver structure. If your filter works right, also the mapping should work. Just keep in mind that you have to chose the real SenderInterface2ReceiverInterface-mapping and not a Dummy2ReceiverInterface-mapping.
1. With the dummy sender interface in receiver determination, it always says :" no receiver agreement found ...." . They exist with good receiver interface in it...
2. For my informations, if i have two different receiver, this manipulation must be done in the receiver determination for the condition part no ? In that case, i must continue to use dummy interfaces ?
Edited by: Jean-Philippe PAIN on Jan 20, 2010 4:37 PM
Finally, the process works well when the name space are the same with the dummy interface.
Anyway, what i've done
1. Create dummy or generic interface
2. this interface is source target in my Operation Mapping
3. Interface determination with dummy interface and i select the good OM i want to use.
4. sender agreement => dummy interface.
But, finally, my dummy interface has a different namespace than my messages in input and i cannot create as many namespace in PI that i have messages...that's pity, must find a different way i think.
User | Count |
---|---|
86 | |
10 | |
9 | |
9 | |
9 | |
6 | |
6 | |
5 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.