ABAPCALL_METHOD_PARAMETERS - CALL METHOD PARAMETERS

PERFORM Short Reference   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

CALL METHOD - parameter_list

Kurzreferenz



Syntax

...    [EXPORTING  p1 = a1 p2 = a2 ...]
    { {[IMPORTING  p1 = a1 p2 = a2 ...]
       [CHANGING   p1 = a1 p2 = a2 ...]}
    |  [RECEIVING  r  = a  ] }
       [EXCEPTIONS [exc1 = n1 exc2 = n2 ...]
                  [OTHERS = n_others] ].

Zusätze:

1. ... EXPORTING p1 = a1 p2 = a2 ...

2. ... IMPORTING p1 = a1 p2 = a2 ...

3. ... CHANGING p1 = a1 p2 = a2 ...

4. ... RECEIVING r =a

5. ... EXCEPTIONS exc1 = n1 exc2 = n2 ...

6. ... OTHERS = n_others

Wirkung

Bis auf den Zusatz EXCEPTIONS ordnen diese Zusätze den Formalparametern p1 p2 ...bzw. r der Parameterschnittstelle der Methode meth Aktualparameter a1 a2 ... zu. Als Aktualparameter können alle Datenobjekte angegeben werden, deren Datentyp nach den Regeln derÜberprüfung der Typisierung zurTypisierung des entsprechenden Formalparameters passt. AnEingabeparameter können auchFunktionen und Ausdrücke als Aktualparameter übergeben werden (seit Release 7.1).

Mit Ausnahme des Rückgabewerts r beifunktionalenMethoden und der Angabe von Rechenausdrücken bei Eingabeparametern übernimmt jederFormalparameter zum Zeitpunkt des Aufrufs sämtliche Eigenschaften des zugeordneten Aktualparameters.Der Zusatz EXCEPTIONS ermöglicht die Behandlung nicht-klassenbasierter Ausnahmen. Die Reihenfolge der Zusätze ist vorgeschrieben.

Zusatz 1

... EXPORTING p1 = a1 p2 = a2 ...

Wirkung

Wenn für die aufgerufene Methode in der Anweisung METHODSbzw. CLASS-METHODShinter IMPORTING nicht-optionale Eingabeparameter definiert sind, müssen diesen mit EXPORTINGAktualparameter zugeordnet werden. Optionalen Eingabeparametern können Aktualparameter zugeordnetwerden. Zum Zeitpunkt des Aufrufs wird je nach Art der Übergabeart entweder eine Referenz aufeinen Aktualparameter übergeben oder der Inhalt eines Aktualparameters dem jeweiligen Formalparameter zugewiesen.

Seit Release 7.1 können für EingabeparameterFunktionen und Ausdrücke als Aktualparameter angegeben werden. Dabei gelten spezielle Regeln.

Hinweis

Die Angabe von Rechenausdrücken als Aktualparameter schließt insbesondere die Angabe von funktionalen Methoden mit ein.

Zusatz 2

... IMPORTING p1 = a1 p2 = a2 ...

Wirkung

Wenn für die aufgerufene Methode in der Anweisung METHODSbzw. CLASS-METHODS hinter EXPORTING Ausgabeparameter definiert sind, können diesen mit IMPORTING Aktualparameter zugeordnet werden. BeiWertübergabewird der Inhalt eines Formalparameters nur bei fehlerfreier Beendigung der Methode dem jeweiligen Aktualparameter zugewiesen.

Zusatz 3

... CHANGING p1 = a1 p2 = a2 ...

Wirkung

Wenn für die aufgerufene Methode in der Anweisung METHODSbzw. CLASS-METHODS hinter CHANGING nicht-optionale Ein-/Ausgabeparameter definiert sind, müssen diesen mitCHANGING Aktualparameter zugeordnet werden. Optionalen Ein-/Ausgabeparametern können Aktualparameterzugeordnet werden. Zum Zeitpunkt des Aufrufs wird je nach Art der Übergabeart entweder eine Referenz auf einen Aktualparameter übergeben oder der Inhalt eines Aktualparameters dem jeweiligen Formalparameter zugewiesen. BeiWertübergabewird der Inhalt eines Formalparameters nur bei fehlerfreier Beendigung der Methode dem jeweiligen Aktualparameter zugewiesen.

Zusatz 4

... RECEIVING r = a

Wirkung

Wenn für die aufgerufene Methode in der Anweisung METHODSbzw. CLASS-METHODShinter RETURNING ein Rückgabewert definiert ist, kann diesem mit RECEIVING ein Aktualparameter zugeordnet werden. Der Datentyp des Aktualparameters muss nicht den allgemeinen Regeln derÜberprüfung der Typisierung folgen, sondern es genügt, wenn der Rückgabewert nach denKonvertierungsregeln in den Aktualparameter konvertierbar ist.

Bei fehlerfreier Beendigung der Methode wird der Inhalt des Formalparameters dem Aktualparameter zugewiesen, wobei der Inhalt bei Bedarf konvertiert wird.

Hinweis

Eine funktionale Methode mit einem Rückgabewert wird üblicherweise nicht mit CALL METHOD, sondern anOperandenpositionen aufgerufen.

Zusatz 5

... EXCEPTIONS exc1 = n1 exc2 = n2 ...

Zusatz 6

... OTHERS = n_others

Wirkung

Mit EXCEPTIONS können nicht-klassenbasierten Ausnahmen exc1 exc2 ... Rückgabewerte zugeordnet werden. JederAusnahme exc1 exc2 ..., welche der Aufrufer behandeln möchte, muss ein Zahlenliteral n1n2 ... zugeordnet werden. Es können alle Zahlen zwischen 0 und 65535 angegeben werden. Außerhalb dieses Bereichs ist das Verhalten undefiniert.

Durch die Angabe von OTHERS als letzten Eintrag hinter EXCEPTIONS kann allen Ausnahmen,die nicht explizit in der Liste exc1 exc2... aufgeführt sind, ein gemeinsamer Rückgabewertdurch die Zuordnung eines Zahlenliterals n_others zugeordnet werden. Verschiedenen Ausnahmen (inklusive OTHERS) kann der gleiche Rückgabewert zugeordnet werden.

Wird eine Ausnahme exc1 exc2 ..., der ein Rückgabewert zugeordnet ist, mit der AnweisungRAISE oder MESSAGERAISING in der Methode ausgelöst, wird die Methode sofort beendet, per Wert übergebeneAusgabeparameter bzw. der Rückgabewert werden nicht versorgt und die der Ausnahme zugeordneteZahl n1 n2 ... steht in sy-subrc zur Auswertung zur Verfügung. Wenn keine Ausnahme auftritt, setzt ein Methodenaufruf sy-subrc auf 0.

Falls der Aufrufer einer durch RAISE ausgelösten Ausnahme keinen Rückgabewert zugewiesenhat, wird das Programm mit einem Laufzeitfehler abgebrochen. Falls der Aufrufer einer durch MESSAGE RAISING ausgelösten Ausnahme keinen Rückgabewert zugewiesen hat, wird dieNachricht gesendet und das System fährt entsprechend dem Nachrichtentyp fort.

Bei Methoden, bei denen mit RAISING klassenbasierte Ausnahmen in der Schnittstelle deklariert sind, darf der Zusatz EXCEPTIONS beim Aufruf nicht angegeben werden.

Hinweis

Die Zuordnung des Wertes 0 zu einer Ausnahme bedeutet, dass der Aufrufer diese Ausnahme ignorieren will.Wenn die Ausnahme in der Methode auftritt kommt es zwar nicht zu einem Laufzeitfehler, die Ausnahme kann aber auch nicht behandelt werden.


Fill RESBD Structure from EBP Component Structure   ROGBILLS - Synchronize billing plans  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 10883 Date: 20120526 Time: 232915     triton ( 434 ms )