Problem mit Klassen

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

Problem mit Klassen

Beitrag von SkyHobbit (Specialist / 170 / 0 / 1 ) »
Hallo,

ich arbeite an der Erweiterung eines SAP-Reportes, der zur Zeit mandantenabhängig arbeitet. Ich bin nun dabei, diesen mandantenunabhängig zu machen, da ich auf acht Mandanten zugreifen muß und ich beim Abgleichen von externen Protokollen vorher nicht weiß, zu welchem Mandanten das Protokoll gehört. Nach Murphy ist es ja immer der, den man als letztes aufruft.
Bisher hat auch alles wunderbar geklappt. Ich kann die Daten lesen und auch darstellen. Problematisch wird nun aber das Setzen eines Status. Hier stosse ich an meine Grenzen. Ich habe unter anderem die Klasse CL_HR_B2A_DOCUMENT kopiert. Eigentlich kein Problem. Nur hat diese einige Kindklassen, die in Tabellen z.B. t50ba eingetragen ist. Da hört natürlich alles auf. Ich kann ja nicht irgendwelche Tabellen verbiegen, die für den normalen Betrieb notwendig sind.

Das Problem ergibt sich in einer Methode, wenn aus einer anderen kopierten Klasse (ZCL_HR_B2A_TRANSFER) heraus ein Objekt mit der Referenz zur Klasse ZCL_HR_B2A_DOCUMENT mit der nachfolgenden Anweisung angelegt wird:

Code: Alles auswählen.

*   ... create instance 
  CREATE OBJECT b2adoc TYPE (l_t50ba-badoc). 
  IF sy-subrc <> 0. 
    CONCATENATE l_t50ba-badoc text-002 INTO l_text SEPARATED BY space. 
    CALL METHOD cl_hr_b2a_admin=>prot_write 
           EXPORTING i_glbid = i_glbid 
                     i_level = 2 
                     i_mtype = 'E' 
                     i_color = 6 
                     i_text  = l_text. 
    RAISE no_object. 
  ELSE. 
    e_b2adocref = b2adoc. 
  ENDIF. 
Der TYPE aus der T50ba ist dann z.B. CL_HR_B2A_DE_ST_LSTA

Er meckert jetzt natürlich, da die Typen nicht mitneinander kompatibel sind. Der Weg über kopierte Klassen funktioniert also nicht. Nun meine Fragen:

- Kann man da über Vererbung etwas regeln?
- Oder kann man dem System bei Aufruf von Methoden, die auf mandantenabhängige Daten zugreifen, einen anderen Mandanten vorgauckeln als der angemeldete?

Gruß.
SkyHobbit

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


castingproblem??

Beitrag von Azreal (Specialist / 182 / 1 / 0 ) »
Mh... hat etwas gedauert bis ich dahintergestiegen bin was du meinst.

Von welchem Typen ist denn b2adoc und e_b2adocref? bzw. welche typen sind nicht miteinander kompatibel?
wenn beides vom typen "type ref to object" ist, sollte der create funktionieren.

gruß

Beitrag von SkyHobbit (Specialist / 170 / 0 / 1 ) »
Hallo Azreal,

ich konnte mein Problem bereits über das yaAbb-Forum lösen.
Siehe dazu den Link: http://yaabb.de/viewtopic.php?p=708#708


Gruß Skyhobbit.

Beitrag von Azreal (Specialist / 182 / 1 / 0 ) »
hab ich schon fast vermutet - das Z vor den Standardklassennamen zu hängen ist im grunde ne nette lösung.

schade, daß ich zu spät dranbin.

gruß

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1813
Views
8
Antw.
9047
Views
Architektur von Abap-Klassen (Klassen Attribute)
von snooze » 12.04.2005 12:56 • Verfasst in ABAP Objects®
20
Antw.
2656
Views
Globale Klassen oder Lokale Klassen
von ZF_SAPler » 29.11.2022 13:47 • Verfasst in ABAP® für Anfänger
9
Antw.
5432
Views
Lokale Klassen in globalen Klassen
von ralf.wenzel » 20.04.2020 22:55 • Verfasst in ABAP Objects®
1
Antw.
2055
Views
SAP HR Klassen
von Gast » 24.01.2005 13:41 • Verfasst in Human Resources

Ü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.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 13 Stunden von Bright4.5 1 / 268
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1906
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8509