none
Biztalk 2006 R2 Complex IDOC Mapping

    Frage

  • Hi all,

    quite new to Biztalk Development I'm facing a problem or design question, I couldn't find any close answer to.

    I have to do a mapping between a standard SAP idoc and a custom datamaster schema. The idoc schema contains several segments, recurring several times. Within this segments I would like to map a value (Element1 e.g.) to my datamaster schema depending on another value (Element2) of my idoc.

    To make it clearer:

    iDoc-SegmentA (may occur 1 ... n)
        - <Element1>A Date</Element1>
        - <Element2>001</Elememt2>

    DM-Schema
       - DateTime1
       - DateTime2
       - DateTime3

    What I would like to achieve is:

    In case Element2 in SAP is "001" I would like to map DateTime1 to Element1, in case of "002" I would like to map DateTime2, and so on ...

    I solved this by using Looping Functiods and combining with logical funtoids (EQUAL), but since I have plenty of recurring segments and a lot of conditional expressions to evaluate in our business process, the map becomes quite complex and confusing.

    Isn't there a better approach to target topics like this? Custom Scripts (Scripting functoids) or anything else?

    Any help or direction would really be appreciated.

    Thanks a lot in advance,

    Andreas


    • Bearbeitet IBSC GmbH Samstag, 24. November 2012 11:14
    Samstag, 24. November 2012 11:11

Alle Antworten

  • Hallo Andreas,

    da dies das deutsche Forum ist und du von einer GmbH kommst, antworte ich einfach mal auf Deutsch.

    Im Standard wird es keinen besseren Weg geben, das Problem zu lösen. Der einzige Ausweg wäre hier Custom XSLT zu nutzen und diesen über ein Scripting Functoid einzubauen. Allerdings frage ich mich, warum die Felder DateTime1, DateTime2, DateTime3 heißen. Ist dies zwingend der Fall? Falls es nur eine Aufzählung von Feldern wäre, die die den gleichen inhaltlichen Nutzen haben, würde ich dieses Feld nur "DateTime" nennen und die Occurs Werte auf 0-* setzen.

    Falls die Felder jedoch eine andere Bedeutung haben und du wirklich so explizit Mappen musst, wie oben beschrieben, dann ist es leider etwas umständlicher.


    If you like my post or consider it as a valid answer, please use the buttons to show me - Oliver

    Microsoft Most Valuable Professional for BizTalk Server
    http://www.appfabric.de

    Dienstag, 27. November 2012 09:25