ValidateInvoiceBusinessRulesWithTools

Faturas, conformidade

Descrição

Executa a validação de esquema XML e de Schematron para uma fatura incorporada

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

Devolve JSON para o XML incorporado selecionado usando tanto um pacote XSD com versões como uma stylesheet Schematron XSLT compilada; este método de conveniência exige sempre as duas fases

Passe caminhos de ficheiros executáveis para o xmllint e para o Java, e um SaxonClassPath separado por ponto e vírgula com o SaxonJ e as respetivas dependências; use .xsl ou .xslt compilados, em vez de um ficheiro .sch não compilado

RulesVersion identifica a versão do pacote de regras e RulesProfile identifica o perfil de fatura pretendido; selecione as regras correspondentes explicitamente, porque o esquema e as regras genéricas EN16931 não incluem automaticamente todos os perfis nacionais ou setoriais

Ambas as ferramentas correm sem shell nem janela visível, com o processamento de DTD desativado, um tamanho de output limitado e o timeout pedido; TimeoutMS<=0 seleciona 30000 ms

O JSON contém standard, version, profile, complete, valid e fases schema e schematron separadas; as fases incluem estado, conclusão, motor, contagens de execução, diagnósticos e problemas com ID de regra, caminho do campo, gravidade, linha e mensagem

O estado da fase é passed, failed, error, unavailable ou not_checked; uma regra falhada pode ter complete=true, enquanto dependências em falta, timeouts, limites de output, SVRL inválido e regras não executadas não podem produzir um resultado válido

O adaptador de ferramentas integrado exige Windows; aplicações portáveis podem fornecer o seu próprio IPDFInvoiceValidationProvider através da API tipada

As verificações do contentor PDF e a validação de regras de negócio da fatura são operações separadas; chame também o ValidateFacturXInvoice quando as convenções de anexos PDF/A-3 e híbridos tiverem de ser verificadas

Os resultados da DLL são propriedade da instância e têm de ser copiados antes de outra chamada que devolva cadeias; o resultado A contém JSON UTF-8 e as cadeias de entrada A usam a definição ANSI da instância

Consulte também

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString