ValidateInvoiceBusinessRules

Fatture, Conformità

Descrizione

Convalida l'XML della fattura incorporato selezionato con un provider con versione

Sintassi

Delphi

Function TPDFlib.ValidateInvoiceBusinessRules(Const EmbeddedFileName: WideString;
  Const Request: TPDFInvoiceValidationRequest;
  Const Provider: IPDFInvoiceValidationProvider;
  Out Report: TPDFInvoiceValidationReport): Boolean;

Note

Trova un allegato incorporato a livello di documento dal suo nome file esatto, distinguendo maiuscole e minuscole, e sostituisce Request.XMLBytes con i byte decodificati dell'allegato; l'XML fornito dal chiamante non può sostituire la fattura reale

Restituisce true solo quando ogni fase richiesta completa con successo; Report.Complete=true con IsValid=false distingue una convalida completata che ha trovato problemi da motori non disponibili, input malformati o esecuzioni incomplete

Allegati mancanti, ambigui, illeggibili o sovradimensionati restituiscono false con LastErrorCode=401 e una diagnostica Invoice.Attachment*; l'abbinamento è limitato a 16384 allegati e la decodifica a 64 MB

Imposta esplicitamente Request.Rules.Standard e Version e fornisci file di regole fidati per la sintassi e il profilo esatti, incluse eventuali regole specifiche del profilo richieste

PLDefaultInvoiceValidationRequest richiede sia la fase schema sia quella Schematron, imposta un timeout di 30000 ms e un limite di output di 8 MB; i chiamanti possono disabilitare esplicitamente una fase, che resta not_checked e non fa alcuna affermazione su quelle regole

IPDFInvoiceValidationProvider.ValidateStage riceve l'XML selezionato e il pacchetto di regole e deve restituire un risultato di fase completo, la diagnostica del motore e i problemi strutturati; provider non disponibili o con eccezioni non possono passare

Usa PLValidateInvoiceXML direttamente per l'XML della fattura autonomo, PLCreateExternalInvoiceValidationProvider per l'adattatore agli strumenti incorporato e PLInvoiceValidationReportToJSON per serializzare i risultati tipizzati

Vedere anche

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString