SALV-Varianten - Admin-Button verstecken

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
7 Beiträge • Seite 1 von 1
7 Beiträge Seite 1 von 1

SALV-Varianten - Admin-Button verstecken

Beitrag von DUTZMIC (ForumUser / 7 / 2 / 2 ) »
Hallo zusammen,

gibt es eine Möglichkeit, in der Klasse CL_SALV_TABLE mit konfigurierten Layout-Varianten den Admin-Button zu verstecken?

Habe bereits alle möglichen Funktionen am Functions-Objekt ausprobiert, beim Aufruf von DISPLAY werden die Varianten-bezogenen Buttons aber scheinbar automatisch wieder zur Anzeige konfiguriert...

Code: Alles auswählen.

        lo_funcs = lo_salv_table->get_functions( ).

        lo_funcs->set_find( abap_true ).
        lo_funcs->set_print( abap_true ).
        lo_funcs->set_group_export( abap_true ).
*        lo_funcs->set_group_layout( abap_true ).
        lo_funcs->set_layout_change( abap_true ).
        lo_funcs->set_layout_load( abap_true ).
        lo_funcs->set_layout_save( abap_true ).
        lo_funcs->set_layout_maintain( abap_false ).

        lo_salv_table->display( ).
Kennt jemand eine Lösung für dieses Problem?

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


Re: SALV-Varianten - Admin-Button verstecken

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
Hab jetzt leider kein System zum Nachschauen zur Hand, aber soweit ich mit erinnere, kann man mit irgendeinem von den Unterobjekten (GET_*) des SALV die Variantenverwaltung steuern.
Ich habs genau umgekehrt gebraucht und musste das Feature aktivieren :wink:

lg ADT

EDIT: hmmm... War es LAYOUT?
Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: SALV-Varianten - Admin-Button verstecken

Beitrag von ST22 (Specialist / 279 / 43 / 41 ) »
Hi,
die Layoutklasse:
gr_layout TYPE REF TO cl_salv_layout,

gr_layout = gr_alv->get_layout( ).
gr_layout->set_save_restriction( if_salv_c_layout=>restrict_none ). <-- Konstanten
gr_layout->set_default( abap_true ).

gr_layout->set_initial_layout( ls_layout-layout ). <-- bestimmtes layout setzen (initialization)

Damit solltest du klar kommen.

Gruß
Frank

Re: SALV-Varianten - Admin-Button verstecken

Beitrag von DUTZMIC (ForumUser / 7 / 2 / 2 ) »
Danke, aber das hab ich ja alles schon gemacht:

Code: Alles auswählen.

*       Varianten bereitstellen
        lo_salv_layout = lo_salv_table->get_layout( ).
        ls_layout_key-report = sy-repid.
        ls_layout_key-handle = 'LOG'.
        ls_layout_key-logical_group = 'QPP'.
        lo_salv_layout->set_key( ls_layout_key ).
        lo_salv_layout->set_save_restriction( lo_salv_layout->restrict_none ).
        lo_salv_layout->set_initial_layout( '/USER' ).

*       Funktionen im SALV anzeigen
        lo_funcs = lo_salv_table->get_functions( ).
        lo_funcs->set_find( abap_true ).
        lo_funcs->set_print( abap_true ).
        lo_funcs->set_group_export( abap_true ).
        lo_funcs->set_layout_change( abap_true ).
        lo_funcs->set_layout_load( abap_true ).
        lo_funcs->set_layout_save( abap_true ).

*       Admin-Button verstecken
        lo_funcs->set_layout_maintain( abap_false ). " Das ist es was nicht funktioniert...
Das Ergebnis sieht dann so aus:

Bild

Der rot umkreiste Admin-Button soll sollte nach Aufruf von set_layout_maintain( abap_false ) eigentlich ausgeblendet werden, was aber nicht passiert...

Re: SALV-Varianten - Admin-Button verstecken

Beitrag von ST22 (Specialist / 279 / 43 / 41 ) »
Hallo,

deine Hardcopy ist nicht zu seehen, aber versuch mal bitte:

lo_salv_layout->set_save_restriction( 0 ).

Gruß
Frank

Re: SALV-Varianten - Admin-Button verstecken

Beitrag von DUTZMIC (ForumUser / 7 / 2 / 2 ) »
Alles klar, das ist eine Lösung.
Damit kann der Benutzer jetzt zwar im Ganzen keine Varianten mehr abspeichern, aber da es bereits zwei vordefinierte benutzerübergreifende Varianten gibt, ist das fürs erste nicht weiter schlimm.

Stört mich nur ein wenig, dass die Methode set_layout_maintain wohl tatsächlich von der Save Restriction übersteuert wird...

Aber damit kann ich leben, vielen Dank auch!

Re: SALV-Varianten - Admin-Button verstecken

Beitrag von ST22 (Specialist / 279 / 43 / 41 ) »
du kannst das so steuern, dass der user nur noch eigene Layouts speichern kann.

Sieh dir dazu die Konstanten des Interfaces if_salv_c_layout an und ruf damit die Methode auf.
0 = keine Administration,
3 = Alles
2 = user
1 = nur Benutzerübergreifend:

RESTRICT_NONE Constant Type SALV_DE_LAYOUT_RESTRICTION Save Layout Without Restriction 3
RESTRICT_USER_DEPENDANT Constant Type SALV_DE_LAYOUT_RESTRICTION Save Layout Only User-Specific 2
RESTRICT_USER_INDEPENDANT Constant Type SALV_DE_LAYOUT_RESTRICTION Save Layout Only Across Users 1

Gruß
Frank

Seite 1 von 1

Vergleichbare Themen

2
Antw.
2417
Views
Kein Varianten-Admin im Splitter-Container auf Default Screen
von tonyparzonka » 09.03.2023 12:45 • Verfasst in ABAP Objects®
9
Antw.
10572
Views
SALV Button menu hinzufügen?
von ralf.wenzel » 23.02.2014 12:54 • Verfasst in ABAP Objects®
3
Antw.
3658
Views
Doku Button in SALV Toolbar anzeigen
von osama » 08.04.2020 10:00 • Verfasst in ABAP® für Anfänger
2
Antw.
1616
Views
Varianten Button in OO ALV. Wie bekomme ich den?
von Nordlicht » 20.12.2006 15:33 • Verfasst in ABAP Objects®
1
Antw.
1123
Views
Support Admin ?
von JanMGroth » 20.04.2006 16:51 • Verfasst in Basis

Ü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

aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 1640
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8242