PaymentTerms - PaymentTermsType.Skonto - Attribut '@currencyID' soll in diesem Kontext nicht verwendet werden. #476
christianschmid200272
started this conversation in
General
Replies: 1 comment
-
Dieses Problem wurde mit #478 durch Stephan behoben. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hallo,
wir erzeugen Skonto Datensätze im den PaymentTerms, dabei wird im basisAmount das Attribut currencyID angelegt was vom gefeg Validierungstool bemängelt wird.
GEFEG.FX Check
Check date : 04.12.2024
Check time : 11:31:54
File : Rechnung 632982 (4).pdf
File date : 04.12.2024
File time : 11:31:54
File size : 14.346 Bytes
Reference standard : EN 16931 – FacturX 1.0.07 – ZUGFeRD 2.3 - EXTENDED;;
(0249) - Attribut '@currencyID' soll in diesem Kontext nicht verwendet werden.
(0243) ram:SpecifiedTradePaymentTerms
(0244) ram:DescriptionZahlung bis zum 15.03.2024 abzügl. 3,0% (= 538,95 EUR/ Skontoberecht.: 17.965,14 EUR)= 17.426,19 EUR</ram:Description>
(0245) ram:DueDateDateTime
(0246) <udt:DateTimeString format="102">20240315</udt:DateTimeString>
(0247) </ram:DueDateDateTime>
(0248) ram:ApplicableTradePaymentDiscountTerms
*(0249) <ram:BasisAmount currencyID="EUR">17426.19</ram:BasisAmount>
(0250) ram:CalculationPercent3.00</ram:CalculationPercent>
(0251) </ram:ApplicableTradePaymentDiscountTerms>
(0252) </ram:SpecifiedTradePaymentTerms>
(0253) ram:SpecifiedTradePaymentTerms
(0254) ram:DescriptionZahlung bis zum 31.03.2024 ohne Abzug</ram:Description>
(0255) ram:DueDateDateTime
(0256) <udt:DateTimeString format="102">20240331</udt:DateTimeString>
(0257) </ram:DueDateDateTime>
(0258) </ram:SpecifiedTradePaymentTerms>
//...\ZUGFeRD-csharp\ZUGFeRD\InvoiceDescriptor23CIIWriter.cs
foreach (PaymentTerms paymentTerms in this.Descriptor.GetTradePaymentTerms())
{
if (paymentTerms.PaymentTermsType.HasValue)
{
if (paymentTerms.PaymentTermsType == PaymentTermsType.Skonto)
{
Writer.WriteStartElement("ram", "ApplicableTradePaymentDiscountTerms");
** _writeOptionalAmount(Writer, "ram", "BasisAmount", paymentTerms.BaseAmount, forceCurrency: true); **
Writer.WriteOptionalElementString("ram", "CalculationPercent", _formatDecimal(paymentTerms.Percentage));
Writer.WriteEndElement(); // !ram:ApplicableTradePaymentDiscountTerms
}
if (paymentTerms.PaymentTermsType == PaymentTermsType.Verzug)
{
Writer.WriteStartElement("ram", "ApplicableTradePaymentPenaltyTerms");
_writeOptionalAmount(Writer, "ram", "BasisAmount", paymentTerms.BaseAmount, forceCurrency: true);
Writer.WriteOptionalElementString("ram", "CalculationPercent", _formatDecimal(paymentTerms.Percentage));
Writer.WriteEndElement(); // !ram:ApplicableTradePaymentPenaltyTerms
}
}
else
{
sbPaymentNotes.AppendLine(paymentTerms.Description);
}
dueDate = dueDate ?? paymentTerms.DueDate;
}
<
Beta Was this translation helpful? Give feedback.
All reactions