Ansicht
Dokumentation

FIRA_CONTR_COMB - BAdI: Vertrags-ID pro Erlösbuchhaltungsposition ermitteln

FIRA_CONTR_COMB - BAdI: Vertrags-ID pro Erlösbuchhaltungsposition ermitteln

rdisp/max_wprun_time - Maximum work process run time   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Dieses Business Add-In (BAdI) wird zur Ermittlung einer Vertrags-ID für jede Erlösbuchhaltungsposition verwendet, damit zusammengehörige Positionen gruppiert werden können.

Durch die Implementierung dieses BAdIs können Sie die Logik, wie Erlösbuchhaltungspositionen in einem Vertrag bei der Verarbeitung gruppiert werden sollen, hinzufügen oder ändern. Alle zusammengehörigen Erlösbuchhaltungspositionen erhalten dieselbe Vertrags-ID.

Folgende Einschränkungen müssen berücksichtigt werden:

  • Nur Erlösbuchhaltungspositionen, die in das BAdI importiert werden, sollte eine Vertrags-ID zugeordnet werden. Nur diese Erlösbuchhaltungspositionen werden in weiteren Verarbeitungen berücksichtigt.
  • Erlösbuchhaltungspositionen in der Erstdatenübernahme können nicht zu vorhandenen Verträgen zugeordnet werden. Sie können nur neuen Vertrags-IDs zugeordnet werden.
  • Erlösbuchhaltungspositionen mit unterschiedlichen Migrationspaket-IDs in der Erstdatenübernahme können nicht zum selben Vertrag zugeordnet werden.

Für die oben aufgeführten Einschränkungen werden Konsistenzprüfungen durchgeführt und nach dem Aufruf des BAdIs wird eine Fehlerbehandlung bereitgestellt.

Dieses BAdI ist nur für Kundenerweiterungen vorgesehen. Die von der SAP ausgelieferte Logik für die Vertragszusammenführung der zu verarbeitenden Erlösbuchhaltungsdaten wird in der Klasse CL_FARR_RAI2_BADI_IMPL implementiert.

Der Eingabeparameter für die Erstdatenübernahme (iv_initial_load) lässt eine strukturiertere Implementierung des BAdIs zu. Dabei wird die Vertragskombination für die Erstdatenübernahme und für die Normalverarbeitung getrennt.

Mit dem Eingabeparameter it_mapping (it_mapping) wird eine Liste zulässiger Verträge, die wie in der Standardfunktionalität definiert den Erlösbuchhaltungspositionen zugeordnet werden können, bereitgestellt. Weitere Informationen finden Sie in der standardmäßigen Fallback-Implementierung in der Klasse CL_ FARR_RAI2_BADI_IMPL.

Programmiereinschränkungen:

Um die Konsistenz des Systems nicht zu gefährden, dürfen Sie die folgenden Sprachelemente in Ihrer BAdI-Implementierung nicht verwenden:

  • COMMIT WORK
  • ROLLBACK WORK
  • CALL FUNCTION 'DEQUEUE ALL'
  • Löschen von Sperren, die Sie nicht selbst gesetzt haben
  • Implizite Datenbank-Commits, die durch einen RFC-Aufruf oder eine MESSAGE- oder WAIT-Anweisung ausgelöst werden

Änderungen, die nicht diesen Regeln entsprechen, können zu schwerwiegenden Fehlern führen!

Bevor Sie eine Implementierung anlegen, müssen Sie zunächst eine Implementierungsklasse anlegen, die die Schnittstelle IF_FARR_RAI2_CONTR_COMB enthält.

Weitere Informationen finden Sie in der Dokumentation dieser Schnittstelle.

Eine Beispielimplementierung finden Sie in der Klasse CL_FARR_RAI2_BADI_IMPL. Diese Klasse implementiert die Methode IF_FARR_RAI2_CONTR_COMB~COMBINE_CONTRACT und prüft die Mapping-Tabelle für alle Referenzen (REFERENCE_ID und REFERENCE_TYPE) und ordnet die vorhandene Vertrags-ID aus der Mapping-Tabelle zu bzw. legt eine neue temporäre Vertrags-ID für jede Gruppe von Erlösbuchhaltungspositionen an, die sich in der Referenz-ID oder der Referenzart unterscheiden.

Beachten Sie auch die Dokumentation der Default-Implementierungsklasse CL_FARR_BADI_RAI2_SAMPLE.






ROGBILLS - Synchronize billing plans   Vendor Master (General Section)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4488 Date: 20240520 Time: 212910     sap01-206 ( 76 ms )