AddFacturXAssociatedFileFromString
Dokumenteigenschaften
Beschreibung
Schreibt E-Rechnungs-XML als PDF/A-3-zugeordnete Datei und erzeugt die erforderlichen XMP-E-Rechnungsmetadaten für Factur-X-, ZUGFeRD- und XRechnung-Profile
Syntax
Delphi
Function TPDFlib.AddFacturXAssociatedFileFromString(Const XMLBytes: AnsiString; Const ConformanceLevel, FileName, Description, Relationship, Version, CountryCode: WideString): Integer;
Parameter
| XMLBytes | Die einzubettenden unverarbeiteten UTF-8-XML-Bytes |
|---|---|
| ConformanceLevel | Die Stufe des Rechnungsprofils, beispielsweise MINIMUM, BASIC WL, BASIC, EN16931, EXTENDED, XRECHNUNG, EXTENDED-CTC-FR oder EXTENDED-B2B-FR |
| FileName | Der Name der eingebetteten XML-Datei, meist factur-x.xml, xrechnung.xml, zugferd-invoice.xml oder ZUGFeRD-invoice.xml; ein leerer Wert verwendet standardmäßig factur-x.xml |
| Description | Der optionale Text /Desc, der in die Dateispezifikation geschrieben wird |
| Relationship | Der Wert /AFRelationship; ein leerer Wert verwendet standardmäßig Alternative |
| Version | Die Version des Rechnungsprofils; ein leerer Wert verwendet standardmäßig 1.0 |
| CountryCode | Ein optionaler Länderprofilcode, beispielsweise eine leere Zeichenfolge, DE oder FR |
Rückgabewerte
| 0 | Das Dokument befindet sich nicht in einem PDF/A-3-Modus, die Kombination aus XML und Profil ist ungültig oder Rechnungs-XML wurde bereits hinzugefügt |
|---|---|
| Non-zero | Das Objekthandle der neu erstellten Dateispezifikation |
Anmerkungen
Die Methode validiert Dateiname, Konformitätsstufe, Version, Länderprofil und /AFRelationship, bevor der Anhang geschrieben wird
COMFORT wird nur mit ZUGFeRD-invoice.xml und Version 1.0 akzeptiert; zugferd-invoice.xml wählt das ZUGFeRD-2.0-Profil und xrechnung.xml das Profil XRECHNUNG
Die Methode schreibt die XMP-Felder DocumentFileName, DocumentType, Version und ConformanceLevel und prüft, ob die XML-Richtlinien-ID dem ausgewählten Profil entspricht. Der normale sichtbare Inhalt der Rechnungsseite wird weiterhin vor dem Speichern vom Aufrufer erstellt
Beispiel
// Add EN 16931 invoice XML to a PDF/A-3b document
var
FileID: Integer;
begin
PDF.SetPDFAMode(5);
PDF.NewDocument;
FileID := PDF.AddFacturXAssociatedFileFromString(
InvoiceXML,
'EN16931',
'factur-x.xml',
'Factur-X invoice XML',
'Alternative',
'1.0',
'');
if FileID = 0 then Exit;
PDF.SaveToFile('factur-x.pdf');
end;
Siehe auch
AddPDFA3AssociatedFileFromString, DetectFacturXInvoice, ValidateFacturXInvoice, ExtractFacturXXMLToString