CL_BADI_SD_REV_REC_PODEV - Beispiel für RevRec/PODEV - Anwenderstatus

General Material Data   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Funktionalität

Mit dem BAdI wird eine Beispielimplementierung ausgeliefert. Folgender Prozess liegt dieser Implementierung zugrunde:

Eine Auftragsposition ist für die leistungsbezogene Erlösrealisierung (Typ 'B') relevant.Der Anwenderstatus ist jedoch so eingestellt, dass die Auftragsposition beim Anlegen zunächsteinmal zur Fakturierung gesperrt ist. Zusätzlich zum Erlösrealisierungstyp ist fürdiese Position auch der Erlösereignistyp 'X' (kundenspezifisches Ereignis) gesetzt. Fürdieses Beispiel bedeutet das, dass die Erlöse erst realisiert werden können, wenn der Anwenderstatus auf 'frei' geht, der wiederum auf dem Positionsreiter 'Status' im Auftrag geändert werden kann.

Im BAdI wird nun dieser Anwenderstatus abgeprüft. Steht der Status auf 'geblockt', dann werdendie Erlöszeilen als gesperrt fortgeschrieben. Sobald jedoch der Anwenderstatus auf 'frei' gestelltwird, erfolgt auch eine Entsperrung der entsprechenden Erlöszeilen in der Erlöstabelle (VBREVE). Eine Realisierung der Erlöse kann nun mit der Transaktion VF44 erfolgen.

Für den oben beschriebenen Prozess muss im Positionstyp der Auftragsposition ein Statusschema gepflegt werden. Dieses Statusschema wird im Customizing mit Transaktion BS02 wie folgt verwaltet, bzw. neu angelegt:

Statusschema: ZZ000001

Statustext..: Faktura zunächst gesperrt

Objekttyp...: Kundenauftragsposition

Anwenderstatus:

Ordnr. Status Kurztext LText Initial Niedrig Hoch Pos. Prio.

--------- -------- ------------ ------- ------- --------- ------- ----- ------

10 blck gesperrt X 10 20 1 1

20 free offen 10 20 1 1

Statusschema: ZZ000001 Status: blck (gesperrt)

Betriebsw.Vorgang Erlaubt Verboten Keine Aktion Setzen

-------------------------- ---------- ------------ ----------------- ---------

Entsperren X X

Faktura erstellen X

Sperren X X

Statusschema: ZZ000001 Status: free (offen)

Betriebsw.Vorgang Erlaubt Verboten Keine Aktion Setzen

-------------------------- ---------- ------------ ----------------- ---------

Entsperren X X

Sperren X X

Es handelt sich hierbei um ein minimales Customizing. Es sind natürlich noch viele andere betriebswirtschaftliche Vorgänge denkbar. Der Hinweis 910554 gibt hier noch mal eine weitere Hilfestellung.

Ab Release EHP3 ist auch das Statusschema 'CB000001' standardmäßig vorhanden. Dieses Schema beinhaltet die oben beschriebenen Status und kann für die Beispielimplementierung verwendet werden.

Beziehungen

Beispiel

Hinweise

Weiterführende Informationen

In der zuvor beschriebenen Beispielimplementierung löst eine Aktion innerhalb des Auftrages das erlösrealisierungsrelevante Ereignis aus, d.h. es findet in jedem Fall ein Auftrags-Update statt.

In vielen Fällen erfolgt jedoch ein erlösrealisierungsrelevantes Ereignis, ohne dass zwingendein Update auf den Auftrag erfolgt. So könnte zum Beispiel die Bezahlung der Faktura ein Zeitpunktsein, der Erlöse zur Realisierung freigibt. Das Gleiche gilt für eine Auftragsbestätigungdes Kunden oder eine Reparaturrückmeldung des Monteurs. Des Weiteren stellen in der Regel Incotermsauch den Zeitpunkt des Gefahrenübergangs dar. Hier könnte man sich vorstellen, dass ein bestimmter Vorgang, gekoppelt an den Incoterms, auch zu einer Realisierung von Erlösen führt.

In jedem Fall muss nach einem solchen Ereignis ein Auftrags-Update erfolgen, damit die entsprechendenErlöszeilen fortgeschrieben bzw. geändert und zur Realisierung freigegeben werden. Diesist möglich mit dem Funktionsbaustein 'SD_REV_REC_COLLECT', der, entsprechend bestückt,für ein sofortiges oder späteres Update der jeweiligen Aufträge sorgt. Zu dieser Problematik lesen Sie bitte die Hinweise 780993 und 781192.

Durch das Update wird auch das BAdI 'BADI_SD_REV_REC_PODEV' durchlaufen. In der entsprechenden Implementierungmüssen nun die relevanten Ereignisdaten gelesen und die interne Tabelle 'CT_RRPODEVCUST' versorgtwerden. Die für den jeweiligen Vorgang schon fortgeschriebenen Ereignisdaten werden mittels der internen Tabelle IT_RRPODEVINFO im BAdI zur Verfügung gestellt.


SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 5088 Date: 20120527 Time: 085247     triton ( 219 ms )