peinlich ... Parameterübergabe/Unterprogramm

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

peinlich ... Parameterübergabe/Unterprogramm

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Hallo zusammen.

Also folgendes,
Mit einem Select wird eine int.Tabelle gefüllt.

diese int. Tabelle soll nun einem Unterprogramm mitgegeben werden. In dem UP wird dann über die int Tabelle geloopt und eben was gemacht mit den Daten.

Ich hab das nur so lösen können, dass ich im UP eine weitere int.Tabelle angelegt habe + Arbeitsbereich und den übergebenen Parameter auf die lokale int. tabelle kopiert habe.
Is das wirklich der normale weg?
Kann man nicht direkt mit der übergebenen tabelle arbeiten?
(achja, bin aufm unicode system)

Gruß
Markus

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


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

wie sieht denn die Schnittstelle aus? Übergibst Du die Tabelle an einen USING Parameter? Wenn ja, dann definier den Parameter statt dessen als CHANGING, da Du ja die Tabelle ändern willst.

PS:
historisch bedingt, funktionierte die Modifikation von USING-Parametern in früheren Releases.
Gruß
Ereglam


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

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
So is es definiert.
Wenn ich im Unterprogramm den Typ beim changing angeb, bekomm ich immer ein fehler, also in der Art:
FORM correct_date CHANGING r_gt_data LIKE zpdata.
Habs aber in zig möglichkeiten versucht. Kam eben immr Typkonflikt von r_gt_data zu gt_data. (formal parameter und aktual parameter nicht kompatibel)

Im Hauptprog:
DATA:
gt_data TYPE TABLE OF zpdata,
gs_data LIKE LINE OF gt_data,

PERFORM correct_date CHANGING gt_data.


das unterprogramm:
FORM correct_date CHANGING r_gt_data.

DATA:
lt_data TYPE TABLE OF zpdata,
ls_data LIKE LINE OF lt_data,

lt_data = r_gt_data.

LOOP AT lt_data INTO ls_data.
.
.
.
endloop.


Gruß
Markus

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

Dir fehlte lediglich ein Tabellentyp, den Du zum Typisieren des Schnittstellenparameters benutzen musst.

Code: Alles auswählen.

TYPES:
  tt_data TYPE STANDARD TABLE OF zpdata.

DATA:
  gt_data TYPE tt_data,
  gs_data LIKE LINE OF gt_data,

PERFORM correct_date CHANGING gt_data.


* das unterprogramm:
FORM correct_date CHANGING ct_data TYPE tt_data.

DATA:
  ls_data LIKE LINE OF lt_data,

LOOP AT ct_data INTO ls_data.
.
.
.
ENDLOOP.
ENDFORM. 
PS:
lass Dir nicht erzählen, Du könntest die Tabelle über den Schnittstellentyp TABLES übergeben. Ist zwar richtig, wird aber von SAP nicht mehr empfohlen...
Gruß
Ereglam


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

Beitrag von MarkusW (Specialist / 406 / 5 / 0 ) »
Danke ereglam.
An Tabellentyp hatte ich gar nicht gedacht.

Gruß
Markus

Seite 1 von 1

Vergleichbare Themen

3
Antw.
1673
Views
Unterprogramm
von Gast » 20.09.2005 09:42 • Verfasst in ABAP® für Anfänger
1
Antw.
2645
Views
Funktionsbaustein, Unterprogramm
von tech » 28.12.2007 10:25 • Verfasst in ABAP® für Anfänger
2
Antw.
903
Views
Funktionsbaustein mit Unterprogramm
von tekko » 17.12.2019 13:24 • Verfasst in ABAP® für Anfänger
2
Antw.
2056
Views
Parameterübergabe
von Gregor » 28.04.2006 11:21 • Verfasst in ABAP Objects®
5
Antw.
5614
Views
Selektionstabelle an Unterprogramm übergeben
von kbit100 » 30.03.2010 09:54 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

IF mit AND und OR
vor einer Woche von GastX 6 / 8910
Meine Inbox
vor einer Woche von Rabea1103 1 / 6667
PCL2 Cluster auslesen
vor einer Woche von DeathAndPain 2 / 7815
FUBA 'HR_INFOTYPES_OPERATION'
vor einer Woche von Bright4.5 3 / 13303

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

IF mit AND und OR
vor einer Woche von GastX 6 / 8910
Meine Inbox
vor einer Woche von Rabea1103 1 / 6667
PCL2 Cluster auslesen
vor einer Woche von DeathAndPain 2 / 7815
FUBA 'HR_INFOTYPES_OPERATION'
vor einer Woche von Bright4.5 3 / 13303