ValidateInvoiceBusinessRules

송장, 규격 준수

설명

버전이 매겨진 공급자로 선택한 내장 송장 XML을 검증합니다

구문

Delphi

Function TPDFlib.ValidateInvoiceBusinessRules(Const EmbeddedFileName: WideString;
  Const Request: TPDFInvoiceValidationRequest;
  Const Provider: IPDFInvoiceValidationProvider;
  Out Report: TPDFInvoiceValidationReport): Boolean;

비고

정확하고 대소문자를 구분하는 파일 이름으로 문서 수준 내장 첨부 파일을 찾아 Request.XMLBytes를 디코딩된 첨부 바이트로 바꿉니다. 호출자가 제공한 XML로 실제 송장을 대신할 수 없습니다

요청한 모든 단계가 성공적으로 끝날 때만 true를 반환합니다. Report.Complete=true에 IsValid=false인 경우는 사용할 수 없는 엔진, 잘못된 형식의 입력, 불완전한 실행과 달리 검증을 완료하고 문제를 찾은 경우입니다

없거나 모호하거나 읽을 수 없거나 지나치게 큰 첨부 파일은 LastErrorCode=401과 Invoice.Attachment* 진단과 함께 false를 반환합니다. 일치는 16384개 첨부 파일, 디코딩은 64 MB로 제한됩니다

Request.Rules.Standard와 Version은 명시적으로 설정하고, 필요한 프로필 전용 규칙을 포함해 정확한 구문과 프로필에 맞는 신뢰할 수 있는 규칙 파일을 제공하십시오

PLDefaultInvoiceValidationRequest는 스키마와 Schematron 단계를 모두 요구하고 30000 ms 타임아웃과 8 MB 출력 제한을 설정합니다. 호출자가 단계를 명시적으로 끄면 그 단계는 not_checked로 남고 해당 규칙에 대해 아무 주장도 하지 않습니다

IPDFInvoiceValidationProvider.ValidateStage는 선택한 XML과 규칙 패키지를 받고 완전한 단계 결과, 엔진 진단, 구조화된 문제를 반환해야 합니다. 사용할 수 없거나 예외를 던지는 공급자는 통과할 수 없습니다

독립형 송장 XML에는 PLValidateInvoiceXML을, 내장 도구 어댑터에는 PLCreateExternalInvoiceValidationProvider를, 형식화된 결과 직렬화에는 PLInvoiceValidationReportToJSON을 직접 사용하십시오

참고 항목

ValidateFacturXInvoice, ValidateInvoiceBusinessRules, ValidateInvoiceBusinessRulesWithTools, ExtractFacturXXMLToString