Ansicht
Dokumentation

ABAPMODIFY_ITAB_SINGLE - MODIFY ITAB SINGLE

ABAPMODIFY_ITAB_SINGLE - MODIFY ITAB SINGLE

TXBHW - Original Tax Base Amount in Local Currency   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

MODIFY itab, itab_line

Kurzreferenz



... ${ table_key  $| index $} FROM wa
                          $[TRANSPORTING comp1 comp2 ...$]
$[result$].

Zusatz:

... TRANSPORTING comp1 comp2 ...

Wirkung

In dieser Variante weist die Anweisung MODIFY einer durch einen Tabellenschlüssel in table_key oder die Angabe einer Zeilennummer in index spezifizierten Zeile den Inhalt des Arbeitsbereichs wa zu. Bei wa handelt es sich um eine allgemeine Ausdrucksposition.

Mit TRANSPORTING können die zu modifizierenden Komponenten comp eingeschränkt werden. Mit result kann beim Ändern einer einzelnen Zeile eine Referenz in Form eines Feldsymbols oder einer Datenreferenz auf die geänderte Zeile gesetzt werden.

Der Arbeitsbereich wa muss beim Zugriff über Tabellenschlüssel, beim Indexzugriff auf sortierte Tabellen und bei Verwendung des Zusatzes TRANSPORTING kompatibel zum Zeilentyp der internen Tabelle sein. Nur beim Einfügen über den primären Tabellenindex in Standardtabellen ohne den Zusatz TRANSPORTING kann wa inkompatibel zum Zeilentyp der internen Tabelle sein und wird gegebenenfalls nach den Konvertierungsregeln in den Zeilentyp konvertiert. Wenn dabei ein Konvertierungsfehler auftritt, ist die Ausnahme nicht über CX_SY_CONVERSION_ERROR behandelbar, sondern es kommt direkt zum zugehörigen Laufzeitfehler. Wenn für wa ein arithmetischer Ausdruck angegeben ist, geht der Zeilentyp der internen Tabelle in die Bestimmung des Rechentyps ein.

Hinweise

  • Beim Ändern einer Tabellenzeile ist der Schreibschutz von Tabellenschlüsseln zu beachten. Während das Überschreiben von geschützten Schlüsselfeldern des primären Tabellenschlüssels erst zur Laufzeit überprüft wird, führt dies bei einem sekundären Tabellenschlüssel immer zu einem Syntaxfehler. Wenn eine Zeile geändert wird, deren sekundärer Tabellenschlüssel schreibgeschützt ist, kann FROM wa daher nur zusammen mit TRANSPORTING angegeben werden und hinter TRANSPORTING dürfen keine Schlüsselfelder des Sekundärschlüssels angegeben sein.
  • Die Angabe eines Rechenausdrucks für wa ist in der Regel nur für elementare Zeilentypen sinnvoll.
  • Zu einer Anweisung MODIFY itab FROM wa gibt es eine syntaktisch gleiche Anweisung MODIFY dbtab FROM wa. Wenn eine interne Tabelle den gleichen Namen wie eine Datenbanktabelle hat, greift eine solche Anweisung auf die interne Tabelle zu.
  • Außerhalb von Klassen gibt es noch eine obsolete Kurzform, bei der die Angabe FROM wa weggelassen werden kann, falls die interne Tabelle eine gleichnamige Kopfzeile itab hat. Die Anweisung verwendet dann implizit die Kopfzeile als Arbeitsbereich.

Zusatz

... TRANSPORTING comp1 comp2 ...

Wirkung

Der Zusatz TRANSPORTING bewirkt, dass nur die angegebenen Komponenten comp1, comp2, ... des Arbeitsbereichs den entsprechenden Komponenten der zu ändernden Zeile(n) zugewiesen werden. Bei sortierten Tabellen und Hash-Tabellen dürfen hinter TRANSPORTING keine Komponenten des primären Tabellenschlüssels angegeben werden.

Die Komponentenangaben comp1, comp2, ... erfolgen nach den Regeln im Abschnitt Angabe von Komponenten, mit der Einschränkung, dass hinter TRANSPORTING keine Attribute von Klassen über den Objektkomponenten-Selektor angesprochen werden können.

Beispiel

Die Position von Buchstaben aus der ersten Spalte einer internen Tabelle wird im Systemfeld sy-abcde festgestellt und die zweite Spalte bekommt diesen Wert zugewiesen. Der Zugriff erfolgt über den Tabellenindex und die Anweisung MODIFY ändert nur die zweite Spalte.






BAL_S_LOG - Application Log: Log header data   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 7007 Date: 20240523 Time: 150113     sap01-206 ( 90 ms )