Frage zur Modellierung in OO (am Beispiel SAP-CO)

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Frage zur Modellierung in OO (am Beispiel SAP-CO)

Beitrag von Ingo (ForumUser / 46 / 20 / 0 ) »
Moin moin,

ich hätte eine grundlegende Verständnisfrage zur Modellierung in OO oder hätte gerne etwas Input von Experten, da mein Wissen da recht überschaubar ist.

Im Controlling hatte ich mir eine Oberklasse (+Interface) für Organisationsebenen und Grundlegendes angelegt, was nach unten vererbt wird. Als Model bzw. Selektionsklassen habe ich darunter noch jeweils eine Klasse für Stamm- und Bewegungsdaten angelegt, über die alle Daten die benötigt werden über eine get-Methode selektiert werden können (optionale Parameter). Die einzelnen Objekte wie Kostenstelle, Leistungsart etc. haben darunter eigene Klassen (können auch seperat angesteuert werden), auf die diese Methode bei Bedarf zugreift.

Meine Frage wäre: Meint Ihr das macht so Sinn? Würdet Ihr die Bewegungsdaten in die Klasse des Stammsatzes (z.B. Kostenstelle) mit aufnehmen?

Für ein paar Ideen wäre ich dankbar.

VG,
Ingo
Save a tree - eat a beaver

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Frage zur Modellierung in OO (am Beispiel SAP-CO)

Beitrag von gtoXX (Specialist / 185 / 34 / 31 ) »
Die erste Frage um Dir Anregungen zu geben wäre : Welche Funktion soll dein Objekt haben ?

Grundsätzlich trennt man Datenbeschaffung( über DAOs ( Data Access Objekt ) von Businesslogik und Prozessen. Es klingt ein wenig wie ein DTO( Datatransferobjekt ) das du da aufbaust. Ist dem so, sind Subentitäten wiederum eigene DTOs, einzelne Datensätze wiederum können darin als Objekte oder auch als Tabellen behandelt werden. Zur Erzeugung baut man sich dann einen Service oder eine Factory, die das entsprechende DTO dann aufbaut. Idealerweise Referenzieren die DTOs im Haupt-DTO auf eine eigene abstrakte DTO - Klasse je Entität, so sind sie bei Bedarf austauschbar. Es gibt mehrere Wege zu modellieren. Ohne zu wissen, was Du eigentlich tun willst, ist es schwer zu sagen, was sinnvoll ist.

Ob und welche Daten benötigt werden, ist immer prozessabhängig. Schnell liest man sich so Sachen von der DB zusammen, die man für den Prozess niemals braucht.

Ich lese da viel von Vererbung. Aber nur, weil es eine scheinbare Hierarchie gibt, sollte man nicht Objekte mit etwas überfrachten, sondern z.b schauen, ob nicht die Hierarchie eigentlich ein Attribut ist, was wiederum selbst ja ein Objekt sein kann.

Man muss sich also immer fragen : Was soll mein Objekt können, was muss es können, und was braucht es dafür.

Z.b. dein Objekt der Kostenstelle kann durchaus über eine Liste von Bewegungsdaten verfügen. Und zum Beispiel Interator-Funktionen wie HAS_NEXT, GET_NEXT etc. diese zur Verfügung stellen. Die Bewegungsdaten selbst, können dabei auch wieder Objekte sein.

Der Stammdatenteil der Kostenstelle sind dabei wiederum Attribute am Kostenstellen objekt, die über Setter und Getter bereitgestellt werden.

Folgende Benutzer bedankten sich beim Autor gtoXX für den Beitrag:
Ingo

"Code lügt nicht ^^"

Re: Frage zur Modellierung in OO (am Beispiel SAP-CO)

Beitrag von Ingo (ForumUser / 46 / 20 / 0 ) »
Hi,

danke für Deine Rückmeldung und sorry wegen meiner späten Antwort. Und ja, es ist zunächst als DTO für Reporting gedacht. Es sollen aber später auch Funktionen wie Anlegen und Ändern hinzukommen.
Z.b. dein Objekt der Kostenstelle kann durchaus über eine Liste von Bewegungsdaten verfügen. Und zum Beispiel Interator-Funktionen wie HAS_NEXT, GET_NEXT etc. diese zur Verfügung stellen. Die Bewegungsdaten selbst, können dabei auch wieder Objekte sein.
Im Prinzip habe ich es jetzt genau so umgesetzt.

Wegen der Vererbung: Das klang nach mehr, als es wirklich ist. Lediglich Orgebenen und Allgemeines habe ich vererbt. Bei den Methoden hätte ich es als "schick" empfunden, aber da Überladung in ABAP nicht möglich ist, hat es für mich keinen Sinn gemacht.

Kurz und knapp: Danke für Deine Hilfe, bin dadurch vorangekommen!

Viele Grüße
Save a tree - eat a beaver

Seite 1 von 1

Vergleichbare Themen

26
Antw.
9674
Views
ALV Beispiel
von kirmuh » 10.04.2008 10:41 • Verfasst in ABAP Objects®
5
Antw.
5006
Views
Beispiel für DropdownListBox needed
von Gast » 18.05.2004 14:17 • Verfasst in Web-Dynpro, BSP + BHTML
5
Antw.
3433
Views
Idoc - einfaches Beispiel
von Gast » 14.03.2005 20:20 • Verfasst in Basis
2
Antw.
3786
Views
BAPI_ACC_DOCUMENT_POST FB60 Beispiel
von HH_ABAP » 26.09.2018 11:11 • Verfasst in ABAP® für Anfänger
2
Antw.
1479
Views
SapScript Beispiel zu QM_QCERT_01
von SKAMS » 19.07.2005 15:14 • Verfasst in ABAP® Core

Über diesen Beitrag



Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Interne Tabelle
vor 5 Tagen von black_adept 2 / 133
MaLo-Checker in ABAP
vor einer Woche von A6272 6 / 254

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 64
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 107
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 140