ValidateInvoiceBusinessRulesWithTools

Накладные, соответствие стандартам

Описание

Запускает проверку XML-схемы и Schematron для встроенной накладной

Синтаксис

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

Примечания

Возвращает JSON для выбранного встроенного XML, используя и версионированный пакет XSD, и скомпилированную таблицу стилей Schematron XSLT; этот удобный метод всегда требует обе стадии

Передайте пути к исполняемым файлам xmllint и Java, а также разделённый точками с запятой SaxonClassPath с SaxonJ и его зависимостями; используйте скомпилированные .xsl или .xslt, а не нескомпилированный файл .sch

RulesVersion идентифицирует выпуск пакета правил, а RulesProfile — целевой профиль накладной; выбирайте подходящие правила явно, потому что схема и общие правила EN16931 не включают автоматически каждый национальный или отраслевой профиль

Оба инструмента запускаются без оболочки и видимого окна, с отключённой обработкой DTD, ограниченным размером вывода и запрошенным тайм-аутом; TimeoutMS<=0 выбирает 30000 мс

JSON содержит standard, version, profile, complete, valid и отдельные стадии schema и schematron; стадии включают статус, завершённость, движок, счётчики выполнения, диагностику и замечания с идентификатором правила, путём поля, серьёзностью, строкой и сообщением

Статус стадии — passed, failed, error, unavailable или not_checked; несостоявшееся правило может давать complete=true, тогда как отсутствующие зависимости, тайм-ауты, лимиты вывода, некорректный SVRL и невыполненные правила валидного результата дать не могут

Встроенный адаптер инструментов требует Windows; переносимые приложения могут передать собственного IPDFInvoiceValidationProvider через типизированный API

Проверки контейнера PDF и бизнес-проверка накладной — отдельные операции; когда нужно проверить соглашения PDF/A-3 и гибридных вложений, вызывайте также ValidateFacturXInvoice

Результаты DLL принадлежат экземпляру и должны быть скопированы до следующего вызова, возвращающего строку; результат A содержит JSON в UTF-8, а входные строки A используют ANSI-настройку экземпляра

См. также

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString