AddFacturXAssociatedFileFromString
Document properties
Description
Scrive l'XML della fattura elettronica come file associato PDF/A-3 e genera i metadati XMP della fattura elettronica richiesti per i profili Factur-X, ZUGFeRD e XRechnung
Syntax
Delphi
Function TPDFlib.AddFacturXAssociatedFileFromString(Const XMLBytes: AnsiString; Const ConformanceLevel, FileName, Description, Relationship, Version, CountryCode: WideString): Integer;
Parameters
| XMLBytes | I byte XML UTF-8 non elaborati da incorporare |
|---|---|
| ConformanceLevel | Il livello del profilo della fattura, come MINIMUM, BASIC WL, BASIC, EN16931, EXTENDED, XRECHNUNG, EXTENDED-CTC-FR o EXTENDED-B2B-FR |
| FileName | Il nome del file XML incorporato, solitamente factur-x.xml, xrechnung.xml, zugferd-invoice.xml o ZUGFeRD-invoice.xml; un valore vuoto assume come impostazione predefinita factur-x.xml |
| Description | Il testo opzionale /Desc scritto nella specifica del file |
| Relationship | Il valore /AFRelationship; un valore vuoto assume il valore predefinito Alternative |
| Version | La versione del profilo della fattura; un valore vuoto assume come impostazione predefinita 1.0 |
| CountryCode | Un codice del profilo del paese opzionale, come una stringa vuota, DE o FR |
Return values
| 0 | The document is not in a PDF/A-3 mode, the XML or profile combination is invalid, or invoice XML has already been added |
|---|---|
| Non-zero | L'handle dell'oggetto della specifica del file appena creato |
Remarks
Il metodo convalida il nome del file, il livello di conformità, la versione, il profilo del paese e /AFRelationship prima di scrivere l'allegato
COMFORT is accepted only with ZUGFeRD-invoice.xml and version 1.0; zugferd-invoice.xml selects the ZUGFeRD 2.0 profile, and xrechnung.xml selects the XRECHNUNG profile
Il metodo scrive i campi XMP DocumentFileName, DocumentType, Version e ConformanceLevel e verifica che l'ID della linea guida XML corrisponda al profilo selezionato; il normale contenuto visibile della pagina della fattura viene comunque creato dal chiamante prima del salvataggio
Example
// 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;
See also
AddPDFA3AssociatedFileFromString, DetectFacturXInvoice, ValidateFacturXInvoice, ExtractFacturXXMLToString