Hallo Seelendrache,
das ist einfach erledigt:
Es gibt Standardfelder bei denen SAP eine neue Preisfindung macht.
Verwendest Du in der Preisfindung Felder, die (lt. Orginal SAP) keine Auswirkung auf die Preisfindung haben, musst Du per Userexi die neue Preisfindung erzwingen.
Richtiger Userexit: MV45AFZB,
SPAN {
font-family: "Courier New";
font-size: 10pt;
color: #000000;
background: #FFFFFF;
}
USEREXIT_NEW_PRICING_VBAP
ich weiss nicht wo Dein "Kennzeichen" oder 1. Datum in der Position steht. Irgendein Feld in der VBAP, ich nenne es mal Dein_Feld. Du musst den genauen Feldnamen herausbekommen! Der Befehl im Userexit ist dann
if vbap-Dein_Feld ne *vbap-Dein_Feld.
new_pricing = 'B'.
endif.
Beispiele:
* if vbap-route ne *vbap-route.
* new_pricing = 'B'.
* endif.
if VBAK-vsbed ne *VBAK-vsbed.
new_pricing = 'C'.
endif.
if VBAK-ZZKNZ ne *VBAK-ZZNKZ.
new_pricing = 'C'.
endif.
in der Tabelle *VBAK und *VBAP stehen immer die alten Werte vor einer Änderung drin. Darüber erkennt SAP die Belegänderung. Und das nützt Du im Userexit aus.
Grüße
Christian