Kundenfelder im eigenen Reiter (Tab) / SRM Kontrakte

Beschreibung

Für einen IT-Provider der Kunden im öffentlichen Bereich ein SRM System zur Verfügung stellt wurde der SRM Kontrakt erweitert. Durch ein Enhancement des Floorplanmanagers war es möglich einen neuen Tab in den Kontrakt zu integrieren. Der SAP SRM Architektur folgend wurde ein eigener BO-Mapper erzeugt und in den Chanel Logic Layer (CLL) eingebunden. Der Inhalt des neuen Tabs bestand aus verschiedenen Eingabefeldern. Jedes Feld konnte anhand des Subtyps (Kontrakttemplate, Standardkontrakt) mit verschiedenen Metadaten (Sichtbarkeit, Änderbarkeit und Pflichtfeld) direkt auf dem Eingabebildschirm gesteuert werden. Damit ist es möglich über das Kontrakttemplate die daraus entstehenden Kontrakte hinsichtlich der Kundenfelder individuell auszuprägen. Über den BAdI BBP_DOC_CHECK_BADI wurde geprüft ob Pflichtfelder im Standardkontrakt befüllt sind. Eine Implementierung des BBP_DOC_CHANGE_BADI wurde verwendet um bestimmte Metadaten beim Anlegen eines Kontrakts vorzubefüllen.

Eine Schwierigkeit bestand darin Änderungsbelege für Eingabefelder und Metadatenfelder zu speichern. Da es sich hier um mehr als 40 Kundenfelder mit jeweils 3 Metadatenfeldern handelte wurden die Metadaten in Tabellenerweiterungen ausgelagert. Weitere Tabellenerweiterungen wurden verwendet um Auflistungen technischer ID’s zu speichern. Diese wurden beim Anzeigen in Text übersetzt um für den Anwender lesbar zu sein. Auf diese Weise können bei einer späteren BI-Anbindung die ID’s zur Analyse verwendet werden. Ebenso wurden Langtexte verwendet um unbeschränkten Inhalt anzeigen und schreiben zu können.

Technologie

Die Umsetzung der Anforderung erfolgte über folgende Komponenten:

Komponente Beschreibung
BBP_DOC_CHANGE_BADI Vorbefüllen initialer Werte bei Anlage eines Kontrakts oder Kontrakttemplates.
BBP_DOC_CHECK_BADI Vorbefüllen initialer Werte bei Anlage eines Kontrakts oder Kontrakttemplates.
FLOORPLANMANAGER (FPM) / FPM_OIF_COMPONENT Die Web Dynpro Konfiguration /SAPSRM/WDCC_FPM_CTR_PURCH wurde erweitert damit ein neuer Tab eingefügt werden konnte.
Eigene Web Dynpro Komponente für Kundenfelder Eine eigene Komponente wurde verwendet um Kundenfelder gebündelt unterhalb eines neuen Tabs darzustellen.
CLL Klasse Eine neue Channel Logic Layer Klasse übernimmt das UPDATE und REFRESH der Web Dynpro Views und ist Schnittstelle zum gepufferten Kontraktbeleg.
Eigene Langtexte Eigene Langtexte wurden erstellt um Kundenfelder mit unbestimmter Länge zu realisieren. Bei der Anzeige dieser Felder wird der Langtext in ein Ausgabefeld gemappt.

Diese Lösung konnte mit der Erweiterung von verschiedenen Komponenten erreicht werden. Durch die Verwendung von SAP Standardelementen, wie z. B. Langtexte, Tabellenerweiterungen, BAdI Implementierungen, war das Anlegen und Verwalten eigener Datenbanktabellen nicht notwendig.