Select-Options an Methode übergeben

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

Getting started ... Alles für einen gelungenen Start.
16 Beiträge • Vorherige Seite 2 von 2 (current)
16 Beiträge Vorherige Seite 2 von 2 (current)

Re: Select-Options an Methode übergeben

Beitrag von DeathAndPain (Top Expert / 1961 / 261 / 415 ) »
a-dead-trousers hat geschrieben:
05.02.2024 19:44
Ja, klar man kann das Rad natürlich immer neu erfinden und in kleinen Projekten mag das durchaus lesbarer sein. Aber sobald man über Systemgrenzen hinweg arbeitet (Stichwort RFC) ist man mit dem DDIC (se11) einfach besser beraten.
An dieser Stelle reden wir aneinander vorbei. Es liegt mir fern, gegen die Benutzung des DDIC zu hetzen. Aber wenn man Datentypen von dort entlehnt, dann sollten diese nach Möglichkeit halbwegs sprechend sein. "rsdsselopt_t" ist es nicht. Wenn ich an dieser Stelle aus den von Dir genannten Gründen auf das DDIC zurückgreifen wollte, dann würde ich mir nötigenfalls dort nochmal einen passenden Range-Typ entsprechend definieren, z.B. als ZRANGE_OF_WERKS_D. Klar hat man den Datentyp dann doppelt im DDIC, aber die SAP selbst hat so unzählig viele DDIC-Typduplikate, dass es auf eine Handvoll mehr wahrhaftig nicht ankommt.

Nebenbei vermeidet man damit rob_abc's Effekt, dass der SAP-Typ mit dem nächsten Release-Upgrade weg oder - fast noch schlimmer - anders definiert ist.
black_adept hat geschrieben:
06.02.2024 13:46
DeathAndPain hat geschrieben:Ja, und bei Selektionsparametern (einschließlich SELECT-OPTIONS)
[...]
und ab START-OF-SELECTION ändern sich diese auch nicht mehr. Man kann sie also aus Programmsicht wie Konstanten betrachten.
Die können sich durch den Programmfluss durchaus ändern. Mache ich zwar selten, hat aber durchaus seine Berechtigung.
In meinen Augen hat es keine Berechtigung und gibt es keine Rechtfertigung dafür, vom User auf dem Selektionsbild zu setzende Selektionsparameter nachträglich zu ändern. Mag sein, dass ABAP das technisch nicht unterbindet, aber sowas finde ich ganz schlechten Stil. Diese Felder sind global, und wenn sie irgendwo in START-OF-SELECTION plötzlich ihre Werte verändern, kann das später keiner mehr nachvollziehen, was Du da machst und warum. Eine gemeinere Falle kann man einem debuggenden Nachfolger kaum stellen!

In INITIALIZATION und AT SELECTION-SCREEN darf man da gerne dran ändern. Da unterstützt man ja nur den User beim Ausfüllen des Selektionsbildes. Aber ab START-OF-SELECTION sind das die Werte, mit denen der User den Report gestartet hat. Wenn Du dann unter bestimmten Umständen so reagieren möchtest, als hätte er anders gewählt, dann solltest Du dafür ein eigenes (möglichst nicht globales) Feld deklarieren, den Wert vom Selektionsbild hineinkopieren und damit dann weiterarbeiten. Dann sieht der Leser auf einen Blick, dass das nicht der Wert vom Selektionsbild ist und wird schauen, wie der enthaltene Wert zustande kommt.
black_adept hat geschrieben:
06.02.2024 13:50
Ich habe viele meiner Kunden überzeugen können, dass der Systemparameter, der die Anzahl der Modi steuert, in Nichtproduktivsystemen auf deutlich höhere Werte gesetzt wird. Die Obergrenze 6 ist schon seit recht langer Zeit überholt.
Das geht!? Vielen Dank für den Tipp; das war mir nicht bekannt!
black_adept hat geschrieben:Ich selber mache das ähnlich, allerdings für alle Felder des Selektionsbilds gleichzeitig weil sich - zumindest bei mir - häufig genug die Notwendigkeit ergibt, einen nicht marginalen Anteil des Selektionsbilds an Modularisierungseinheiten durchzureichen.
Na ja, die sind global, und solange Du sie wie von mir oben erwähnt behandelst und nicht anfängst, irgendwo in Deinem Programm verdeckt die Benutzereingaben nachträglich zu manipulieren, haben sie aus Sicht des Programmablaufs den Stellenwert von Konstanten und können daher aus meiner Sicht problemlos als globale Felder ohne Berücksichtigung im Methodeninterface verwendet werden.

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


Vergleichbare Themen

3
Antw.
7478
Views
SELECT-OPTIONS im Methodenparameter übergeben
von snooze » 01.04.2005 13:55 • Verfasst in ABAP Objects®
6
Antw.
1248
Views
Methode soll multiple Select-Options Tabellen liefern
von mazu » 08.06.2021 13:25 • Verfasst in ABAP Objects®
9
Antw.
19121
Views
iTAB an Methode übergeben
von Diesel83 » 09.03.2011 19:53 • Verfasst in ABAP® für Anfänger
10
Antw.
989
Views
Tabellen aus Methode übergeben
von Nion » 11.09.2023 07:34 • Verfasst in ABAP® für Anfänger
0
Antw.
2420
Views
select-options depend on select-options.
von dragospirnut1 » 19.07.2017 09:54 • 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

SD_PRINT_TERMS_OF_PAYMENT
vor einer Woche von Manfred K. 1 / 1717
BUSOBJEKT zu CMIS PHIO ermitteln
vor 4 Wochen von snooga87 1 / 3544