Ranges dynamisch aufbauen

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Ranges dynamisch aufbauen

Beitrag von Besi (ForumUser / 30 / 0 / 0 ) »
Hallo,

ich möchte einige Range Tabellen dynamisch aufbauen und später in der Where Bedingung für ein Select benutzen. Der Code sieht wie folgt aus; Aber es kommt zum Kurzdump, dass die Wherebedingung ein unerwartetes Format.

IF typnr IS SUPPLIED.
CONCATENATE 'TYPNR IN' lt_typnr INTO
source_line separated by space.
APPEND source_line TO where_tab.
ENDIF.

SELECT * FROM ZTYP_TABLE
INTO CORRESPONDING FIELDS OF TABLE lt_header
WHERE (where_tab).

Hat Jemand Erfahrung damit?
lt_typnr ist die Range tabelle

Grüsse
Besi

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


Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Besi,
was willst Du eigentlich?
Eine RANGE Tabelle nutzen: select ... where Field in RANGETAB (den Aufbau der RANGETAB findest Du mit F1 auf RANGES)
oder
dynamischen where-Bedingung im Select (wie in Deinem Quellcode) dann verwende aber keine RANGETAB um die where-Bedingung zu speichern sondern einen STRING (F1 auf select, weiter zu WHERE-Klausel, dann Variante 3).

MfG
Thomas R.

Beitrag von Gast ( / / 0 / 3 ) »
Hallo Besi,

ich glaube nicht, dass das geht. Zu 4.6 durften nur Literale in einer dynamischen Where-Bedingung angegeben werden. Ab 4.7 wird in der Doku das nicht mehr so ausdrücklich gesagt, aber es heisst:

1. Die in source_text angegebenen logische Bedingungen müssen dieselbe Form haben wie entsprechende Bedingungen im ABAP -Quelltext. Allerdings darf der Operator nicht in der Form f1 IN itab1 verwendet werden.

Der letzte Satz sagt meiner Meinung nach aus, dass das, was du vorhast, nicht funktionieren wird.

mfg dele

Dynamic range

Beitrag von Gast Norbert ( / / 0 / 3 ) »
Hi,

Ab Release 640ff ist man da wieder flexibler:
"Die Überprüfung einer Selektionstabelle ist seit Release 6.40 in einem dynamischen logischen Ausdruck möglich. "

Bliebe also noch die Möglichkeit sich ein beliebiges Coding mit GENERATE SUBROUTINE POOL zusammenzubauen und aufzurufen.

Gruss

Norbert

Beitrag von Thomas R. (Expert / 755 / 78 / 34 ) »
Hallo Besi,
versuch's doch mal so:

IF typnr IS SUPPLIED.
CONCATENATE 'TYPNR IN lt_typnr' INTO
source_line separated by space.
*ENDIF auskommentiert, damit where-Bedingung nie leer
SELECT * FROM ZTYP_TABLE
INTO CORRESPONDING FIELDS OF TABLE lt_header
WHERE (source_line).
ENDIF.

So ähnlich sollte es funktionieren, habe es aber nicht ausprobiert.

Vielleicht hilft Dir dies mehr weiter als meine obige Aussage.

MfG
Thomas R.

Danke die Lösung ist da

Beitrag von Besi (ForumUser / 30 / 0 / 0 ) »
Norbert hat Recht: Das habe ich auch erfahren, dass Ranges dynamisch aufbauen erst ab Release 6.40 gehen kann. Aber dafür kann man die Ranges in der where_tab
anstatt in mit between aufabuen.
d.h.

.....where (where_tab): where_tab hätte dann folgende Zeilen---> typ_nr between low and high ).

Danke für die Antworten

Grüsse
Besi

Seite 1 von 1

Vergleichbare Themen

1
Antw.
1036
Views
Ranges dynamisch aufbauen
von Gast » 19.01.2006 11:48 • Verfasst in ABAP® Core
1
Antw.
739
Views
Ranges
von dyv » 18.08.2014 16:32 • Verfasst in ABAP® für Anfänger
11
Antw.
2303
Views
TCP/IP Verbindung aufbauen
von L0w-RiDer » 04.11.2020 13:34 • Verfasst in ABAP® für Anfänger
5
Antw.
2115
Views
SAP Strategie Know How aufbauen
von thomasschwarz » 13.08.2005 16:47 • Verfasst in SAP - Allgemeines
6
Antw.
3651
Views
RANGES in Klasse erstellen
von anam.jabrane » 07.02.2014 11:07 • Verfasst in ABAP Objects®

Über diesen Beitrag


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

Daten an Tabelle binden
Gestern von Bright4.5 1 / 515
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2149
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8744