Beispiel: Fertigungsauftrag enthält 10 Vorgänge und 1000 Komponenten
o Fall 1: Bei einer Komponente wird die Bedarfsmenge manuell
geändert.
Ein Änderungsbeleg wird für die geänderte Komponente geschrieben
o Fall 2: Auf dem Auftragskopf wird manuell die geplante Menge
geändert.
Die Änderung bewirkt, daß für alle Vorgänge und Komponenten
automatisch die Mengen angepaßt werden. Es würde
- ein Änderungsbeleg für die geänderte Kopfmenge,
- zehn Änderungsbelege für die automatisch angeänderten
Vorgangsmengen (falls definiert) und
- tausend Änderungsbelege für automatisch angeänderten
Komponentenmengen geschrieben werden.
Lösung
Nutzung der SAP-Erweiterung "PPCO0007", die beim Sichern von
Auftragsänderungen durchlaufen wird. Die SAP-Erweiterung finden Sie im
Customizing unter dem Menupfad Fertigungssteuerung bzw. Prozeßauftrag ->
Systemanpassungen -> Erweiterungen bei der Auftragspflege -> Erweiterung
beim Sichern eines Auftrags (Kopffelder).
Dadurch kann zum einen zusätzliche Logik definiert werden, um zu
entscheiden, ob Änderungsbelege geschrieben werden sollen oder nicht.
Zum anderen kann entweder das SAP-Standardtool zur Belegschreibung oder
aber ein eigenes Tool hierzu angesteuert werden.
Der Aufruf des Customer-Exits erfolgt aus dem Funktionsbaustein
CO_ZV_ORDER_POST beim Sichern. Die aktuellen Daten eines Auftragskopfes
werden über den Parameter HEADER_IMP bereitgestellt. Bei Auftragsnetzen
kann der Exit mehrmals aufgerufen werden, jeweils für einen Auftrag aus
dem Netz.
Bitte beachten Sie, daß aus dem Exit heraus weder ein Dialog geführt
noch eine Nachricht ausgegeben werden darf.
Als Vorlage für die Ansteuerung der Belegschreibung von Änderungsbelegen
kann das beigefügte Coding herangezogen werden.
Daran ist auch zu erkennen, wie aus internen Tabellen die aktuellen und
ursprünglichen Daten der verschiedenen Auftragsobjekte bereitgestellt
werden können.
In dem Beispielcoding wird der Funktionsbaustein ORDER_WRITE_DOCUMENT
eingesetzt, der zu dem Änderungsbelegobjekt ORDER für die ihm
übergebenen Tabellen die Änderungen protokolliert.
Eventuell ist es angebracht, ein eigens Objekt für Änderungsbelege zu
Aufträgen zu definieren, z.B. ZZORDER. Ggf. kann hierzu das
Standardobjekt ORDER als Vorlage dienen.
Folgende Tabellen des Auftrags sind potentiell für solch ein
Änderungsbelegsobjekt zu berücksichtigen: