Tabelle kann Puffer nicht nutzen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Tabelle kann Puffer nicht nutzen

Beitrag von treyfifty (ForumUser / 13 / 5 / 0 ) »
Guten Tag,
habe folgendes Problem.

Wenn ich den Code Inspector über mein Programm laufen lasse kommt folgende Warnung:

"Zugriff auf einzelsatzgepufferte Tabelle datenbanktabelle kann Puffer nicht nutzen."

Wie kann ich das verbessern ?

Zeile sieht wie folgt aus:

Code: Alles auswählen.

  SELECT feld_1 feld_2 FROM datenbanktabelle
                        INTO TABLE lokale_tabelle_1  
                        FOR ALL ENTRIES IN lokale_tabelle_2
                        WHERE feld_2  = lokale_tabelle_2-feld_3. 

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


Re: Tabelle kann Puffer nicht nutzen

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Eine Datenbanktabelle mit dem Namen "datenbanktabelle" kann ich in meinem System leider nicht finden.

Re: Tabelle kann Puffer nicht nutzen

Beitrag von Dele (Specialist / 307 / 4 / 47 ) »
Es gibt einige ABAP-Open-SQL Optionen, die eine Verwendung des SAP-Tabellenpuffers verhindern.
siehe Online Doku Open SQL - SAP Buffering

FOR ALL ENTRIES ist einer davon.

Re: Tabelle kann Puffer nicht nutzen

Beitrag von Unit605 (Expert / 975 / 37 / 93 ) »
Ich habe ja extra nach dem Namen der Datenbank "gefragt" um die Meldung nachzustellen.

Habe es auch ohne den Namen hinbekommen, die Meldung im Code Inspector zu erhalten.

Zusaetzlich wurde auch, wie erwartet, eine Erklaerung zu der Meldung im Code Inspector direkt angeboten.

Vola:
Code Inspector
SELECT-Anweisungen, die am SAP-Tabellenpuffer vorbei lesen

Zugriff auf einzelsatzgepufferte Tabelle kann Puffer nicht nutzen

Der SAP-Tabellenpuffer kann bei einzelsatzgepufferten Tabellen nur dann genutzt werden, wenn der Primärschlüssel in der WHERE-Bedingung voll spezifiziert wird. Dabei können nur Felder mit einer '=' oder 'EQ' Bedingung ausgewertet werden. Die Felder des Primärschlüssels dürfen nur mit 'AND' Bedingungen, nicht mit 'OR' Bedingungen verknüpft sein.

Auch die Option 'FOR ALL ENTRIES' führt bei einer einzelsatzgepufferten Tabelle zur Umgehung des Tabellenpuffers.

Falls die WHERE-Bedingung ein einzelnes Schlüsselfeld in einer Selektionstabelle oder IN-Liste enthält (z.B. WHERE a IN SELTAB mit SELTAB-sign = 'I', SELTAB-option = 'EQ', SELTAB-low = 'test' -- oder WHERE a IN ('test')), so kann diese Anweisung den SAP-Tabellenpuffer nutzen, dies wird aber vom Code Inspector nicht erkannt.


Meldung ausblendbar mit Pseudokommentar "#EC CI_GENBUFF

Folgende Benutzer bedankten sich beim Autor Unit605 für den Beitrag:
treyfifty


Re: Tabelle kann Puffer nicht nutzen

Beitrag von treyfifty (ForumUser / 13 / 5 / 0 ) »
Unit605 hat geschrieben:Ich habe ja extra nach dem Namen der Datenbank "gefragt" um die Meldung nachzustellen.

Habe es auch ohne den Namen hinbekommen, die Meldung im Code Inspector zu erhalten.

Zusaetzlich wurde auch, wie erwartet, eine Erklaerung zu der Meldung im Code Inspector direkt angeboten.

Vola:
Code Inspector
SELECT-Anweisungen, die am SAP-Tabellenpuffer vorbei lesen

Zugriff auf einzelsatzgepufferte Tabelle kann Puffer nicht nutzen

Der SAP-Tabellenpuffer kann bei einzelsatzgepufferten Tabellen nur dann genutzt werden, wenn der Primärschlüssel in der WHERE-Bedingung voll spezifiziert wird. Dabei können nur Felder mit einer '=' oder 'EQ' Bedingung ausgewertet werden. Die Felder des Primärschlüssels dürfen nur mit 'AND' Bedingungen, nicht mit 'OR' Bedingungen verknüpft sein.

Auch die Option 'FOR ALL ENTRIES' führt bei einer einzelsatzgepufferten Tabelle zur Umgehung des Tabellenpuffers.

Falls die WHERE-Bedingung ein einzelnes Schlüsselfeld in einer Selektionstabelle oder IN-Liste enthält (z.B. WHERE a IN SELTAB mit SELTAB-sign = 'I', SELTAB-option = 'EQ', SELTAB-low = 'test' -- oder WHERE a IN ('test')), so kann diese Anweisung den SAP-Tabellenpuffer nutzen, dies wird aber vom Code Inspector nicht erkannt.


Meldung ausblendbar mit Pseudokommentar "#EC CI_GENBUFF
Dankeschön!

Seite 1 von 1

Vergleichbare Themen

2
Antw.
754
Views
ABAP Puffer zurücksetzen
von a-dead-trousers » 17.09.2020 12:26 • Verfasst in ABAP® Core
3
Antw.
2943
Views
Strukturelle Berechtigungen Puffer
von SaskuAc » 17.12.2019 11:08 • Verfasst in Human Resources
4
Antw.
3573
Views
CS_BOM_EXPL_MAT_V2 behält Stückliste im Puffer??
von crayfish » 25.11.2005 16:23 • Verfasst in ABAP® Core
5
Antw.
7054
Views
Tabl. Puffer leeren / aktualisieren
von Icke0801 » 26.02.2019 08:24 • Verfasst in Basis
4
Antw.
2159
Views
Selektionen der Log DB nutzen
von lucky65 » 26.07.2012 13:13 • Verfasst in ABAP® Core

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

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.

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 4 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141