Zusätzliche Standardfunktion ermöglichen

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

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

Zusätzliche Standardfunktion ermöglichen

Beitrag von MaBü (ForumUser / 3 / 0 / 0 ) »
Hallo Forum,

kann ich beim ALV die beiden Funktionen "Alle Zeilen markieren" bzw. "Alle Zeilen demarkieren" in der Standardtoolbar anzeigen lassen?

Oder wie kann ich die beiden Funktionen am besten im ALV zur Verfügung stellen? Wofür sind die beiden Attribute "MC_FC_SELECT_ALL" und "MC_FC_DESELECT_ALL" (Klasse CL_GUI_ALV_GRID)?

Wenn ich über eigene Druckbuttons gehe, habe ich zwar die Methode "SET_SELECTED_ROWS" gefunden, aber keine Methode zum Entmarkieren der Zeilen!?

Stehe im Moment irgendwie auf dem Schlauch und hoffe, Ihr könnt mir weiterhelfen.

VG, MaBü

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


Re: Zusätzliche Standardfunktion ermöglichen

Beitrag von a-dead-trousers (Top Expert / 4276 / 213 / 1140 ) »
MaBü hat geschrieben:kann ich beim ALV die beiden Funktionen "Alle Zeilen markieren" bzw. "Alle Zeilen demarkieren" in der Standardtoolbar anzeigen lassen?
Ja, sofern du sie im Layout (Struktur LVC_S_LAYO) nicht mit NO_TOOLBAR ausgeschalten hast.
MaBü hat geschrieben:Wofür sind die beiden Attribute "MC_FC_SELECT_ALL" und "MC_FC_DESELECT_ALL" (Klasse CL_GUI_ALV_GRID)?
Das sind die Konstanten für die Funktionscodes. Damit könntest du ganz leicht in der Methode SET_TABLE_FOR_FIRST_DISPLAY den Parameter IT_TOOLBAR_EXCLUDING befüllen um einzelne Funktionen auszublenden.
MaBü hat geschrieben:Wenn ich über eigene Druckbuttons gehe, habe ich zwar die Methode "SET_SELECTED_ROWS" gefunden, aber keine Methode zum Entmarkieren der Zeilen!?
"Entmarkieren" funktioniert meines Wissens mit einem "leeren" Aufruf ohne Parameter oder mit "leeren" Parametern ohne Inhalt.
MaBü hat geschrieben:Stehe im Moment irgendwie auf dem Schlauch und hoffe, Ihr könnt mir weiterhelfen.
Passiert den Besten. :wink:

lg ADT
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: Zusätzliche Standardfunktion ermöglichen

Beitrag von black_adept (Top Expert / 3944 / 105 / 886 ) »
a-dead-trousers hat geschrieben:
MaBü hat geschrieben:Wenn ich über eigene Druckbuttons gehe, habe ich zwar die Methode "SET_SELECTED_ROWS" gefunden, aber keine Methode zum Entmarkieren der Zeilen!?
"Entmarkieren" funktioniert meines Wissens mit einem "leeren" Aufruf ohne Parameter oder mit "leeren" Parametern ohne Inhalt.
Alternativ tut es auch ein direkter Aufruf, wenn man das SLIS-Pendant des Grid-Funktionscodes kennt und sich nicht scheut den Langtext der Methode zu ignorieren. In deinem Fall wäre das so:
DATA: lv_ucomm TYPE syucomm.
lv_ucomm = '&SAL'.
go_grid->set_function_code( CHANGING c_ucomm = lv_ucomm ).
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Zusätzliche Standardfunktion ermöglichen

Beitrag von MaBü (ForumUser / 3 / 0 / 0 ) »
black_adept hat geschrieben:
Alternativ tut es auch ein direkter Aufruf, wenn man das SLIS-Pendant des Grid-Funktionscodes kennt und sich nicht scheut den Langtext der Methode zu ignorieren. In deinem Fall wäre das so:
DATA: lv_ucomm TYPE syucomm.
lv_ucomm = '&SAL'.
go_grid->set_function_code( CHANGING c_ucomm = lv_ucomm ).
Hallo black_adept,
vielen Dank für deinen Tip, der super funktioniert!
a-dead-trousers hat geschrieben:
MaBü hat geschrieben:kann ich beim ALV die beiden Funktionen "Alle Zeilen markieren" bzw. "Alle Zeilen demarkieren" in der Standardtoolbar anzeigen lassen?
Ja, sofern du sie im Layout (Struktur LVC_S_LAYO) nicht mit NO_TOOLBAR ausgeschalten hast.
Hallo a-dead-trousers,
nachdem der Tip von black_adept zwar funktioniert, möchte ich trotzdem gerne wissen, ob es möglich ist, die vielen Standardfunktionen des ALV (81(!) an der Zahl, wenn man nach den Attributen MC_FC_* geht) in der Standardtoolbar anzeigen zu lassen. Ich meine, warum gibt es die Möglichkeit, bestimmte Standardfunktionen oder die gesamte Toolbar auszublenden, aber nicht die Möglichkeit, auch andere Standardfunktionen hinzuzunehmen? Warum soll ich bestimmte Standardfunktionen ausblenden, wenn diese eh nicht angezeigt werden? Oder verstehe ich hier irgendetwas nicht so ganz?!

Gruß, MaBü

Re: Zusätzliche Standardfunktion ermöglichen

Beitrag von black_adept (Top Expert / 3944 / 105 / 886 ) »
Hallo MaBü:

Normalerweise sind doch im ALV alle Standardfunktionen aktiv. Beim cl_gui_alv_grid darf man halt keine Funktionscodes explizit über IT_TOOLBAR_EXCLUDING ausschließen, im cl_salv_table muss man zuerst alle Funktionen mit mo_salv->get_functions( )->set_all( ) einblenden um die Maximalausprägung zu erhalten.

Damit hätte man zunächst mal eine Toolbar mit allen an die Situation angepasst möglichen Funktionen. Und wenn man manche davon verbieten möchte kann man diese dann halt ausblenden.

Beispiele:
Nicht angezeigte Funktionscodes: Die Fcodes zum Auschschneiden und Einfügen von Zeilen sind nur sichtbar, wenn es sich um einen änderbaren Grid handelt. Und in dem Fall wäre es sträflich, wenn man versucht diese ín diesem Kontext nicht erlaubten Funktionscodes einzublenden.
Warum sollte man Funktionscodes ausblenden. Wenn ich z.B. eine speziell sortierte Tabelle dem User anbieten möchte wo zusammenghängende Zeilen in einer gewissen Reihenfolge untereinander stehen MÜSSSEN, würde ich z.B. immer den FCode zum Sortieren oder Zwischensummen bilden ausblenden, damit der User nicht über das Frontend genau diese Sortierung kaputt macht.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Zusätzliche Standardfunktion ermöglichen

Beitrag von MaBü (ForumUser / 3 / 0 / 0 ) »
black_adept hat geschrieben: Normalerweise sind doch im ALV alle Standardfunktionen aktiv. Beim cl_gui_alv_grid darf man halt keine Funktionscodes explizit über IT_TOOLBAR_EXCLUDING ausschließen, ...
Damit hätte man zunächst mal eine Toolbar mit allen an die Situation angepasst möglichen Funktionen. Und wenn man manche davon verbieten möchte kann man diese dann halt ausblenden.
Hallo black_adept,
ok, nachdem ich mir das Ganze nochmal genauer angeschaut habe, habe ich's glaube ich verstanden. Mir fehlten einfach die Buttons zum Markieren/Demarkieren aller Zeilen - bis ich darauf gekommen bin, dass diese Funktionen ja über den Button in der Ecke links oben im Grid zur Verfügung stehen, und deshalb wahrscheinlich nicht explizit als Toolbarbuttons existieren.
Vielen Dank noch mal für deine äußerst schnellen Antworten.
VG, MaBü

Seite 1 von 1

Vergleichbare Themen

15
Antw.
12180
Views
ALV Grid - Ändern ermöglichen und Änderungen erkennen
von Otscho » 12.07.2007 15:10 • Verfasst in Dialogprogrammierung
2
Antw.
2098
Views
standardfunktion "speichern" in excel freischalten
von cedre » 14.06.2004 14:09 • Verfasst in ABAP Objects®
0
Antw.
1175
Views
1
Antw.
3712
Views
IDOC_OUTPUT_INVOIC zusätzliche Positionstexte
von SAP_ENTWICKLER » 02.06.2016 06:39 • Verfasst in ABAP® Core
1
Antw.
2084
Views
Zusätzliche Spalten in Wertehilfe
von Eric83 » 20.05.2010 15:01 • Verfasst in Dialogprogrammierung

Ü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

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 5 Tagen von jocoder 2 / 75

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.

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 5 Tagen von jocoder 2 / 75

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 4 Wochen von Lucyalison 1 / 132
Group Items auf einer Filterbar
vor 4 Wochen von Bright4.5 1 / 166