Klasse existiert bereits und dann doch nicht

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Klasse existiert bereits und dann doch nicht

Beitrag von sapnup (ForumUser / 42 / 14 / 12 ) »
Hi,

mir wachsen hier gerade graue Haare. Ich habe eine Funktionsgruppe. In dieser Funktionsgruppe sind lokale Klassen definiert im Include LFG_NAMED01 - darunter eine Klasse lcl_MyException. Wenn ich versuche zu aktivieren heult der Compiler: "Es existiert bereits eine Klasse mit dem Namen "LCL_MYEXCEPTION"", aber ich habe keine Ahnung wo sie sein soll. Wenn ich im include LFG_NAMED01 die Klassendefinition auskommentiere heult der Compiler wieder auf: "Der Typ "LCL_MYEXCEPTION" ist unbekannt".

Bei anderen Klassen im Include ist es das selbe Spiel. Was läuft hier schief?
Zuletzt geändert von sapnup am 18.08.2017 13:00, insgesamt 1-mal geändert.

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


Re: Klasse existiert bereits und dann doch nicht

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Hast du das Include vielleicht mehrmals innerhalb der Funktionsgruppe eingebunden? Such mal nach allen INCLUDE-Anweisungen in Rahmenprogramm der Funktionsgruppe. Jede davon darf nur einmalig vorkommen.

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
sapnup

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: Klasse existiert bereits und dann doch nicht

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Aktivierst Du von dem "D01"-Include aus? Falls ja versuch's mal ausgehend vom TOP-Include oder aus einem FuBa heraus.

Folgende Benutzer bedankten sich beim Autor Haubi für den Beitrag:
sapnup

Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Re: Klasse existiert bereits und dann doch nicht

Beitrag von sapnup (ForumUser / 42 / 14 / 12 ) »
@ ADT
Ja, du hast mal wieder voll ins Schwarze getroffen. Im TOP-Include fand sich ganz unten nochmal der Befehl "INCLUDE LFG_NAMED01". Somit war dieser Befehl 2 Mal im TOP-Include, ein Mal ganz am Anfang und ein Mal ganz am Ende (eines langen TOP-Includes). Ich könnte aber schwören, dass diese Verfielfältigung nicht durch meine Hand passiert ist. Somit muss es ja der ABAP gewesen sein, der mir diesen zweiten INCLUDE Befehl reingeschrieben hat. Kann es sein und wenn ja, wann/warum passiert das?

.. und Danke!

@ Haubi,
Ich habe alle möglichen Aktiuvierungsvariationen durchprobiert. Letztendlich bliebt der Fehler dennoch.

Re: Klasse existiert bereits und dann doch nicht

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
sapnup hat geschrieben:Ich könnte aber schwören, dass diese Verfielfältigung nicht durch meine Hand passiert ist. Somit muss es ja der ABAP gewesen sein, der mir diesen zweiten INCLUDE Befehl reingeschrieben hat. Kann es sein und wenn ja, wann/warum passiert das?
Das kann (theoretisch) passieren. Die Includes von Funktionsgruppen haben eigene Namen die (halb-)automatisch vergeben werden. Wenn man nun ein neues Include händisch anlegt das dem Aufbau der FG-Includes entspricht könnte ich mir vorstellen, dass das die SE37 erkennt und automatisch einbindet. Bindet man das Include nun selbst ein hat man es plötzlich zweimal drinnen. Dieser Automatismus bindet diese Includes aber immer nur im Rahmenprogram der Funktionsgruppe ein und nirgendwo sonst.
Was also gegen dein Problem spricht, da dieses Include laut deiner Aussage im TOP-Include zweimal eingebunden wurde und nicht im Rahmeprogramm.

Wie bin ich da draufgekommen:
Ich wollte (irgendwann einmal) ein Include von Funktionsgruppe A nach Funktionsgruppe B "verschieben", sodass es in A nicht mehr vorkommt. Denkste. Im Endeffekt musste ich es in die Funktionsgruppe B kopieren.

Und bevor hier eine Diskussion ausbricht:
Nein, ich weis nicht mehr in welchem Release das war und nein ich weis auch nicht ob das heute noch passieren kann.

lg ADT
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

Seite 1 von 1

Vergleichbare Themen

14
Antw.
2726
Views
3
Antw.
3488
Views
Klasse existiert schon
von cut1 » 14.12.2006 12:38 • Verfasst in ABAP Objects®
1
Antw.
3241
Views
Prüfen, ob eine Klasse existiert
von hpb » 13.07.2006 13:11 • Verfasst in ABAP Objects®
7
Antw.
6153
Views
RC 8 Transport Klasse Methode existiert nicht
von c oco » 07.09.2018 09:54 • Verfasst in ABAP® für Anfänger
5
Antw.
3562
Views
Klasse soll Typdefinition von anderer Klasse nutzen
von debianfan » 24.05.2017 11:30 • Verfasst in ABAP Objects®

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Aktuelle Forenbeiträge

Dialog-Container mit Toolbar/Status
vor 9 Stunden von DeathAndPain gelöst 22 / 2975
Daten an Tabelle binden
vor 14 Stunden von Lukas Sanders 2 / 968
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 533

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

Dialog-Container mit Toolbar/Status
vor 9 Stunden von DeathAndPain gelöst 22 / 2975
Daten an Tabelle binden
vor 14 Stunden von Lukas Sanders 2 / 968
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 533

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2545
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9126