Preisfindung und Konditionstechnik in SAP ERP

08.09.2010 - Nachrichten dienen dazu, Folgefunktionen zu einem Objekt ...... POWL (Personal Object Worklist) ... SAP NetWeaver Business Client 95.
3MB Größe 166 Downloads 928 Ansichten
1628_.book Seite 3 Mittwoch, 8. September 2010 9:54 09

Manfred Hirn, Werner Herhuth

Preisfindung und Konditionstechnik in SAP® ERP

Bonn  Boston

1628_.book Seite 5 Mittwoch, 8. September 2010 9:54 09

Auf einen Blick TEIL I Konditionstechnik 1

Einsatzgebiete und Elemente der Konditionstechnik ............ 31

2

Konditionsstammdaten der Preisfindung .............................. 69

3

Auswertungen und Arbeitsvorräte ........................................ 87

TEIL II Preisfindung 4

Customizing der Preisfindung ............................................... 105

5

Arbeiten mit Konditionssätzen ............................................. 151

6

Preisfindung im Vertriebsbeleg ............................................. 175

7

Spezielle Funktionen der Preisfindung .................................. 205

8

Ausgewählte Kalkulationsschemata und Konditionsarten ...... 245

TEIL III Weiterführende Techniken, Tipps und Tricks 9

Besonderheiten der Konditionstechnik in der Preisfindung ... 271

10 Wichtige Programme der Preisfindung ................................. 303 11 Systemanpassungen mit Bedingungen, Formeln und User Exits ............................................................................. 333 12 Typische Praxisanforderungen an die Preisfindung und ihre Lösung ......................................................................... 379 13 Preisfindung in ausgewählten Applikationen ....................... 427 14 Performance und Test .......................................................... 449 Anhang A

Konditionssteckbriefe .......................................................... 471

B

SAP CRM-Anbindung ........................................................... 515

C

Die Autoren ......................................................................... 519

1628_.book Seite 7 Mittwoch, 8. September 2010 9:54 09

Inhalt Vorwort von Manfred Hirn ....................................................................... Vorwort von Werner Herhuth ................................................................... Einleitung .................................................................................................

19 21 23

TEIL I Konditionstechnik Die Konditionstechnik ist ein konfigurierbares Werkzeug, das Sie einerseits zur Definition von Stammdaten und andererseits für den Zugriff auf diese einsetzen können. Sie dient also zur Lösung von Findungsaufgaben. In diesem ersten Kapitel stellen wir wesentliche Grundfunktionen vor, die mithilfe der Konditionstechnik realisiert wurden, und machen Sie mit den Begriffen der Konditionstechnik vertraut. 31

1

Einsatzgebiete und Elemente der Konditionstechnik ....... 31 1.1 1.2 1.3

1.4 1.5 1.6

1.7 1.8

1.9

Eigenschaften von Konditionen ............................................. Einsatzgebiete der Konditionstechnik (Konditionsverwendung) ......................................................................... Ausgewählte Einsatzgebiete (Verwendungen) ....................... 1.3.1 Verwendung A: Preisfindung .................................... 1.3.2 Verwendung B: Nachrichtenfindung .......................... 1.3.3 Verwendung C: Kontenfindung .................................. 1.3.4 Verwendung D: Materialfindung ............................... 1.3.5 Verwendung E: Bonus ............................................... 1.3.6 Verwendung G: Materiallistung/-ausschluss ............... 1.3.7 Verwendung N: Naturalrabattfindung ........................ 1.3.8 Verwendung 3: Kampagnenfindung ........................... 1.3.9 Verwendung T: Datenbeschaffung ............................ Anwendungsbereiche der Konditionstechnik (Konditionsapplikation) ......................................................... Elemente der Konditionstechnik im Überblick ....................... Feldkatalog und Kommunikationsstrukturen .......................... 1.6.1 Feldkatalog ............................................................... 1.6.2 Kommunikationsstrukturen ........................................ Konditionstabellen ................................................................ Zugriffsfolgen ........................................................................ 1.8.1 Zugriffsfolge mit unterschiedlichen Konditionstabellen .................................................... 1.8.2 Zugriffsfolge mit einer einzigen Konditionstabelle (teilqualifizierter Zugriff) ............................................ 1.8.3 Exklusiver oder additiver Zugriff ................................. 1.8.4 Direktwerte ............................................................... 1.8.5 Datenermittlung im Zugriff ........................................ Konditionsarten .....................................................................

32 33 35 35 35 36 37 37 37 38 38 39 39 42 44 44 45 46 48 49 51 55 56 56 56

7

1628_.book Seite 8 Mittwoch, 8. September 2010 9:54 09

Inhalt

1.10

1.11 1.12 1.13 1.14 1.15

Konditionsstammdaten .......................................................... 1.10.1 Datenmodell .............................................................. 1.10.2 Pflegedialog für einfache Verwendungen ................... 1.10.3 Pflegedialog für komplexe Verwendungen ................. 1.10.4 Gültigkeitszeitraum .................................................... 1.10.5 Freigabestatus und Bearbeitungsstatus ...................... Kalkulationsschemata ............................................................ Findungsanalyse .................................................................... Bedingungen ......................................................................... Gesamtablauf im Überblick .................................................... Fazit ......................................................................................

57 57 59 60 61 62 62 63 64 66 67

Neben der eigentlichen Konditionstechnik werden zusätzlich Konditionsstammdaten benötigt, um die entsprechenden Findungsprozesse zu automatisieren. Diese Stammdaten und ihre Pflege lernen Sie in diesem Kapitel kennen. 69

2

Konditionsstammdaten der Preisfindung ........................... 69 2.1

2.2 2.3 2.4

2.5 2.6

Konditionspflege über die Konditionsart ................................ 2.1.1 Funktion »Detail« ....................................................... 2.1.2 Funktion »Zusatzdaten« ............................................. 2.1.3 Funktion »Staffeln« .................................................... 2.1.4 Funktion »Zusatzkonditionen« ................................... 2.1.5 Funktion »Gültigkeitszeiträume« ................................ 2.1.6 Funktion »Naturalrabatt« ........................................... 2.1.7 Funktion »Statusinformation« .................................... 2.1.8 Funktion »Kumulierte Werte« .................................... 2.1.9 Funktion »Andere Konditionsart« ............................... Konditionspflege über Bereichsmenüs ................................... Konditionspflege über den Index ........................................... Absprachen ........................................................................... 2.4.1 Verkaufsabsprachen ................................................... 2.4.2 Bonusabsprachen ....................................................... Preisvereinbarungen .............................................................. Fazit ......................................................................................

69 71 73 74 74 74 75 75 75 75 75 79 80 81 84 85 85

Wie alle anderen Stammdaten müssen auch die Konditionssätze von den Fachabteilungen eines Unternehmens instandgehalten werden. Leistungsfähige Werkzeuge, die aus einer großen Anzahl von Konditionssätzen die jeweils relevante Teilmenge herausfiltern, unterstützen Sie dabei. 87

3

Auswertungen und Arbeitsvorräte ...................................... 87 3.1

3.2

8

Konditionslisten .................................................................... 3.1.1 Aufruf von Konditionslisten ....................................... 3.1.2 Customizing von Konditionslisten .............................. 3.1.3 Konditionslisten als Bestandteil der Konditionspflege über Bereichsmenüs ................................................... Arbeitsvorräte in der Rolle »Vertriebsmitarbeiter im Innendienst« .......................................................................... 3.2.1 Abfrage ändern ..........................................................

87 88 89 93 94 96

1628_.book Seite 9 Mittwoch, 8. September 2010 9:54 09

Inhalt

3.3 3.4

3.2.2 Abfrage personalisieren ............................................. 97 3.2.3 Neue Abfragen definieren .......................................... 98 Nettopreisliste ....................................................................... 100 Fazit ...................................................................................... 102

TEIL II Preisfindung In diesem Kapitel werden wir anhand eines Praxisbeispiels die charakteristische Vorgehensweise bei der Umsetzung eines kundenindividuellen Preisfindungsszenarios Schritt für Schritt vorstellen. 105

4

Customizing der Preisfindung ............................................. 105 4.1

4.2

4.3

4.4 4.5 4.6

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios ........................................................... 4.1.1 Anlegen einer Konditionstabelle ............................... 4.1.2 Anlegen einer Zugriffsfolge ........................................ 4.1.3 Customizing der Konditionsart ................................... 4.1.4 Anlegen einer Konditionsart ...................................... 4.1.5 Aufnahme der Konditionsart in ein Kalkulationsschema ...................................................................... 4.1.6 Kalkulationsschemaermittlung festlegen .................... 4.1.7 Test des Preisfindungsszenarios ................................. Elemente der Preisfindung im Detail ...................................... 4.2.1 Konditionstabelle ...................................................... 4.2.2 Zugriffsfolge ............................................................... 4.2.3 Konditionsart ............................................................. 4.2.4 Kalkulationsschema ................................................... Kundenindividuelle Anpassungen und Kundennamensräume . 4.3.1 »Kreative Nutzung« des Standard-Customizings.......... 4.3.2 Neue Felder für die Preisfindung ................................ 4.3.3 Bedingungen und Formeln (Routinen) ....................... 4.3.4 User Exits für die Preisfindung ................................... Beispiel für die Umsetzung komplexerer Anforderungen ........ Anbindung an die Ergebnis- und Marktsegmentrechnung (CO-PA) ................................................................................ Fazit ......................................................................................

106 106 111 114 117 119 120 121 122 122 124 125 137 141 141 142 143 144 145 147 149

Nachdem wir zuvor bereits die Werkzeuge zur Konditionspflege vorgestellt haben, beschäftigen wir uns in diesem Kapitel mit besonderen Fragestellungen rund um das Arbeiten mit Konditionssätzen. 151

5

Arbeiten mit Konditionssätzen ........................................... 151 5.1

5.2

Freigabestatus ....................................................................... 5.1.1 Ausprägungen des Freigabestatus .............................. 5.1.2 Freigabestatus bei Konditionssätzen .......................... 5.1.3 Sonderfall des Freigabestatus in Verbindung mit Absprachen ............................................................... Massenänderungen/Anlegen mit Bezug .................................

151 152 152 153 156 9

1628_.book Seite 10 Mittwoch, 8. September 2010 9:54 09

Inhalt

5.3

5.4 5.5

5.6

Kopieren von Konditionen ..................................................... 5.3.1 Voraussetzungen ....................................................... 5.3.2 Anwendungsbeispiel .................................................. Konditionspflege mit Bereichsmenüs ..................................... Weitere Funktionen innerhalb der Konditionspflege .............. 5.5.1 Änderungsbelege ....................................................... 5.5.2 Texte ......................................................................... 5.5.3 Zusatzkonditionen ..................................................... 5.5.4 Löschen von Konditionsstammdaten ......................... Fazit ......................................................................................

160 160 163 165 167 167 169 170 171 173

In diesem Kapitel beschäftigen wir uns mit der Darstellung und Handhabung der Preisfindung im Vertriebsbeleg. 175

6

Preisfindung im Vertriebsbeleg .......................................... 175 6.1

6.2 6.3 6.4

6.5 6.6 6.7 6.8 6.9

Positionskonditionsbild ......................................................... 6.1.1 Funktion »Konditionsdetail« ...................................... 6.1.2 Funktion »Zeile einfügen« .......................................... 6.1.3 Funktion »Zeile löschen« ............................................ 6.1.4 Funktion »Stammdaten Konditionssatz« ..................... 6.1.5 Funktion »Analyse (Protokoll der Preisfindung)« ......... 6.1.6 Funktion »Preise aktualisieren« .................................. Kopfkonditionsbild ................................................................ 6.2.1 »Preise aktualisieren« auf Kopfebene ......................... Vordefinierte Preiselemente in der Positionsübersicht ............ Preisvereinbarungen .............................................................. 6.4.1 Anlegen von Preisvereinbarungen .............................. 6.4.2 Anzeigen von Preisvereinbarungen über den Konditionsindex ......................................................... Preisfindung beim Anlegen von Belegen mit Referenz ............ Preisfindung bei Miet- und Wartungsverträgen (periodischer Fakturierungsplan) ............................................ Preisfindung bei Festbetragverträgen (MeilensteinFakturierungsplan) ................................................................. Preisfindung bei der Aufwandsabrechnung ............................ Fazit ......................................................................................

175 178 181 181 181 181 182 183 185 186 187 187 190 191 192 196 202 203

In diesem Kapitel werden wir Funktionen, denen wir im Rahmen der Konfiguration bereits begegnet sind, detaillierter behandeln. Außerdem runden wir das Gesamtbild der Preisfindung mit Ausführungen zu weiteren wichtigen Themen, wie z.B. der Steuerermittlung, ab. 205

7

Spezielle Funktionen der Preisfindung ............................... 205 7.1

10

Gruppenkonditionen ............................................................. 7.1.1 Absolute Kopfkonditionen ........................................ 7.1.2 Prozentuale Kopfkonditionen ................................... 7.1.3 Staffelkonditionen ohne Gruppenkey ........................

205 206 206 207

1628_.book Seite 11 Mittwoch, 8. September 2010 9:54 09

Inhalt

7.1.4 7.1.5

7.2

7.3 7.4

7.5 7.6

7.7

7.8

7.9

Staffelkonditionen mit Gruppenkey .......................... Prozentuale und absolute Gruppenkonditionen mit Konditionssätzen ....................................................... Konditionsausschluss ............................................................. 7.2.1 Einfacher Konditionsausschluss über Bedingungen ..... 7.2.2 Konditionsausschluss über Ausschlussgruppen............ 7.2.3 Konditionsausschluss über Formeln ........................... Konditionsupdate .................................................................. Steuerermittlung im Vertrieb ................................................ 7.4.1 Einfache Steuerermittlung .......................................... 7.4.2 Steuerermittlung über das Rechnungswesen (Steuerauslöser) ......................................................... 7.4.3 Steuerermittlung mit externem Steuer-Interface ......... 7.4.4 Steuererhöhung ......................................................... Naturalrabatt im Vertrieb ...................................................... Kosten des Verkaufsvorgangs ................................................. 7.6.1 Lagerverkauf (kein Cross Company) ........................... 7.6.2 Streckengeschäft (Third Party) ................................... 7.6.3 Lagerverkauf Cross Company ..................................... 7.6.4 Kundeneinzelfertigung mit/ohne Fertigungsauftrag..... 7.6.5 Istkostenabrechnung ................................................. Währungsumrechnungen im Vertrieb ................................... 7.7.1 Hauswährung ............................................................. 7.7.2 Belegwährung und Umrechnungskurs ....................... 7.7.3 Kurs für die Buchhaltung (Währungskurs für FI-Buchungen) ........................................................... 7.7.4 Konditionswährung und Umrechnungskurs ................ 7.7.5 Währungs-Customizing und Umrechnungskurse ......... 7.7.6 Währungsumrechnung ............................................... Druckaufbereitung des Preisfindungsergebnisses ................... 7.8.1 Die Funktionalität der Nachrichtenverarbeitung ......... 7.8.2 Druckaufbereitung der Werte der Positionen und des Dokumentenfußes .............................................. Fazit ......................................................................................

207 207 208 208 209 211 214 217 217 219 222 223 224 226 227 228 229 230 231 231 232 232 234 235 235 236 238 239 241 244

In diesem Kapitel stellen wir einige repräsentative Kalkulationsschemata des Vertriebsmoduls SD und die dort verwendeten Konditionsarten vor. 245

8

Ausgewählte Kalkulationsschemata und Konditionsarten 245 8.1

Ausgewählte Kalkulationsschemata ....................................... 246 8.1.1 Schema RVAA01 (Standard) ...................................... 247 8.1.2 Schema RVAA02 (Preisbuch) ..................................... 253

11

1628_.book Seite 12 Mittwoch, 8. September 2010 9:54 09

Inhalt

8.1.3

8.2

8.3

Schema RVAB01 (Ausgangspreise sind inklusive Steuer (B2C)) ............................................................. 8.1.4 Schema PSER01 (Periodische Fakturierung) ............... 8.1.5 Schema PSER02 (Service/Aufwandsabrechnung) ......... 8.1.6 Schema ICAA01 (Interne Verrechnungsfaktura) .......... 8.1.7 Schema WK0001 (Wertkontrakt) ............................... 8.1.8 Schema RVWIA1 (Werke im Ausland/ Steuerbehandlung) .................................................... 8.1.9 Schema RVACRN (Kontrakt-Fakturierung) ................. Ausgewählte Konditionsarten des Standardschemas .............. 8.2.1 Konditionsart EDI1/EDI2 (Erwarteter Kundenpreis) ... 8.2.2 Konditionsarten RL00/MW15 (Rechnungslistenkonditionen) .................................... 8.2.3 Konditionsart SKTV/SKTO (Skonto) ........................... 8.2.4 Konditionsart HM00 (Auftragswert) ........................... 8.2.5 Konditionsart AMIW/AMIZ (Mindestauftragswert / Mindestwertzuschlag) ................................................ 8.2.6 Konditionsart AZWR (Anzahlungswert) ...................... 8.2.7 Konditionsart GRWR (Grenzübergangswert) .............. Fazit ......................................................................................

255 257 258 259 260 260 261 263 263 264 264 265 266 267 268 268

TEIL III Weiterführende Techniken, Tipps und Tricks 9

Besonderheiten der Konditionstechnik in der Preisfindung ........................................................................ 271 9.1

9.2

12

Schnittstellen, Tabellen und Zusammenhänge ....................... 9.1.1 Schnittstellen für Konditionstabellen und zur Stammdatenpflege ..................................................... 9.1.2 Schnittstellen zu den Preisfindungsbausteinen ............ 9.1.3 Interne Strukturen und Tabellen der Preisfindungsprogramme ........................................... 9.1.4 Reihenfolge der Felder in der Konditionstabelle ......... Datenermittlung über Konditionen ........................................ 9.2.1 Variante 1 – Datenermittlung im Zugriff, Verwendung in späteren Zugriffen ............................. 9.2.2 Variante 2 – Datenermittlung im Zugriff, Übertragung nach Belegposition über Bedingung (Abbildung hierarchischer Strukturen) ........................ 9.2.3 Übertragung aus Konditionsstammsatz über Formel oder Bedingung ............................................

272 272 273 274 276 277 278

284 293

1628_.book Seite 13 Mittwoch, 8. September 2010 9:54 09

Inhalt

9.2.4

9.3

9.4

Variante 3 – Übertragung nach XKOMV aus Konditionssatz über Formel ....................................... 9.2.5 Variante 4 – Übertragung nach KOMK aus Konditionssatz über Bedingung ................................. 9.2.6 Variante 5 – Verwendung von Informationen anderer Belegkonditionen in Formeln ........................ Felder mit Mehrfachbelegung ................................................ 9.3.1 Die KOMPLOOP-Variante für Mehrfachfelder ............ 9.3.2 Die Wiederholfeldervariante für Mehrfachfelder ........ Fazit ......................................................................................

296 297 298 299 299 301 302

In diesem Kapitel skizzieren wir die Programmabläufe der wichtigsten Preisfindungsbausteine. Insbesondere zeigen wir, an welchen Stellen User Exits, Bedingungen und Formeln aufgerufen werden. 303

10 Wichtige Programme der Preisfindung .............................. 303 10.1

10.2

10.3 10.4 10.5 10.6

10.7 10.8

Funktionsbaustein PRICING ................................................... 10.1.1 Routine PREISFINDUNG_VORBEREITEN ................... 10.1.2 Routine KONDITIONSVORSTEP ................................ 10.1.3 Routine KONV_EINLESEN ......................................... 10.1.4 Routine XKOMV_AUFBAUEN_AUS_KOMT1 ............. 10.1.5 Routine XKOMV_AUFBAUEN_AUS_TKOMV ............. 10.1.6 Routine XKOMV_BEWERTEN .................................... 10.1.7 Routine XKOMV_AUSSCHLUSS ................................. 10.1.8 Routine XKOMV_UEBERTRAGEN_NACH_TKOMV..... Funktionsbaustein PRICING_COMPLETE ............................... 10.2.1 Die verschiedenen Arten von Gruppenkonditionen .... 10.2.2 Aufruf des Funktionsbausteins PRICING_COMPLETE in der Auftragsbearbeitung ........................................ 10.2.3 Ablauf des Funktionsbausteins PRICING_COMPLETE ................................................ Funktionsbaustein PRICING_COPY ........................................ Datenablage des Preisfindungsergebnisses in der Cluster-Tabelle KONV ........................................................... Funktionsbaustein PRICING_REFRESH ................................... Dialog-Anbindung/weitere Funktionsbausteine ..................... 10.6.1 Funktionsbaustein PRICING_LOAD_CONDITION_TYPS .......................... 10.6.2 Dialog-Anbindung ..................................................... 10.6.3 Funktionsbaustein PRICING_DETERMINE_DATES ...... Zusammenhang der Komponenten der Preisfindung .............. Fazit ......................................................................................

304 306 307 311 312 314 315 315 316 316 316 319 320 326 328 329 329 330 330 330 331 332

13

1628_.book Seite 14 Mittwoch, 8. September 2010 9:54 09

Inhalt

11 Systemanpassungen mit Bedingungen, Formeln und User Exits ............................................................................ 333 11.1

11.2

11.3 11.4

11.5

11.6

14

Preisfindungsarten ................................................................. 11.1.1 Steuerung über KOMP-KAEND_TYP .......................... 11.1.2 Steuerung über KOMP-KONAU_TYP ......................... Bedingungen ......................................................................... 11.2.1 Manipulation von KOMK- und KOMP-Feldern durch Bedingungen .................................................... 11.2.2 Übersteuerung der Preisfindungsarten durch Bedingungen ............................................................. 11.2.3 Beispiel 1 – Einsatz der Tabelle TKSCHLEXCL ............. 11.2.4 Beispiel 2 – Einsatz der Tabellen TKSCHL und TKSCHLEXCL ............................................................. 11.2.5 Aufrufzeitpunkt der Prestep-Bedingung .................... 11.2.6 Aufrufzeitpunkt der endgültigen Bedingung ............... 11.2.7 Verhalten bei kopierten Konditionen ......................... Ein Beispiel für den Einsatz der Formeln ................................ Konditionsformeln ................................................................. 11.4.1 Konditionsbasisformeln ............................................. 11.4.2 Staffelbasisformeln ..................................................... 11.4.3 Konditionswertformeln .............................................. 11.4.4 Gruppenkeyroutine .................................................... Sonderlogik der Preisfindungsart F in der Routine XKOMV_BEWERTEN ............................................................. 11.5.1 Zeitpunkt A ............................................................... 11.5.2 Zeitpunkt B ................................................................ 11.5.3 Zeitpunkt C ................................................................ 11.5.4 Zeitpunkt D ............................................................... Preisfindungsergebnis in KOMP ............................................ 11.6.1 KOMP-FXMSG (Meldungsnummer) ........................... 11.6.2 KOMP-PRSOK (Preisfindung o.k.) .............................. 11.6.3 KOMP-CEPOK (Status erwarteter Kundenpreis).......... 11.6.4 KOMP-MPROK (Status manuelle Preisänderung)........ 11.6.5 KOMP-KOUPD (Konditionsupdate) ........................... 11.6.6 KOMP-NETPR (Nettopreis) ........................................ 11.6.7 KOMP-NETWR (Nettowert der Position) ................... 11.6.8 KOMP-MWSBP (Steuerbetrag der Position) ............... 11.6.9 KOMP-WAVWR (Verrechnungswert der Position)...... 11.6.10 KOMP-BRTWR, KZWI1–KZWI6 ... (Zwischensummen) ..................................................................

335 335 336 336 336 337 337 338 339 339 340 340 346 346 348 350 352 356 356 357 357 357 358 360 360 360 361 361 362 362 362 362 363

1628_.book Seite 15 Mittwoch, 8. September 2010 9:54 09

Inhalt

11.7 11.8

Steuerungskennzeichen XKOMV-KSTEU ................................ User Exits .............................................................................. 11.8.1 User Exits der Funktionsgruppe V61A ........................ 11.8.2 User Exits der Funktionsgruppe V69A ....................... 11.9 KONV-Erweiterung .............................................................. 11.10 Performance-Aspekte ............................................................ 11.11 Fehlermeldungen/Fehlerbehandlung ...................................... 11.12 Fazit ......................................................................................

364 366 367 372 374 374 376 377

12 Typische Praxisanforderungen an die Preisfindung und ihre Lösung ......................................................................... 379 12.1

Budgetierungsanforderungen ................................................. 12.1.1 Statistiktabellen S060 und S469 ................................ 12.1.2 Statistiktabelle S071 .................................................. 12.1.3 Budgetierungsanforderungen ..................................... 12.2 Konditionen wurden nicht gefunden – woran liegt das? ......... 12.3 Rundung ............................................................................... 12.4 Preise mit mehr als zwei Nachkommastellen .......................... 12.5 Behandlung von Frachtzuschlägen ........................................ 12.5.1 Frachtzuschläge komplett mit erster Lieferung berechnen ................................................................. 12.5.2 Frachtzuschläge nicht berechnen bei Naturalrabatt und Retoure .............................................................. 12.6 Berechtigungsabhängigkeit des Konditionsbilds .................... 12.7 Aufnahme neuer Zwischensummenfelder ............................... 12.8 Stammdatenfelder datumsabhängig pflegen ........................... 12.8.1 Datenermittlung für die Auftragsposition VBAP.......... 12.8.2 Datenermittlung für den Auftragskopf VBAK/Kaufmännische Daten VBKD .......................... 12.8.3 Beispiel zur Substitution einer Kundengruppe (VBKD-KDGRP) ......................................................... 12.8.4 Vor- und Nachteile der Datenbeschaffung innerhalb und außerhalb der Preisfindung ................................. 12.8.5 Datenermittlung in der Faktura .................................. 12.9 Kopierte Konditionen und anschließende Mengenänderung 12.9.1 Einfache Lösung für Absolutbetragskonditionen ......... 12.9.2 Komplexe Lösung für alle Konditionsarten ................. 12.10 Gesteigerte Preise in Retouren und Gutschriften .................... 12.11 Kennzahlen für Reporting und Analyse ..................................

380 381 382 382 390 392 394 395 395 396 397 397 398 399 401 401 402 403 403 404 406 410 411

15

1628_.book Seite 16 Mittwoch, 8. September 2010 9:54 09

Inhalt

12.11.1 Einrichten eines neuen, konsolidierten Kalkulationsschemas .................................................. 12.11.2 Kennzahl 1 – Ausgangswert (KZWI1) ........................ 12.11.3 Kennzahl 2 – Standardkonditionen (KZWI2) .............. 12.11.4 Kennzahl 3 – Kundenindividuelle Konditionen (KZWI3) ..................................................................... 12.11.5 Kennzahl 4 – Manuelle Konditionen (KZWI4) ............ 12.11.6 Kennzahl 5 – Bonuskonditionen (KZWI5) .................. 12.11.7 Kennzahl 6 – Nettowert (NETWR) ............................. 12.11.8 Kennzahl 7 – Verrechnungswert (WAVWR) ............... 12.12 Fazit ......................................................................................

413 417 419 419 421 422 422 422 426

In diesem Kapitel werden wir die Anwendung der Preisfindung innerhalb ausgewählter Applikationen betrachten und auf die User Exits eingehen, die im direkten Zusammenhang mit dem Aufruf der Preisfindung stehen. 427

13 Preisfindung in ausgewählten Applikationen .................... 427 13.1

13.2 13.3 13.4 13.5 13.6 13.7

Preisfindung im Kundenauftrag .............................................. 13.1.1 Routine USEREXIT_PRICING_PREPARE_TKOMK ........ 13.1.2 Routine USEREXIT_PRICING_PREPARE_TKOMP ........ 13.1.3 Reaktion auf Änderungen von Beleginhalten ............. 13.1.4 Manuell eine neue Preisfindung im Kundenauftrag auslösen .................................................................... Preisfindung in der Faktura .................................................... Preisfindung in der Bestellung ............................................... Preisfindung im Rechnungswesen .......................................... Steuerberechnung in der Finanzbuchhaltung ......................... 13.5.1 Ausgangsbetrag inklusive Steuer ................................ Preisfindung in der Transportabwicklung (Frachtkalkulation) ................................................................. Fazit ......................................................................................

428 430 431 431 433 433 435 438 439 443 446 447

Im produktiven Betrieb ist die Performance des Systems immer ein wichtiges Thema. Wir wollen in diesem Kapitel zeigen, welche Möglichkeiten Sie haben, um den Anteil der Preisfindung an der Programmlaufzeit positiv zu beeinflussen. 449

14 Performance und Test ......................................................... 449 14.1 14.2 14.3 14.4 14.5 14.6

14.7

16

SAP-Tabellenpuffer ................................................................ Konditions-Prestep und Zugriffsoptimierung .......................... Reihenfolge der Felder in den Konditionstabellen .................. Einsatz von Bedingungen ....................................................... Gruppenkonditionen und Formeln ......................................... Besonderheiten in Kundenauftrag und Faktura ...................... 14.6.1 Besonderheiten im Kundenauftrag ............................ 14.6.2 Besonderheiten in der Faktura .................................. 14.6.3 Versorgung der Kommunikationsstruktur KOMK........ Analysetools ..........................................................................

450 451 453 454 455 456 456 456 459 463

1628_.book Seite 17 Mittwoch, 8. September 2010 9:54 09

Inhalt

14.8 14.9

Testen .................................................................................. 465 Fazit ...................................................................................... 468

469

Anhang ...................................................................................... 469 A

Konditionssteckbriefe ...................................................................... A.1 AMIW (Mindestauftragswert) ................................................ A.2 AMIZ (Mindestwertzuschlag) ................................................. A.3 AZWR (Anzahlung/Anzahlungsverrechnung) .......................... A.4 BO01 (Material/Materialgruppenbonus) ................................ A.5 DIFF (Rundung Endbetrag) .................................................... A.6 DUPL (Duplikationskondition) ............................................... A.7 EDI1 (Erwarteter Kundenpreis) .............................................. A.8 EDI2 (Erwarteter Kundenwert) .............................................. A.9 EK01 (Istkosten) .................................................................... A.10 EK02/EK03 (Kalkulierte Kosten) ............................................ A.11 GRWR (Grenzübergangswert) ................................................ A.12 HA00 (Prozentrabatt) ............................................................ A.13 HB00 (Absolutrabatt) ............................................................. A.14 HD00 (Fracht) ....................................................................... A.15 HI02 (Kundenhierarchierabatt) .............................................. A.16 HM00 (Auftragswert) ............................................................ A.17 IV01 (Preis interne Verrechnung) ........................................... A.18 KP00 (Palettenrabatt) ............................................................ A.19 KP01 (Palettenanbruchzuschlag) ............................................ A.20 KP02 (Mixpalettenrabatt) ...................................................... A.21 KP03 (Mixpalettenanbruchzuschlag) ...................................... A.22 KUMU (Kumulationskondition) ............................................. A.23 KW00 (Konzernbewertung – Transferpreis) ............................ A.24 MW01 (Steuerauslöser) ......................................................... A.25 MW15 (Steuer Delkredere (voller Satz)) ................................. A.26 MWSI (Mehrwertsteuer im Hundert) ..................................... A.27 NETP (Rundungsdifferenz) ..................................................... A.28 NETW (Warenwert) ............................................................... A.29 NRAB (Naturalrabatt) ............................................................ A.30 PBBS (Basispreis) ................................................................... A.31 PBU (Preisbuchfindung) ......................................................... A.32 PBUD (Preisbuchbasis) ........................................................... A.33 PBUP (Preisbuchbrutto) ......................................................... A.34 PC00 (Profitcenterbewertung – Transferpreis) ........................ A.35 PI01 (Preis interne Verrechnung) ...........................................

471 471 472 473 473 475 475 476 477 477 478 478 479 480 481 482 482 483 484 485 486 487 488 489 490 491 491 492 493 493 494 494 496 496 497 498

17

1628_.book Seite 18 Mittwoch, 8. September 2010 9:54 09

Inhalt

B

C

A.36 PMIN (Mindestpreis) ............................................................. A.37 PN00 Nettopreis .................................................................. A.38 PR01 (Preis inklusive Steuer) ................................................. A.39 PR02 (Preis gesteigert) ........................................................... A.40 PTVO (Gutschein) .................................................................. A.41 R100 (100%-Abschlag) .......................................................... A.42 RL00 (Delkredere) ................................................................. A.43 SKTO (Skonto nach Steuer) .................................................... A.44 SKTV (Skonto vor Steuer) ....................................................... A.45 VA00 (Variantenpreis) ........................................................... A.46 VPRS (Verrechnungspreis) ..................................................... A.47 Z902 (Datenermittlung Material) ........................................... A.48 Z905 (Materialgruppenrabatt) ............................................... A.49 ZBUP (Preisbuchbrutto) ......................................................... A.50 ZDB1 (Mindestdeckungsbeitrag) ............................................ A.51 ZM00 (Auftragswertdelta) ..................................................... A.52 ZPBP (Datenermittlung Kunde) .............................................. A.53 ZPRA (Preis allgemein) ........................................................... A.54 ZPRB (Preis kundenindividuell) .............................................. A.55 ZPRC (Preis gesteigert) ........................................................... A.56 ZPRD (Preis Kontrakt) ............................................................ A.57 ZH01 (Budget genehmigt) ..................................................... A.58 ZH02 (Budget angefordert) .................................................... SAP CRM-Anbindung ....................................................................... B.1 Datenübernahme von SAP ERP nach SAP CRM ...................... B.1.1 Übernahme der Customizing-Daten ........................... B.1.2 Stammdatenübernahme ............................................. B.2 Anpassungskonzept der CRM-Preisfindung ............................ Die Autoren .....................................................................................

499 499 500 500 501 502 502 503 504 504 506 507 508 508 509 509 510 510 511 512 512 513 514 515 515 516 517 518 519

Index....................................................................................................... 521

18

1628_.book Seite 23 Mittwoch, 8. September 2010 9:54 09

Bevor Sie inhaltlich in die Konditionstechnik und die Preisfindung in SAP ERP einsteigen, gehen wir im Folgenden auf das Thema, den Aufbau und die Zielgruppe dieses Buchs ein.

Einleitung Die Preisfindung und die Konditionstechnik in SAP ERP, über die wir in diesem Buch schreiben, existieren schon seit Einführung des SAP R/3-Systems. Ein paar Erweiterungen sind natürlich im Laufe der Jahre hinzugekommen, in den letzten Jahren hat sich allerdings funktional nicht mehr viel getan. Warum also brauchen Sie dieses Buch jetzt noch, es gibt ja schließlich die Anwendungs-Dokumentation und die Schulungsunterlagen?

Warum gibt es dieses Buch? Die Tatsache, dass von Seiten der SAP an diesem Modul in den letzten Jahren keine wesentlichen Weiterentwicklungen erfolgt sind, bedeutet nicht, dass keine Kundenanforderungen vorgelegen haben. Es ist jedoch nicht sinnvoll, jede bekannte Kundenanforderung auch in den Standard aufzunehmen. Dies könnte sich destabilisierend auswirken, außerdem würde so jeder Kunde mit den Erweiterungen »beglückt« werden, auch wenn er sie überhaupt nicht braucht. Es ist aber auch gar nicht zwingend erforderlich, das Modul weiterzuentwickeln, denn die SAP ERP-Preisfindung bietet im Standard eine ausgesprochen große Flexibilität, die man nur kennen und richtig einsetzen muss. Preisfindung ist eine unendliche Geschichte, die Vertriebsabteilungen sind sehr kreativ, wenn es um das Ausdenken neuer Preisgestaltungsvarianten geht. Die Aufgabe des Key-Users, Beraters oder Systembetreuers ist es, die Anforderungen der Fachabteilung zu realisieren. Hier setzen wir an. Bekanntlich führen viele Wege nach Rom. Der einfachste Weg wäre sicherlich, die Fachabteilung davon zu überzeugen, die Anforderung fallen zu lassen. Das ist natürlich nicht ernst gemeint, also muss eine Lösung gefunden werden. Dabei kommt es immer wieder mal vor, dass der eingeschlagene Lösungsweg nicht unbedingt optimal ist. Hier soll unser Buch behilflich sein.

23

1628_.book Seite 24 Mittwoch, 8. September 2010 9:54 09

Einleitung

Voraussetzung dafür, die richtige Lösung zu finden, ist natürlich, dass man mindestens die Möglichkeiten des Standards kennt, weshalb wir die bestehende Funktionalität in ihrer ganzen Flexibilität umfassend darstellen. Darüber hinaus zeigen wir, wie Sie vorgehen können oder müssen, wenn Sie den Standard ausgereizt haben. Bei jeder Fragestellung zum Thema Preisfindung und Konditionstechnik sollten Sie in diesem Buch fündig werden.

Zur Geschichte der Preisfindung und Konditionstechnik In den Anfangszeiten von SAP R/2 gab es zur Bestimmung des Ausgangspreises drei Quellen: den Preis aus dem Materialstamm, den kundenindividuellen Preis und den Preislistenpreis. Zur Abbildung der Zu- und Abschläge standen im System acht Positionskonditionen und acht Kopfkonditionen mit variablem Schlüsselaufbau per Customizing zur Verfügung. Dieses Prinzip stieß mit zunehmender Kundenzahl aus den unterschiedlichsten Branchen jedoch bald an seine Grenzen, insbesondere reichten diese Möglichkeiten nicht aus, um etwa die Anforderungen der Konsumgüterindustrie abzudecken. Daher wurde im Jahr 1987 ein Entwicklungsprojekt mit vier repräsentativen Kunden aufgesetzt, in dem die zusätzlichen Anforderungen evaluiert und als Kundenlösung realisiert werden sollten. Dabei wurde ein zentrales Anliegen deutlich: Es sollte möglich sein, alle Elemente der Preisfindung auf Hierarchieebenen (Kunden- und Produkthierarchie) abzulegen. Die Lösung für diese Anforderung war die Erfindung der Zugriffsfolge, mit deren Flexibilität es möglich war, beliebige hierarchische Strukturen zu handhaben und darüber hinaus die bestehende SAP R/2-Preisfindung ebenfalls abzudecken. Ein weiterer Fortschritt bestand darin, dass alle Wertkomponenten eines Belegs über das neu eingeführte Kalkulationsschema an einer einzigen Stelle definiert und kalkuliert werden konnten. Das betraf beispielsweise die Preise, die Zu- und Abschläge, die Kosten, den Deckungsbeitrag, den Kreditpreis und den Grenzübergangswert, um hier nur einige zu nennen. Auch die Bedingungen wurden in dieser Projektentwicklung eingeführt, um noch komplexere Sachverhalte abzubilden. In einem nächsten Schritt wurde die Flexibilität der neuen Konditionstechnik, also die Fähigkeit, beliebige Hierarchien zu handhaben, auch für weitere Grundfunktionen wie beispielsweise die Materialsubstitution und die Artikellistung umgesetzt.

24

1628_.book Seite 25 Mittwoch, 8. September 2010 9:54 09

Einleitung

Die Projektlösung war ein durchschlagender Erfolg und wurde auch vorab an andere Kunden ausgeliefert. Der größte Teil dieser Projektlösung wurde anschließend in den SAP R/2-Standard übernommen. Mit dem Aufbau von SAP R/3 wurde diese Konstruktion im Wesentlichen übernommen, jedoch völlig neu realisiert. Aufgrund der Erfahrungen mit der SAP R/2-Lösung wurden zur Erweiterung der Flexibilität und der kundenindividuellen Anpassbarkeit zusätzlich die Formeln eingeführt, die Berechnungen ermöglichen, die über das Tabellen-Customizing hinausgehen. Eine weitere Designänderung bestand darin, sogenannte Kopfkonditionen grundsätzlich auf die Positionen zu verteilen, um beispielsweise bei der Teilfakturierung die anteiligen Werte korrekt zu berücksichtigen; ein Thema, das in SAP R/2 nur unzureichend gelöst war. Die Datenablage der Konditionsstammdaten erfolgte nun in generierten Konditionstabellen. Bis zum heutigen Stand der SAP ERP-Preisfindung gab es dann noch eine Reihe von funktionalen Erweiterungen, unter denen vor allem die Einführung der variablen Daten der Konditionsstammdaten hervorzuheben ist.

Wie hilft Ihnen dieses Buch? Die Elemente des Customizings der Konditionstechnik und der Preisfindung sind im Lauf der Jahre immer leistungsfähiger geworden – und damit kann ein großer Prozentsatz der Anforderungen an die heutige SAP ERP-Preisfindung durch eine kreative Nutzung dieser Customizing-Elemente gelöst werden. Dennoch treten in der Praxis immer wieder die unterschiedlichsten Anforderungen auf, so dass kundenindividuelle Anpassungen oft unausweichlich sind. Damit diese stabil und performant arbeiten, ist ein technisches Detailwissen erforderlich, das man sich bisher nur sehr mühsam und nur in Ausschnitten erarbeiten konnte. Unser Buch wird Ihnen bei der Bewältigung von Herausforderungen in der Konditionstechnik und der Preisfindung helfen: Es vermittelt nicht nur eine umfassende Herleitung und Darstellung des Standard-Customizings für Jedermann – wir erklären das Customizing an einem typischen Praxisfall, der Schritt für Schritt durchlaufen wird –, sondern legt auch die technischen Grundlagen offen, die bisher in dieser Transparenz und Detaillierung nur im Kopf (um nicht zu sagen im »Hirn«) des Hauptentwicklers dieses Themenbereichs vorhanden waren.

25

1628_.book Seite 26 Mittwoch, 8. September 2010 9:54 09

Einleitung

Wie ist das Buch aufgebaut? Wir haben das Buch in drei Teile gegliedert: Teil I, »Konditionstechnik«, enthält eine Einführung in die Konditionstechnik, die das Kernstück der Preisfindung darstellt, aber auch für zahlreiche andere Findungsprozesse verwendet wird. Er beginnt mit den Einsatzgebieten und den Elementen der Konditionstechnik in Kapitel 1, gefolgt von der Vorstellung der Konditionsstammdaten der Preisfindung in Kapitel 2 und deren Auswertungen und Arbeitsvorräten in Kapitel 3. Im zentralen Teil II, »Preisfindung«, werden zunächst in Kapitel 4 ausführlich die Elemente und die Möglichkeiten des Standard-Customizings der Preisfindung vorgestellt. Ein weiterer Schwerpunkt liegt auf der Arbeit mit Konditionsstammdaten in Kapitel 5 und dem Verständnis und der Handhabung des Preisfindungsergebnisses in Kapitel 6. Vertieft werden diese Betrachtungen in Kapitel 7 durch die Vorstellung spezieller Funktionen der Preisfindung und in Kapitel 8 durch die Behandlung ausgewählter Kalkulationsschemata und Konditionsarten. Im abschließenden »Experten«-Teil III, Weiterführende Techniken, Tipps und Tricks, wird das technische Detailwissen vermittelt, das benötigt wird, um kundenindividuelle Anpassungen stabil, performant und mit hoher Qualität vornehmen zu können. Ausgehend von den Besonderheiten der Konditionstechnik in der Preisfindung in Kapitel 9 über die Vorstellung der wichtigsten Programme der Preisfindung in Kapitel 10 geht es in Kapitel 11 um Systemanpassungen mit Bedingungen, Formeln und User Exits. Danach folgen mit Kapitel 12 typische Praxisanforderungen an die Preisfindung und ihre Lösungen, die größtenteils diese Bedingungen, Formeln und User Exits einsetzen. Diese Betrachtungen werden durch die Preisfindung in ausgewählten Applikationen in Kapitel 13 auf weitere Bereiches, wie z.B. die Bestellung und das Rechnungswesen, ausgedehnt. Am Ende steht eine Abhandlung zu Performance und Test in Kapitel 14. Abgerundet wird das Buch durch die in Anhang A enthaltenen »Konditionssteckbriefe« – eine kompakte Beschreibung mit Nennung aller besonderen Customizing-Details, die eine bestimmte Konditionsart ausmachen, für die man sich gerade interessiert. Darüber hinaus finden Sie in Anhang B grundlegende Informationen zur Übernahme der SAP ERP-Preisfindung (Customizing und Stammdaten) nach SAP CRM.

26

1628_.book Seite 27 Mittwoch, 8. September 2010 9:54 09

Einleitung

An wen richtet sich dieses Buch? Mit unserem Buch sprechen wir einen umfangreichen Personenkreis an: Er reicht vom Einsteiger über den Key-User und den Junior-Berater bis zum sehr erfahrenen Berater. Das liegt daran, dass die Komplexität der Konditionstechnik und der Preisfindung eine Vielzahl von Schichten aufweist. Wie bei einer sehr großen Zwiebel können Sie immer noch eine weitere Schicht der Komplexität abschälen, um irgendwann zum Kern vorzudringen. Vielleicht kommen Sie für Ihr »Preisfindungsrezept« mit den ersten Schichten des Standard-Customizings aus und sind vollkommen zufriedengestellt. Vielleicht ist Ihr »Appetit« aber auch etwas größer und Ihre Ansprüche sind raffinierter. Dann müssen Sie sich schrittweise dem Kern der Komplexität nähern. Abhängig von der Ebene der Komplexität, auf der Sie sich befinden, ergeben sich verschiedenste Möglichkeiten, mit dem Buch zu arbeiten. Sie können natürlich ganz einfach von vorne zu lesen beginnen. Aber falls Sie es als Einsteiger in die Preisfindung und die Konditionstechnik oder als Key-User eilig haben, können Sie auch mit dem zentralen Teil II, »Preisfindung«, starten. Das Kapitel 5 gibt anhand einer konkreten Aufgabenstellung, die beispielhaft umgesetzt wird, einen umfassenden Einstieg in die Konfiguration (Customizing) der Konditionstechnik und Preisfindung. Idealerweise kann man dieses Beispiel auch Schritt für Schritt am System nachvollziehen, wenn man Zugang zu einem Testsystem besitzt – eine Vorgehensweise, die natürlich für alle Beispiele in diesem Buch zu empfehlen ist. Nach der Lektüre von Teil II sind Einsteiger und Key-User für die allermeisten Fragen des Alltags gerüstet. Der Berater wird eher über das Inhaltsverzeichnis navigieren und die Kapitel mit denjenigen Themen direkt ansteuern, die sein Interesse finden. Das werden naturgemäß häufig – aber nicht ausschließlich – die Inhalte sein, die in Teil III, »Weiterführende Techniken, Tipps und Tricks«, angesiedelt sind. Zum vollen Verständnis von Teil III sind allerdings ABAP-Programmierkenntnisse Voraussetzung. Der erfahrene Berater wird sich zuallererst auf den Teil III konzentrieren, da hier zum großen Teil Themen dargestellt sind, die außerhalb dieses Buchs noch nirgends oder nicht in dieser Detailgenauigkeit veröffentlicht wurden. Das könnte im Einzelfall sogar dazu führen, dass bestehende Lösungen noch einmal überprüft werden, da sich aufgrund des angeeigneten Wissens alternative Lösungen offenbaren.

27

1628_.book Seite 28 Mittwoch, 8. September 2010 9:54 09

Einleitung

Anmerkung zu den Beispielen in diesem Buch Alle in diesem Buch aufgeführten Lösungsvorschläge auf der Basis von SAP ERP 6.0 Enhancement Package 4 wurden von uns erfolgreich getestet. Wenn Sie die Anregungen in diesem Buch für eigene Erweiterungen verwenden, müssen Sie natürlich – wie immer in solchen Fällen – Ihre individuellen Anforderungen und Systemgegebenheiten genau beachten. Anders gesagt: Mit Blick auf Ihre konkrete Situation sind »alle Angaben ohne Gewähr«; für Ihre Modifikationen sind Sie letztendlich selbst verantwortlich. Mithilfe des in diesem Buch vermittelten Wissens sollten Sie diese Modifikationen aber kompetent angehen können.

28

1628_.book Seite 31 Mittwoch, 8. September 2010 9:54 09

Die Konditionstechnik ist ein konfigurierbares Werkzeug, das Sie einerseits zur Definition von Stammdaten und andererseits für den Zugriff auf diese einsetzen können. Sie dient also zur Lösung von Findungsaufgaben. In diesem ersten Kapitel stellen wir wesentliche Grundfunktionen vor, die mithilfe der Konditionstechnik realisiert wurden, und machen Sie mit den Begriffen der Konditionstechnik vertraut.

1

Einsatzgebiete und Elemente der Konditionstechnik

Jede betriebswirtschaftliche Funktion benötigt Stammdaten: Kundenauftragsbearbeitung und Fakturierung benötigen den Kundenstamm und den Materialstamm, die Einkaufsabwicklung benötigt den Lieferantenstamm, der Buchungsbeleg benötigt Sachkonten etc. Beim Design dieser StammdatenObjekte steht man immer vor der Frage, wie denn nun eigentlich der Zugriffsschlüssel dieser Objekte aussehen soll. Sollen die Daten abhängig sein von der Verkaufsorganisation, dem Vertriebsweg, dem Buchungskreis oder anderen Organisationseinheiten? Diese Entscheidung ist oft nicht einfach, zumal SAP als Lieferant von Standardsoftware den Anspruch erhebt, nicht nur die bekannten, sondern auch zukünftige, heute noch unbekannte Anforderungen abzudecken. Das bedeutet, dass ein hohes Maß an Flexibilität gewünscht ist. Die Antwort auf diese Anforderung gibt SAP mit der Konditionstechnik. Die Idee der Konditionstechnik entstand zunächst bei der Entwicklung der Preisfindung. Es wurde jedoch schnell klar, dass dieses Konstruktionsprinzip auch für andere Anwendungen ideal ist. Die Konditionstechnik wurde daher immer eingesetzt, wenn die Abhängigkeiten der Stammdaten für eine bestimmte Funktion durch die Kundenanforderungen nicht eindeutig bestimmbar waren – zumindest bei den Funktionalitäten, die neu entwickelt wurden. Beispiele dafür sind die Funktionen Artikellistung, Artikelausschluss und Materialfindung.

31

1628_.book Seite 32 Mittwoch, 8. September 2010 9:54 09

1

Einsatzgebiete und Elemente der Konditionstechnik

Zur Unterscheidung der Anwendungen bzw. der Einsatzgebiete wurde der Begriff der Konditionsverwendung eingeführt. Bevor wir uns einige Beispiele für diese Konditionsverwendungen ansehen, wollen wir auf die Eigenschaften der Konditionen eingehen, die sie von anderen Stammdaten abheben.

1.1

Eigenschaften von Konditionen

Wir haben darüber gesprochen, dass die Abhängigkeit der Konditionsstammdaten, also der Zugriffsschlüssel, nicht ein für alle Mal festgeschrieben werden kann, sondern in jeder SAP-Installation unterschiedlich ausfallen kann. Der Zugriffsschlüssel der Konditionsstammdaten ist frei definierbar Der wesentliche Unterschied der Konditionsstammdaten (Konditionssätze) im Vergleich zu anderen Stammdaten, wie z.B. dem Kundenstamm und dem Materialstamm, besteht darin, dass der Konditionsschlüssel nicht fest definiert ist, sondern durch eine Customizing-Transaktion eingerichtet wird.

Die Informationen über den Schlüsselaufbau einer Stammdatentabelle, auch Konditionstabelle genannt, werden als Metadaten in Customizing-Tabellen abgelegt. Aus diesen Metadaten werden dann die DDIC-Tabellen (Data Dictionary) generiert, in denen die spätere Datenablage erfolgt. Die variable Schlüsseldefinition der Konditionsstammdaten stellt natürlich besondere Herausforderungen an die Stammdatenpflege. Deshalb werden zu einer Konditionstabelle auch noch die zugehörigen Pflegeprogramme und die Screens (zumindest für den SAPGUI) generiert. Neben den variablen Schlüsselfeldern sind die Gültigkeitszeiträume ein weiterer wesentlicher Bestandteil der Konditionssätze. Konditionsstammdaten sind datumsabhängig Eine weitere wichtige Eigenschaft der Konditionsstammdaten ist ihre Datumsabhängigkeit, d.h., jedem Konditionssatz ist ein Gültigkeitszeitraum zugeordnet. Andere Stammdaten, wie z.B. der Kundenstamm oder der Materialstamm, besitzen diese Eigenschaft nicht.

Eine Konditionsverwendung wird normalerweise von mehreren Objekten innerhalb des SAP-Systems benutzt. Die Preisfindung wird unter anderem in Kundenauftrag, Fakturierung, Bestellung und Rechnungswesen eingesetzt. Zur besseren Abgrenzung der Objekte wurde der Begriff der Konditionsappli-

32

1628_.book Seite 33 Mittwoch, 8. September 2010 9:54 09

Einsatzgebiete der Konditionstechnik (Konditionsverwendung)

kation eingeführt. Große Teile des Customizings, wie z.B. der Feldvorrat, die Konditionsarten und die Kalkulationsschemata, sind applikationsabhängig. Neben der flexiblen Definition der Schlüsselfelder einer Konditionstabelle kommt dem Lesen der Konditionstabellen innerhalb der operativen Verarbeitung (z.B. bei der Preisfindung im Kundenauftrag) eine ganz besondere Bedeutung zu. Das Lesen erfolgt mit einer Suchstrategie, der sogenannten Zugriffsfolge. Der Zugriff auf die Konditionssätze erfolgt mit einer Suchstrategie – der »Zugriffsfolge« Durch die Einführung von Zugriffsfolgen ist der Zugriff auf die Konditionstabellen über das Customizing frei definierbar; insbesondere ist dadurch eine Priorisierung der gefundenen Konditionssätze und die Abarbeitung hierarchischer Strukturen möglich.

Zusammen mit dem Einsatz von Bedingungen verleiht die Zugriffsfolge der Konditionstechnik eine Ausnahmestellung. Denn ihre Flexibilität kann teure Modifikationen in Kundeninstallationen überflüssig machen. Lassen Sie uns im Folgenden auf einige ausgewählte betriebswirtschaftliche Funktionen, die mithilfe der Konditionstechnik realisiert sind, eingehen und erste technische Begriffe ansprechen. Die Konditionstechnik dient zwar dazu, betriebswirtschaftliche Anforderungen zu lösen, sie ist jedoch auch – als Tool – techniklastig, weshalb wir Sie notgedrungen immer wieder mit den technischen Begriffen konfrontieren werden.

1.2

Einsatzgebiete der Konditionstechnik (Konditionsverwendung)

In Tabelle 1.1 sehen Sie eine Übersicht über die Einsatzgebiete der Konditionstechnik, also über diejenigen betriebswirtschaftlichen (Teil-)Funktionen, die mithilfe dieser Technik realisiert wurden. Wir benutzen im Folgenden die technischen Begriffe Verwendung oder Konditionsverwendung für diese Einsatzgebiete. Darüber hinaus wird jede Konditionsverwendung in der Regel in mehreren Anwendungsbereichen, den betriebswirtschaftlichen Prozessen, eingesetzt. Für diese Anwendungsbereiche verwenden wir die technischen Begriffe Applikation oder Konditionsapplikation. Eine Übersicht dieser Applikationen geben wir in Abschnitt 1.4, »Anwendungsbereiche der Konditionstechnik (Konditionsapplikation)«.

33

1.2

1628_.book Seite 34 Mittwoch, 8. September 2010 9:54 09

1

Einsatzgebiete und Elemente der Konditionstechnik

Die Verwendung wird durch die einstellige Domäne KVEWE definiert, deren Wertebereich in der Tabelle T681V zu finden ist. Die Verwendung T (Datenbeschaffung) haben wir nicht aufgeführt, da sie im Standard nicht realisiert ist. Auf diese Funktionalität gehen wir aber in Abschnitt 1.3.9 näher ein. Verwen- Bezeichnung dung

Kommunikationsstruktur

Muster- MusterTabelle Report

Modulpool

A

Preisfindung

KOMG

A000

RV13A000

SAPMV13A

B

Nachrichten

KOMB

B000

RV13B000

SAPMV13B

C

Kontenfindung KOMCV

C000

D

Materialfindung

KOMGD

D000

RV130000

SAPMV13D

E

Bonus

KOMG

E000

RV13E000

SAPMV13A

G

Listung/ Ausschluss

KOMGG

G000

RV130000

SAPMV13G

H

Chargenfindung

KOMGH

H000

RV130000

SAPMV13H

I

Vorlagenfindung

KOMI

I000

RV130000

SAPMV13I

M

Portfoliofindung

KOMGM

M000

RV13M000 SAPLWPOT

N

Naturalrabatt

KOMG

N000

RV130000

SAPMV13N

Tabelle 1.1 Konditionsverwendungen (Transaktion SM30, View V_T681V)

Die wichtigsten Informationen, die aus der Verwendung abgeleitet werden, sind: 왘 Kommunikationsstruktur (z.B. KOMG) Die Kommunikationsstruktur definiert den Feldvorrat aller Merkmale, die für die Generierung der Konditionstabellen verwendet werden können. Sie wird auch innerhalb des Pflegeprogramms für die Konditionssätze verwendet. 왘 Muster-Tabelle (z.B. A000) Die Muster-Tabelle dient als Vorlage, aus der die einzelnen Konditionstabellen generiert werden. Anhand dieser Tabelle ist zu sehen, ob die Verwendung einen Gültigkeitszeitraum unterstützt. Das Schlüsselfeld VAKEY

34

1628_.book Seite 35 Mittwoch, 8. September 2010 9:54 09

Ausgewählte Einsatzgebiete (Verwendungen)

der Muster-Tabelle wird bei der Generierung durch konkrete Felder ersetzt. 왘 Muster-Report (z.B. RV13A000) Der Muster-Report dient als Vorlage zur Generierung des Selektionsreports zu einer Konditionstabelle. Diese Generierung ist erforderlich, weil die Konditionstabellen unterschiedliche Schlüsselfelder haben. 왘 Modulpool (z.B. SAPMV13A) des Pflegeprogramms im SAPGUI Sie sehen in Tabelle 1.1, dass die Verwendung C (Kontenfindung) keinen Modulpool besitzt. Bei dieser einfachen Verwendung erfolgt die Pflege der Konditionssätze durch einen generierten Pflegeview. Das ist deshalb möglich, weil die Konditionssätze dieser Verwendung ausschließlich aus der Konditionstabelle selbst bestehen (es gibt also keine zusätzlichen Tabellen) und außerdem kein Gültigkeitszeitraum unterstützt ist.

1.3

Ausgewählte Einsatzgebiete (Verwendungen)

In diesem Abschnitt wollen wir die wichtigsten Einsatzgebiete der Konditionstechnik anreißen. Für diese Einsatzgebiete verwenden wir im Folgenden den technischen Begriff der Verwendung oder Konditionsverwendung.

1.3.1

Verwendung A: Preisfindung

Die Verwendung Preisfindung (A) innerhalb der Vertriebsabwicklung (Applikation V) und insbesondere die Verwendung der Konditionsstammdaten in diesem Prozess sind das Hauptthema dieses Buchs. Weitere Informationen zur »Preisfindung in ausgewählten Applikationen« finden Sie in Kapitel 13.

1.3.2

Verwendung B: Nachrichtenfindung

Nachrichten dienen dazu, Folgefunktionen zu einem Objekt auszulösen. In den Konditionsstammdaten legen Sie fest, unter welchen Umständen welche Nachrichten ausgegeben werden sollen. Folgende Funktionen werden in der Nachrichtenfindung (B) unterstützt: 왘 Druck mit den Formular-Varianten SAPscript, SmartForms und PDF Zusätzlich können die Druckdokumente im optischen Archiv zu Revisionszwecken abgelegt werden.

35

1.3

1628_.book Seite 36 Mittwoch, 8. September 2010 9:54 09

1

Einsatzgebiete und Elemente der Konditionstechnik

왘 EDI-Ausgang (Electronic Data Interchange) 왘 Sonderfunktionen Damit haben Sie die Möglichkeit, eine Folgeverarbeitung eines Belegs auszulösen, indem eigene Verarbeitungsprogramme prozessiert werden. Dies ist ein beliebtes (und sehr zu empfehlendes) Mittel, um Prozessanpassungen modifikationsfrei vorzunehmen. 왘 Auslösen eines Workflow-Events Im Kundenauftrag wird grundsätzlich ein Workflow-Event ausgelöst. Nicht so in der Faktura. Dies können Sie über den Weg der Nachrichtenverarbeitung realisieren. Eine Besonderheit dieser Verwendung ist, dass sie als einzige unterschiedliche Kommunikationsstrukturen unterstützt.

1.3.3

Verwendung C: Kontenfindung

Die Kontenfindung (C) wird innerhalb der Auftragsbearbeitung und der Fakturierung verwendet. Die Aufgabe besteht darin, Sachkonten für die Schnittstelle zum Rechnungswesen zu ermitteln. Zu beachten ist hier, dass die Konditionssätze keinen Gültigkeitszeitraum unterstützen. Über verschiedene Applikationen wird die Kontenfindung für folgende Zwecke durchgeführt: Applikation V: Erlöskontenfindung Mit der Erlöskontenfindung wird die Kontenfindung für Erlöse und Erlösschmälerungen durchgeführt. Bei speziellen statistischen Konditionsarten wird zusätzlich ein zweites Konto zur Bildung von Rückstellungen ermittelt, wie es beispielsweise bei Konditionen für nachträgliche Vergütungen benötigt wird. Dort werden zum Zeitpunkt der Fakturen die zu erwartenden Erlösschmälerungen in der G+V (Gewinn- und Verlustrechnung) gebucht und über ein Rückstellungskonto mit der später durchgeführten Bonusabrechnung verrechnet. Applikation VB: Abstimmkontenfindung Zu einer Faktura wird für den Kunden ein offener Posten in der DebitorenBuchhaltung aufgebaut. Parallel zu dieser Buchung wird die Buchung auf das Bilanzkonto für Forderungen automatisch durchgeführt. Dieses Forderungskonto wird aus dem Stammsatz des Kunden ermittelt. Mit der Abstimm-

36

1628_.book Seite 37 Mittwoch, 8. September 2010 9:54 09

Ausgewählte Einsatzgebiete (Verwendungen)

kontenfindung kann ein davon abweichendes Abstimmkonto für die Forderungen situationsspezifisch ermittelt werden. Applikation VC: Kontenfindung Kasse-Verrechnung Beim Barverkauf wird kein offener Posten mit angebundener Buchung auf das Forderungskonto erzeugt, stattdessen wird lediglich auf ein spezielles Bilanzkonto für Kasse-Verrechnung gebucht. Dieses Konto wird hier ermittelt.

Applikation VD: Kontenfindung für Zahlungskarten Beim Einsatz von Zahlungskarten wird über diese Kontenfindung das Clearing-Konto zu einer Kartenart ermittelt.

1.3.4

Verwendung D: Materialfindung

Im Rahmen der Auftragsbearbeitung besteht manchmal die Notwendigkeit, dauerhaft oder für einen bestimmten Zeitraum ein Produkt durch ein anderes zu ersetzen, sei es, weil das Produkt ausläuft, oder weil es im Rahmen einer Aktion (z. B. Weihnachtsaktion) durch ein anderes mit einer anderen Verpackung ersetzt werden soll. Dies ist über die Materialfindung (D) möglich.

1.3.5

Verwendung E: Bonus

Der Bonus (E) wurde aus technischen Gründen als Unterfunktion der Verwendung A (Preisfindung) eingeführt. An der Oberfläche (im Customizing) tritt diese Verwendung nicht in Erscheinung. Der Unterschied zur Verwendung A besteht darin, dass eine andere Muster-Tabelle E000 verwendet wird, die das zusätzliche Schlüsselfeld KNUMA (Nummer der Absprache) enthält. Bonus-Konditionssätze sind ausschließlich innerhalb einer Bonusabsprache zu pflegen und sind über KNUMA mit dieser verbunden.

1.3.6

Verwendung G: Materiallistung/-ausschluss

Bei der Auftragserfassung kann eine Prüfung gegen gelistete oder ausgeschlossene Artikel aktiviert werden. Entscheidend für den Einsatz der Konditionstechnik bei der Entwicklung dieser Funktionalität war die Kundenanforderung, die Listung auf jeder Ebene einer Kundenhierarchie ablegen zu können. Hier kommt dem konditionsvorstep, dem wir später noch öfter begegnen werden, besondere Bedeutung zu. Auf Kopfebene wird geprüft, zu

37

1.3

1628_.book Seite 38 Mittwoch, 8. September 2010 9:54 09

1

Einsatzgebiete und Elemente der Konditionstechnik

welchem Knoten der Kundenhierarchie Listungssätze existieren. Bei dem untersten Hierarchieknoten, der Listungssätze enthält, wird dann die Listungsprüfung durchgeführt.

1.3.7

Verwendung N: Naturalrabattfindung

Neben monetären Rabatten gibt es auch die Möglichkeit der Preisgestaltung über Naturalrabatte. In den Konditionsstammsätzen dazu können Sie festlegen: 왘 Staffelmengen, ab denen der Naturalrabatt gewährt werden soll, sowie den Naturalrabattanteil an der Positionsmenge. 왘 Naturalrabatt als Dreingabe mit Positionsgenerierung (kaufe x von A, bezahle y). Bei dieser Variante ist ein Teil der bestellten Menge kostenlos. 왘 Naturalrabatt als Draufgabe (kaufe x von A, erhalte y von B kostenlos). Bei dieser Variante wird zusätzlich zur bestellten Menge ein weiterer Artikel kostenlos zugegeben. 왘 Naturalrabatt als Dreingabe ohne Positionsgenerierung (kaufe x von A, bezahle y). Wie bei der ersten Variante ist ein Teil der bestellten Menge kostenlos. Das Ergebnis der Naturalrabattfindung (N), die vor dem Aufruf der Preisfindung durchgeführt wird, führt entweder dazu, dass kostenlose Unterpositionen generiert werden, oder dass innerhalb der Preisfindung eine spezielle Kondition zum Tragen kommt, mit welcher der Naturalrabatt bei der Dreingabe bewertet wird.

1.3.8

Verwendung 3: Kampagnenfindung

Das Kampagnenmanagement ist eine Funktionalität von SAP Customer Relationship Management (SAP CRM). Dort besteht die Möglichkeit, für einen bestimmten Zeitraum eine Kampagne als verkaufsfördernde Maßnahme anzulegen. Wesentlicher Bestandteil dieser Kampagnen ist es, Rabatte in Form von Sofortrabatten, Naturalrabatten oder nachträglichen Vergütungen zu vereinbaren. Darüber hinaus wird der Kreis der berechtigten Personen für diese Kampagne festgelegt. Aufgrund ihrer Flexibilität wurde auch hier die Konditionstechnik gewählt. Die Konditionssätze zur Kampagnenfindung (3) und zu den Rabatten werden vom CRM- in das ERP-System übertragen und bewirken, dass in CRM und ERP innerhalb der Auftragsabwicklung die gleiche Funktionalität bereitgestellt wird.

38

1628_.book Seite 39 Mittwoch, 8. September 2010 9:54 09

Anwendungsbereiche der Konditionstechnik (Konditionsapplikation)

1.3.9

Verwendung T: Datenbeschaffung

Wenn Sie sich den Customizing-View V_T681V der Verwendungen ansehen, so werden Sie dort auch den Wert »T Datenbeschaffung« vorfinden. Diese Verwendung war ursprünglich vorgesehen, um eine allgemeine Datenbeschaffung mit der Konditionstechnik zur Verfügung zu stellen. Damit sollte die Möglichkeit geschaffen werden, Stammdaten-Attribute datumsabhängig anlegen zu können, eine Eigenschaft, die die meisten Stammdaten im SAPSystem nicht haben. Mit dieser Verwendung können daher bestehende fixe Stammdatenzuordnungen datumsabhängig übersteuert werden. Allgemeine Datenbeschaffung mit der Konditionstechnik Die Verwendung T wurde im Standard nicht realisiert, es gibt jedoch die Möglichkeit, mithilfe der Verwendung A (Preisfindung) unter Nutzung spezieller Konditionsarten genau diese Funktionalität über User Exits zu realisieren. Die Lösung finden Sie in Abschnitt 12.8, »Stammdatenfelder datumsabhängig pflegen«.

Im Zusammenhang mit Verträgen (z.B. Miet- oder Wartungsverträge) kann man sich gut vorstellen, dass Belegattribute ebenfalls datumsabhängig gepflegt werden sollen. Diese Änderungen sollen dann ab dem gewünschten Termin in den periodischen Rechnungen angewandt werden (z.B. Zahlungsbedingungen). Wenn wir uns nun vorstellen, die hier angesprochenen Konditionsarten zur Datenbeschaffung mit Konditionstabellen einzurichten, welche die Belegnummer als Schlüsselfeld verwenden, so können wir auch dieses Ziel mit der angesprochenen Lösung erreichen.

1.4

Anwendungsbereiche der Konditionstechnik (Konditionsapplikation)

Im vorigen Abschnitt haben wir darüber gesprochen, welche betriebswirtschaftlichen (Teil-)Prozesse mit der Konditionstechnik abgewickelt werden, und wir haben Beispiele gezeigt. Tabelle 1.2 zeigt nun eine Aufstellung der Anwendungsbereiche, in denen die Konditionstechnik genutzt wird. Diese Anwendungsbereiche, es handelt sich dabei immer auch um betriebswirtschaftliche Prozesse, bezeichnen wir als Applikationen bzw. Konditionsapplikationen, die aus technischer Sicht durch Businessobjekte repräsentiert werden. Solche Objekte sind beispielsweise der Kundenauftrag, die Faktura, die Bestellung, der Buchungsbeleg oder die Kostenstelle. Die Applikation ist durch die Domäne KAPPL definiert, deren Wertebereich in der Tabelle

39

1.4

1628_.book Seite 40 Mittwoch, 8. September 2010 9:54 09

1

Einsatzgebiete und Elemente der Konditionstechnik

T681A abgelegt ist. In der Zuordnungstabelle T681Z ist festgelegt, in welchen Anwendungsbereichen die verschiedenen Konditionsverwendungen eingesetzt werden. Tabelle 1.2 zeigt einen Ausschnitt aus Tabelle T681Z. Verwen- Bezeichdung nung

Applikation

Bezeichnung

Kopf

Position

3

Kampagne

V

Vertrieb

KOMK

KOMP

A

Preisfindung BA

IS-Bank

KOMK

KOMP

KOMPAZD

CS

Kostenstellen

KOMK

KOMP

KOMPAZD

F

Frachtkosten

KOMK

KOMP

KOMPAZD

J0

IS-P Verlag

KOMK

KOMP

KOMPAZD

KA

Aufträge

KOMK

KOMP

KE

Ergebnisrechnung

KOMK

KOMP

KOMPAZD

M

Einkauf

KOMK

KOMP

KOMPAZD

MS

Dienstleistung

KOMK

KOMP

KOMPAZD

P

Vergütung

KOMK

KOMP

KOMPAZD

TX

Steuern

KOMK

KOMP

KOMPAZD

V

Vertrieb

KOMK

KOMP

KOMPAZD

W

Warenwirtschaft

KOMK

KOMP

KOMPAZD

EF

Einkauf

KOMKBEA

KOMPBEA

ME

Bestand

KOMKBME KOMPBME

MR

Rechnungsprüfung

KOMKBMR KOMPBMR

V1

Verkauf

KOMKBV1

KOMPBV1

V2

Versand

KOMKBV2

KOMPBV2

V3

Faktura

KOMKBV3

KOMPBV3

V7

Transport

KOMKBV7

M

Einkauf

KOMKCV

KOMPCV

V

Vertrieb

KOMKCV

KOMPCV

VB

Abstimmkonto KOMKCV

KOMPCV

VC

Kasse

KOMKCV

KOMPCV

VD

Kreditkarten

KOMKCV

KOMPCV

V

Vertrieb

KOMKD

KOMPD

VS

Cross-Selling

KOMKD

KOMPD

B

C

D

Nachrichtenfindung

Kontenfindung

Materialfindung

Dynamisch

Tabelle 1.2 Anwendungsbereiche der Konditionstechnik (Transaktion SM30, View V_ T681Z)

40

1628_.book Seite 105 Mittwoch, 8. September 2010 9:54 09

In diesem Kapitel werden wir anhand eines Praxisbeispiels die charakteristische Vorgehensweise bei der Umsetzung eines kundenindividuellen Preisfindungsszenarios Schritt für Schritt vorstellen.

4

Customizing der Preisfindung

Die Konfiguration der Preisfindung erfolgt in umgekehrter Reihenfolge wie der Ablauf der Preisfindung. Das bedeutet, dass am Anfang der Konstruktion der zu findende Konditionssatz steht. Im Vorfeld müssen Sie daher das zu lösende Preisfindungsproblem schon soweit durchdrungen haben, dass Sie sozusagen den zu findenden Konditionssatz bereits vor Augen haben. Ausgehend von diesem Ziel, legt man die benötigten Elemente der Konditionstechnik in der Reihenfolge ihrer Verwendung an: 1. Die Konditionstabelle definiert die Schlüsselfelder des Konditionssatzes. 2. Die Zugriffsfolge enthält die Suchreihenfolge zum Zugriff auf den Konditionssatz. 3. Die Konditionsart stellt die funktionalen Eigenschaften des Konditionssatzes zur Verfügung. Über die Konditionsart wird letztlich eine Funktion f(x) modelliert: Abhängig von einem Eingangswert x (10 Stück, 100 kg, …) soll ein Wert f(x) gefunden werden. 4. Das Kalkulationsschema legt die Reihenfolge und Beziehungen zwischen den Konditionsarten fest. 5. Die Schemaermittlung legt das im konkreten Vertriebsbeleg zu verwendende Kalkulationsschema fest. In diesem Kapitel werden wir alle Schritte durchlaufen, wie sie für eine klassische Konfiguration unter Verwendung von Standard-Customizing-Möglichkeiten erforderlich sind.

105

1628_.book Seite 106 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

4.1

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Eine eigene Konfiguration für ein gegebenes Preisfindungsproblem wird immer dann notwendig, wenn dafür keine adäquate Lösung in der SAP-Standardauslieferung angeboten wird. In unserem Beispiel benötigen wir einen wertabhängigen prozentualen Rabatt, der für alle Aufträge in einer bestimmten Verkaufsorganisation, einem bestimmten Vertriebsweg und für eine bestimmte Kundengruppe anwendbar sein soll. Wir sind uns also im Klaren, wie unsere Konditionssätze beschaffen sein sollen und können mit der Konfiguration beginnen.

4.1.1

Anlegen einer Konditionstabelle

Konditionssätze werden immer unter Verwendung eines bestimmten Schlüssels angelegt. Diese Schlüsselstruktur wird durch das Element der Konditionstabelle definiert. Falls bereits eine Konditionstabelle mit der für das aktuelle Preisfindungsproblem erforderlichen Schlüsselkombination vorhanden ist, kann diese wiederverwendet werden. Um dies herauszufinden, können wir uns die vorhandenen Konditionstabellen im Customizing ansehen (siehe Abbildung 4.1). Wählen Sie dazu den Pfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Konditionstabellen Definieren  Konditionstabellen anzeigen. Allerdings geben die Kurzbeschreibungen der Konditionstabellen nicht immer die komplette Schlüsselstruktur wieder. In der Regel wird z.B. auf Verkaufsorganisation und Vertriebsweg verzichtet. Wir könnten nun alle hier in diesem System gefundenen 228 Konditionstabellen »inspizieren«, um herauszufinden, ob es bereits eine Konditionstabelle mit den Schlüsseln Verkaufsorganisation, Vertriebsweg und Kundengruppe gibt. Das kann natürlich etwas mühsam sein. Glücklicherweise gibt es jedoch einen kleinen Trick, um sich diese Sucharbeit zu erleichtern. Denn man kann über das Anlegen einer Konditionsliste (nur soweit, bis die gewünschte Information gegeben wird) das System recherchieren lassen (siehe Abbildung 4.2). Das bedeutet, dass man keine Konditionsliste anlegt, sondern den Dialog nur dazu benutzt, um an die besagte Information zu kommen. Wählen Sie dazu den Pfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Konditionsliste pflegen  anlegen Konditionsliste.

106

1628_.book Seite 107 Mittwoch, 8. September 2010 9:54 09

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Abbildung 4.1 Konditionstabellen anzeigen

Abbildung 4.2 Recherche über »Anlegen Konditionsliste« (Transaktion V/LA)

107

4.1

1628_.book Seite 108 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

Die Transaktion Anlegen Konditionsliste ermittelt dann alle Konditionstabellen, die die gewünschten Felder (hier Kundengruppe) enthalten (siehe Abbildung 4.3). Natürlich könnte man auch alle drei erwünschten Felder markieren und mit UND suchen.

Abbildung 4.3 Konditionstabellen mit dem Feld »Kundengruppe«

Unsere benötigte Schlüsselkombination ist in den gefundenen Konditionstabellen nicht enthalten, so dass wir eine kundeneigene Konditionstabelle anlegen müssen. Der Kundennamensraum hierfür umfasst die Nummern 501 bis 999. Um sie anzulegen, wählen wir den Pfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Konditionstabellen Definieren Konditionstabellen Anlegen. Wir entscheiden uns für die Nummer 501 und erhalten nach Betätigen von (¢) das in Abbildung 4.4 wiedergegebene Bild. Es empfiehlt sich, dass Sie das Attribut mit Gültigkeitszeit auf jeden Fall auswählen. Nur so können Sie später Konditionssätze, die auf dieser Konditionstabelle aufbauen, mit einem Gültigkeitszeitraum pflegen und z.B. Preisveränderungen zu einem bestimmten Termin vornehmen. Deaktiviert man dieses Attribut, so kann es zu einer konkreten Ausprägung der durch die Konditionstabelle gegebenen Schlüsselkombination nur einen einzigen unbegrenzt gültigen Konditionssatz geben. Das Attribut mit Freigabestatus eröffnet seit Release SAP R/3 4.6 die Möglichkeit, Konditionssätze für die Anwendung zu sperren bzw. freizugeben (wir gehen darauf in Abschnitt 5.1, »Freigabestatus«, noch näher ein). Auf der rechten Seite des Bildschirms (siehe Abbildung 4.4) befindet sich der Feldkatalog. Hieraus wählen wir nun mit Doppelklick unsere benötigten

108

1628_.book Seite 109 Mittwoch, 8. September 2010 9:54 09

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Felder Verkaufsorganisation, Vertriebsweg und Kundengruppe aus. Die Reihenfolge ihrer Anwahl ist insofern von Bedeutung, als dadurch der Aufbau des Erfassungsbildschirms für die Konditionssätze festgelegt wird (siehe Abbildung 4.5).

Abbildung 4.4 Konditionstabelle anlegen

Abbildung 4.5 Felder der Konditionstabelle auswählen

Interessant kann es hier noch sein, die Technische Sicht auszuwählen, um weitere Details sichtbar zu machen (siehe Abbildung 4.6). Man sieht hier, dass alle Felder, die von uns ausgewählt wurden, standardmäßig das Attribut

109

4.1

1628_.book Seite 110 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

Key tragen. Durch das Abwählen des Attributs Key entstünde der Sonderfall eines Datenfelds in der Konditionstabelle (darauf gehen wir in Abschnitt 9.2, »Datenermittlung über Konditionen«, ein).

Abbildung 4.6 Konditionstabelle anlegen – Technische Sicht

Das Attribut Zeilenfeld ist immer für das letzte der ausgewählten Schlüsselfelder (hier die Kundengruppe) markiert. Diese Markierung kann nicht entfernt werden, da der generierte Pflegedialog darauf angewiesen ist, mindestens ein Schlüsselfeld für eine tabellarische Darstellung der Konditionssätze zur Verfügung zu haben. Alle Schlüsselfelder, die nicht als Zeilenfeld markiert sind, werden später im Kopfbereich des Pflegedialogs dargestellt. Man könnte so z.B. auch den Vertriebsweg als Zeilenfeld markieren – mit den entsprechenden Konsequenzen für die Darstellung des Felds im generierten Pflegedialog. (Wer hier neugierig ist, kann schon einmal vorblättern und sich unseren später generierten Pflegedialog in Abbildung 4.15 ansehen.) Das Attribut Textfeld ist als Radio-Button ausgeprägt, d.h., auch wenn man mehr als ein Schlüsselfeld als Zeilenfeld markiert, kann man nur eines davon mit dem Attribut Textfeld versehen. Für das so markierte Feld wird im generierten Pflegedialog neben der Schlüsselausprägung dann auch die Bezeichnung ausgegeben. Wenn Sie mit der Feldauswahl und den Attributen einverstanden sind, können Sie das Icon Generierung anklicken (in der oberen linken Ecke von Abbildung 4.6 kenntlich gemacht). Es erscheint ein Protokoll der Generierung (siehe Abbildung 4.7), das darüber informiert, dass die Datenbanktabelle A501 angelegt wurde und die Reports und Dynpros zur Tabelle A501 zur Generierung vorgemerkt wurden. Diese werden dann bei der ersten Verwendung automatisch kompiliert.

110

1628_.book Seite 111 Mittwoch, 8. September 2010 9:54 09

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Abbildung 4.7 Protokoll der Generierung der Konditionstabelle 501

Damit haben wir den ersten Schritt in unserer Konfiguration getan und können mit dem nächsten Schritt, dem Anlegen unserer Zugriffsfolge, fortfahren.

4.1.2

Anlegen einer Zugriffsfolge

Preise, Rabatte und Zuschläge können auf verschiedenen Ebenen definiert werden. Zur Abbildung dieser Schlüsselkombinationen, die den verschiedenen Ebenen entsprechen, haben wir die Konditionstabellen kennengelernt. Damit das System während der Preisfindung die gewünschten Ebenen berücksichtigen kann, muss in einer Zugriffsfolge die Reihenfolge der Konditionstabellen, die zu durchsuchen sind, eingetragen werden. In den meisten Fällen wird die Definition der Zugriffsfolge – wie auch in unserem Beispiel – nur eine Konditionstabelle enthalten. Bei der Eintragung von mehreren Konditionstabellen wird dagegen eine Art »Suchstrategie« definiert. Man kann das in der SAP-Standardauslieferung sehr gut am Beispiel der Zugriffsfolge PR02 studieren, die für die Suche nach dem anzuwendenden Preis PR00 verwendet wird. Um uns diese Zugriffsfolge anzusehen, wählen wir den Menüpfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Zugriffsfolgen Definieren  Zugriffsfolgen Pflegen. In dieser Zugriffsfolge (siehe Abbildung 4.8) ist durch die Reihenfolge der Eintragung der Konditionstabellen 305, 306 und 304 definiert worden, dass das System zuerst auf der Ebene Verkaufsorganisation, Vertriebsweg, Kunde und Material (Konditionstabelle 305) nach einem gültigen Preis suchen soll, d.h., Priorität 1 haben Preise, die individuell für den Kunden vereinbart und als Stammdaten gespeichert wurden. Ist ein solcher kundenindividueller Preis nicht vorhanden, dann wird versucht, einen Preis auf einer Preisliste zu finden, für die der Kunde zugelassen ist (Feld Preislistentyp im Kundenstamm). Die Konditionstabelle 306 benennt hierzu die Felder Verkaufsorganisation, Vertriebsweg, Preislistentyp, Währung und Material als Schlüsselfelder. Der Zugriff mit der

111

4.1

1628_.book Seite 112 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

Nummer 30 stellt einen weiteren Zugriffsversuch mit der Konditionstabelle 306 dar, falls die Bedingung 3 – Fremdwährungsbeleg erfüllt ist. Ist auch der Zugriff auf die Preislistenkonditionssätze erfolglos, wird über die Konditionstabelle 304 mit den Feldern Verkaufsorganisation, Vertriebsweg und Material der Materialpreis in diesem Vertriebsumfeld gelesen.

Abbildung 4.8 Zugriffsfolge »PR02 – Preis mit Freigabestatus«

Das Attribut Exklusiv steuert, dass nach dem ersten erfolgreichen Zugriff auf einen Satz innerhalb einer Zugriffsfolge kein weiterer Satz gesucht wird. Dadurch wird erreicht, dass der speziellste vorhandene Konditionssatz berücksichtigt wird. Wenn wir zu unserer Konfiguration zurückkehren, dann haben wir nur eine Zugriffsebene definiert, und zwar durch die zuvor angelegte Konditionstabelle 501. Wir wählen also den Menüpfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Zugriffsfolgen Definieren  Zugriffsfolgen Pflegen  Neue Einträge. Der Kundennamensraum für Zugriffsfolgen beginnt mit Y oder Z. Wir entscheiden uns für den Schlüssel Z501 mit der Bezeichnung »Kundengruppe« (siehe Abbildung 4.9). In dem Navigationsbaum der Dialogstruktur wählen wir Zugriffe und gelangen zum nächsten Bildschirmbild (siehe Abbildung 4.10). Über Neue Einträge wird das Übersichtsbild freigeschaltet und wir erfassen den Zugriff mit der von uns vergebenen laufenden Nummer »10« und der Konditionstabelle »501«. Die Attribute Bedingung und Exklusiv bleiben ungenutzt (bei einer einstufigen Zugriffsfolge ist das Attribut Exklusiv bedeutungslos).

112

1628_.book Seite 113 Mittwoch, 8. September 2010 9:54 09

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Abbildung 4.9 Anlegen einer Zugriffsfolge

Abbildung 4.10 Definition des Zugriffs durch die Konditionstabelle

Wir markieren die Zeile mit dem Zugriff und wählen als nächstes Felder in der Dialogstruktur auf der linken Seite, um auf die Feldebene zu gelangen. Es erscheint eine Warnung, dass die Feldzuordnung noch nicht erfolgt ist. Die Warnung ist – wie immer – mit (¢) zu bestätigen. Nun erscheint abschließend das in Abbildung 4.11 wiedergegebene Bildschirmbild.

Abbildung 4.11 Die Feldebene des Zugriffs

113

4.1

1628_.book Seite 114 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

Fehlende Feldzuordnung Wenn Sie den Schritt der Feldzuordnung einmal unterlassen sollten, dann erhalten sie später beim Test in der Preisfindungsanalyse die Fehlermeldung 301 – Felder für Zugriffsfolge fehlen. Sie müssen dann die Zugriffsfolge noch einmal editieren und den Schritt der Feldzuordnung nachholen.

Wie man in Abbildung 4.12 im nächsten Abschnitt sehen kann, wurden neben den Schlüsselfeldern aus der Konditionstabelle 501 noch aufgrund des dort gesetzten Attributs mit Freigabestatus zwei weitere Felder in den Zugriff aufgenommen, FRSTAT und KBSTAT. Diese dienen zum Abspeichern der eventuellen Sperrstatus (wir gehen darauf, wie bereits gesagt, in Abschnitt 5.1, »Freigabestatus«, noch näher ein). Für eine gewöhnliche Zugriffsfolge sind hier keine weiteren Attribute zu setzen. Zur Verfügung stehen noch Direktwert Quelle, Init, Zart und Prio. Auf die Bedeutung dieser Attribute gehen wir in Abschnitt 4.2.2, »Zugriffsfolge«, ein. Nun kann unsere Zugriffsfolge Z501 gesichert werden und ist einsatzbereit.

4.1.3

Customizing der Konditionsart

Die Konditionsart stellt, wie zu Beginn des Kapitels gesagt, die funktionalen Eigenschaften des Konditionssatzes zur Verfügung. Es wird dadurch letztlich eine Funktion modelliert (siehe Abbildung 4.12). Wir haben bisher die Schlüsselstruktur definiert (Konditionstabelle 501) und damit die Zugriffsfolge Z501 konfiguriert. Im nächsten Schritt geht es darum, solche Anforderungen wie »prozentualer Rabatt« in der Konfiguration umzusetzen. Dies ist die Aufgabe des Preisfindungselements Konditionsart. Wir haben ja das Endergebnis des Konditionssatzes als Ausgangspunkt der Konfiguration vor unserem »geistigen Auge«. Um zu dem gewünschten Ergebnis zu kommen, müssen wir jetzt die geeigneten Attribute im Customizing der Konditionsart identifizieren. Wenn Sie sich z.B. einmal die Rabattkonditionsart KA00 – Aktion aus der SAP-Auslieferung ansehen, gewinnen Sie einen ersten Eindruck des Customizing-Bilds für Konditionsarten. Wählen Sie hierfür den Menüpfad (IMG ) Vertrieb  Grundfunktionen  Preisfindung  Steuerung der Preisfindung  Konditionsarten Definieren  Konditionsarten Pflegen. Wenn Sie auf den Eintrag KA00 positionieren und den Button Detail wählen, erhalten Sie den Customizing-Bildschirm für Konditionsarten (siehe

114

1628_.book Seite 115 Mittwoch, 8. September 2010 9:54 09

Umsetzung eines ersten kundenindividuellen Preisfindungsszenarios

Abbildung 4.13). Dieser ist in sieben Feldgruppen unterteilt, auf die wir in Abschnitt 4.2.3, »Konditionsart«, ausführlicher eingehen: 1. Steuerungsdaten 1 2. Gruppenkondition 3. Änderungsmöglichkeiten 4. Stammdaten 5. Staffeln 6. Steuerungsdaten 2 7. Textfindung

~ »ab 1000 € 10 %« => Rechenregel »A Prozentual« Ziel: f(x) =

100 €

1000 €

~ Bezugsgröße x= (z.B. Wertstaffel)

Abbildung 4.12 Verständnis der Konditionsart als Funktion

In Abbildung 4.13 sehen Sie die Gesamtmenge der verfügbaren Attribute. Wir haben die Hauptattribute, die in unserem Beispiel aus KA00 einen wertabhängigen prozentualen Rabatt machen, eingerahmt. Folgende Attribute sind hier zu nennen: 왘 Konditionsklasse Dieser Hauptschalter hat die Ausprägung A – Zu- oder Abschläge 왘 Rechenregel Unser f(x) hat die Ausprägung A – Prozentual 왘 Bezugsgröße Unsere x-Achse hat die Ausprägung B – Wertstaffel

115

4.1

1628_.book Seite 116 Mittwoch, 8. September 2010 9:54 09

4

Customizing der Preisfindung

Abbildung 4.13 Customizing-Bildschirm für die Konditionsarten

왘 Vorzeichen Die Ausprägung X – negativ stellt sicher, dass aus dem Rabatt kein Zuschlag werden kann. 왘 Zugriffsfolge Durch die Zuordnung einer Zugriffsfolge kann die Konditionsart über Konditionssätze erst gepflegt und gefunden werden.

116

1628_.book Seite 333 Mittwoch, 8. September 2010 9:54 09

Durch die Flexibilität der Konditionstechnik und durch den geschickten Einsatz von Bedingungen, Formeln und User Exits lassen sich nahezu alle in der Praxis auftretenden Anforderungen an die Preisfindung lösen.

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

Mit den bisherigen Kapiteln haben Sie sich die Grundlagen und das Verständnis angeeignet, das Sie benötigen, um die Fülle der Anpassungsmöglichkeiten einzuschätzen und auszuschöpfen. Jetzt geht es um die Erweiterung Ihrer Kenntnisse. Wenn Sie erkannt haben, dass Sie eine Anforderung nicht allein mit den Mitteln des Customizings umsetzen können, werden Sie versuchen, eine Lösung des Problems unter Nutzung der Bedingungen, Formeln oder User Exits zu finden. Dazu ist es wichtig zu wissen, zu welchen Zeitpunkten die einzelnen Routinen ausgeführt werden, welches die Eingangsschnittstellen sind und welche Manipulationen innerhalb der verwendeten Routine vorgenommen werden können. Diese Informationen sind Thema in diesem Kapitel. Im anschließenden Kapitel 12, »Typische Praxisanforderungen an die Preisfindung und ihre Lösung«, werden Sie einige Anwendungsbeispiele finden. Bedingungen und Formeln werden über die Transaktion VOFM angelegt und im Customizing dem jeweiligen Objekt zugeordnet. Da es sich dabei um ABAP-Coding handelt, sind Sie einerseits sehr flexibel, andererseits setzt der Einsatz natürlich Programmierkenntnisse voraus. Da diese VOFM-Routinen als Formroutinen im Preisfindungsprogramm direkt prozessiert werden, besteht die Gefahr, dass Sie Schaden anrichten. Dies liegt daran, dass diese Routinen User Exits im klassischen Stil darstellen, d.h., Sie haben Zugriff auf alle globalen Daten des Rahmenprogramms und können diese auch manipulieren. Die Schnittstellen sind dabei nicht eingeschränkt. Neben diesen VOFM-Routinen gibt es noch die klassischen User Exits mit den gleichen Eigenschaften und Risiken. An einigen Stellen sind auch User Exits als BAdI-Implementierung vorgesehen. Sofern vorhanden, sind diese

333

1628_.book Seite 334 Mittwoch, 8. September 2010 9:54 09

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

den klassischen Implementierungen vorzuziehen, da hier die Schnittstellen klar definiert sind und die Implementierung im Kundennamensraum liegt. Im Einzelnen sprechen wir in diesem Kapitel über: 왘 Preisfindungsarten 왘 Bedingungen 왘 ein Beispiel für den Einsatz der Formeln 왘 Konditionsbasisformeln 왘 Staffelbasisformeln 왘 Konditionswertformeln 왘 Gruppenkeyroutinen beim Einsatz von Gruppenkonditionen 왘 die Sonderlogik der Preisfindungsart F 왘 die Übergabe des Preisfindungsergebnisses in Struktur KOMP 왘 die Bedeutung des Steuerungskennzeichens xkomv-ksteu 왘 User Exits in der Preisfindung 왘 die Möglichkeit, Informationen in der Tabelle KONV zu speichern 왘 den Performance-Aspekt im Zusammenhang mit der Benutzung von Formeln und Bedingungen 왘 Fehlermeldungen aus Formeln und die allgemeine Fehlerbehandlung innerhalb der Preisfindung Wie das vorausgehende ist auch dieses Kapitel ein sehr technisches. Es dient vor allem als Nachschlagewerk, wenn Sie neue Formeln und Bedingungen einrichten bzw. Modifikationen im Rahmen der User Exits durchführen wollen. Wenn Sie zum ersten Mal solche Erweiterungen planen, sollten Sie zuvor auf jeden Fall dieses Kapitel gelesen haben. Auch diesem Kapitel werden Sie sich iterativ nähern: Beim ersten Lesen gehen Sie sicher noch nicht tief in die Details, sondern verschaffen sich zunächst einen Überblick über die Anpassungsmöglichkeiten und Begriffe. Das Detailwissen werden Sie sich dann im Zusammenhang mit konkreten Aufgabenstellungen aneignen. Bevor wir in die genauere Beschreibung der Bedingungen, Formeln und User Exits einsteigen, wollen wir das bisher erlernte Wissen um die Preisfindungsarten abrunden, die insbesondere innerhalb der Bedingungen und Formeln eine wichtige Rolle spielen. So können beispielsweise die Preisfindungsarten durch Bedingungen übersteuert werden.

334

1628_.book Seite 335 Mittwoch, 8. September 2010 9:54 09

Preisfindungsarten

11.1

Preisfindungsarten

Die Preisfindungsart wird an allen wichtigen Schnittstellen verwendet. Sie dient in erster Linie dazu festzulegen, welche Konditionsarten bei einem Aufruf der Preisfindung neu ermittelt werden sollen. Die Preisfindungsarten werden im konditionsvorstep in der internen Tabelle STEU ausgeprägt, über den userexit_pricing_rule können kundeneigene Preisfindungsarten eingerichtet werden (siehe Abschnitt 10.1.2, »Routine KONDITIONSVORSTEP«, und 11.8.1, »User Exits der Funktionsgruppe V61A«). Der angesprochene User Exit wird zu einem Zeitpunkt prozessiert, zu dem lediglich die Informationen aus der Schnittstellenstruktur KOMK zur Verfügung stehen, was eventuell für eine Feinsteuerung nicht ausreicht; denn Sie können die Preisfindungsarten nicht abhängig machen von Positionsinformationen, wie beispielsweise den Positionstypen. Falls die Steuerung über die Preisfindungsarten nicht ausreicht, können Sie das Verhalten der Preisfindungsarten über die internen Tabellen TKSCHL und TKSCHLEXCL übersteuern. Diese wiederum können Sie innerhalb von Bedingungen laden, oder über den Funktionsbaustein PRICING_LOAD_ CONDITION_TYPS (siehe Abschnitt 10.6.1) im Rahmen der Vorbereitungsarbeiten im userexit_pricing_prepare_tkomp (siehe Abschnitte 13.1 und 13.2). Eine weitere Möglichkeit der Übersteuerung ist gegeben durch die beiden Schnittstellen-Felder komp-kaend_typ und komp-konau_typ.

11.1.1

Steuerung über KOMP-KAEND_TYP

Im Feld komp-kaend_typ (nicht änderbare Konditionstypen) können Sie bis zu fünf Konditionstypen eintragen, die innerhalb der Preisfindung nicht verändert werden dürfen. In der Faktura werden z.B. die Konditionstypen G, b und h hier eingetragen, womit verhindert wird, dass Verrechnungspreisund Transferpreiskonditionen verändert werden. Dies ist erforderlich, da die Werte für diese Konditionen normalerweise von außen an die Faktura übergeben werden und somit innerhalb der Preisfindung nicht ermittelbar sind. Eine besondere Rolle spielt der Wert »*« in der ersten Stelle des Felds. Hat dieses Feld den Inhalt »*«, werden keinerlei Konditionen neu ermittelt, unabhängig von der Preisfindungsart. Im Auftrag wird diese Funktion verwendet bei Positionen, die bereits fakturiert sind. Bei solchen Positionen sollen die Änderungsmöglichkeiten stark eingeschränkt sein. Innerhalb der

335

11.1

1628_.book Seite 336 Mittwoch, 8. September 2010 9:54 09

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

Fakturierung wird die Logik bei Stornobelegen eingesetzt und bei Fakturen, die bereits an die Buchhaltung übergeleitet sind. Das Feld können Sie im userexit_pricing_prepare_tkomp von Auftrag und Faktura setzen (siehe Abschnitt 13.1 und 13.2).

11.1.2

Steuerung über KOMP-KONAU_TYP

Auch im Feld komp-konau_typ (unzulässige Konditionstypen) können Sie bis zu fünf Konditionstypen eintragen, die jedoch bewirken, dass solche Konditionsarten überhaupt nicht ermittelt werden. Auch die manuelle Eingabe solcher Konditionen ist unterbunden. Auch hier verwenden Sie die Routine userexit_pricing_prepare_tkomp, um das Feld zu füllen.

11.2

Bedingungen

Wie schon in früheren Kapiteln besprochen, werden Bedingungen in Zugriffsfolgen und im Kalkulationsschema eingesetzt. Wir haben in den Abschnitten 10.1.2, »Funktionsbaustein PRICING_COMPLETE«, und 10.1.4, »Routine XKOMV_AUFBAUEN_AUS_KOMT1«, den Unterschied zwischen der Prüfung zum Prestep-Zeitpunkt (kobev_nnn) und der endgültigen Prüfung (kobed_nnn) gesehen. Bei negativem Ausgang einer Bedingungsprüfung (sy-subrc ne zero) werden keine Datenbankzugriffe auf die Konditionstabellen durchgeführt, bzw. die Konditionsart wird überhaupt nicht in die interne Tabelle der Konditionsarten KOMT1 aufgenommen. Damit ist klar, dass es immer von Vorteil ist, wenn es möglich ist, Datenbankzugriffe durch geschickte Bedingungen zu verhindern.

11.2.1

Manipulation von KOMK- und KOMP-Feldern durch Bedingungen

In Abschnitt 9.2, »Datenermittlung über Konditionen«, haben wir schon ausführlich die Möglichkeit besprochen, innerhalb der Bedingungen KOMKund KOMP-Felder zu manipulieren, um damit die Grundlagen für den Konditionszugriff zu ändern, und wir haben Beispiele genannt. Wir haben auch gesehen, wie wir die interne Tabelle XKOMPLOOP füllen können, um damit mehrwertige Felder zu realisieren (siehe Abschnitt 9.3, »Felder mit Mehrfachbelegung«).

336

1628_.book Seite 337 Mittwoch, 8. September 2010 9:54 09

Bedingungen

11.2.2

Übersteuerung der Preisfindungsarten durch Bedingungen

Eine weitere Möglichkeit besteht darin, innerhalb der Bedingung die internen Tabellen TKSCHL und/oder TKSCHLEXCL einzusetzen. Diese internen Tabellen dienen dazu, die Logik der Preisfindungsarten zu übersteuern, wenn deren Möglichkeiten nicht ausreichen. In die Tabelle TKSCHL können diejenigen Konditionsarten aufgenommen werden, die auf jeden Fall neu ermittelt werden sollen, in die Tabelle TKSCHLEXCL diejenigen, die auf keinen Fall neu ermittelt werden dürfen.

11.2.3

Beispiel 1 – Einsatz der Tabelle TKSCHLEXCL

Wir betrachten die Konditionsart ITD2 des Kalkulationsschemas RVACRN, welches bei Kontrakten eingesetzt werden kann, bei denen die erbrachten Leistungen aufwandsbezogen fakturiert werden (siehe Abschnitt 8.1, »Ausgewählte Kalkulationsschemata«). Die Fakturierung ist retroaktiv eingestellt, d.h., es werden immer die gesamten Leistungen fakturiert, unabhängig davon, ob bereits Fakturen vorhanden sind oder nicht. Mit den Konditionsarten ITD2 bis ITD4 wird dann ein bereits fakturierter Wert über die Infostruktur S409 ermittelt und als negativer Wert per Konditionswertformel 112 (ITD fakturiert) eingestellt. Diese Konditionen sind mit Konditionssteuerung = E fixiert. Sie dürfen nur beim Anlegen der Fakturaanforderungsposition ermittelt werden und müssen dann unverändert erhalten bleiben, auch in der Faktura. Da die Preisfindungsarten diese Anforderung nicht lösen, setzen wir hier die Bedingung 106 (Kontrakt ITD) ein (siehe Listing 11.1). form kobed_106. sy-subrc = 4. if komp-kposn ne 0. check: komp-prsfd ca 'BX'. endif. if preisfindungsart ca 'BCDG'. * determine change mode data: changemode. read table tkomv with key knumv = komk-knumv kposn = komp-kposn binary search. if sy-subrc = 0 and not tkomv-zaehk is initial and not tkomv-zaehk = '99'. changemode = yes. else. changemode = no. endif.

337

11.2

1628_.book Seite 338 Mittwoch, 8. September 2010 9:54 09

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

* *

avoid redetermination of the condition in change mode by filling exclusion table tkschlexcl read table tkschlexcl with key kschl = komt1-kschl binary search. case sy-subrc. when 0. if changemode = no and komk-vbtyp na vbtyp_fakt. delete tkschlexcl index sy-tabix. endif. when 4 or 8. if changemode = yes or komk-vbtyp ca vbtyp_fakt. tkschlexcl-kschl = komt1-kschl. insert tkschlexcl index sy-tabix. endif. endcase. else. refresh tkschlexcl. refresh tkschl. endif. sy-subrc = 0. endform. Listing 11.1 Bedingung 106 für die Konditionsarten ITDn

Im ersten Schritt ermitteln wir zunächst, ob wir im Hinzufügemodus einer Position sind oder im Änderungsmodus, und speichern diese Information in der Variablen changemode. Da es innerhalb der Preisfindung nicht ganz trivial ist, diese Situation festzustellen, sollte man sich diese Programmlogik für mögliche andere Fälle merken. Im zweiten Schritt füllen wir dann die interne Tabelle TKSCHLEXCL immer genau dann mit unserer Konditionsart, wenn wir uns nicht im Hinzufügemodus einer Auftragsposition befinden.

11.2.4

Beispiel 2 – Einsatz der Tabellen TKSCHL und TKSCHLEXCL

Ein weiteres Beispiel finden wir in Bedingung 107 (Kontrakt ACRN) für die Budget-Kondition ACRN. Dort wird die interne Tabelle TKSCHLEXCL verwendet, um eine Neuermittlung der Kondition bei Fakturen und Retouren bzw. Gutschriftanforderungen zu verhindern, TKSCHL wiederum wird verwendet, um die Ermittlung in Fakturaanforderungen im Hinzufügemodus zu erzwingen.

338

1628_.book Seite 339 Mittwoch, 8. September 2010 9:54 09

Bedingungen

11.2.5

Aufrufzeitpunkt der Prestep-Bedingung

Die Prestep-Bedingung wird zum Zeitpunkt des Aufbaus der internen Tabellen KOMT1 und KOMT2 der Konditionsarten und Zugriffe prozessiert. Falls diese Prüfung negativ ist, wird die Konditionsart bzw. der Zugriff nicht in die internen Tabellen aufgenommen, die Konditionsart bzw. der Zugriff wird in der Folge auf Positionsebene nicht berücksichtigt. Die Bedingung im Kalkulationsschema wird in der Routine konditionsvorstep aufgerufen, die Bedingung im Zugriff in der Routine komt2_aufbauen (siehe Abschnitte 10.1.2, »Routine KONDITIONSVORSTEP«, und 10.1.4, »Routine XKOMV_ AUFBAUEN_AUS_KOMT1«). Eingangsschnittstelle der Prestep-Bedingung (kobev_nnn) 왘 KOMK – Kommunikationskopf 왘 T683S – Tabelleneintrag im Kalkulationsschema 왘 PREISFINDUNGSART – Schnittstellenvariable

Ausgangsschnittstelle der Prestep-Bedingung 왘 SY-SUBRC – Returncode

In der Prestep-Bedingung können nur die Feldinhalte der Struktur KOMK abgefragt werden, Positionsinformationen, also Felder der Struktur KOMP, können Sie nur in der endgültigen Bedingung abfragen. Interessant ist die Eigenschaft, dass ein negatives Prüfungsergebnis im Prestep bewirkt, dass in Folgebelege, in die Belegkonditionen kopiert wurden, diese im Zielbeleg wieder verworfen werden. Diesen Effekt gibt es bei der endgültigen Prüfung nicht.

11.2.6

Aufrufzeitpunkt der endgültigen Bedingung

Die eigentliche Bedingung wird in den Routinen xkomv_aufbauen_aus_ komt1 und konditionen_lesen aufgerufen.

Eingangsschnittstelle der endgültigen Bedingung (kobed_nnn) 왘 KOMK, KOMP, KOMPAZD 왘 KOMT1 – Tabelleneintrag im Kalkulationsschema sowie alle Parameter der Konditionsart 왘 PREISFINDUNGSART – Schnittstellenvariable

339

11.2

1628_.book Seite 340 Mittwoch, 8. September 2010 9:54 09

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

In der Struktur KOMP dürfen Sie nur solche Felder verwenden, die an die Preisfindung von außen übergeben wurden, oder Felder, die in Bedingungen vorangegangener Konditionsarten gefüllt wurden. Felder, die in der Routine xkomv_bewerten gefüllt werden (zu diesem Zeitpunkt werden auch die Formeln prozessiert), dürfen auf keinen Fall verwendet werden. Dazu gehören insbesondere alle Wertfelder (z.B. komp-netwr). Ausgangsschnittstelle der endgültigen Bedingung 왘 SY-SUBRC – Returncode 왘 KOMK – eine Änderung gilt nur temporär für die aktuelle Kondition 왘 KOMP – eine Änderung bleibt dauerhaft erhalten 왘 XKOMPLOOP

Zu beachten ist, dass die Bedingungsprüfung nicht durchgeführt wird bei Konditionen, die aus einem Vorgängerbeleg übernommen wurden.

11.2.7

Verhalten bei kopierten Konditionen

Bei Belegketten werden normalerweise (zumindest teilweise) Konditionen vom Quellbeleg in den Zielbeleg übernommen. Diese Übernahme wird durch den Funktionsbaustein PRICING_COPY durchgeführt (siehe Abschnitt 10.3, »Funktionsbaustein PRICING_COPY«). Bei den kopierten Konditionen findet keine Bedingungsprüfung statt, was unter Umständen dazu führen kann, dass eine neue Preisfindung im Zielbeleg ein anderes Ergebnis als im Quellbeleg liefern kann. Wir können allerdings indirekt erreichen, dass bei Nichterfüllung der Bedingung im Zielbeleg die Kondition verworfen wird. Dies ist dann der Fall, wenn die Prüfung der Prestep-Bedingung negativ ausfällt. In dieser Situation existiert die Kondition nicht in der internen Tabelle KOMT1 des Kalkulationsschemas, was in der Routine xkomv_aufbauen_aus_ tkomv dazu führt, dass die Kondition nicht übernommen wird. Eine weitere Möglichkeit, kopierte Konditionen wieder zu verwerfen, besteht darin, mittels Wertformel das Kennzeichen inaktiv der Kondition auf »Z« zu setzen

11.3

Ein Beispiel für den Einsatz der Formeln

In diesem Abschnitt zeigen wir ein Beispiel für eine Konditionsart ZP03, bei welchem alle Formeln eingesetzt werden. Diese Konditionsart ist eine Kopie der Konditionsart KP03 (Mix-Anbruch-Zuschlag).

340

1628_.book Seite 341 Mittwoch, 8. September 2010 9:54 09

Ein Beispiel für den Einsatz der Formeln

Beispiel-Konditionsart ZP03 für den Einsatz der Formeln Mit der Konditionsart ZP03 soll immer dann, wenn der gesamte Auftrag keine ganzen Paletten füllt, ein Zuschlag in Höhe von 4 € für den Gesamtauftrag berechnet werden. Dabei soll bei Belegen, die von der Hauswährung abweichen, der umgerechnete Betrag gemäß Rundungsregel für diese Währung gerundet werden, im Falle eines Beleges in CHF soll somit die 5-er Rappen-Rundung erfolgen. Der Betrag soll sodann auf die Auftragspositionen im Verhältnis der Bruttogewichte verteilt werden.

Die Konditionsart ZP03 ist als Referenz zur Konditionsart KP03 eingestellt, was bedeutet, dass die Konditionsstammsätze ausschließlich unter KP03 gepflegt werden. Die Kondition ist mit der Rechenregel Absolut-Betrag eingestellt, als Gruppenkondition markiert und verwendet eine Mengenstaffel zur fest in der Konditionsart vorgegebenen Paletten-Mengeneinheit PAL. Voraussetzung ist, dass alle erfassten Artikel in die Mengeneinheit PAL umgerechnet werden können. Zur Lösung dieser Aufgabe verwenden wir die Formeln: 왘 Staffelbasisformel 023 (Ermitteln Anbruchmenge) 왘 Konditionsbasisformel 012 (Einstellen Bruttogewicht der Position als Konditionsbasis) Dies bewirkt bei Gruppenkonditionen mit Rechenregel B (Absolutbetrag), dass der Wert nach dem Bruttogewicht auf die Positionen verteilt wird. 왘 Konditionswertformel 017 (Rundung des Konditionswertes gemäß Rundungsregel der Tabelle T001R) Zum Einrichten des Beispiels führen wir die folgenden Schritte durch: 1. Einrichten der Konditionsart ZP03 und Aufnahme von ZP03 in das Kalkulationsschema mit den zu Beginn des Abschnitts beschriebenen Einstellungen. 2. Anlegen eines Konditionssatzes zur Kondition KP03 (siehe Abbildung 11.1). 3. Anlegen eines Kundenauftrags (siehe Abbildung 11.2). Bei den eingesetzten Artikeln sind die Umrechnungsfaktoren zur Mengeneinheit Palette (PAL) zu pflegen. 4. Überprüfen des Preisfindungsergebnisses der Konditionen KP03 und ZP03 auf Positionsebene (siehe Abbildungen 11.2 und 11.3).

341

11.3

1628_.book Seite 342 Mittwoch, 8. September 2010 9:54 09

11

Systemanpassungen mit Bedingungen, Formeln und User Exits

5. Überprüfen des Preisfindungsergebnisses auf Kopfebene (siehe Abbildungen 11.4 und 11.5).

Abbildung 11.1 Konditionssatz zur Kondition ZP03 (Referenz zur Konditionsart KP03)

Die Staffelmenge in Höhe von 0,001 Paletten hat die Bedeutung der Anbruchmenge, d.h., der Zugriff auf diese Staffel erfolgt nicht mit der Gesamtmenge der Paletten, sondern lediglich mit der Anbruchmenge. Eine Gesamtmenge von 30 KI (Kisten) ergibt 2,5 PAL (Paletten), und somit eine Anbruchmenge von 0,5 PAL. Eine Menge von 40 KI ergibt 2,0 PAL, also 0,0 PAL Anbruchmenge.

Abbildung 11.2 Beispiel-Kundenauftrag

342

1628_.book Seite 521 Mittwoch, 8. September 2010 9:54 09

Index A absolute Kopfkonditionen 206 Absolut-Kondition 403 Absprache 80, 154 Bonusabsprache 84 Preisbuch 83, 253 Verkaufsabsprache 81 Abstimmkontenfindung 36 ALV-Liste 101 Änderungsbeleg 167 Anlegen mit Bezug 156, 157 Anzahl-Felder 330 Applikation 33, 39 TX (Steuern) 217, 439 V (Vertrieb) 35, 36, 428, 433 VB (Abstimmkontenfindung) 36 VC (Kontenfindung Kasse-Verrechnung) 37 VD (Kontenfindung für Zahlungskarten) 37 Arbeitsbereich 94, 95, 96, 97 Arbeitsvorratstypen eigene 97 vordefinierte für Vertriebsmitarbeiter 97 Archivierungslauf 131, 173 Aufwandsabrechnung 231, 258 Ausgangsbetrag inklusive Steuer 443 Ausschluss Gruppe 209 Verfahren 210

B B2B (Business-to-Business) 247, 435 B2C (Business-to-Consumer) 255, 500 BAdI (Business Add-In) 씮 Programm Basisformel 140, 347 002 (Nettowert) 405 012 (Bruttogewicht) 341 022 (Ganzzahlig) 404 024 (1 falls Anbruch) 404

028 (100%-Abschlag) 225, 502 029 (Naturalrabatt Dreingabe) 226, 493 110 (Budget) 262 202 (Preisbuchfaktor) 254 921 (Änderungsfaktor) 406 922 (Skalieren Formel 022) 407 923 (Skalieren allgemein) 407 924 (Skalieren Formel 024) 407 Bearbeitungsstatus 62, 152 Bedingungen 33, 64, 333, 336 002 (Position mit Preisfindung) 252 003 (Fremdwährungsbeleg) 64, 453 006 (Konditionsausschluss X) 437 008 (Exportgeschäft) 268 009 (Skonto nach Steuer) 265, 503 014 (Skonto vor Steuer) 265, 503 024 (Nur in Fakturen) 252 055 (Preisfindung Naturalrabatt) 225, 251 057 (Nicht Naturalrabatt) 396 062 (Verkaufsaktionsbasis) 255, 300 063 (Verkaufshilfsmittel) 300 106 (Kontrakt ITD) 337 107 (Kontrakt ACRN) 338 202 (Preisbuchgrundpreis) 254, 297, 494 902 (Datentransport) 287, 289, 399, 507 906 (Kopierte nicht neu) 410, 500 957 (Nicht bei Naturalrabatt/Retoure) 396, 481, 485, 487 Einsatz von 454 Belegfluss 465 Belegkette 465 Belegschema 121 Belegwährung 232 Benutzerrolle SAP_BPR_INT_SALES_REP_14 (Vertriebsmitarbeiter im Innendienst) 94 Berechnungsmotiv 135 Berechtigungsabhängigkeit 397 Bereichsmenü 75, 165 COND_AV 75, 76, 77 Bonusabsprache 씮 Absprache

521

1628_.book Seite 522 Mittwoch, 8. September 2010 9:54 09

Index

Bonuskonditionen 422 Budgetierung 214, 380 Business Function LOG_SD_SIMP_02 176 SD_01 94, 102 Business Package Vertriebsmitarbeiter im Innendienst 94 Business Transaction Event 156

Variante 77 Zugriffsfolge 48 Dialoganbindung 330 Direktwert 56 Draufgabe 38, 224 Dreingabe 38, 224 Druckaufbereitung 238 Druckkennzeichen 139, 243 DRUKZ 씮 Druckkennzeichen Duplikationskondition 127

C CEPOK (Erwarteter Preis) 264, 360, 384, 425, 509 CO-PA 147, 152, 260, 411, 460 Cross Company 229, 259

D DATAB (Gültig-ab-Datum) 61 DATBI (Gültig-bis-Datum) 61 Datenaustausch Delta- 515 initialer 515 mit SAP CRM 515 Datenbankzugriff 450 Datenbeschaffung 39 Datenermittlung 39, 48, 56, 277, 293, 336, 348 im Zugriff 84 VBAK/VBKD 401 VBAP 399 Datenmodell 57 Naturalrabatt 57 Preisfindung 58 Datentransport-Routine 902 459 DDIC (Data Dictionary) 450 Deckungsbeitrag 253, 422 Definition Bedingung 64 Feldkatalog 45 Gruppenkondition 206 Kalkulationsschema 62 Konditionsart 56 Konditionssätze 57 Konditionsstammdaten 57 Konditionstabelle 46

522

E EDI (Electronic Data Interchange) 36, 263 Ergebnis- und Marktsegmentrechnung 씮 CO-PA Erlöskontenfindung 36

F Fakturaanforderung 202 Fakturierungsplan 192, 197, 257, 330 Meilenstein 196, 267 periodisch 192, 313 FBUDA (Buchungsdatum) 457 fehlende Feldzuordnung 114 Fehlerbehandlung 376 Fehlermeldung 114, 376 301 (Felder für Zugriffsfolge fehlen) 114 bei fehlender CO-PA-Zuordnung 148 Feldkatalog 44 Feldvorrat 33 Festbetragverträge 196, 267 Findungsanalyse 63 Formeln 333 Frachtkalkulation 446 Frachtzuschlag 395 Freigabestatus 62, 108, 151 Ausprägungen 152 bei Konditionssätzen 152 in Verbindung mit Absprachen 153 FXMSG (Meldungsnummer) 358

1628_.book Seite 523 Mittwoch, 8. September 2010 9:54 09

Index

G Gruppenkey 207, 317, 352 Routine 128, 318 Gruppenkondition 127, 205, 316, 455 absolute Kopfkondition 206 mit Konditionssatz 207 prozentuale Kopfkondition 206 Staffelkondition mit Gruppenkey 207 Staffelkondition ohne Gruppenkey 207 Gültigkeitsintervall 156 Gültigkeitszeitraum 61 Gültig-ab-Datum (DATAB ) 61 Gültig-bis-Datum (DATBI) 61 Gutschriftanforderung 338

H Hauswährung 232 HIENR01–HIENR15 (Kundenhierarchie) 301

I Inaktivitätskennzeichen 178 Incoterms 127 interne Tabelle CGKOMV 322 GKOMV (Gruppenkondition) 320 GKOMZ 322 KOMT1 (Kalkulationsschema) 276 KOMT2 (Zugriffe) 276 KONDTAB 313 STEU (Preisfindungsarten) 276, 308 TKOMV (Preisfindungsergebnis) 306 TKOMVD (Druckaufbereitung) 243 TKSCHL (Konditionen ermitteln) 276, 330, 337 TKSCHLEXCL (Konditionen nicht ermitteln) 276, 330, 337 XKNUMA 255 XKOMPLOOP (Mehrfachfelder) 255, 299, 336 XKOMV (Preisfindungsergebnis) 274 interne Verrechnung 260 Internet Pricing and Configurator 씮 IPC (Internet Pricing and Configurator)

Intervallsplit 157 Intervallstaffel 132 IPC (Internet Pricing and Configurator) 515

J Jurisdiction Code 223, 440

K KAEND_TYP (Konditionstypen) 335 Kalkulationsschema 33, 44, 62, 105, 137, 245 ICAA01 (Interne Verrechnung) 259 PABR02 (Preisvereinbarungen) 188 PSER01 (Periodische Fakturierung) 257 PSER02 (Aufwandsabrechnung) 203, 258, 413, 421 RVAA01 (Standard) 119, 145, 218, 245, 247, 248 RVAA02 (Preisbuch) 83, 253, 293, 413, 494, 496, 497 RVAB01 (Ausgangspreis inkl. Steuer) 255 RVAB01 (Standard) 245 RVAB02 (Ausgangspreis inkl. Steuer) 255 RVACRN (Kontrakt) 261 RVAXUS (Standard USA) 223 RVWIA1 (Werk im Ausland) 260 TAXD (Steuern Deutschland) 217 TAXES (Steuern Spanien) 219, 441 TAXEUR (Steuern Europa) 440 TAXUSX (Steuern USA extern) 222, 442 Vorsicht bei Änderungen im Produktivystem 247 ZVAA02 (Standard konsolidiert) 413 ZVAAEU (Steuern Europa) 220 ZZ0000 (Einkauf) 436 ZZVBAP (Datenermittlung VBAP) 399 ZZVBKD (Datenermittlung VBAK/ VBKD) 401 Kalkulationsschemaermittlung 120 Einflussgrößen 121 Kampagnenfindung 38 Kampagnenmanagement 38

523

1628_.book Seite 524 Mittwoch, 8. September 2010 9:54 09

Index

Kasse-Verrechnung 37 KDATU (Preisdatum) 297 KDUMMY (Initial) 55 Kennzahlen für Reporting und Analyse 411 KKURS (Umrechnungskurs) 370 KNPRS (Preisfindungsarten) 307 KNUMA_AG (Verkaufsaktion) 271, 299 KOBED 65 KOBEV 65 Kommunikationsstruktur 34, 43, 44, 45 KONAU_TYP (Konditionstypen) 336 Kondition kopieren 160 manuell 248 statistisch 248 Konditionen nicht gefunden 390, 431 Konditionsapplikation 39 Konditionsart 33, 44, 56, 69, 105, 245, 263 ACRB (Budget-Verbrauch) 262 ACRL (Limit) 263 ACRN (Budget) 262, 338 ACRR (Budget-Delta) 263 ADDNR (Sachkosten) 299 AMIW (Mindestauftragswert) 145, 267, 403, 471 AMIZ (Mindestwertzuschlag) 267, 472 anlegen 117, 403 AZWR (Anzahlungswert) 267, 473 BASB (Basisbetrag) 442 BO01 (Bonus) 473 Customizing 114 DIFF (Rundung Endbetrag) 475 DUPL (Duplikationskondition) 475 EDI1 (Erwarteter Kundenpreis) 476 EDI1/EDI2 (Erwarteter Kundenpreis) 263 EDI2 (Erwarteter Kundenwert) 477 EK01 (Istkosten) 231, 258, 363, 418, 477 EK02 (Plankosten) 230, 363 EK02/EK03 (Kalkulierte Kosten) 478 GRWR (Grenzübergangswert) 268, 478 HA00 (Prozentrabatt) 317, 479 HB00 (Absolutrabatt) 403, 480 HD00 (Fracht) 481 HI02 (Kundenhierarchierabatt) 482

524

HM00 (Auftragswert) 265, 403, 406, 466, 482, 509 ITD2 (Bereits fakturiert) 337 ITDn (Bereits fakturiert) 263 IV01 (Preis interne Verrechnung) 483 IV01/IV02 (Preis interne Verrechnung) 260 K004 (Materialrabatt) 163 K005 (Kunde/Material) 214 KAD0 (Sachkosten) 300 KP00 (Palettenrabatt) 404, 484 KP01 (Anbruchzuschlag) 404, 485 KP02 (Mixpalettenrabatt) 486 KP03 (Mixanbruchzuschlag) 317, 341, 487 KUMU (Kumulationskondition) 488 KW00 (Konzernbewertung) 260, 489 LCFR (Steuerbefreiungslizenz) 349, 381 MW01 (Steuerauslöser) 222, 490 MW15 (Steuer voller Satz) 56, 218, 264, 491 MWAA (Ausgleichssteuer) 219, 441 MWAS (Ausgangssteuer) 219, 441 MWSI (Mehrwertsteuer im Hundert) 256, 491 MWST (Mehrwertsteuer) 218 NETP (Rundungsdifferenz) 251, 492 NETW (Nettowert) 257, 493 NRAB (Naturalrabatt) 226, 493 PB00 (Bruttopreis) 422, 435 PB1 (Verkaufsaktionsfindung) 255 PB1D (Verkaufsaktion) 255, 300 PBBS (Basispreis) 254, 279, 283, 293, 296, 419, 452, 494 PBU (Preisbuchfindung) 293, 494 PBUD (Preisbuchbasis) 254, 293, 496 PBUP (Preisbuch-Brutto) 254, 293, 298, 419, 496 PBXX (Bruttopreis) 437 PC00 (Profitcenter-Bewertung) 260, 497 PI01/PI02 (Preis interne Verrechnung) 229, 260, 363, 498 PMIN (Mindestpreis) 251, 499 PN00 (Nettopreis) 251, 499 PPAR (Preis Abrechnung) 258, 421 PPSV (Preis Pos. Service) 187, 189, 257 PR00 (Preis) 49, 419 PR01 (Preis inklusive Steuer) 500

1628_.book Seite 525 Mittwoch, 8. September 2010 9:54 09

Index

PR02 (Preis gesteigert) 380, 410, 420, 500, 512 PTVO (Gutschein) 252, 501 R100 (100%-Abschlag) 225, 251, 502 RB00 (Absolutrabatt) 403 RL00 (Delkredere) 264, 502 SKTO (Skonto) 265, 455, 503 SKTV (Skonto vor Steuer) 265, 504 Texte 136 UTXJ (Steuer USA extern) 223 VA00 (Variantenpreis) 300, 504 VPRS (Verrechnungspreis) 229, 238, 363, 506 WK00 (Zielwert) 260 XR1 (Steuer USA extern) 223 Z030 (Materialgruppenrabatt) 318 Z030/Z031 (Materialgruppe) 353 Z031 (Materialgruppenrabatt) 319 Z901 (Hierarchiekondition) 53, 60 Z902 (Datenermittlung Material) 286, 399, 507 Z905 (Materialgruppenrabatt) 287, 508 ZB00 (Preis Brutto manuell) 422 ZBUP (Preisbuchbrutto) 419, 508 ZDB1 (Mindestdeckungsbeitrag) 423, 509 ZH01 (Budget genehmigt) 383, 513 ZH02 (Budget angefordert) 383, 514 ZM00 (Auftragswertdelta) 266, 509 ZP03 (Anbruchzuschlag) 341 ZPBP (Datenermittlung Kunde) 279, 283, 510 ZPRA (Preis allgemein) 418, 510 ZPRB (Preis kundenindividuell) 419, 511 ZPRC (Preis gesteigert) 420, 512 ZPRD (Preis Kontrakt) 421, 512 Konditionsausschluss 72, 142, 208 Konditionsbasisformel 347 Konditionsbild 397 Konditionsindex 80, 131 Konditionsklasse 126 A (Zu-/Abschlag) 266 B (Preis) 265 C (Nachträgliche Vergütung) 252 H (Datenermittlung) 279 H (Verkaufsaktionsfindung) 254 Konditionsliste 75, 87

aufrufen 88 konfigurieren 89 Rolle bei der Konditionspflege über Bereichsmenüs 93 Konditionspflege 60, 69 Änderungsbeleg 167 Löschen von Konditionsstammdaten 171 mit Bereichsmenü 165 Text 169 über Bereichsmenü 75 über Index 79 über Konditionsart 69 Zusatzkondition 170 Konditionssatz 32, 44, 57 Arbeiten mit dem 151 Freigabestatus 152 löschen 131 Konditionsstaffel 207 Konditionsstammdaten 32, 44, 57, 69 Konditionssteuerung E (Wert und Basis fixiert) 404 F (Wert fixiert) 405 Konditionstabelle 32, 44, 46, 47, 105, 122, 453 702 122 A149 (Kundenabhängige Datenermittlung) 279 anlegen 106 Datenfeld in der 110 Kurzbeschreibung 106 Konditionstechnik 31 Einsatzgebiete 31 Elemente 31, 42 Konditionstyp 127 g (Zahlung) 252 Konditionsupdate 75, 132, 214 Konditionsverwendung 32, 33, 277 Konditionswährung 235 Konditionswertformel 350 konfigurierbares Material 127 Kontenfindung 35, 36 Kontenfindungsart ZASH (Barverkauf) 59 Kontenfindungsschema 44 Kontoschlüssel 248 Kopfkondition 183, 316 absolut 206 manuell 206 prozentual 206

525

1628_.book Seite 526 Mittwoch, 8. September 2010 9:54 09

Index

Kopierregel 160 Kopiersteuerung 191 Kosten 226, 252, 362 KOUPD (Konditionsupdate) 361 KSTAF (Staffelmenge) 296 KSTEU (Konditionssteuerung) 364, 466 Kumulationskondition 127 kumulierte Werte 214, 386 Kundeneinzelfertigung 230, 478 Kundenhierarchie 52, 301, 420 Kundennamensraum 43 für Konditionslisten 89 Rundungsregel 160 Kundenschema 121 KUNWE (Warenempfänger) 463 KZINC (inklusive Steuer) 442 KZWI1 (Zwischensumme 1) 397 KZWI1–KZWI6 (Zwischensummen) 412 KZWIW (Kennzeichen Zwischensumme) 363

L Lagerverkauf 227, 229 Laufzeitanalyse 463 Leistungserstellungsdatum 458 Limit 214 Löschkennzeichen 171

M manuelle Kondition 421 Massenänderung 156 Materialausschluss 37 Materialfindung 37 Materialgruppenhierarchie 284 Materiallistung 37 Materialpreis Selektionsbildschirm 77 maximale Anzahl Aufträge 214 Konditionsbasis 214, 404 maximaler Konditionswert 214, 404 Meilenstein-Fakturierung 196 Mengenänderung bei kopierten Konditionen 403

526

Message 376, 384 108 390 780 387 Mietvertrag 257, 330 MPROK (Status manuelle Preisänderung) 361 MWSBP (Steuerbetrag) 362

N Nachkommastellen 394 Nachrichtenfindung 35, 239 Nachrichtenverarbeitung 239 nachträgliche Vergütung 252 Namensraum für Konditionsarten 117 für Routinen 143 Naturalrabatt 224, 251, 396, 493 Naturalrabattfindung 38 Nettopreisliste 62, 100, 152 NETWR (Nettowert) 362, 411, 422 neue Felder für die Preisfindung 142 NRFAKTOR (Naturalrabattfaktor) 226

P Performance 374, 449 Pflegedialog 59 Positionstyp TAO (Meilenstein-Fakturierung) 196 WVN (Wartungsvertragsposition) 192 POWL (Personal Object Worklist) 씮 Arbeitsbereich Preisbuch 씮 Absprache Preisdatum 134, 458 Preise aktualisieren 182, 185 Preiselement vordefiniertes 176 Preiserhöhung 195 Preisfindung im Kundenauftrag 428 im Rechnungswesen 438 im Transport 446 in der Bestellung 435 in der Faktura 433 in der Finanzbuchhaltung 439

1628_.book Seite 527 Mittwoch, 8. September 2010 9:54 09

Index

innerhalb von Branchenlösungen 427 neue Felder 142 Preisfindungsart 192, 304, 335, 432 B (neue Preisfindung durchführen) 182 E (keine Änderung) 376 F (Gruppenbewertung) 356, 376 Preisfindungsergebnis 358 Preisfindungsszenario testen 121 Preisquelle 447 Preisvereinbarung 85, 187, 259, 331 PRELIMINARY (Prestep) 456 Prestep 41, 65, 297, 302, 451, 454 Programm CALCULATE_TAX_ITEM 442 GN_INVOICE_CREATE 100 PRICING 304 PRICING_AUTHORITY_CHECK_UI 397 PRICING_COMPLETE 206, 208, 316, 352, 356, 455 PRICING_COPY 201, 267, 309, 326, 340, 404 PRICING_DETERMINE_DATES 330 PRICING_LOAD_CONDITION_TYPS 330 PRICING_REFRESH 329 RSNAST00 239 RV_PRICE_PRINT_HEAD 243 RV_PRICE_PRINT_ITEM 243 RV15CC01 163 SAPLV61A 460 SAPMM06E (Einkauf) 437 SD_COND_ACCESS 62, 310 SD_COND_READ_FROM_MEMORY 313 SD_COND_STATISTICS_READ 349, 381 SD_MOVE_A004_TO_A304 151, 152 SDNETPR0 (Nettopreisliste) 152 SDVPRSUPDATE 228 SMOF_DOWNLOAD 516 TP_MATERIAL_PRICES_GET 489 Promotion 81 prozentuale Kopfkondition 206 PRSDT (Preisdatum) 457 PRSOK (Preisfindung o.k.) 360 PRSQU (Preisquelle) 308 Pufferung 451

R Rechenformel 140 Rechenregel 70, 115, 126, 257 Absolutbetrag 206 B – Fester Betrag 128 C – Mengenabhängig 135 H (Prozent im Hundert) 256 prozentual 206 Rechnungslistenkondition 134 Referenzapplikation 131 Referenzkonditionsart 131 Reporting 411 Retoure 338, 396 Routine 333, 366 beleg_initialisieren 329 gkomv_bewerten 323 im Kundenauftrag 428 in der Faktura 433 komt2_aufbauen 311, 339 kondition_pruefen 373 konditionen_lesen 312, 339 konditionsbasis_ermitteln 346 konditionsvorstep 37, 304, 307, 310, 339, 367, 451, 457 konp_2_xkonp 312 konv_bearbeiten 328 konv_einlesen 311 kwert_ermitteln 350 preisfindung 304, 464 preisfindung_gesamt 319, 464 preisfindung_vorbereiten 304, 306, 319 provide_condition_data 297, 384 staffelbasis_ermitteln 348 userexit_change_pricing_rule 372 userexit_field_modification 373 userexit_move_field_to_vbap 399 userexit_move_field_to_vbkd 401 userexit_new_pricing_vbap 432 userexit_new_pricing_vbkd 433 userexit_pricing_check 373, 376 userexit_pricing_copy 367, 405, 407, 466 userexit_pricing_prepare_tkomk 142, 430, 460, 463 userexit_pricing_prepare_tkomp 142, 307, 330, 431 userexit_pricing_rule 309, 367 userexit_print_head 243, 368

527

1628_.book Seite 528 Mittwoch, 8. September 2010 9:54 09

Index

userexit_print_item 243, 369 userexit_xkomv_bewerten_end 369 userexit_xkomv_bewerten_init 370, 398 userexit_xkomv_ergaenzen 370 userexit_xkomv_ergaenzen_manu 371 userexit_xkomv_fuellen 314, 371 userexit_xkomv_fuellen_o_konp 372 xkomv_aufbauen_aus_komt1 312, 339 xkomv_aufbauen_aus_tkomv 314, 340 xkomv_aufbauen_pruefen 312, 315 xkomv_ausschluss 315 xkomv_bewerten 231, 315 xkomv_ergaenzen 312 xkomv_fuellen 314 xkomv_kbetr_ermitteln 314 xkomv_kkurs_ermitteln 235, 314 xkomv_uebertragen_nach_tkomv 316 Rundung 392 Rundungsdifferenz 238, 357 Rundungsdifferenzenausgleich 128, 207 Rundungseffekt 238 Rundungskondition DIFF 252 Rundungsregel 127, 158, 160 Kundennamensraum 160

S Sammelrechnung 456 SAP Customer Relationship Management (SAP CRM) 38, 515 SAP ERP 6.0 Enhancement Package 2 94 Enhancement Package 3 261 Enhancement Package 4 95, 176, 186 SAP List Viewer 씮 ALV SAP NetWeaver Business Client 95 SAP Virtual Machine Container (VMC) 515 SAP-Hinweis 1080339 (Skonto und Tax Jurisdiction) 265 1165078 (Brechtigungsprüfung für Konditionen) 397 24832 (Preisfindungsregeln) 192, 367 25144 (Frachtkonditionen bei Teilfakturierung) 395 27636 (Kondition existiert, manuell entfernt) 390

528

334219 (Übernahme von Konditionsstammdaten und -customizing) 518 38881 (Preise mit mehr Nachkommastellen) 395 39774 (Retoure für Rechnungen mit Intervallpreisen) 410 43002 (Feldüberlauf) 463 80183 (Rundung) 393 809820 (User-Exit-Konzept für die Preisfindung) 518 SAP-Tabellenpuffer 450 Schemaermittlung 44, 105 Schlüsselstruktur 106 Schlussrechnung 201 Schnellerfassungsbild 70 Andere Konditionsart 75 Detail 71 Gültigkeitszeiträume 74 Kumulierte Werte 75 Naturalrabatt 75 Staffeln 74 Statusinformationen 75 Zusatzdaten 73 Zusatzkonditionen 74 SHKZG (Retoure) 430 Skalierung 406 Staffel zeitabhängig 331 Staffelformel 348 023 (Anbruchmenge) 341, 348 043 (Steuerlizenz Frankreich) 348, 381 202 (Preisbuchstaffel) 296, 348 Staffelkondition mit Gruppenkey 207 ohne Gruppenkey 207 Stammdaten datumsabhängig 398 statistische Konditionen 252 Steuer -Auslöser 219 -erhöhung 223 Steuerberechnung 222, 439 Steuerermittlung 217, 440, 442 Steuer-Interface extern 222 Steuerkennzeichen 440 STF_MONATE (Anzahl Monate) 331 Streckengeschäft 228 Struktur GKOMV (Gruppenkondition) 276 KOMG (Kommunikation Pflege) 34, 272

1628_.book Seite 529 Mittwoch, 8. September 2010 9:54 09

Index

KOMK (Preisfindungskopf) 41, 273 KOMKAZ 142, 277 KOMP (Preisfindungsposition) 41, 273 KOMPAX (Preisfindungsergebnis) 276, 292, 320, 358 KOMPAZ 142, 277 KOMPAZD (Position dynamisch) 41, 56, 275, 279 KOMPLOOP (Mehrfachfelder) 275, 299 KOMV (Preisfindungsergebnis) 273 RKOMG (Konditionsfelder) 297 RKOMV (Belegkondition) 298 RKONP (Konditionssatz) 297 TKOMK 428 TKOMP 429 Strukturkondition 127 Stückliste 127 Stufe 137 Substitution Kundengruppe 401

T Tabelle A000 (Muster-Tabelle) 48 A003 (Steuerkennzeichen) 440 A004 (Material ohne Freigabestatus) 151 A053 (Steuern über Jurisdiction Code) 440 A304 (Material mit Freigabestatus) 52, 151 A305 (Kunde/Material mit Freigabestatus) 52 A306 (Preisliste/Material mit Freigabestatus) 52 A901 (Preishierarchie) 52 A902, A903, A904 (Materialgruppenhierarchie) 285 FPLA/FPLT (Fakturierungsplan) 330 KONP (Konditionssatz) 276 KONV (Belegkonditionen) 328, 374 MBEW (Materialbewertung) 228 S060 214, 252, 381 S071 214, 382 S409 263, 337 S469 252, 381 T001 (Buchungskreis) 232 T052 (Zahlungsbedingungen) 264, 503

T681A (Applikation) 40 T685 (Konditionsarten) 57 Tabellenpuffer 450 Table-Control 78 Tax-Jurisdiction-Code 씮 Jurisdiction Code teilqualifizierter Zugriff 51 Testen 465 Textschema 169 Transaktion 8KEV (Konditionsart pflegen) 439 DP90 (Aufwandsabrechnung) 202, 231, 258, 261 FTXP (Steuern in FI) 217, 441 OKOZ (Zuschläge) 439 OV77 (Sachkonten zuordnen) 60 R3AS 516 SE30 (Laufzeit-Analyse) 463 SE34 (Bereichsmenüpflege) 75 SFW5 (Switch Framework) 94 SM30 (Tabellensicht-Pflege) 166, 167 ST05 (Trace) 464 V.25 (Freigabe erwarteter Kundenpreis) 264, 361, 425 V/I5 (Konditionen ändern) 80 V/i6 (Selektion Konditionssätze über Index) 190 V/I7 (Konditionen anzeigen) 80 V/LD (Aufruf Konditionsliste) 88 V_I7 (Konditionen anlegen) 80 V_NL (Nettopreisliste) 100 VB21 (Verkaufsaktion anlegen) 294 VBN1 (Naturalrabatt) 224 VK11 (Konditionssätze anlegen) 69 VK12 (Konditionssätze ändern) 69, 158 VK13 (Konditionssätze anzeigen) 69 VK14 (Konditionssätze anlegen mit Bezug) 69, 156 VK31 (Konditionssätze anlegen) 75 VK32 (Konditionssätze ändern) 75, 76, 78 VK33 (Konditionssätze anzeigen) 75 VK34 (Konditionssätze anlegen mit Bezug) 75 VOFM (Bedingungen und Formeln) 65, 143, 160 VTFA/VTFL (Kopiersteuerung Faktura) 233

529

1628_.book Seite 530 Mittwoch, 8. September 2010 9:54 09

Index

U Umrechnungskurs 232 Umsatzfortschreibung 84

V VADAT 41, 48 VAKEY 34, 48 VALDT (Valutadatum) 271 VALTG (Valutatage) 271 VARCOND (Varianten) 299 Variante Definition 77 Variantenkondition 134 Verkaufsaktion 81, 253 Verrechnungswert 422, 509 Versandkosten 395 Vertriebsstatistiken 411 Verwendung 32, 35 3 (Kampagnenfindung) 38 A (Preisfindung) 35 B (Nachrichtenfindung) 35 C (Kontenfindung) 36 D Materialfindung 37 E (Bonusabwicklung) 37 G (Materiallistung/-Ausschluss) 37 N (Naturalrabattfindung) 38 T (Datenbeschaffung) 39 View V_T681F (Feldkatalog) 45 V_T681V (Konditionsverwendungen) 34 V_T681Y_BMEN_USR (BereichsmenüZuordnung) 167 V_T681Z (Applikation je Verwendung) 40 V_T683V (Kalkulationsschemaermittlung) 433 vordefinierte Preiselemente 176, 186 Vorzeichen 126

W Währungsumrechnung 133, 231 Wartungsvertrag 257, 330 WAVWR (Verrechnungswert) 228, 362, 411

530

Werksfindung 403 Wertformel 140, 350 008 (Erwarteter Wert) 264, 476 011 (Deckungsbeitrag) 253, 423 013 (Mindestwertzuschlag) 267 015 (Mindestpreis) 251, 499 017 (Rundung laut T001R) 341 018 (Deckungsbeitrag %) 423 025 (KZWI1 minus Steuer) 257, 493 036 (Kumulationskondition) 488 038 (Ausschluss mit Wert Null) 211 111 (Verbrauch) 262 112 (Fakturiert) 263, 337 113 (Rabatt) 263 114 (Budget) 262, 263 301 bis 306 (Steuern Wert 1 bis 6) 442 900 (Budgetprüfung) 385, 514 901 (Konditionsausschluss) 212 905 (Deckungsbeitragsprüfung) 424, 509 911 (Deckungsbeitrag) 423 913 (Auftragswert-Delta) 266, 509 918 (Deckungsbeitrag %) 423 925 (Addieren XWORKF) 211 926 (Addieren XWORKG) 211 927 (Addieren XWORKH) 211 936 (Kumulationskondition) 488 Wertkontrakt 260 Work Center 씮 Arbeitsbereich WRBTR (Ausgangsbetrag) 442

Z Zähler 137 Zahlungsbedingung 398 Zahlungskarten 37 ZTERM (Zahlungsbedingung) 271 Zugriff additiv 55 exklusiv 55 teilqualifiziert 51 Zugriffsart 124 Zugriffsfolge 33, 44, 48, 105, 124 anlegen 111 HI02 (Kundenhierarchie/Material) 482 K005 (Kunde/Material) 452 Kontenfindung ZASH (Kasseverrechnung) 59

1628_.book Seite 531 Mittwoch, 8. September 2010 9:54 09

Index

Kundennamensraum 112 MWM1 (Mehrwertsteuer voller Satz) 56 PR01 (Preis – Positionspreisliste) 254, 279, 452 PR02 (Preis mit Freigabestatus) 49, 55 Z901 (Kundenhierarchie allgemein) 52, 482 Z902 (Datenermittlung Material) 286 ZPBP (Datenermittlung) 279 ZPRA (Preis allgemein) 418, 510

ZPRB (Preis kundenindividuell) 420, 511 ZPRD (Preis Kontrakt) 421, 512 Zugriffsoptimierung 451 Zusatzkondition 170, 436 Kalkulationsschema 130 Zwischensumme 140, 248, 363 Felder 397

531