Folgendes Problem.
SAP berechnet den PositionsNettoBetrag ohne Rabatte/Zuschläge zuerst und DANN
werden Rabatte von diesem Preis abgezogen.
Das alte System (non SAP) rechnet immer vom Einzel-Listenpreis.
BEISPIEL aus dem ALTSYSTEM
7% von 97,10 sind auf 2 Stellen gerundet 6,80
Ergibt dann 90,30 für die Zwischensumme
Davon dann 2% ergibt gerundet 1,81
Zwischensumme 2 = 88,49
noch mal 6% discount ergibt gerundet 5,31
Zwischensumme 3 = 88,18
multipliziert mit 150 = 12.477,00
BEISPIEL aus SAP
97,10 mal 150 = 14.565,00 (SAP rechnet immer vom Positionsgesamtwert)
7% von 14.565 sind genau 1.019,55
Ergibt dann 13.545,45 für die Zwischensumme
Davon dann 2% ergibt gerundet 270,91
Zwischensumme 2 = 13.274,54
noch mal 6% discount ergibt gerundet 796,47
Zwischensumme 3 = 12.478,07
Den rabattierten neuen Einzelpreis wird dann von SAP durch Division ermittelt.
Das ist dann 88,1871333 gerundet 88,19
Hier entstehen nicht nur Abweichungen im GesamtNetto der Position, sondern auch werden 2 verschiedne EInzelpreise nach Abzug aller Rabatte errechnet.
Bei 1 Stück rechnen das alte System und SAP identisch. 88,18 wäre in beiden Fällen das Ergebnis für den PositionsNettoBetrag nach Abzug aller Rabatte.
Da durch Zusammenfassung mehrerer Aufträge und Liefersplitt vorkommen kann das auf einer Rechnung diese eine Position mehrfach mit unterschiedlichen Mengen erscheint DARF hier kein abweichender Einzelpreis erscheinen.
Der Preis darf auch aus vertraglichen Gründen nicht pro 1000 Stück angelegt werden sondern muss pro 1 Stück angelegt werden.
Alle Währungen (derzeit 8 verschieden) mit 5 Nachkommastellen anzulegen, um die Rundungsabweichen zu eliminieren kommt auch leider nicht in Frage.
Gibt es eine mehr oder weniger elegante Lösung?
ABAP oder Customizing - beides würde den Kunden zufriedenstellen.