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 StringRemarques
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