Show TOC
Neue Felder für
die Preisfindung
Grundlagen der
Anpassung in der Preisfindung
- In der Preisfindung sind folgende
Kommunikationsstrukturen relevant:
- KOMK (Preisfindung
Kommunikations-Kopf)
- KOMP (Preisfindung
Kommunikations-Position)
- KOMG (Erlaubte Felder für
Konditionsstrukturen)
Aus technischen
Gründen wird die Kommunikationsstruktur KOMG benutzt, in der die Felder aus
KOMK und KOMP enthalten sind, die im Standard für die Preisfindung relevant
angesehen werden und im Feldkatalog der Konditionstabellen angeboten werden.
Wollen Sie ein neues Feld im Feldkatalog nutzen, müssen Sie das Feld
entsprechend in die KOMP oder KOMK in folgende INCLUDES aufnehmen:
- Kopfdaten im INCLUDE KOMKAZ in
KOMK
- Positionsdaten im INCLUDE KOMPAZ in
KOMP
Durch die INCLUDES wird das Feld automtisch in
die KOMG und somit in den Feldkatalog aufgenommen.
- Die Routinen für die Versorgung der neuen
Felder in der Auftragsbearbeitung befinden sich im Programm MV45AFZZ.
Verwenden Sie folgende User-Exits:
- USEREXIT_PRICING_PREPARE_TKOMK
(Kopffelder)
- USEREXIT_PRICING_PREPARE_TKOMP
(Positionsfelder)
- Die Routinen für die Versorgung der neuen
Felder in der Fakturierung befinden sich im Member RV60AFZZ. Verwenden Sie
folgende User-Exits:
- USEREXIT_PRICING_PREPARE_TKOMK
(Kopffelder)
- USEREXIT_PRICING_PREPARE_TKOMP
(Positionsfelder)
Beispiele zur
Nutzung neuer Felder in der Preisfindung
Beispiel
1
Das erste Beispiel beschreibt den Fall, daß
Teile von Belegfeldern für die Preisfindung verwendet werden sollen. Sie
möchten z.B. die ersten drei Stellen der Produkthierarchie (PRODH) für die
Preisfindung verwenden. Gehen Sie folgendermaßen vor:
1. Prüfen Sie
die Datenelemente in der Standardauslieferung.
2. Da es in der
Standardauslieferung kein entsprechendes Datenelement gibt, müssen Sie ein
neues Datenelement, ZZPRODH1, anlegen. Legen Sie für das neue Datenelement
eine Domäne mit der Feldlänge "3" und dem Datentyp "CHAR" an.
Beachten Sie, daß
neue Datenelemente mit den Buchstaben "ZZ" oder "YY" beginnen müssen, da SAP
diese Namensräume frei gelassen hat, um sie vor Überschreiben beim
Releasewechsel zu schützen.
3. Prüfen Sie,
ob die Produkthierarchie (PRODH) auf Kopf- oder auf Positionsebene
vorkommt.
Die Tabelle VBAP
legt fest, daß das Belegfeld PRODH ein Positionsfeld ist.
4. Nehmen Sie
in der Kommunikationsstruktur KOMP über den INCLUDE KOMPAZ den Feldnamen
ZZPRODH auf und ordnen ihm das Datenelement ZZPRODH1 zu.
5. Aktivieren
Sie die Struktur.
6. Prüfen Sie,
in welcher Tabelle das Feld PRODH vorkommt.
Das Feld kommt in
der Tabelle VBAP (Verkaufsbeleg: Positionsdaten) vor.
7. Versorgen
Sie das neue Feld in den Form-Routinen zur Auftragsbearbeitung und
Fakturierung mittels der vorgesehenen User-Exits:
- In der Auftragsbearbeitung befindet sich der
User-Exit im Member MV45AFZZ. Die komplette Anweisung lautet wie
folgt:
FORM
USEREXIT_PRICING_PREPARE_TKOMP.
MOVE
VBAP-PRODH(3) TO TKOMP-ZZPRODH.
ENDFORM.
- Die Routinen für die Versorgung der neuen
Felder in der Fakturierung befinden sich im Member RV60AFZZ. Die Anweisung
sieht folgendermaßen aus:
FORM
USEREXIT_PRICING_PREPARE_TKOMP.
MOVE
XVBRP-PRODH(3) TO TKOMP-ZZPRODH.
ENDFORM.
8. Ordnen Sie
dem Feld ZZPRODH in Tabelle T681F die Angaben A, V und 001 zu. Für Felder in
der Bonusabwicklung wurde die Verwendung "E" aufgenommen.
Beispiel
2
Das zweite Beispiel beschreibt den Fall, daß
Sie eine Partnerrolle, die im Customizing für die Partnerpflege neu angelegt
wurde, für die Preisfindung verwenden möchten.
Angelegt sei die Partnerrolle für einen zweiten
Vertreter Z1 mit der Partnerart PE. Z1 ist als Pflichtrolle für den
Kundenstamm definiert, wird daher automatisch in den Beleg eingestellt und ist
in der internen Partnertabelle XVBPA vorhanden.
Um die neue Partnerrolle für die Preisfindung
zu nutzen, gehen Sie zunächst analog zu den vorangegangenen Beispielen
vor.
1. Legen Sie
ein neues Datenelement, hier ZZVRTZ1, mit der Domäne PERNR an.
2. Nehmen Sie
in KOMK über KOMKAZ das Feld ZZVRTZ auf und ordnen ihm das Datenelement
ZZVRTZ1 zu.
- Die Versorgung des Feldes erfolgt für die
Auftragsbearbeitung im User-Exit des Members MV45AFZZ. Die Einträge in den
User-Exits sind beim Release-Wechsel geschützt. Die Anweisung sieht wie folgt
aus:
FORM
USEREXIT_PRICING_PREPARE_TKOMK.
PERFORM
XVBPA_LESEN (SAPFV45K) USING 'Z1' VBAP-POSNR SY-TABIX.
IF XVBPA-UPDKZ
<> 'D'.
IF XVBPA-UPDKZ
<> 'D'.
MOVE
XVBPA-PERNR TO TKOMK-ZZVRTZ.
ENDIF.
ENDFORM.
- Die Versorgung des Feldes erfolgt für die
Fakturierung im User-Exit des Members RV60AFZZ. Die Einträge in den User-Exits
sind beim Release-Wechsel geschützt. Die Anweisung sieht wie folgt
aus:
FORM
USEREXIT_PRICING_PREPARE_TKOMK.
PERFORM
XVBPA_SELECT USING 'Z1'.
IF XVBPA-UPDKZ
<> 'D'.
MOVE
XVBPA-PERNR TO TKOMK-ZZVRTZ.
ENDIF.
ENDFORM.