Buttons in der Listenansicht

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

Buttons in der Listenansicht

Beitrag von axxter (ForumUser / 36 / 0 / 0 ) »
Hallo,

ich möchte gerne einige Buttons auf dem Listenbildschirm einrichten um unterschiedliche Sortierungen möglich zu machen.
Leider kann ich den Listviewer nicht verwenden, da ich dort keine Möglichkeit habe - per Klick auf ein Feld - in eine Transaktion zu springen.
Könnte mir jemand ein Codebeispiel zu so etwas geben. Ich habe so etwas nämlich noch nie gemacht.

Danke im voraus,

axxter

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


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

es wundert mich, dass dir noch niemand geantwortet hat.

Zuerst zum Listviewer:
Also mit REUSE_ALV_LIST_DISPLAY oder REUSE_ALV_GRID_DISPLAY sollte das auf jeden Fall funktionieren. Hier ein Coding-Extrakt, der die wesentlichen Punkte zeigt:
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = 'myprogram' "!!!!!
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = 'ALV_UCOMM' "!!!!!
I_STRUCTURE_NAME = ' '
IS_LAYOUT = ILAYOUT
IT_FIELDCAT = ITFDCAT
IT_EVENTS = ITEVENTS
...
...
...

Entscheidend sind hier die Parameter:
I_CALLBACK_PROGRAM = das Programm, das von ALV bei bestimmten Ereignissen aufgrufen werden soll - also dein Programm.
I_CALLBACK_USER_COMMAND = die Routine, die von ALV aufgerufen werden soll um interaktive Funktionen auszuführen. Diese Routine musst du in dein Programm aufnehmen. Übrigens könnte man den Namen der Routine auch über den Parameter IT_EVENTS mitgeben (bitte Doku lesen).
Diese Routine könnte dann z.B. ungefähr so aussehen:

FORM ALV_UCOMM USING VALUE(UCOMM) LIKE SY-UCOMM
SELFIELD TYPE SLIS_SELFIELD.

if ucomm = 'PICK'.
if selfield-fieldname = 'MATNR'.
set parameter ID 'MAT' = selfield-value.
call transaction 'MM03' and skip first screen.
endif.
endif.

ENDFORM.

Im Layout solltest du noch mitteilen, wie der Doppelklick-Ucomm bei dir heissen soll:
move 'PICK' to ilayout-f2code.

Wenn du dein Feld im Feldtkatalog noch das Attribut "Hotspot" verpasst, dann geht's sogar mit einfachem Klick anstatt Doppelklick.

Nun zum Pushbutton in einer Liste:
Dazu musst du dir mit dem Menü-Painter (SE41 oder aus der SE80 heraus) zu deinem Programm eine eigene Oberfläche definieren mit einem eigenen Status anlegen. Hier kannst du dann Menüs, Pushbuttons usw. pflegen. In deinem Programm musst du dann vor Abschluss der Listausgabe den mit SE41 definierten Status setzen: SET PF-STATUS 'xyz'. Ausserdem musst du in deinem Programm z.B. in dem Ereignis AT USER-COMMAND auf die Funktionen des Anwenders reagieren.

Beide Beschreibungen sind sehr kompakt. Du solltest auf jeden Fall die Doku dazu lesen oder Beispielprogramme testen.

Wenn es sich um eine tabellarische Liste handelt, würde ich dir auf jeden Fall den ALV empfehlen, weil du hier sehr viele Funktionen geschenkt bekommst.

mfg dele

Seite 1 von 1

Vergleichbare Themen

0
Antw.
1012
Views
ALV Buttons
von robz » 27.11.2006 16:08 • Verfasst in ABAP® Core
10
Antw.
4560
Views
ALV Eigene Buttons
von SAP_ENTWICKLER » 19.08.2015 08:44 • Verfasst in ABAP® Core
0
Antw.
2079
Views
TABLEVIEW mit Buttons
von cloenne » 10.09.2008 14:44 • Verfasst in Web-Dynpro, BSP + BHTML
1
Antw.
1802
Views
Tool Tip bei dynamischen Buttons
von bek » 19.05.2014 18:19 • Verfasst in Dialogprogrammierung
5
Antw.
4436
Views
Ereignis on Toolbar - Buttons im ALV
von JohnLocklay » 07.06.2018 12:15 • Verfasst in ABAP Objects®

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Feldwerte vergleichen
vor 14 Stunden von wreichelt 2 / 31
Workflow-Datenfluss mit Multi-Line-Container
vor 16 Stunden von ewx gelöst 2 / 103
Mahnung erstellen
vor 20 Stunden von Sebastian82 4 / 141
Absprung VA02 Position
vor 2 Tagen von gs3rr4 gelöst 3 / 129

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

Feldwerte vergleichen
vor 14 Stunden von wreichelt 2 / 31
Workflow-Datenfluss mit Multi-Line-Container
vor 16 Stunden von ewx gelöst 2 / 103
Mahnung erstellen
vor 20 Stunden von Sebastian82 4 / 141
Absprung VA02 Position
vor 2 Tagen von gs3rr4 gelöst 3 / 129

Unbeantwortete Forenbeiträge

OPD Druck im SPOOL
vor 2 Tagen von Manfred K. 1 / 94
Export von Spools in XLSX
vor einer Woche von abapamateur 1 / 911
Feldberechnung ME32K
vor einer Woche von ZF_SAPler 1 / 1500