SELECT-OPTIONS .. FOR ... DEFAULT

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

SELECT-OPTIONS .. FOR ... DEFAULT

Beitrag von cuncon (Specialist / 143 / 98 / 1 ) »
Hallo zusammmen,

ich bin über den Befehl SELECT-OPTIONS ... FOR..DEFAULT .. gestolpert und zwar ich möchte bei dem Selectionsbild gv_datum_von und gv_datum_bis als Defaultwert sehen. Aber ich habe Fehlermeldung bekommen und nämlich : Bitte die Intervallgrenzen eingeben. Folgendes ist mein Code:

SELECT-OPTIONS: s_datum FOR zab_protokoll-datum DEFAULT gv_datum_von TO gv_datum_bis.

INITIALIZATION.
gv_datum_von = sy-datum - 60.
CONCATENATE gv_datum_von+0(6) '01' INTO gv_datum_von.
gv_datum_bis = sy-datum.

s_datum-sign = 'I'.
s_datum-option = 'BT'.
MOVE gv_datum_von TO s_datum-low.
MOVE gv_datum_bis TO s_datum-high.

START-OF-SELECTION.

Kann jemand mir helfen?

Vielen Dank

cuncon

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


Re: SELECT-OPTIONS .. FOR ... DEFAULT

Beitrag von M@atze! (ForumUser / 92 / 6 / 21 ) »
Hi,

mit "DEFAULT" kannst du nur feste Werte zuweisen.
Lass das bei SELECT-OPTIONS weg.
Die Zuweisung der Defaultwerte machst du ja schon richtig unter INITIALIZATION (genau dafür ist es da).
Die Variable gv_datum kannst du dir eigentlich auch sparen und direkt s_datum-low/high verwenden.

Folgende Benutzer bedankten sich beim Autor M@atze! für den Beitrag:
cuncon


Re: SELECT-OPTIONS .. FOR ... DEFAULT

Beitrag von cuncon (Specialist / 143 / 98 / 1 ) »
M@atze! hat geschrieben:Hi,

mit "DEFAULT" kannst du nur feste Werte zuweisen.
Lass das bei SELECT-OPTIONS weg.
Die Zuweisung der Defaultwerte machst du ja schon richtig unter INITIALIZATION (genau dafür ist es da).
Die Variable gv_datum kannst du dir eigentlich auch sparen und direkt s_datum-low/high verwenden.
Danke schön für die Antwort. Es hat jetzt geklappt. Ich habe APPEND s_datum nicht geschrieben, daher hat auch nicht funktioniert. Also sieht folgendes aus:

SELECT-OPTIONS: s_datum FOR zab_protokoll-datum.

INITIALIZATION.
gv_datum_von = sy-datum - 60.
CONCATENATE gv_datum_von+0(6) '01' INTO gv_datum_von.
gv_datum_bis = sy-datum.

s_datum-sign = 'I'.
s_datum-option = 'BT'.
MOVE: gv_datum_von TO s_datum-low,
gv_datum_bis TO s_datum-high,
'BT' TO s_datum-option,
'I' TO s_datum-sign.
APPEND s_datum.

Ich möchte datum_von und datum_bis dynamisch sein, daher kann ich direkt s_datum-low/high nicht verwenden.
cuncon

Re: SELECT-OPTIONS .. FOR ... DEFAULT

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Dein Code funktioniert, aber er gefällt mir nicht. Hattest Du nicht sogar ein 7.40-System?

Dann geht das mit einem Bruchteil der Zeilen und trotzdem - oder gerade deswegen - übersichtlich:

Code: Alles auswählen.

data gv_datum_von type dats.

SELECT-OPTIONS s_datum FOR gv_datum_von.

INITIALIZATION.

gv_datum_von = sy-datum - 60. 
gv_datum_von = gv_datum_von(6) && '01'.

s_datum{} = value #( ( low = gv_datum_von high = sy-datum sign = 'I' option = 'BT' ) ).
Dabei musst Du hinter s_datum statt der geschwungenen Klammern eckige verwenden; die stellt das Forum aber nicht richtig dar, weswegen ich mir als Krücke mit den geschwungenen beholfen habe. Und in der Zeile davor muss statt && && stehen.
Ich möchte datum_von und datum_bis dynamisch sein, daher kann ich direkt s_datum-low/high nicht verwenden.
Die Logik verstehe ich nicht. s_datum-low und s_datum-high sind normale (Kopfzeilen-)Felder, genau wie Deine Hilfsfelder gv_datum_von und gv_datum_bis auch. Von daher gibt es (auch bei Deinem Code) nicht den mindesten Grund, letztere zu verwenden und dann umzukopieren. Ich habe gv_datum_von in meinem Code auch verwendet, aber nur, da ich eh nicht mit den Kopfzeilenfeldern arbeite und gv_datum_von ohnehin als Dummyfeld für den FOR-Teil der SELECT-OPTIONS benötige.

Folgende Benutzer bedankten sich beim Autor DeathAndPain für den Beitrag:
cuncon


Re: SELECT-OPTIONS .. FOR ... DEFAULT

Beitrag von cuncon (Specialist / 143 / 98 / 1 ) »
DeathAndPain hat geschrieben:Dein Code funktioniert, aber er gefällt mir nicht. Hattest Du nicht sogar ein 7.40-System?

Dann geht das mit einem Bruchteil der Zeilen und trotzdem - oder gerade deswegen - übersichtlich:

Code: Alles auswählen.

data gv_datum_von type dats.

SELECT-OPTIONS s_datum FOR gv_datum_von.

INITIALIZATION.

gv_datum_von = sy-datum - 60. 
gv_datum_von = gv_datum_von(6) && '01'.

s_datum{} = value #( ( low = gv_datum_von high = sy-datum sign = 'I' option = 'BT' ) ).


Dabei musst Du hinter s_datum statt der geschwungenen Klammern eckige verwenden; die stellt das Forum aber nicht richtig dar, weswegen ich mir als Krücke mit den geschwungenen beholfen habe. Und in der Zeile davor muss statt && && stehen.
Ich möchte datum_von und datum_bis dynamisch sein, daher kann ich direkt s_datum-low/high nicht verwenden.
Die Logik verstehe ich nicht. s_datum-low und s_datum-high sind normale (Kopfzeilen-)Felder, genau wie Deine Hilfsfelder gv_datum_von und gv_datum_bis auch. Von daher gibt es (auch bei Deinem Code) nicht den mindesten Grund, letztere zu verwenden und dann umzukopieren. Ich habe gv_datum_von in meinem Code auch verwendet, aber nur, da ich eh nicht mit den Kopfzeilenfeldern arbeite und gv_datum_von ohnehin als Dummyfeld für den FOR-Teil der SELECT-OPTIONS benötige.

Danke. Ich glaube ich habe 7.40 System. Ich werde mit deinem Code probieren. Es sieht eleganter aus.

cuncon

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1760
Views
select-options depend on select-options.
von dragospirnut1 » 19.07.2017 09:54 • Verfasst in ABAP® Core
3
Antw.
1527
Views
Select-Option: Default-Wert Decimal
von Dyrdek » 14.12.2016 16:29 • Verfasst in ABAP® Core
9
Antw.
815
Views
Mehrere default Werte bei einer Select Option
von LuisBbeck » 07.09.2021 14:12 • Verfasst in ABAP® für Anfänger
10
Antw.
5789
Views
2 Select-Options zu einem für Select zusammenfügen
von manuk » 23.03.2005 11:02 • Verfasst in ABAP® Core
4
Antw.
17878
Views
Select nach Parameter & Select-Options
von doeme » 10.07.2012 16:37 • Verfasst in ABAP® für Anfänger

Ü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

Zwischensumme Adobe Forms
vor 3 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