Persistente Klassen für was ?

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

Re: Persistente Klassen für was ?

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
Wie gesagt, bei den sortierten Tabellen und dem Codingaufwand für eine einfache Selektion hab ich mir das dann gekniffen, zumal mein must have (Klassenattribute) nicht unterstützt wurde.

Übrigens verwendet auch die SAP lieber das BOPF (das ganze EWM ist voll davon) und ob persistente Klassen HANA-tauglich sind, daran zweifle ich auch mal spontan.

Für mich ist das Thema durch, nachdem sich das erste Projekt darin nicht realisieren ließ. Ich hab die DB-Zugriffe dann selbst gekapselt und gut ist.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

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


Re: Persistente Klassen für was ?

Beitrag von erp-bt (Specialist / 163 / 4 / 21 ) »
Persistente Klassen werden meines Wissens nicht weiter entwickelt. Das sieht man auch an der fehlenden Unterstützung in den Abap Development Tools für Eclipse. Momentan setzt man auf BOPF. Auf der letztjährigen TechEd zeigte man auch, wie man über Annotations in den CDS-Views CRUD-Services des BOPF-Frameworks automatisch generieren lassen kann. Allerdings war die einhellige Meinung nur dafür das BOPF-Framework einzusetzen, das ganze etwas übertrieben ist.

Mal sehen wann es wieder was Neues gibt. :D

Viele Grüße, Tapio
...entwickelnder Berater...beratender Entwickler

Re: Persistente Klassen für was ?

Beitrag von babap (Expert / 681 / 1 / 1 ) »
Hallo,
vielen Dank an Aparatschik, für den ausführlichen Einsatzbericht.
(ja ok, ab und zu braucht man noch ein bisschen drumrum ... aber das hält sich echt in Grenzen).

Die persistenten Klassen sind fertig, die benötigen keine Weiterentwicklung, sie funktionieren einfach und übernehmen das ganze Drumrum mit Puffern und Wegschreiben, Transaktion und Redo und so weiter.

Tatsächlich hat sich gezeigt, man muss eine Aufgabe von Anfang an mit den persistenten Klassen durchdenken und konsequent durchziehen.

Der ganz große Vorteil ist, dass man alles vorher testen kann, gekapselt ... funktioniert ... abgehakt, nie wieder drüber nachdenken ... der ideale OO-Ansatz.

(Wenn man schon die Daten weggeschrieben, hat mit herkömmlichen Mitteln, dann ist man aufgeschmissen, wenn man danach mit Persistenzen und ggf. noch Vererbungen das Zeug auslesen will ... Das geht nicht kurzer Zeit. Sorry, das ist mir erst ein paar Tage später klar geworden ... die eigene Schicht, quasi analog einzubauen war wohl die "herkömmliche" Lösung ... eigentlich hätte man das Gesamtkonzept neu erstellen und programmieren müssen ...)

In meinem neuen Projekt finden sich Reports aus den letzten Jahren ... nicht ein einziger nutzt die Persistenzen ... schade ... viel Zeit und Gedöns vertan mit herkömmlichen Dingen.

Wenn ich das richtig sehe, verwendet BOPF hinter den Kulissen so etwas ähnliches, wie die Persistenzen ... :-))

(Ich bin mir sicher, dass die Persistenten Klassen Hana-tauglich sind, denn sie machen nichts anderes als SELECT SINGLE * FROM ...)

Ich würde jeden Report, jede Anwendung, wieder damit schreiben, von Anfang an.

Grüße
babap

Re: Persistente Klassen für was ?

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
babap hat geschrieben:Tatsächlich hat sich gezeigt, man muss eine Aufgabe von Anfang an mit den persistenten Klassen durchdenken und konsequent durchziehen.
Das hat mir (trotz deiner Unterstützung) in meinem Projekt nicht geholfen - weil sie eben nicht fertig sind, wenn Klassenattribute nicht unterstützt werden. Und wenn man gesehen hat, wie sehr die SAP auf das BOPF setzt, braucht man über persistente Klassen eigentlich nicht mehr nachzudenken.

Nichts gegen Kapselung - aber kapseln kann man auch anders und mit deutlich weniger Overhead.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Persistente Klassen für was ?

Beitrag von babap (Expert / 681 / 1 / 1 ) »
Nun,
wie sehr SAP das BOPF benutzt und unterstützt hat nicht immer damit zu tun, ob es sinnvoll ist, oder bei aktuellen Problemen hilft.
(ich habe so viele drei oder vierbuchstabige Komponenten kommen und gehen sehen ...)

Das Problem der Persistenzen ist, dass sie niemand benutzt (oder benutzen will).

(ich möchte auf Deinen Anwendungsfall nicht näher eingehen ... das Ding funktioniert jetzt, und Du hast es wohlwollend versucht, mit Persistenzen einzusteigen ... aber ich wette, du hast sie bei keiner anderen Aufgabe von Grund auf und von Anfang an benutzt ...)

Ich habe mal auf einem Workshop versucht, die Persistenzen mit einem Beitrag zu "beleuchten". Leider haben die Verantwortlichen das Thema parallel zum Thema BOPF gesetzt ... trotz Warnung und Nachfrage sind sie dabei geblieben ... mit dem Outcome, dass alle Teilnehmer BOPF gebucht haben, was ich verstehen kann. Normalerweise hätte man das nacheinander anbieten müssen (schade ... und so ein Praxisbericht wie oben, der wäre echt eine Show!)

Nichts für Ungut.

Grüße
babap

Re: Persistente Klassen für was ?

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
babap hat geschrieben:(ich möchte auf Deinen Anwendungsfall nicht näher eingehen ... das Ding funktioniert jetzt, und Du hast es wohlwollend versucht, mit Persistenzen einzusteigen ... aber ich wette, du hast sie bei keiner anderen Aufgabe von Grund auf und von Anfang an benutzt ...)
Nein, es hat beim ersten Versuch (einer relativ einfachen Aufgabe) schon versagt, dann versuche ich es kein zweites Mal, sondern setze auf ein anderes Werkzeug.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Persistente Klassen für was ?

Beitrag von babap (Expert / 681 / 1 / 1 ) »
ralf.wenzel hat geschrieben:
babap hat geschrieben:(ich möchte auf Deinen Anwendungsfall nicht näher eingehen ... das Ding funktioniert jetzt, und Du hast es wohlwollend versucht, mit Persistenzen einzusteigen ... aber ich wette, du hast sie bei keiner anderen Aufgabe von Grund auf und von Anfang an benutzt ...)
Nein, es hat beim ersten Versuch (einer relativ einfachen Aufgabe) schon versagt, dann versuche ich es kein zweites Mal, sondern setze auf ein anderes Werkzeug.
Sorry ... es hat nicht versagt, sondern die Anfangsituation war schon etwas "verkorkst" ... Daten in einer INDX-Datei bereits abgelegt ... mit Selektionsfeld hinten in den komprimierten Daten ... dann die Anforderung das Zeug auszulesen ... mit genereller Klasse und Vererbung ... das ging so nicht, weil schon die Anfangsvoraussetzung (INDX-Datei von anderem Tool weggeschrieben mit herkömmlichen Mitteln) ein funktionieren unmöglich macht. Sorry, das ist mir erst ein paar Tage später klargeworden, du hattest es eilig, und da hattest Du schon Deinen Ansatz der kurzfristigen Weiterbearbeitung gewählt.

Grüße
babap

Re: Persistente Klassen für was ?

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
babap hat geschrieben:Sorry ... es hat nicht versagt, sondern die Anfangsituation war schon etwas "verkorkst" ... Daten in einer INDX-Datei bereits abgelegt ... mit Selektionsfeld hinten in den komprimierten Daten ... dann die Anforderung das Zeug auszulesen ... mit genereller Klasse und Vererbung ... das ging so nicht, weil schon die Anfangsvoraussetzung (INDX-Datei von anderem Tool weggeschrieben mit herkömmlichen Mitteln) ein funktionieren unmöglich macht. Sorry, das ist mir erst ein paar Tage später klargeworden, du hattest es eilig, und da hattest Du schon Deinen Ansatz der kurzfristigen Weiterbearbeitung gewählt.
Das waren alles keine Probleme - das Problem entstand, weil ich ein Klassenattribut brauchte. Das geht nicht. Damit wars raus. Das mit der Vererbung wäre echt geil gewesen, hätte auch geklappt.

Aber lassen wir dieses Spezialthema mal aus dem Forum raus. Es spricht nichts gegen das BOPF, zumal die SAP auch drauf setzt.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Persistente Klassen für was ?

Beitrag von babap (Expert / 681 / 1 / 1 ) »
ralf.wenzel hat geschrieben:
babap hat geschrieben:Sorry ... es hat nicht versagt, sondern die Anfangsituation war schon etwas "verkorkst" ... Daten in einer INDX-Datei bereits abgelegt ... mit Selektionsfeld hinten in den komprimierten Daten ... dann die Anforderung das Zeug auszulesen ... mit genereller Klasse und Vererbung ... das ging so nicht, weil schon die Anfangsvoraussetzung (INDX-Datei von anderem Tool weggeschrieben mit herkömmlichen Mitteln) ein funktionieren unmöglich macht. Sorry, das ist mir erst ein paar Tage später klargeworden, du hattest es eilig, und da hattest Du schon Deinen Ansatz der kurzfristigen Weiterbearbeitung gewählt.
Das waren alles keine Probleme - das Problem entstand, weil ich ein Klassenattribut brauchte. Das geht nicht. Damit wars raus. Das mit der Vererbung wäre echt geil gewesen, hätte auch geklappt.

Aber lassen wir dieses Spezialthema mal aus dem Forum raus. Es spricht nichts gegen das BOPF, zumal die SAP auch drauf setzt.
ja, ich denke, wir sollten das Spezialthema hier raus lassen.

Allerdings sollte man dann auch das Spezialthema nicht dazu bemühten, Probleme mit persistenten Klassen hochzuspielen oder herbeizureden. Im Otto-Normalfall funktioniert das ganz prächtig ... wenn man es nur probiert ... das mit dem Klassenatribut ist ja kein allgemeiner Fall und tritt eher selten auf.

Es spricht auch nichts dagegen, sich mit BOPF zu beschäftigen ... und es anzuwenden, wenn es dabei hilft, die Aufgabe zu lösen, die man hat.

Grüße
babap

Re: Persistente Klassen für was ?

Beitrag von ralf.wenzel (Top Expert / 3776 / 176 / 262 ) »
babap hat geschrieben:Allerdings sollte man dann auch das Spezialthema nicht dazu bemühten, Probleme mit persistenten Klassen hochzuspielen oder herbeizureden. Im Otto-Normalfall funktioniert das ganz prächtig ...
Eine Klassenart, die keine Klassenattribute zulässt, ist raus. Egal wofür.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Persistente Klassen für was ?

Beitrag von babap (Expert / 681 / 1 / 1 ) »
ralf.wenzel hat geschrieben:
babap hat geschrieben:Allerdings sollte man dann auch das Spezialthema nicht dazu bemühten, Probleme mit persistenten Klassen hochzuspielen oder herbeizureden. Im Otto-Normalfall funktioniert das ganz prächtig ...
Eine Klassenart, die keine Klassenattribute zulässt, ist raus. Egal wofür.


Ralf
wie gesagt, für deinen nachträglich zu bearbeitenden "Spezialfall" war es nichts (ich kenne die Details noch genau ... möchte das aber hier nicht diskutieren).

Ansonsten ist es ein objektorientierter Ersatz für Select, Perform on Commit, Zwischensicherung, Zwischen-Undo und so weiter ... alles Sachen, die man sonst aufwändig oder mit irgendwelchen schon mal benutzten Includes abwickelt ...

Lieber was neues machen ... und den "alten Kram" automatisch abwickeln lassen.
Grüße
babap

Vergleichbare Themen

0
Antw.
2456
Views
Persistente Klasse
von Sertl » 28.08.2007 23:14 • Verfasst in ABAP Objects®
2
Antw.
2652
Views
Persistente Klasse für Massendatenverarbeitung
von eschi78 » 18.02.2015 16:56 • Verfasst in ABAP Objects®
8
Antw.
8179
Views
Architektur von Abap-Klassen (Klassen Attribute)
von snooze » 12.04.2005 12:56 • Verfasst in ABAP Objects®
20
Antw.
973
Views
Globale Klassen oder Lokale Klassen
von ZF_SAPler » 29.11.2022 13:47 • Verfasst in ABAP® für Anfänger
5
Antw.
652
Views
TRX ME22n: Persistente Error-Message anzeigen lassen
von Elekam » 17.03.2021 09:37 • Verfasst in ABAP® für Anfänger

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.