ValidateInvoiceBusinessRules
Rechnungen, Konformität
Beschreibung
Prüft die ausgewählte eingebettete Rechnungs-XML mit einem versionierten Anbieter
Syntax
Delphi
Function TPDFlib.ValidateInvoiceBusinessRules(Const EmbeddedFileName: WideString;
Const Request: TPDFInvoiceValidationRequest;
Const Provider: IPDFInvoiceValidationProvider;
Out Report: TPDFInvoiceValidationReport): Boolean;Anmerkungen
Findet eine eingebettete Anlage auf Dokumentebene anhand ihres exakten, groß-/kleinschreibungssensitiven Dateinamens und ersetzt Request.XMLBytes durch die dekodierten Anlagenbytes; vom Aufrufer geliefertes XML kann die echte Rechnung nicht ersetzen
Liefert nur true, wenn jede angeforderte Phase erfolgreich abschließt; Report.Complete=true mit IsValid=false unterscheidet eine abgeschlossene Validierung mit gefundenen Problemen von nicht verfügbaren Engines, fehlerhaften Eingaben oder unvollständigen Läufen
Fehlende, mehrdeutige, unlesbare oder überdimensionierte Anlagen liefern false mit LastErrorCode=401 und einer Invoice.Attachment*-Diagnose; die Zuordnung ist auf 16384 Anlagen begrenzt, die Dekodierung auf 64 MB
Setzen Sie Request.Rules.Standard und Version ausdrücklich und liefern Sie vertrauenswürdige Regeldateien für die exakte Syntax und das Profil, einschließlich aller erforderlichen profilspezifischen Regeln
PLDefaultInvoiceValidationRequest verlangt sowohl die Schema- als auch die Schematron-Phase, setzt ein Zeitlimit von 30000 ms und ein Ausgabelimit von 8 MB; Aufrufer können eine Phase ausdrücklich deaktivieren; sie bleibt dann not_checked und trifft keine Aussage über diese Regeln
IPDFInvoiceValidationProvider.ValidateStage empfängt die ausgewählte XML und das Regelpaket und muss ein vollständiges Phasenergebnis, Engine-Diagnose und strukturierte Probleme liefern; nicht verfügbare und fehlgeschlagene Anbieter können nicht bestehen
Verwenden Sie PLValidateInvoiceXML direkt für eigenständige Rechnungs-XML, PLCreateExternalInvoiceValidationProvider für den eingebauten Tool-Adapter und PLInvoiceValidationReportToJSON, um typisierte Ergebnisse zu serialisieren
Siehe auch
ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString