Die Verwaltung synchronisierter Verzeichnisse ist mit eBiss 3 möglich.

Man benötigt dazu jeweils einen Harddisk ChannelReceiver, den passenden ChannelSender und einen FileEventListener.

Damit nur jeweils geänderte Dateien übertragen werden, prüfen die EventListener auf das ArchivFlag, nur wenn eine Datei geändert wurde, erhält sie das ArchivFlag.
Die Dateien werden abgeholt, übermittelt und auf der anderen Seite wieder geschrieben.

Konfiguration des  EventListeners:

OnlyCheckFilesWithArchiveFlag prüft auf Dateien mit Archive Flag. Anders als sonst, wird auch auch geprüft, dass keine versteckten Dateien ausgelöst werden, außerdem muss sich die Datei auch noch exclusiv öffnen lassen, sonst schlägt der EventListener nicht an. (Man kann das im LogDebug nachverfolgen).

 

 Neue FileHandling Methode im HarddiskReceiveChannel:

Stellen Sie den Channel so ein, dass er exclusiv lockt:

Neue Einstellung im Harddisk ChannelSender für FileExists Handling:

Eine funktionierende Beispielkonfiguration ist in StandardTemplates unter DirectorySync zu finden.

 

Zusätzlich zu den vorgestellten neuen Eigenschaften gibt es noch zwei Erweiterungen. Zum einen prüft der HarddiskChannelSender auf ein gesetztes ArchiveFlag beim Schreiben und falls er das findet (Datei wurde auch beiden Seiten geändert), wird die neue Datei mit einem Zähler daneben gelegt, damit die Benutzer die Möglichkeit haben die Änderungen zusammenzuführen.

Man kann dem HarddiskReceiver nun ein MaxKB Limit mitgeben, damit nicht alle Daten sofort abgeholt werden (Im Falle grosser Verzeichnisse). Dann nimmt er so lange Dateien, bis die Grenze zum ersten mal überschritten ist, aber eben mindestens eine Datei.

Zusätzlich hat man die Möglichkeit mit der neuen JobBox MEssageContentRemover, den Inhalt grosser Dateien direkt wieder aus dem MessageStore zu entfernen.

 

 

 

 

Gemäß der ZUGFeRD-Spezifikation sind EDIFACT INVOIC mit den BGM-Qualifiern 380, 84 und 389 zulässig.

Für Pranke Elektronische Rechnung (PER)  werden Gutschriften vom Typ 381 in Rechnungskorrekturen vom Typ 380 umgewandelt.

Auszug aus „Das ZUGFeRD-Format_1p0.pdf“:

891  5.1 Definierte Rechnungsarten
892  Es werden bei ZUGFeRD die folgenden Rechnungsarten unterstützt:
893  ZUGFeRD Basic
894  • Handelsrechnung (Rechnung für Waren und Dienstleistungen) mit dem Code 380
895  • Bescheide (z. B. Zahlungsaufforderung von Behörden) mit dem Code 380
896  Kaufmännische Gutschrift (z.B. Rechnungskorrektur/Storno) mit negativen Werten (Code 380)
897  In ZUGFeRD Comfort zusätzlich:
898  • Wertbelastung/Wertrechnung ohne Warenbezug (Code 84)
899  • Wertgutschrift ohne Warenbezug mit negativen Werten (Code 84)
900  In ZUGFeRD Extended zusätzlich:
901 • Selbst ausgestellte Rechnung (Steuerrechtliche Gutschrift/Gutschriftsverfahren, Code 389)
902  • Selbst ausgestellte Gutschrift mit negativen Werten (Code 389)

Quelle: https://www.ferd-net.de/downloads/zugferd-1.0/index.html

Um im UNB Segment die Testkennung zu setzen, ist in dem Feld 0035 eine ‚1‘ einzutragen.

Die EDIFACT Struktur sieht folgendes vor:

  • GRP10(details of all package levels)
    • CPS (CONSIGNMENT PACKING SEQUENCE )
    • GRP11(A group of segments identifying packaging, physical dimensions, marks and numbers, quantities, date and time information, handling information and information about packing at this level. )
      • PAC(PACKAGE)
      • QTY(QUANTITY: A segment to specify the quantity per package described in the PAC segment.)
      • GRP13(A group of segments specifying markings, labels, and packing numbers. )
        • PCI(PACKAGE IDENTIFICATION: A segment specifying markings and/or labels used on individual physical units (packages) described in the PAC segment. )
        • GRP14(A group of segments giving package identification numbers and, where relevant, delivery limitation information.)
          • GIN(GOODS IDENTITY NUMBER: A segment providing the identity numbers of packages being despatched.)
  • GRP15(A group of segments providing details of the individual despatched items.)
    • LIN
    • etc,
    • etc

D.h. die GRP10 wird von äußerer Verpackung bis zur innersten Verpackung aufgebaut, erst dann kommen die LINs. Geschwister in der Hierarchie werden natürlich auch wiederholt und mit deren Unter-Verpackungen und LINs angegeben. Es müsste demnach etwa so aussehen:

erste Verpackungsebene

CPS+1
PAC+2++201‚ Anzahl Paletten

zweite Verpackungsebene

CPS+2+1‚(die erste Palette, Kind von CPS+1)
PAC+35++CT (Anzahl Kartons auf erster Palette)
GIN+
AW+60101‚ Paletten Nummer

dritte Verpackungsebene

CPS+3+2‚(der erste Karton, Kind von CPS+2)
PAC+1+1:35+CT‚(1 Karton, fixe Anzahl=1)
QTY+52:32:PCE‚ Anzahl der Artikel im Karton
PCI+33E
GIN+BJ+7714‚ Kartonnummer
LIN+11++8436037080616:EN‚ Erster Artikel aus Karton 7714
.
.
.
LIN+11++8436037080617:EN‚ Zweiter Artikel aus Karton 7714

CPS+4+2‚(der zweite Karton, Kind von CPS+2)
PAC+1+1:35+CT‚(1 Karton, fixe Anzahl=1)
QTY+52:32:PCE‚ Anzahl der Artikel im Karton
PCI+33E
GIN+BJ+7715Kartonnummer
LIN+11++8436037080616:EN‚ Erster Artikel aus Karton 7715
.
.
.
LIN+
11++8436037080617:EN‚ Zweiter Artikel aus Karton 7715 

zweite Verpackungsebene

CPS+5+1‚(die zweite Palette, Kind von CPS+1)
PAC+29++CT (Anzahl Kartons auf zweiter Palette)
GIN+AW+60102‚ Paletten Nummer

dritte Verpackungsebene

CPS+6+5‚(der erste Karton, Kind von CPS+5)
PAC+1+1:35+CT‚(1 Karton, fixe Anzahl=1)
QTY+52:32:PCE‚ Anzahl der Artikel im Karton
PCI+33E
GIN+BJ+7716‚ Kartonnummer
LIN+11++8436037080616:EN‚ Erster Artikel aus Karton 7716
.
.
.
LIN+11++8436037080617:EN‚ Zweiter Artikel aus Karton 7716 

CPS+7+5‚(der zweite Karton, Kind von CPS+5)
PAC+1+1:35+CT‚(1 Karton, fixe Anzahl=1)
QTY+52:32:PCE‚ Anzahl der Artikel im Karton
PCI+33E
GIN+BJ+7717‚ Kartonnummer
LIN+11++8436037080616:EN‚ Erster Artikel aus Karton 7717
.
.
.
LIN+11++8436037080617:EN‚ Zweiter Artikel aus Karton 7717

IT-Fachbegriffe
Cross Docking Verfahren, bei dem für einen Endbestimmungsort vorkommissionierte Ware in einem Verteillager nur noch auf Packstückebene umverteilt wird.
CRP-Programm Das Cyclic Replenishment Program ist ein Verfahren zur regelmäßigen Nachversorgung von Artikeln.
EAN Die Internationale (früher europäische) Artikelnummer ist ein international eindeutige Artikelidentifikation.
EANCOM Ein Subset von EDIFACT, getragen von EAN.UCC, speziell für Handel und Konsumgüterindustrie.
EAN International Die Dachorganisation für die Vergabe von Artikel- und Firmenidentifikationen betreut diverser Standards, u. a. EANCOM.
EAN.UCC Die Dachorganisation von EAN International und UCC.
EDI Electronic Data Interchange (elektronischer Datenaustausch) ist ein Oberbegriff für den strukturierten Datenaustausch zwischen Anwendungen.
EDIFACT Electronic Data Interchange For Administration, Commerce and Transport ist ein international normierter Basisstandard des EDI, getragen von UN und ISO.
GLN Die Global Location Number ist eine international eindeutige Identifikation eines Unternehmens und wird von der EAN.UCC vergeben.
GTIN Die Global Trade Item Number (internationale Artikelnummer) ist der Nachfolger von EAN und UPC.
Material-EDI Das Profil des DTB für den Datenaustausch zwischen Produzent und Zulieferer.
NCTS Das New Computerized Transit System ist ein EDV-gestütztes Versandverfahren in Europa in Verbindung mit dem Zoll.
PLV Die passive Lohnveredelung.
SSCC Der Serial Shipping Container Code ist eien Packstückkennung von EAN.
Subset Ein Teilbereich eines Standards, z.B. EANCOM von EDIFACT.
UPC Der Universal Product Code ist eine Entsprechung der EAN in den USA.
VAN Das Value added network ist ein Mehrwertdienst, also Netzwerke, mit zusätzlichen Leistungen zur reinen Verbindung.
WWS-Profil Anwendungsprofil von EANCOM für den Lifestyle-Handel
XML/EDI Electronic Data Interchange using eXtensible Markup Language beschreibt elektronischen Datenaustausch mittels XML oder Ansätze, wie ebXML, Bizztalk, jedoch noch kein Standard.

Der Kunde übermittelt in der Artikelbezeichnung Umlaute. Kann man hier eine Regel einbauen, damit der Umlaut in UE umgestellt wird?

Es gibt z.Zt. keine spezifische Mappingfunktion in eBiss welche Umlaute umwandelt. Aber man kann sich mit der Replace() Funktion behelfen.

Ist es möglich im Mapping eine Regel einzubauen- ist das Feld nicht gefüllt, dann setzte eine „1“?

Ja, mit einem alternativen Selektor.

Es folgt eine kurze Step-By-Step Erklärung wie man den Kommunikationskanal einstellt um den TSL/SSL Zugang zu eGate zu nutzen.

  1. Öffnen Sie im eBiss im Menü links unter der Gruppe Kommunikation die Kommunikationskanäle
  2. eGate Empfangs Kanal
    1. Öffnen Sie Ihren eGate Empfangskanal – Pop3 receive Channel
      In den Einstellungen ändern Sie bitte den Port auf „995“ und die Authentifizierung auf „Basic“
      Bitte achten Sie darauf, dass Ihre Login-Daten für eGate richtig eingetragen sind.
    2. Öffnen Sie nun die erweiterten Einstellungen und stellen Sie das SSL Handling auf „Implizit“
  3. Wiederholen Sie diese Konfiguration auch im eGate Senden Kanal – SMTP send channel, bis auf den Port, dieser muss 25 sein.
    Achten Sie auch hier auf die korrekten Zugangsdaten für eGate
    Erweiterte Einstellungen -> SSL handling „implizit“

 

Tritt beim Verarbeiten von Nachrichten eine Exception auf wie in der Abbildung gezeigt, dann liegt es nahe, dass die Lesekomponente(Reader) mit einem falschen Zeichensatz eingestellt ist und auch keine automatisch Erkennung zulässt. Abhilfe schafft i.d.R. das Einschalten der automatischen Erkennung der Zeichenkodierung auf der Lesekomponente des Entitätstyps im Repositorium.

reader exception

reader exception

Siehe auch: Was bedeutet „No recognizer found“ im Trace Log?

 

Wenn Sie die Meldung „No recognizer found“ als Warnung in Ihrem Tracelog sehen, dann kann dies  Unterschiedliche Ursachen haben.

Handelt es sich bei der eingehenden Nachricht um eine EDIFACT Nachricht eines Ihrem System bekannten Nachrichtentyps, dann kann es sein, dass das Encoding der Nachricht nicht mit dem in der Erkennungskomponente(Recognizer) übereinstimmt und die automatische Zeichensatzerkennung nicht aktiv ist. Aktivieren Sie diese und lassen sie die Nachricht erneut gegen den Prozess laufen.

no recognizer found

no recognizer found

Siehe auch: Warum erhalte ich im Trace Log eine Exception: EdiSegment expected, read….at position 0?