So sehe ich das auch.
Hab dann mal die Typen geändert, Felder ergänzt und folgendes eingefügt:
//UNCEFAKT
iptt_CashDiscount3:
begin
AddChild('
ramescription').Text := Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount1Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount1Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount1Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount1Base)+'#','')+
#13#10+
Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount2Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount2Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount2Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount2Base)+'#','')+
#13#10+
Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount3Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount3Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount3Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount3Base)+'#','')+
#13#10;
end;
//UBL
iptt_CashDiscount3: //MLSQL 28.10.2024 Erweitert
begin
with xRoot.AddChild('cac
aymentTerms') do
begin
AddChild('cbc:Note').Text := Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount1Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount1Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount1Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount1Base)+'#','')+
#13#10+
Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount2Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount2Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount2Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount2Base)+'#','')+#13#10+
Format('#SKONTO#TAGE=%d#PROZENT=%s#',
[_Invoice.PaymentTermCashDiscount3Days,
TXRechnungHelper.FloatToStr(_Invoice.PaymentTermCa shDiscount3Percent)])+
IfThen(_Invoice.PaymentTermCashDiscount3Base <> 0,'BASISBETRAG='+
TXRechnungHelper.AmountToStr(_Invoice.PaymentTermC ashDiscount3Base)+'#','')+#13#10;
end;
end;
Das Erzeugen funktioniert damit.
Die Loadfunktionen habe ich noch nicht angepasst.