Interne Tabelle generell auf Inhalt prüfen

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

Interne Tabelle generell auf Inhalt prüfen

Beitrag von Michi (ForumUser / 26 / 0 / 0 ) »
Hallo ,
eine Interne Tabelle möchte ich überprüfen, ob sie überhaupt Datensätze (Inhalt) besitzt (ohne irgendwelche Kriterien), um somit den weiteren Programmverlauf zu steuern.

Danke im voraus !

Michi

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


Beitrag von m.schwertle (ForumUser / 94 / 0 / 0 ) »

Code: Alles auswählen.

*** Wenn Tabelle leer ("neu") ist
IF tabname IS INITIAL.
  " do something
*** Wenn Tabelle Einträge enthält
ELSE.
  " do something else
ENDIF.

Beitrag von khb (Specialist / 184 / 7 / 1 ) »
Hallo Michi,

nichts einfacher als das :wink:

DESCRIBE TABLE itab [LINES lin].

Wirkung
Die aktuelle Anzahl von Tabellenzeilen der internen Tabelle itab wird bestimmt und dem Datenobjekt lin zugewiesen, für das der Datentyp i erwartet wird.

Hinweis
Die aktuelle Anzahl der Zeilen einer internen Tabelle lässt sich seit Release 6.10 auch mit der eingebauten Funktion lines bestimmen

lg khb

Beitrag von m.schwertle (ForumUser / 94 / 0 / 0 ) »
Aus grundsätzlichen Überlegungen würde ich aber zu ersterer Methode tendieren: Eine DESCRIBE-Anweisung ist ein unnötig zusätzlicher Performancefresser, da es auch ohne geht. Es spielt sicher keine besonders gewichtige Rolle, da das Performance-Improvement sehr gering ist. Aber genau deshalb sagte ich ja, dass es sich um eine grundsätzliche Überlegung handelt.

Gruss, Martin

Beitrag von BlackMail (ForumUser / 79 / 0 / 0 ) »
m.schwertle hat geschrieben:

Code: Alles auswählen.

IF tabname IS INITIAL. 
Aber Vorsicht (wie immer) bei Tabellen mit Kopfzeilen! Dann muss es

Code: Alles auswählen.

IF tabname[] IS INITIAL. 
heißen.

Ein immer wieder gern gemachter Fehler.

Gruß BlackMail.

Beitrag von m.schwertle (ForumUser / 94 / 0 / 0 ) »
Wer arbeitet schon mit Kopfzeilen...? :wink:

Beitrag von BlackMail (ForumUser / 79 / 0 / 0 ) »
m.schwertle hat geschrieben:Wer arbeitet schon mit Kopfzeilen...? :wink:
Manchmal lässt es sich leider nicht umgehen (z. B. bei Select-options). Da ich sonst auch nie mit Kopfzeilen arbeite, bin ich da auch mal schön wieder drauf reingefallen. :oops:

Beitrag von ralf.wenzel (Top Expert / 3924 / 200 / 280 ) »
m.schwertle hat geschrieben:

Code: Alles auswählen.

*** Wenn Tabelle leer ("neu") ist
IF tabname IS INITIAL.
  " do something
*** Wenn Tabelle Einträge enthält
ELSE.
  " do something else
ENDIF.
Wie schon gesagt: Nur bei Tabellen ohne Kopfzeilen, ansonsten tabname[].
khb hat geschrieben:DESCRIBE TABLE itab [LINES lin].
Ich setz noch einen drauf, nur der Vollständigkeit halber:

Code: Alles auswählen.

loop at itab. endloop.
if sy-subrc ne 0.
*** Tabelle leer
else.
*** Tabelle nicht leer
endif.
Den LOOP macht man wahlweise INTO WA oder mit ASSIGNING. Ist so nicht wirklich sinnvoll, aber ich dachte mir ich sags mal ;)

8) Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Seite 1 von 1

Vergleichbare Themen

11
Antw.
2778
Views
Tabelle von nicht-strukturiertem Typ auf Inhalt prüfen
von sapnup » 10.07.2017 13:49 • Verfasst in ABAP® für Anfänger
5
Antw.
2103
Views
Inhalt interne Tabelle an andere interne Tabelle übergeben
von L0w-RiDer » 30.01.2020 16:28 • Verfasst in ABAP® für Anfänger
3
Antw.
3656
Views
Interne Tabelle (Inhalt innerhalb der Anwendung)
von wexpress » 31.08.2007 08:30 • Verfasst in Web-Dynpro, BSP + BHTML
1
Antw.
1333
Views
Interne Tabelle gegen ZTabelle prüfen
von CaptainMaus » 27.09.2006 20:15 • Verfasst in ABAP® Core
4
Antw.
1076
Views

Aktuelle Forenbeiträge

Eclipse - warum/wann verwendet ihr es [nicht]
vor 17 Minuten von tar 21 / 1373
Dialog-Container mit Toolbar/Status
vor 2 Stunden von DeathAndPain gelöst 22 / 2781
Daten an Tabelle binden
vor 7 Stunden von Lukas Sanders 2 / 863
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 417

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

Eclipse - warum/wann verwendet ihr es [nicht]
vor 17 Minuten von tar 21 / 1373
Dialog-Container mit Toolbar/Status
vor 2 Stunden von DeathAndPain gelöst 22 / 2781
Daten an Tabelle binden
vor 7 Stunden von Lukas Sanders 2 / 863
Zeilenumbrüche ersetzen
vor 2 Tagen von ralf.wenzel 6 / 417

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2454
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9040