ValidateInvoiceBusinessRulesWithTools

Faturas, Conformidade

Descrição

Executa a validação de schema XML e Schematron para uma fatura embutida

Sintaxe

Delphi

Function TPDFlib.ValidateInvoiceBusinessRulesWithTools(Const EmbeddedFileName, Standard, RulesVersion, RulesProfile, SchemaFile, SchematronStylesheetFile, XMLLintExecutable, JavaExecutable, SaxonClassPath: WideString;
  TimeoutMS: Integer): WideString;

DLL

Function DLValidateInvoiceBusinessRulesWithTools(InstanceID: Integer;
  EmbeddedFileName, Standard, RulesVersion, RulesProfile, SchemaFile, SchematronStylesheetFile, XMLLintExecutable, JavaExecutable, SaxonClassPath: PWideChar; TimeoutMS: Integer): PWideChar; Stdcall;
Function DLValidateInvoiceBusinessRulesWithToolsA(InstanceID: Integer;
  EmbeddedFileName, Standard, RulesVersion, RulesProfile, SchemaFile, SchematronStylesheetFile, XMLLintExecutable, JavaExecutable, SaxonClassPath: PAnsiChar; TimeoutMS: Integer): PAnsiChar; Stdcall;

ActiveX

Function PDFlib::ValidateInvoiceBusinessRulesWithTools(EmbeddedFileName As String, Standard As String, RulesVersion As String, RulesProfile As String, SchemaFile As String, SchematronStylesheetFile As String, XMLLintExecutable As String, JavaExecutable As String, SaxonClassPath As String, TimeoutMS As Long) As String

Observações

Retorna JSON para o XML embutido selecionado usando tanto um pacote XSD versionado quanto uma folha de estilo XSLT Schematron compilada; este método de conveniência sempre exige os dois estágios

Passe caminhos de arquivos executáveis para o xmllint e o Java, e um SaxonClassPath separado por ponto e vírgula contendo o SaxonJ e as dependências dele; use .xsl ou .xslt compilados, e não um arquivo .sch não compilado

RulesVersion identifica o release do pacote de regras e RulesProfile identifica o perfil de fatura pretendido; selecione regras compatíveis explicitamente, porque o schema e as regras genéricas EN16931 não incluem automaticamente todos os perfis nacionais ou de setor

As duas ferramentas rodam sem shell nem janela visível, com processamento de DTD desabilitado, um tamanho de saída limitado e o timeout solicitado; TimeoutMS<=0 seleciona 30000 ms

O JSON contém standard, version, profile, complete, valid e estágios schema e schematron separados; os estágios incluem status, conclusão, engine, contagens de execução, diagnósticos e problemas com ID de regra, caminho de campo, severidade, linha e mensagem

O status do estágio é passed, failed, error, unavailable ou not_checked; uma regra que falhou pode ter complete=true, enquanto dependências ausentes, timeouts, limites de saída, SVRL inválido e regras não executadas não podem produzir um resultado válido

O adaptador de ferramenta embutido exige Windows; aplicações portáteis podem fornecer o próprio IPDFInvoiceValidationProvider pela API tipada

Checagens do contêiner PDF e validação de regras de negócio de fatura são operações separadas; chame também a ValidateFacturXInvoice quando as convenções de anexo PDF/A-3 e híbrido precisarem ser checadas

Resultados da DLL pertencem à instância e devem ser copiados antes de outra chamada que retorna string; o resultado A contém JSON em UTF-8 e as strings de entrada A usam a configuração ANSI da instância

Veja também

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString