ValidateInvoiceBusinessRulesWithTools

Factures, conformité

Description

Exécute la validation de schéma XML et Schematron d’une facture incorporée

Syntaxe

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

Remarques

Renvoie un JSON pour le XML incorporé sélectionné en utilisant à la fois un paquet XSD versionné et une feuille de style Schematron XSLT compilée ; cette méthode de confort requiert toujours les deux étapes

Passez les chemins des exécutables xmllint et Java, ainsi qu’un SaxonClassPath séparé par des points-virgules contenant SaxonJ et ses dépendances ; utilisez des .xsl ou .xslt compilés, plutôt qu’un fichier .sch non compilé

RulesVersion identifie la version du paquet de règles et RulesProfile identifie le profil de facture visé ; sélectionnez explicitement des règles correspondantes, car le schéma et les règles génériques EN16931 n’incluent pas automatiquement chaque profil national ou sectoriel

Les deux outils s’exécutent sans shell ni fenêtre visible, avec le traitement DTD désactivé, une taille de sortie bornée et le timeout demandé ; TimeoutMS<=0 sélectionne 30000 ms

Le JSON contient standard, version, profile, complete, valid et les étapes schema et schematron séparées ; les étapes incluent l’état, l’achèvement, le moteur, les comptages d’exécution, les diagnostics et des anomalies avec l’ID de règle, le chemin de champ, la sévérité, la ligne et le message

L’état d’une étape est passed, failed, error, unavailable ou not_checked ; une règle en échec peut coexister avec complete=true, tandis que des dépendances manquantes, des timeouts, des limites de sortie, un SVRL invalide et des règles non exécutées ne peuvent pas produire un résultat valide

L’adaptateur d’outils intégré requiert Windows ; les applications portables peuvent fournir leur propre IPDFInvoiceValidationProvider via l’API typée

Les contrôles du conteneur PDF et la validation métier des factures sont des opérations distinctes ; appelez aussi ValidateFacturXInvoice lorsque les conventions PDF/A-3 et de pièce jointe hybride doivent être vérifiées

Les résultats DLL sont détenus par l’instance et doivent être copiés avant un autre appel renvoyant une chaîne ; le résultat A contient du JSON UTF-8 et les chaînes d’entrée A utilisent le réglage ANSI de l’instance

Voir aussi

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString