SelectOption interne Tabelle eine Klassenmethode übergeben

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

SelectOption interne Tabelle eine Klassenmethode übergeben

Beitrag von em.tie (ForumUser / 3 / 0 / 0 ) »
Hallo Allerseits,

ich hätte da mal eine Frage. Und zwar möchte ich die im SelectionScreen getätigten Select Options gerne an eine Methode einer Klasse übergeben, finde aber nicht den richtigen Type. Konkret ist das folgendes:

Code: Alles auswählen.

CLASS cl_test DEFINITION
METHODS: test1 IMPORTING it_test TYPE ????.
ENDCLASS.

CLASS cl_test IMPLEMENTATION
  METHOD test1.
    SELECT * FROM noek INTO it_noek WHERE noek-kostl IN it_test.
  ENDMETHOD.

DATA:
  obj_ref TYPE REF TO cl_test.

CREATE OBJECT obj_ref.

START-OF-SELECTION
  SELECT-OPTION so_kost FOR noek-kostl.

CALL METHOD obj_ref->test1
  EXPORTING so_kost.
Wie übergebe ich nun so_kost an methode test1??? Danke für Eure Hilfe...

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


Beitrag von DeathGuardian (Expert / 759 / 0 / 3 ) »
Eine Selectoption ist immer ein RANGE.

Also am besten fürs Typisieren einen Dummy-Range anlegen vom Typ deiner Selectoption, dann müsste es gehen.

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo zusammen,

solange nicht explizit auf die Felder der S/O zugegriffen werden muss, reicht die Typisierung als 'TYPE (STANDARD) TABLE':

Code: Alles auswählen.

SELECT-OPTIONS:
  pr_kostl TYPE kostl.

CLASS lcl_test DEFINITION
  METHODS: 
    read_noek IMPORTING ir_kostl TYPE STANDARD TABLE.
ENDCLASS.

CLASS cl_test IMPLEMENTATION
  METHOD read_noek.
    SELECT * FROM noek INTO it_noek WHERE noek-kostl IN it_kostl.
  ENDMETHOD.
ENDCLASS.

CALL METHOD lo_test->read_noek( pr_kostl ).
Ansonsten ist m.W. leider folgende Konstruktion notwendig:

Code: Alles auswählen.

SELECT-OPTIONS:
  pr_kostl TYPE kostl.

TYPES:
  tr_kostl TYPE RANGE OF kostl.

CLASS lcl_test DEFINITION
  METHODS: 
    read_noek IMPORTING ir_kostl TYPE tr_kostl.
ENDCLASS.

CLASS cl_test IMPLEMENTATION
  METHOD read_noek.
    SELECT * FROM noek INTO it_noek WHERE noek-kostl IN it_kostl.
  ENDMETHOD.
ENDCLASS.

DATA: 
  gr_kostl TYPE tr_kostl.

* Mit Feldsymbol hat es bei mir nicht geklappt... :-(
gr_kostl[] = pr_kostl[].
CALL METHOD lo_test->read_noek( gr_kostl ).
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Seite 1 von 1

Vergleichbare Themen

5
Antw.
3126
Views
Inhalt interne Tabelle an andere interne Tabelle übergeben
von L0w-RiDer » 30.01.2020 16:28 • Verfasst in ABAP® für Anfänger
3
Antw.
7006
Views
interne Tabelle an Form übergeben
von Andrzej » 17.05.2017 14:14 • Verfasst in ABAP® für Anfänger
1
Antw.
4257
Views
interne Tabelle als Parameter zu übergeben?
von oo » 25.05.2006 10:46 • Verfasst in Web-Dynpro, BSP + BHTML
16
Antw.
6081
Views
interne tabelle per rfc übergeben und annehmen
von theuser » 12.06.2014 14:31 • Verfasst in ABAP® für Anfänger
1
Antw.
4320
Views
Objekte an interne Tabelle übergeben
von philfiat » 07.07.2009 12:17 • Verfasst in ABAP® Core

Über diesen Beitrag


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

Aktuelle Forenbeiträge

IBAN und BUT0BK
vor 4 Tagen von GastX gelöst 4 / 4004
Gewährleistungsende im Equipment
vor 5 Tagen von Yourairld gelöst 8 / 26250
IF mit AND und OR
vor 3 Wochen von GastX 6 / 14474
Meine Inbox
vor 3 Wochen von Rabea1103 1 / 11916

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

IBAN und BUT0BK
vor 4 Tagen von GastX gelöst 4 / 4004
Gewährleistungsende im Equipment
vor 5 Tagen von Yourairld gelöst 8 / 26250
IF mit AND und OR
vor 3 Wochen von GastX 6 / 14474
Meine Inbox
vor 3 Wochen von Rabea1103 1 / 11916