ValidateInvoiceBusinessRules

Faturas, Conformidade

Descrição

Valida o XML de fatura embutido selecionado com um provider versionado

Sintaxe

Delphi

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

Observações

Encontra um anexo embutido no nível do documento pelo nome de arquivo exato, sensível a maiúsculas e minúsculas, e substitui Request.XMLBytes pelos bytes decodificados do anexo; XML fornecido por quem chama não pode substituir a fatura real

Retorna true somente quando todos os estágios solicitados concluem com sucesso; Report.Complete=true com IsValid=false distingue uma validação concluída que encontrou problemas de engines indisponíveis, entradas malformadas ou execuções incompletas

Anexos ausentes, ambíguos, ilegíveis ou grandes demais retornam false com LastErrorCode=401 e um diagnóstico Invoice.Attachment*; o casamento é limitado a 16384 anexos e a decodificação a 64 MB

Defina Request.Rules.Standard e Version explicitamente e forneça arquivos de regras confiáveis para a sintaxe e o perfil exatos, incluindo quaisquer regras específicas de perfil necessárias

PLDefaultInvoiceValidationRequest exige os estágios de schema e de Schematron, define um timeout de 30000 ms e um limite de saída de 8 MB; quem chama pode desabilitar um estágio explicitamente, que permanece not_checked e não faz afirmação alguma sobre aquelas regras

IPDFInvoiceValidationProvider.ValidateStage recebe o XML e o pacote de regras selecionados e deve retornar um resultado de estágio completo, diagnósticos do engine e problemas estruturados; providers indisponíveis ou com exceções não podem passar

Use PLValidateInvoiceXML diretamente para XML de fatura independente, PLCreateExternalInvoiceValidationProvider para o adaptador de ferramenta embutido, e PLInvoiceValidationReportToJSON para serializar resultados tipados

Veja também

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString