Unterschied zwischen Using und Changing

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

Unterschied zwischen Using und Changing

Beitrag von Spookykid (Specialist / 140 / 28 / 0 ) »
Hallo zusammen, kann mir jemand helfen den unterschied zwischen Using und Changing zu verstehen?

Code: Alles auswählen.

data v type i value 20 .

write  v .

perform abc using v .
write v .


form abc using p_v .
  p_v = 10 .
  write   p_v .
endform .        
output ist 20 10 10.

Code: Alles auswählen.

data v type i value 20 .

write  v .

perform abc changing v .
write v .


form abc changing p_v .
  p_v = 10 .
  write   p_v .
endform .        


output ist ebenfalls 20 10 10.

Vielen Dank im Voraus

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


Re: Unterschied zwischen Using und Changing

Beitrag von Spookykid (Specialist / 140 / 28 / 0 ) »
Referenzübergabe für USING-Parameter
Für die Formalparameter p1 p2 ... wird kein lokales Datenobjekt im Unterprogramm angelegt. Stattdessen wird beim Aufruf eine Referenz auf den angegebenen Aktualparameter übergeben. Eine Änderung des Formalparameters im Unterprogramm ändert auch den Wert des Aktualparameters.


Referenzübergabe für CHANGING-Parameter
Die Formalparameter p1 p2 ... werden exakt wie die mit USING für Referenzübergabe definierten behandelt.
lt. der SAp Hilfe ist es ja das gleiche. Unser indischer Entwickler und viele Internet Quellen schreiben jedoch Gegenteiliges. Ich bin etwas verwirrt, da in einigen unserer z Programme wild zwischen Using und Changing gewechselt wird.

Re: Unterschied zwischen Using und Changing

Beitrag von black_adept (Top Expert / 4093 / 128 / 940 ) »
Hallo spookykid,

bei FORM-Routinen verhalten sich USING und CHANGING (leider) völlig gleich. Du bekommst allerdings eine Warnung vom Syntaxchecker wenn er merkt dass du einen USING-Parameter ändern willst.
Aber da "using" und "changing" ja was anderes aussagen, überleg dir bei deinen Programmen ob du die Übergabeparameter ändern willst oder nicht. Falls ja - nimm CHANGING, falls nicht nimm USING.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
Spookykid

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

4
Antw.
2117
Views
[HELP] USING und CHANGING
von hmaxi96 » 10.11.2015 15:32 • Verfasst in ABAP® für Anfänger
3
Antw.
2509
Views
method changing
von kostonstyle » 05.08.2008 10:28 • Verfasst in ABAP® für Anfänger
11
Antw.
6071
Views
EXPORT/RETURNING vs. CHANGING
von ralf.wenzel » 27.02.2019 08:07 • Verfasst in ABAP Objects®
2
Antw.
1613
Views
Zusatz CHANGING bei Unterprogramm-Aufruf
von mpa » 16.01.2007 16:15 • Verfasst in ABAP® für Anfänger
1
Antw.
916
Views
Dynamische Typisierung durch Changing Parameter
von Coffeebean » 11.07.2021 12:31 • Verfasst in ABAP Objects®

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Trennen Strasse und Hausnummer
vor 16 Stunden von msfox 18 / 11143
Dialog-Container mit Toolbar/Status
vor 19 Stunden von black_adept gelöst 27 / 4270
IT0024 Qualifikationen CP-ID
vor 21 Stunden von ArjenR 1 / 186

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

Trennen Strasse und Hausnummer
vor 16 Stunden von msfox 18 / 11143
Dialog-Container mit Toolbar/Status
vor 19 Stunden von black_adept gelöst 27 / 4270
IT0024 Qualifikationen CP-ID
vor 21 Stunden von ArjenR 1 / 186

Unbeantwortete Forenbeiträge

IT0024 Qualifikationen CP-ID
vor 21 Stunden von ArjenR 1 / 186
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 3117
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9713