AddFacturXAssociatedFileFromString

Proprietà del documento

Descrizione

Scrive XML di fatturazione elettronica come file associato PDF/A-3 e genera i metadati XMP richiesti per i profili Factur-X, ZUGFeRD e XRechnung

Sintassi

Delphi

Function TPDFlib.AddFacturXAssociatedFileFromString(Const XMLBytes: AnsiString; Const ConformanceLevel, FileName, Description, Relationship, Version, CountryCode: WideString): Integer;

Parametri

XMLBytesI byte XML UTF-8 non elaborati da incorporare
ConformanceLevelLivello profilo fattura, ad esempio MINIMUM, BASIC WL, BASIC, EN16931, EXTENDED, XRECHNUNG, EXTENDED-CTC-FR o EXTENDED-B2B-FR
FileNameNome del file XML incorporato, solitamente factur-x.xml, xrechnung.xml, zugferd-invoice.xml o ZUGFeRD-invoice.xml; un valore vuoto usa factur-x.xml
DescriptionIl testo facoltativo /Desc scritto nella specifica di file
RelationshipIl valore /AFRelationship; un valore vuoto usa Alternative come predefinito
VersionLa versione del profilo della fattura; un valore vuoto usa 1.0 come predefinito
CountryCodeCodice facoltativo del profilo nazionale, ad esempio una stringa vuota, DE o FR

Valori restituiti

0Il documento non è in modalità PDF/A-3, la combinazione di XML e profilo non è valida oppure è già stato aggiunto un XML di fattura
Non-zeroL'handle oggetto della specifica di file appena creata

Note

Il metodo convalida nome file, livello di conformità, versione, profilo paese e /AFRelationship prima di scrivere l'allegato

COMFORT è accettato solo con ZUGFeRD-invoice.xml e versione 1.0; zugferd-invoice.xml seleziona il profilo ZUGFeRD 2.0 e xrechnung.xml seleziona XRECHNUNG

Il metodo scrive i campi XMP DocumentFileName, DocumentType, Version e ConformanceLevel e verifica che l'ID delle linee guida XML corrisponda al profilo selezionato. Il normale contenuto visibile della pagina della fattura viene comunque creato dal chiamante prima del salvataggio

Esempio

// 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;

Vedere anche

AddPDFA3AssociatedFileFromString, DetectFacturXInvoice, ValidateFacturXInvoice, ExtractFacturXXMLToString