AddFacturXAssociatedFileFromString
Document properties
Description
Записва XML на електронна фактура като PDF/A-3 свързан файл и генерира необходимите XMP метаданни за електронна фактура за профили Factur-X, ZUGFeRD и XRechnung
Syntax
Delphi
Function TPDFlib.AddFacturXAssociatedFileFromString(Const XMLBytes: AnsiString; Const ConformanceLevel, FileName, Description, Relationship, Version, CountryCode: WideString): Integer;
Parameters
| XMLBytes | Суровите UTF-8 XML байтове за вграждане |
|---|---|
| ConformanceLevel | Нивото на фактурния профил, като например MINIMUM, BASIC WL, BASIC, EN16931, EXTENDED, XRECHNUNG, EXTENDED-CTC-FR или EXTENDED-B2B-FR |
| FileName | Името на вградения XML файл, обикновено factur-x.xml, xrechnung.xml, zugferd-invoice.xml или ZUGFeRD-invoice.xml; празната стойност по подразбиране е factur-x.xml |
| Description | Незадължителният /Desc текст, записан в спецификацията на файла |
| Relationship | Стойността на /AFRelationship; празната стойност по подразбиране е Alternative |
| Version | Версията на фактурния профил; празната стойност по подразбиране е 1.0 |
| CountryCode | Незадължителен код за профил на държава, като например празен низ, DE или FR |
Return values
| 0 | Документът не е в режим PDF/A-3, комбинацията от XML или профил е невалидна или вече е добавен фактурен XML |
|---|---|
| Non-zero | Дескрипторът на обекта на новосъздадената спецификация на файл |
Remarks
Методът валидира името на файла, нивото на съответствие, версията, профила на страната и /AFRelationship преди записване на прикачения файл
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
Методът записва XMP полетата DocumentFileName, DocumentType, Version и ConformanceLevel и проверява дали XML идентификаторът на насоките съвпада с избрания профил; нормалното видимо съдържание на страницата с фактура все още се създава от повикващия преди записването
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