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