Persistente Klassen für was ?


Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).

Moderatoren: Jan, Steff

Re: Persistente Klassen für was ?

Beitragvon ralf.wenzel » 19.03.2017, 20:07

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 WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2432
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 103 mal
Ich bin: Freiberufler/in

Sponsor

Alte ABAP-Entwicklerweisheit: Weißt du weder aus noch ein, baust du einen BADI ein

Re: Persistente Klassen für was ?

Beitragvon erp-bt » 20.03.2017, 13:57

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
erp-bt
Specialist
 
Beiträge: 128
Registriert: 14.05.2008, 10:49
Dank erhalten: 11 mal

Re: Persistente Klassen für was ?

Beitragvon babap » 20.03.2017, 14:30

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
babap
Expert
 
Beiträge: 680
Registriert: 05.02.2004, 15:12
Dank erhalten: 1 mal

Re: Persistente Klassen für was ?

Beitragvon ralf.wenzel » 20.03.2017, 14:37

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 WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2432
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 103 mal
Ich bin: Freiberufler/in

Re: Persistente Klassen für was ?

Beitragvon babap » 20.03.2017, 15:07

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
babap
Expert
 
Beiträge: 680
Registriert: 05.02.2004, 15:12
Dank erhalten: 1 mal

Re: Persistente Klassen für was ?

Beitragvon ralf.wenzel » 20.03.2017, 15:38

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 WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2432
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 103 mal
Ich bin: Freiberufler/in

Re: Persistente Klassen für was ?

Beitragvon babap » 20.03.2017, 15:48

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
babap
Expert
 
Beiträge: 680
Registriert: 05.02.2004, 15:12
Dank erhalten: 1 mal

Re: Persistente Klassen für was ?

Beitragvon ralf.wenzel » 20.03.2017, 17:32

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 WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2432
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 103 mal
Ich bin: Freiberufler/in

Re: Persistente Klassen für was ?

Beitragvon babap » 20.03.2017, 17:49

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
babap
Expert
 
Beiträge: 680
Registriert: 05.02.2004, 15:12
Dank erhalten: 1 mal

Re: Persistente Klassen für was ?

Beitragvon ralf.wenzel » 20.03.2017, 18:56

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 WenzelHeuristika
SAP-Development • Datenschutzberatung
PublikationenUngarische NotationXing
ralf.wenzel
Top Expert
 
Beiträge: 2432
Registriert: 18.09.2004, 13:03
Wohnort: Hamburg
Dank erhalten: 103 mal
Ich bin: Freiberufler/in

Re: Persistente Klassen für was ?

Beitragvon babap » 22.03.2017, 14:38

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
babap
Expert
 
Beiträge: 680
Registriert: 05.02.2004, 15:12
Dank erhalten: 1 mal

Vorherige

Zurück zu ABAP Objects®

  Aktuelle Beiträge   
Ungelesene Beiträge
vor 11 Stunden von gtoXX 0 Antw.
Laden von Dateien
vor 13 Stunden von fr-g 2 Antw.
SAP Workflow
vor 16 Stunden von SAP_ENTWICKLER 0 Antw.
Tabellen mit Adobe forms
vor 16 Stunden von jocoder 1 Antw.
Inhalt einer internen Tabelle in ein Field Symbol übertragen
vor 13 Stunden von gtoXX 7 Antw.

  Ähnliche Beiträge beta
gelöst Architektur von Abap-Klassen (Klassen Attribute)
13.04.2005, 09:30 von Gast 8 Antw.
Persistente Klasse
28.08.2007, 22:14 von Sertl 0 Antw.
Persistente Klasse für Massendatenverarbeitung
19.02.2015, 10:53 von ralf.wenzel 2 Antw.
referenzbuch zu sap klassen?
04.04.2005, 16:00 von zonken 8 Antw.
Intialisierung von Klassen
30.05.2006, 10:22 von Flo 1 Antw.

 

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

Feedback ...?

Was können wir verbessern? Hinterlasse deine Kontaktdaten, wenn du eine direkte Antwort möchtest.

... Absenden!