Klassen generieren - Merkwürdigkeit

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
3 Beiträge • Seite 1 von 1
3 Beiträge Seite 1 von 1

Klassen generieren - Merkwürdigkeit

Beitrag von ralf.wenzel (Top Expert / 4011 / 209 / 283 ) »
Moin,

ich habe einen Klassengenerator geschrieben, der syntaktisch korrekte Klassen generiert. Merkwürdig: Die geerbten und redefinierten Methoden erscheinen "unten" bei den Methoden für die generierte Klasse selbst UND zusätzlich oben beim Verweis auf die Superklasse. Ich habe also dieselbe Methode in blau (weil geerbt) und nochmal in schwarz (weil redefiniert).

Im SE80-Baum dasselbe Bild: Die Methoden scheinen im Node "Geerbte Methoden" als auch weiter unten, wo die Methoden der generierten Klassen stehen. Beide Male als PROTECTED.

Im quelltextbasierten Editor sind die Methoden korrekt mit "redefinition" deklariert (und erscheinen auch kein zweites Mal). In SEOCOMPODF stehen sie auch korrekt als REDEFINITION aufgeführt.

Auszüge posten darf ich hier nicht - aber ich frag einfach mal: Hat sowas schonmal wer beobachtet?


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: Klassen generieren - Merkwürdigkeit

Beitrag von a-dead-trousers (Top Expert / 4486 / 231 / 1206 ) »
Nicht direkt, aber ich verwende für das Generieren die ZSAPLINK-Klassen.
Mittels XML-Transformation ausgehend von einem Template erzeuge ich mir die Klassen in Form eines Nuggets und lass mir dann dieses über ZSAPLINK ins System einspielen.
Wenn man sich die Interna von ZSAPLINK_CLASS bzw. ZSAPLINK_OO anschaut, sieht man schön, dass hier an einigen Stellen die Parameter für die Funktionsaufrufe explizit gelöscht oder nicht übergeben werden. Möglich, dass du da was herauslesen kannst, was bei dir "falsch" gemacht wird.

P.S.: Was bei mir mit den Nuggets z.B. nicht funktioniert ist folgendes:
Wenn ich das Template so ändere, dass sich ein Alias in der Zielklasse ändert, dann kann eine bestehende Klasse nicht korrekt erneut generiert werden, weil der Alias dann plötzlich doppelt zugeordnet ist. Im Coding von ZSAPLINK hab ich auch keine Möglichkeit gefunden wie man das beheben könnte. Es scheint eine Schwachstelle der SE80 Bausteine zu sein, dass bei einer Änderung einer Klasse die Aliase vor der Anpassung nicht gelöscht werden und somit Aliase doppelt vorkommen können. Vom Nugget aus kann ich ja nur den "Endzustand" der Klasse beschreiben und nicht mitgeben, dass einzelne nicht mehr benötigte Teilobjekte gelöscht werden sollen.
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Klassen generieren - Merkwürdigkeit

Beitrag von ralf.wenzel (Top Expert / 4011 / 209 / 283 ) »
Moin,

liegt wohl am Release, an einem anderen (neueren) konnte das Problem nicht nachvollzogen werden.


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

Seite 1 von 1

Über diesen Beitrag


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

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.

Vergleichbare Themen

Globale Klassen oder Lokale Klassen
von ZF_SAPler » 29.11.2022 13:47
Lokale Klassen in globalen Klassen
von ralf.wenzel » 20.04.2020 22:55
generieren Steuerzeilen
von centauro_ernst » 05.08.2009 16:50
Include generieren
von Spreeatom » 20.08.2007 16:09
Generieren von Testdaten
von Hutch3 » 01.08.2010 17:28