====== Beispiel für Integration via Dateiaustausch mit XML Dateien: ====== Im folgenden Beispiel wird der Klassenaufbau eines ORDERS-Objekts für eine Integration mit Dateiaustausch dargestellt.\\ Die Klasse **ORDERS** implementiert die Schnittstelle **IMapObjectRoot**. Da Mappingobjekte als Baumstruktur aufgebaut sind, bildet die Schnittstelle **IMapObjectRoot** die oberste Instanz dieser Baumstruktur. Die Variablen, welche mit dem Schlüsselwort **public** innerhalb der Klasse deklariert sind, werden als Segmente innerhalb der Objektbaumstruktur als Datenelemente dargestellt.\\ {{:images:sign_warning.png?nolink|}}**Hinweis:** Für die Automatisierte Verarbeitung bzw. Erkennung von Entitätstypen sind entsprechende Einstellungen in den [[prozessdefinition:repositorien:start]] zu tätigen. ===== Beispiel C# Code ===== using System; using System.Collections; using eBiss.Api; namespace XYZ.DB { public class ORDERS : IMapObjectRoot { [MapTrigger, MapExternalName("ORDERSKOPF")] public ORDERS_HEADER HEADER; } public class ORDERS_HEADER : IMapObjectItem { public string DOCNUMBER; public DateTime DOCDATE; [MapSize(35)] public string ORDERTYPE; public DateTime DELIVERYDATEFROM; public DateTime DELIVERYDATETO; [MapFrameDocumentRecipient, MapSize(13)] public string SU_GLN; [MapFrameDocumentSender, MapSize(13)] public string BUYERGLN; [MapSize(13)] public string DELIVERYPARTYGLN; [MapSize(13)] public string ULTIMATECONSIGNEEGLN; [MapSize(13)] public string INVOICERECEIPIENTGLN; [MapSize(3)] public string XYZ_CURRENCYCODE; //XYZ Währungscode [MapListType(typeof(ORDERS_DETAIL)), MapExternalName("ORDERSDETAIL")] public ArrayList DETAIL; } public class ORDERS_DETAIL : IMapObjectItem { public Int32 POSNUMBER; public string EAN; public int ORDEREDQUANTITY; public decimal PURCHASEPRICENET; [MapSize(3)] public string PURCHASEPRICENETCURRENCY; } } Die Klasse **ORDERS_HEADER** beinhaltet die Kopf-Informationen der ORDERS und implementiert die Schnittstelle **IMapObjectItem**. Diese darf nur einmal je Datei vorkommen. Die Klasse **ORDERS_DETAIL** bildet hier die Items-Liste des ORDERS-Objektes ab. Sie implementiert ebenfalls die Schnittstelle **IMapObjectItem**, welche die Objekte der Item-Liste repräsentiert. Diese können im sog. **Arraylist Items** der Klasse **ORDERS_HEADER **((Deklariert mit **MapListType(typeof(ORDERS_DETAIL))**.)) mehrfach enthalten sein, während die ORDERS_HEADER nur einmal vorhanden sind. {{:images:sign_warning.png?nolink|}}**Hinweis:** using eBiss.Api;