Element zu Listenobjekt hinzufügen: ADD

   EXEC TAA
      ADD [LAST | CURRENT ] <Objektname>
   END-EXEC

Mit der Anweisung ADD können Sie zu einer Liste hinter der aktuellen Position ein Element hinzufügen. Nach dem ADD ist der eingefügte Satz die neue aktuelle Position (CURRENT).

ADD CURRENT oder ADD ohne Angabe einer Position fügt einen Satz hinter dem aktuellen Satz hinzu.

Um ein Objekt vor dem angegebenen Element oder am Anfang einer Liste hinzuzufügen, benutzen Sie bitte INSERT.

Wenn als Index ein Datenname angegeben wird, muss dies eine numerische COBOL-Variable sein.

Wenn die Liste noch leer ist, darf keine Position und kein Index angegeben werden! Falls Sie nicht sicher sind, ob die Liste zum Zeitpunkt des INSERT leer ist, fragen Sie zuvor die Anzahl der Sätze über GETINFO ITEMS ab.

Das Ergebnis der Anweisung können Sie über die Bedingungsnamen OM-RC-OK und OM-RC-NOT-OK und OM-RC-EOL abfragen.

Achtung:

  • ADD FIRST fügt einen Satz hinter dem ersten Satz der Liste ein!
  • Prinzipiell sind alle Positionsangaben zulässig, die auch für GET- und PUT-Operationen bekannt sind. Jedoch führt die Positionierung z.B. bei der Angabe NEXT oder PREVIOUS im Zusammenhang mit dem Einfügen vor (INSERT) oder hinter (ADD) dem gewählten Satz u.U. zu Ergebnissen, die zwar logisch richtig, aber dennoch oft unerwartet sind, sodass wir von der Verwendung dieser Positionsangaben bei ADD- und INSERT-Anweisungen dringend abraten.
  • Wenn in einem Listenobjekt kein Eintrag aktuell ist (letzter Zugriff endete mit EOL oder NOT-OK), ist das Ergebnis eines ADD CURRENT undefiniert.
  • Die Datenstruktur zu einem Listenobjekt wird nicht automatisch initialisiert. Wenn nicht bereits Werte aus einem bestehenden Satz in die Datenstruktur geladen wurden (GET), empfiehlt es sich daher, diese vor dem Füllen der Datenstruktur mit neuen Werten mit einem EXEC TAA INITIALIZE vorzubereiten, um sicherzustellen, dass alle Felder im TAA-Format initialisiert werden.
cobref:cob:add · Zuletzt geändert: 08.04.2020 10:33

Copyright © 1992-2024 TeamWiSE Gesellschaft für Softwaretechnik mbH         Adressen |  Kontakt |  AGB |  Datenschutzerklärung |  Impressum