Inhaltsverzeichnis

Eigene Backend-Objekte erstellen

eBiss erlaubt die programmatische Anbindung beliebiger Backend-Systeme über die BackendObjectRetriever und -Transmitter Jobsteps. Hierzu muss ein passendes Backend-Objekt implementiert werden, welches von den Jobsteps verwendet wird um Daten mit dem Backend auszutauschen. Eine Beschreibung der Backend-Jobsteps finden Sie hier.

Die Basis für die Implementierung aller Backend-Objekte ist ein .NET 4.5 Projekt (Projektvorlage „Klassenbibliothek“). Die daraus erzeugte .dll muss in ./Plugins Verzeichnis unterhalb der eBiss Installationsverzeichnisses abgelegt werden.

Backend-Objekt für BackendObjectRetreiver

Der BackendObjectRetriever(Ex) verwendet Backend-Objekte welche das „IBackendObjectSender“ (oder ein davon abgeleitetes) Interface implementieren.

Backend-Objekt für BackendObjectTransmitter

Der BackendObjectTransmitter(Ex) verwendet Backend-Objekte welche das „IBackendObjectReceiver“ (oder ein davon abgeleitetes) Interface implementieren.

Schnittstellen

Die für die Erstellung relevanten Schnittstellen befinden sich in der eBiss.Api.dll zu der eine Referenzen in dem .NET Projekt hinzugefügt werden muss. Hierbei ist darauf zu achten immer die aktuellste Version der Bibliothek zu verwenden.

eBiss.Api.IBackendObjectSender

public interface IBackendObjectSender
{
    void Initialize(IJob runningJob);
    bool MoveNext();
    IMapObjectRoot Current { get; }
}

Standard-Interface für die Verwendung des BackendObjectRetrievers. Das Interface ist wie ein Enumerator über die empfangenen Nachrichten aufgebaut.

eBiss.Api.IBackendObjectSenderCommitted

public interface IBackendObjectSenderCommitted : IBackendObjectSender
{
    void CommitCurrent(string messageComRef, string messageInfo);
    void RollbackCurrent(string errorMessage);
}

IBackendObjectSenderCommitted erweitert IBackendObjectSender um ein „Transaktionshandling“ empfangene Nachrichten werden per Methodenaufruf entweder als erfolgreich oder fehlerhaft verarbeitet markiert.

eBiss.Api.IBackendObjectReceiver

public interface IBackendObjectReceiver
{
    bool ReceiveObject(object backendObject);
}

Standard-Interface für die Verwendung des BackendObjectTransmitters. Das Interface nimmt Nachrichten die für den Versand bestimmt sind über die ReceiveObject-Methode entgegen.

eBiss.Api.IBackendObjectTaskAwareReceiver

public interface IBackendObjectTaskAwareReceiver : IBackendObjectReceiver
{
    BackendObjectTaskState BackendObjectTaskState { get; }
}

IBackendObjectTaskAwareReceiver erweitert IBackendObjectReceiver um ein einen Fehlerzustand. Mittels der Felder von „BackendObjectTaskState“ können eine Fehlermeldung, ein Wiedervorlagekommentar und ein Wiedervorlagedatum für eine fehlerhaft versandte angegeben werden.

Optionale Schnittstellen

Die nachfolgenden Schnittstellen, werden ebenfalls von den Backend-Jobsteps berücksichtigt:

eBiss.Api.IApplicationConsumer

Erlaubt dem Backend-Objekt (eingeschränkten) Zugriff auf die eBiss Datenschicht.

eBiss.Api.ISystemVariableConsumer

Erlaubt den Zugriff auf die Systemvariablen des Standard-Systempartners im aktuellen Knoten.

eBiss.Api.ITradingPartnerVariableConsumer

Kann in Kombination mit der Schnittstelle IBackendObjectReceiver verwendet werden, um Variablen des Handelspartners zu übergeben. Die Variablen werden in der folgenden Prioritätenfolge zugewiesen:

D.h., eine Variable „VAT“ bei TemplatePartner überschreibt die gleichnamige Variable „VAT“ vom Default TradingPartner.

eBiss.Api.ILoggingObject

Erlaubt den Zugriff auf ein Logging-Objekt mittels dem Fehler, Warnungen und Informationen im Service- und Trace-Log ausgegeben werden können.