AutoCaptEInvoice

<< Hilfenavigation einblenden

Home > Handbuch > Entwicklerhilfe > Makro-Referenz OmAPI > AutoCapt: Automatische Dokumentenerkennung > AutoCaptEInvoice

AutoCaptEInvoice

Verfügbar in diesen Editionen

Makro-Variable AutoCaptEInvoice

Daten einer E-Rechnung für die automatische Belegerkennung einlesen.

Der veraltete Name AutoCaptZUGFeRD ist nur noch aus Kompatibilitätsgründen gültig, bitte nicht mehr verwendet.

Syntax

{AutoCaptEInvoice:Path}

Parameter

Path: Pfad zum gewünschten Wert, wie in der technischen Dokumentation des jeweiligen Formats beschrieben. Oder ein für alle Formate gültiger Name der Rechnungsdaten:
Amout: Rechnungssumme
BuyerCity: Stadt des Käufers bzw. Rechnungsempfängers
BuyerCountryID: Ländercode, wie "DE"
BuyerName: Name des Käufers
BuyerStreet: Straße
BuyerTaxID: Eine Steuernummer des Käufers
BuyerZip: Postleitzahl
Currency: Währung der Rechnung
DeliveryDate: Lieferdatum
Description für die Dokumentenbezeichnung geeigneter Text
DocNo: Rechnungsnummer
DocTypeText: Dokumentenart, wie "Rechnung", "Gutschrift" oder "Rechnungskorrektur"
DocTypeCode: Code der Dokumentenart: 326, 380, 381, 384, 389, 875, 786, 877 u. a.
DueDate: Fälligkeitsdatum
PayableAmount: Zahlbetrag (z. B. Rechnungsbetrag abzgl. Anzahlungen)
PeriodEndDate: Leistungszeitraum Enddatum
PeriodStartDate: Leistungszeitraum Startdatum
ReceiptDate: Rechnungsdatum
SellerCity: Stadt des Verkäufers bzw. Rechnungssteller
SellerCountryID: Ländercode, wie "DE"
SellerName: Name des Verkäufers
SellerStreet: Straße
SellerTaxID: Eine Steuernummer des Verkäufers
SellerZip: Postleitzahl
TagList: alle erfassten Werte als mehrzeiliger Text in Form "Path=Value"
Version des verwendeten Rechnungsprofils.
XML gibt den Inhalt der elektronischen Rechnung als String zurück
XMLFileName: Dateiname der verarbeiteten (ev. temporär gespeicherten) XML-Datei
(Pfad)/dmsAsString: nur bei Datum, siehe Beschreibung
(Pfad)/dmsAsDate: nur bei Datum, siehe Beschreibung
(Pfad)/dmsDateCode: nur bei Datum, siehe Beschreibung

Rückgabewert

Wert aus der E-Rechnung (xrechnung.xml, factur-x.xml oder ZUGFeRD-invoice.xml).

Beschreibung

Elektronischen Rechnungen beinhalten maschinenlesbare Daten. Die Formate ZUGFeRD und Factur-X bestehen aus einer PDF/A-3 Datei mit der visuellen Darstellung der Rechnung und einer anliegenden XML-Datei mit den maschinenlesbaren strukturierten Daten. XRechnung besteht nur aus einer XML-Datei.

Die Dokumentenerkennung liest bereits wichtige Attribute ein, ohne dass die Makro-Variable erforderlich ist.

Mit der Initialisierung der Dokumentenerkennung und beim Aufruf der Prozedur {AutoCaptCreate:FileName} wird die XML-Datei ausgewertet und eine Liste aller enthaltenen Daten zusammengestellt. Mit {AutoCaptZUGFeRD:Path} können Sie diese Daten abrufen. Als Path geben Sie bitte bevorzugt die o. g. allgemeingültigen Namen an. Falls Sie weitere Daten aus der Rechnung extrahieren möchten, dann nutzen Sie auch den Parameter TagList, um das gesamte Erkennungsergebnis mit den Pfaden einzusehen, zum Beispiel {MessageDlg:{AutoCaptEInvoice:TagList}}.

ZUGFeRD-Versionen

In den Versionen 1.0 und 2.x unterscheiden sich die Pfade teilweise, der Hauptknoten wurde beispielsweise von "CrossIndustryDocument" in "CrossIndustryInvoice" umbenannt. Sie können aber immer die neuen oder alten Pfadnamen verwenden, diese werden programmintern in die neuen Pfade konvertiert:

ZUGFeRD Version 1.0

ZUGFeRD Version 2.x

CrossIndustryDocument

CrossIndustryInvoice

SpecifiedExchangedDocumentContext

ExchangedDocumentContext

HeaderExchangedDocument

ExchangedDocument

SpecifiedSupplyChainTradeTransaction

SupplyChainTradeTransaction

ApplicableSupplyChainTradeAgreement

ApplicableHeaderTradeAgreement

ApplicableSupplyChainTradeDelivery

ApplicableHeaderTradeDelivery

ApplicableSupplyChainTradeSettlement

ApplicableHeaderTradeSettlement

SpecifiedTradeSettlementMonetarySummation

SpecifiedTradeSettlementHeaderMonetarySummation

Datum

Wenn Sie ein Datum, welches nicht als allgemeingültiger Variablenname verfügbar ist, einlesen möchten, müssen Sie den gesamten Pfad angeben. Ein Datum kann als Kalenderdatum (Code 102 JJJJMMTT), Kalenderwoche (Code 616 JJJJWW) oder Monat (Code 610 JJJJMM) angegeben sein. Die Pfade enden bei einem Datum mit "/DateTimeString". Beispiel XML-Knoten:

<ram:IssueDateTime>

  <udt:DateTimeString format="102">20141219</udt:DateTimeString>

</ram:IssueDateTime>

Mit der Makrovariablen

{AutoCaptEInvoice:CrossIndustryInvoice/ExchangedDocument/IssueDateTime/DateTimeString}

erhalten Sie den kodierten Wert "20141219". Um Ihnen die Abfrage zu vereinfachen, dekodiert Office Manager DMS alle Datumsangaben und stellt diese in drei Unterpfaden zur Verfügung:

(Pfad)/dmsAsString: enthält bei Code 102 z. B. "19.12.2014", bei Code 610 "Dezember 2014" und bei Code 616 "KW 51, 2014".

(Pfad)/dmsAsDate: gibt immer ein Kalenderdatum zurück und ist bei Code 102 mit dmsAsString identisch. Bei Code 610 der letzte Tag im Monat, bei Code 616 der Freitag in der angegebenen Woche.

(Pfad)/dmsDateCode: der Code "102", "610" oder "616".

Beispiel für die Abfrage eines dekodierten Datums:

{AutoCaptEInvoice:CrossIndustryInvoice/ExchangedDocument/IssueDateTime/DateTimeString/dmsAsDate}

Beispiele

Den Verkäufernamen und die Rechnungsnummer in globale Variablen kopieren:

{AutoCaptCreate:{Source}}

{RaiseError:Ungültige E-Rechnung,{AutoCaptEInvoice:DocFileName}=}

{SetPublVar:EInvcSeller={AutoCaptEInvoice:SellerName}}

{SetPublVar:EInvcDocNo={AutoCaptEInvoice:DocNo}}

{AutoCaptDestroy}

{MessageDlg:{GetPublVar:*List}}

Netto-Betrag bei ZUGFeRD

{AutoCaptEInvoice:CrossIndustryInvoice/SupplyChainTradeTransaction/ApplicableHeaderTradeSettlement/ApplicableTradeTax/BasisAmount}

Rechnungsbetrag bei allen Formaten

{AutoCaptEInvoice:Amount}

Siehe auch

Makro-Referenz

Belegerkennung im Importprofil aktivieren

Forum elektronische Rechnung Deutschland

Hinweise zur elektronischen Rechnungsarchivierung