VRBL-INV-HR-CIUS-1p0-47
Basic Info
|
Rule
|
When the Invoice Tax Subtotal Tax Percent is 0, the value of the Invoice Tax Subtotal Tax ID must not be contained in Tax Category IDs with Positive Tax Rate [VRBL-CL-HR-PositiveTaxRate-TaxCategoryID] (prefixed by 'VRBL:HR:'). Not allowed values: VRBL:HR:HR:PDV13, VRBL:HR:HR:PDV25, VRBL:HR:HR:PDV5. |
|
Context
|
/ubl:Invoice/cac:TaxTotal[cbc:TaxAmount/@currencyID = ../cbc:DocumentCurrencyCode]/cac:TaxSubtotal/cac:TaxCategory/cbc:ID
|
|
Pattern
|
vrbl-invoice-hr-cius-1p0 |
|
Severity
|
fatal |
Used Template: CodeList
| Parameter |
|
Value |
| probe |
= |
.
|
| codeList |
= |
!$VRBL-HR-CIUS-Prefix:$VRBL-CL-HR-PositiveTaxRate-TaxCategoryID
|
| showValues |
= |
true
|
Implementation
(
not(../cbc:Percent = 0)
)
or
(
not(boolean(.))
or
(
not(
substring(normalize-space(.), 1, string-length($VRBL-HR-CIUS-Prefix)) = $VRBL-HR-CIUS-Prefix
and
not(
contains(
substring-after(normalize-space(.), $VRBL-HR-CIUS-Prefix),
substring($VRBL-CL-HR-PositiveTaxRate-TaxCategoryID, 1, 1)
)
)
and
contains(
$VRBL-CL-HR-PositiveTaxRate-TaxCategoryID,
concat(
substring($VRBL-CL-HR-PositiveTaxRate-TaxCategoryID, 1, 1),
substring-after(normalize-space(.), $VRBL-HR-CIUS-Prefix),
substring($VRBL-CL-HR-PositiveTaxRate-TaxCategoryID, 1, 1)
)
)
)
)
)