AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi und XRechnung

Ein Thema von bcvs · begonnen am 9. Jun 2020 · letzter Beitrag vom 12. Dez 2023
Antwort Antwort
Seite 5 von 6   « Erste     345 6      
harfes

Registriert seit: 25. Jun 2006
Ort: Rand der Scheibe
180 Beiträge
 
Delphi 11 Alexandria
 
#41

AW: Delphi und XRechnung

  Alt 25. Okt 2023, 06:43
Hab gerade noch die Version 2.3.1 versucht - die funktioniert. Was fehlt bei der V. 3?

Hartmut
Hartmut
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#42

AW: Delphi und XRechnung

  Alt 25. Okt 2023, 07:28
Bitte nur mit dem Release arbeiten

https://github.com/LandrixSoftware/X...ses/tag/v2.3.1
Sven Harazim
--
  Mit Zitat antworten Zitat
harfes

Registriert seit: 25. Jun 2006
Ort: Rand der Scheibe
180 Beiträge
 
Delphi 11 Alexandria
 
#43

AW: Delphi und XRechnung

  Alt 25. Okt 2023, 07:42
Hallo Sven,

ja, da war ich wohl zu übereifrig mit der aktuellen Version 3...aber kein Problem, zum Testen genügt ja die V. 2.3.1. Sollte es dann zur Umsetzung kommen, muss ich es ja eh bei Dir lizensieren, da gewerblich genutzt.

Hartmut
Hartmut
  Mit Zitat antworten Zitat
dpKlaus

Registriert seit: 1. Nov 2020
14 Beiträge
 
#44

AW: Delphi und XRechnung

  Alt 11. Dez 2023, 13:34
Guten Tag!

Ich arbeite gerade mit der xRechnung Demo und habe den „Zuschlag fuer Kommuikation“ und „Nachlass 2 ohne Angabe von Basisbetrag und Nachlassprozente“ deaktiviert (auskommentiert)

Dann hab ich folgende Einträge vorgenommen, bzw. angepasst:

if cbAllowanceCharges.Checked then
begin
inv.LineAmount := inv.LineAmount;
inv.AllowanceTotalAmount := 5.00 + 5.00;
inv.ChargeTotalAmount := 0;
inv.TaxAmountSubtotals[1].TaxableAmount := inv.TaxAmountSubtotals[1].TaxableAmount - 5.00 - 5.00;
inv.TaxAmountSubtotals[1].TaxAmount := inv.TaxAmountSubtotals[1].TaxAmount - 0.95 - 0.95;
inv.TaxAmountTotal := inv.TaxAmountTotal - 0.95 - 0.95;
inv.TaxExclusiveAmount := inv.TaxExclusiveAmount - inv.AllowanceTotalAmount + inv.ChargeTotalAmount;
inv.TaxInclusiveAmount := inv.TaxInclusiveAmount - 5.00 - 0.95 - 5.00 - 0.95;
inv.PayableAmount := inv.TaxInclusiveAmount;
end;

ich erhalte dann aber folgende Fehlermeldung:

Pos Code Adj. Grad Text
val-sch.1.1 BR-CO-10 error [BR-CO-10]-Sum of Invoice line net amount (BT-106) = Σ Invoice line net amount (BT-131).
Pfad: /ubl:Invoice/cac:LegalMonetaryTotal[1]
val-sch.1.2 BR-CO-11 error [BR-CO-11]-Sum of allowances on document level (BT-107) = Σ Document level allowance amount (BT-92).
Pfad: /ubl:Invoice/cac:LegalMonetaryTotal[1]

Welche Variablen müssen noch bearbeitet werden?

Zur Übersicht habe ich mir die Inhalte der Variablen vor der Änderung der Variablen bei „if cbAllowanceCharges.Checked then“ per Showmessage (siehe Anhang Summen 001) anzeigen lassen und danach (siehe Anhang Summen 002). Diese Werte stimmen soweit.
Miniaturansicht angehängter Grafiken
summen-01.jpg   summen-02.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#45

AW: Delphi und XRechnung

  Alt 11. Dez 2023, 13:56
Aus der Kalten würde ich sagen, der ganze Block muss dann auch weg, wenn keine Nachlässe drin sind

Code:
if cbAllowanceCharges.Checked then
begin
inv.LineAmount := inv.LineAmount;
inv.AllowanceTotalAmount := 5.00 + 5.00;
inv.ChargeTotalAmount := 0;
inv.TaxAmountSubtotals[1].TaxableAmount := inv.TaxAmountSubtotals[1].TaxableAmount - 5.00 - 5.00;
inv.TaxAmountSubtotals[1].TaxAmount := inv.TaxAmountSubtotals[1].TaxAmount - 0.95 - 0.95;
inv.TaxAmountTotal := inv.TaxAmountTotal - 0.95 - 0.95;
inv.TaxExclusiveAmount := inv.TaxExclusiveAmount - inv.AllowanceTotalAmount + inv.ChargeTotalAmount;
inv.TaxInclusiveAmount := inv.TaxInclusiveAmount - 5.00 - 0.95 - 5.00 - 0.95;
inv.PayableAmount := inv.TaxInclusiveAmount;
end;
Sven Harazim
--
  Mit Zitat antworten Zitat
dpKlaus

Registriert seit: 1. Nov 2020
14 Beiträge
 
#46

AW: Delphi und XRechnung

  Alt 11. Dez 2023, 14:27
Danke für die schnelle Antwort. Es sind schon Rabatte vorhanden. Die sind so in der Demo.Zwei Artikel werden gebucht.

Einer ohne Rabatt

with inv.InvoiceLines.AddInvoiceLine do
begin
ID := '001'; //Positionsnummer
//Note : String; //Hinweis
Name := 'Kurzinfo Artikel 1'; //Kurztext
Description := 'Langtext Artikel'+#13#10+'Zeile 2'+#13#10+'Zeile 3'; //Laengere Beschreibung
Quantity := 2; //Menge
UnitCode := TInvoiceUnitCodeHelper.MapUnitOfMeasure('Stk',suc) ; //Mengeneinheit
//TODO Artikelnummer Kaeufer
SellersItemIdentification := 'A0815'; //Artikelnummer
TaxPercent := 7.0; //MwSt
TaxCategory := TInvoiceDutyTaxFeeCategoryCode.idtfcc_S_StandardRa te;
PriceAmount := 50; //Einzelpreis
//TODO Preiseinheiten
BaseQuantity := 0; //Preiseinheit
BaseQuantityUnitCode := TInvoiceUnitCode.iuc_None; //Preiseinheit Mengeneinheit
LineAmount := 100;
end;


Einer mit Rabatt

with inv.InvoiceLines.AddInvoiceLine do
begin
ID := '002'; //Positionsnummer
//Note : String; //Hinweis
Name := 'Kurzinfo Artikel 2'; //Kurztext
Description := 'Langtext Artikel 2'+#13#10+'Zeile 2'+#13#10+'Zeile 3'; //Laengere Beschreibung
Quantity := 1; //Menge
UnitCode := TInvoiceUnitCodeHelper.MapUnitOfMeasure('Stk',suc) ; //Mengeneinheit
//TODO Artikelnummer Kaeufer
SellersItemIdentification := 'A0816'; //Artikelnummer
TaxPercent := 19.0; //MwSt
TaxCategory := TInvoiceDutyTaxFeeCategoryCode.idtfcc_S_StandardRa te;
PriceAmount := 100; //Einzelpreis
BaseQuantity := 0; //Preiseinheit
BaseQuantityUnitCode := TInvoiceUnitCode.iuc_None; //Preiseinheit Mengeneinheit
LineAmount := 100;

//Nachlass zur Position
if cbAllowanceCharges.Checked then
with AllowanceCharges.AddAllowanceCharge do
begin
ChargeIndicator := false;
ReasonCodeAllowance := TInvoiceAllowanceOrChargeIdentCode.iacic_Discount;
BaseAmount := 50.00;
MultiplierFactorNumeric := 10; //10 Prozent auf 50 EUR
Amount := 5.00;
//Nicht erforderlich TaxPercent := 19.0;
//Nicht erforderlich TaxCategory := TInvoiceDutyTaxFeeCategoryCode.idtfcc_S_StandardRa te;
LineAmount := LineAmount - Amount;
end;
end;

Ich glaube jetzt kommt auch noch ein zweiter Rabatt

if cbAllowanceCharges.Checked then //Nachlaesse generieren
begin
with inv.AllowanceCharges.AddAllowanceCharge do
begin
//Haeufig genutzte Gruende

//41 Bonus for works ahead of schedule - Bonus fuer fruehzeitig erfuellte Aufgaben
//42 Other bonus - sonstiger Bonus
//60 Manufacturer’s consumer discount - Verbrauchernachlass des Herstellers
//62 Due to military status - Wegen militaerischem Status
//63 Due to work accident - Wegen Arbeitsunfall
//64 Special agreement - Sondervereinbarung
//65 Production error discount - Nachlass wegen Produktionsmangel
//66 New outlet discount - Nachlass fuer neue Vertriebsstelle
//67 Sample discount - Musternachlass
//68 End of range discount - Nachlass fuer Auslaufsortiment
//70 Incoterm discount - Incoterm Nachlass
//71 Point of sales threshold allowance - Freibetrag fuer Umsaetze zum Verkaufszeitpunkt
//88 Material surcharge/deduction - Materialzuschlag/-Nachlass
//95 Discount - Nachlass
//100 Special rebate - Sonderarbatt
//102 Fixed long term - Feste Laufzeit
//103 Temporary - Vorlaeufig
//104 Standard - Regulaer
ChargeIndicator := false;
ReasonCodeAllowance := TInvoiceAllowanceOrChargeIdentCode.iacic_Discount;
Reason := 'Nachlass 1';
BaseAmount := 50.00;
MultiplierFactorNumeric := 10; //10 Prozent auf 50 EUR
Amount := 5.00;
TaxPercent := 19.0;
TaxCategory := TInvoiceDutyTaxFeeCategoryCode.idtfcc_S_StandardRa te;
end;
end;

Ich sehe im Moment nur noch Buchstaben.
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#47

AW: Delphi und XRechnung

  Alt 11. Dez 2023, 14:33
wenn irgendwo etwas über AddAllowanceCharge eingetragen wird, zur Position oder generell zum Dokument, dann
muss dass in der Endsumme wieder abgezogen werden, sowohl im Netto also auch mit der MwSt. Deswegen ist in der Demo
für jeden Rabatt explizit der einzelne Betrag mit 5.00 EUR aufgeführt, ebenso wie die MWst mit 0,95. So kann man
es nachvollziehen.
Sven Harazim
--
  Mit Zitat antworten Zitat
dpKlaus

Registriert seit: 1. Nov 2020
14 Beiträge
 
#48

AW: Delphi und XRechnung

  Alt 11. Dez 2023, 14:57
So wollte/will ich es auch machen. Deshalb habe ich mir ja die Werte mit PrintScreens angezeigt. (siehe Anlagen weiter oben)

"Summen 01.jpg" die Eintraege ohne Rabatte und dann "Summen 02.jpg" die Eintrage nach Abzug von den 2 mal 5 EUR Rabatten und den 2 mal 0,95 EUR MwSt Minderung. Die Endbetraege nach der Subtraktion sind auch stimmig.

inv.PayableAmount 226 ohne Abzüge und

inv.PayableAmount 214,1 nach Abzügen (100,00 + 7 Mwst und 90 + 17,1 Mwst)
  Mit Zitat antworten Zitat
dpKlaus

Registriert seit: 1. Nov 2020
14 Beiträge
 
#49

AW: Delphi und XRechnung

  Alt 12. Dez 2023, 04:45
Ich nutze die Demo XRechnung for Delphi v2.3.1
In der Demo sind die Zuschläge (1 EUR) und eine Nachlassbuchung (5,00 EUR) deaktiviert.
Es bleiben ein „Nachlass 2 ohne Angabe von Basisbetrag und Nachlassprozente“ und ein „Nachlass (Rabatt) zur Position“ aktiviert. In der Demo werden als erstes die Nettobeträge der Rechnung und die MwSt-Beträge ohne Rabatte berechnet. Im weiteren verlauf werden die Nettobeträge und die MwSt-Beträge der Rabatte/Nachlässe „berechnet“. Das sind immer 5,00 EUR Rabatt und 0,95 EUR MwSt und wie unten in Variable eingetragen. Die Demo kann eine Anzeige im HTML-Format generieren und man sieht dann 200 EUR Rechnungsbetrag 10 EUR Nachlass/Rabatt und entsprechend die MwSt und den Rechnungs/Zahlbetrag.
Die Werte von denen ich glaube, dass sie zu „Nachlass (Rabatt) zur Position“ gehören habe ich rot markiert.

if cbAllowanceCharges.Checked then
begin
inv.LineAmount := inv.LineAmount - 5.00;
inv.AllowanceTotalAmount := 5.00;
inv.ChargeTotalAmount := 0;
inv.TaxAmountSubtotals[1].TaxableAmount := inv.TaxAmountSubtotals[1].TaxableAmount - 5.00 - 5.00;
inv.TaxAmountSubtotals[1].TaxAmount := inv.TaxAmountSubtotals[1].TaxAmount - 0.95 - 0.95;
inv.TaxAmountTotal := inv.TaxAmountTotal - 0.95 - 0.95;
inv.TaxExclusiveAmount := inv.TaxExclusiveAmount - inv.AllowanceTotalAmount + inv.ChargeTotalAmount - 5.00;
inv.TaxInclusiveAmount := inv.TaxInclusiveAmount - 5.00 - 0.95 - 5.00 - 0.95;
inv.PayableAmount := inv.TaxInclusiveAmount;
end;

Wenn ich den „Nachlass (Rabatt) zur Position“ deaktiviere und die Rot markierten Werte für die Korrekturbuchung lösche, also einfach einen „Nachlass 2 ohne Angabe von Basisbetrag und Nachlassprozente“ verbuchen möchte, bekomme ich eine Fehlermeldung: Siehe Anhang


Die gleiche Fehlermeldung kommt, wenn ich versuche einen „Nachlass (Rabatt) zur Position“ zu buchen und nur die roten Werte stehen lasse.
Lasse ich alle werte (rot und schwarz) wie oben stehen, und buche gleichzeitig „Nachlass 2 ohne Angabe von Basisbetrag und Nachlassprozente“ und einen „Nachlass (Rabatt) zur Position“ habe ich keine Fehlermeldung.
Hat jemand eine Idee was die Fehlermeldung zu bedeuten hat und ob vielleicht meine Zuordnung der Werte falsch ist?
Miniaturansicht angehängter Grafiken
fehlermeldung-01.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.594 Beiträge
 
Delphi 11 Alexandria
 
#50

AW: Delphi und XRechnung

  Alt 12. Dez 2023, 06:21
Also wenn ich alles richtig verstanden habe, was Sie da machen, müsste es so aussehen

if cbAllowanceCharges.Checked then
begin
inv.LineAmount := inv.LineAmount;
inv.AllowanceTotalAmount := 5.00;
inv.ChargeTotalAmount := 0;
inv.TaxAmountSubtotals[1].TaxableAmount := inv.TaxAmountSubtotals[1].TaxableAmount - 5.00;
inv.TaxAmountSubtotals[1].TaxAmount := inv.TaxAmountSubtotals[1].TaxAmount - 0.95;
inv.TaxAmountTotal := inv.TaxAmountTotal - 0.95;
inv.TaxExclusiveAmount := inv.TaxExclusiveAmount - inv.AllowanceTotalAmount + inv.ChargeTotalAmount;
inv.TaxInclusiveAmount := inv.TaxInclusiveAmount - 5.00 - 0.95;
inv.PayableAmount := inv.TaxInclusiveAmount;
end;
Sven Harazim
--
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 6   « Erste     345 6      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz