CreateValidationReport

Compliance

Beschrijving

Bouwt een gestructureerd PDF/A- en PDF/UA-1-validatierapport in XML of JSON, met bij elke bevinding de ISO-clausule en statistieken

Syntaxis

Delphi

Function TPDFlib.CreateValidationReport(Const InputFileName, Password: WideString; ComplianceTests, Options, ReportFormat: Integer): WideString;

Parameters

InputFileNameHet te valideren PDF-bestand
PasswordHet wachtwoord dat nodig is om het bestand te openen, of een lege string
ComplianceTestsBitmasker dat de controles kiest: 1 = PDF/A, 2 = PDF/UA-1, 0 = beide
OptionsWordt aan de controles doorgegeven; 1 stopt bij de eerste bevinding van elke controle
ReportFormat0 = XML, 1 = JSON

Return values

Empty stringHet invoerbestand bestaat niet
ReportHet complete rapportdocument

Remarks

Als meerdere standaarden zijn geselecteerd, wordt het bestand één keer geparsed en delen beide audits dezelfde reader, beveiligingsstatus, objectgrafiek van het document en lazy object cache

Elke bevinding draagt de regel-ID, de standaard die de regel bezit (ISO 19005-1 of ISO 14289-1), een korte machineleesbare regelnaam, de ISO-clausule die de regel afdwingt, een ernst en het aantal getroffen objecten. Elk controle-element sluit af met zijn eigen resultaat en bevindingentelling, en het rapport eindigt met een samenvatting met het documentoordeel, het totaal aan bevindingen en het aantal geslaagde en gefaalde controles

A standard that was not requested is reported as not-checked rather than as a passing check, so a run that covered only one standard cannot be mistaken for a clean bill of health.

Dit verschilt van CreatePreflightReportEx, dat eerst een voor mensen leesbaar rapport rendert en die tekst daarna omzet in JSON, HTML of CSV. Het validatierapport wordt samengesteld uit de onbewerkte uitvoer van de controles, zodat een buildpipeline kan blokkeren op een rule-id of een ISO-clausule in plaats van substrings in een zin te matchen

Voorbeeld

Report:= PDF.CreateValidationReport('invoice.pdf', '', 0, 0, 1);
if Pos('"result": "failed"', Report)> 0 then
  ShowMessage('the file did not pass validation');

Zie ook

CreateValidationPipelineReport, SaveValidationReport, CheckFileCompliance, CreatePreflightReport, CreatePreflightReportEx