Zusatzbutton beim ALV Grid

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

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

Zusatzbutton beim ALV Grid

Beitrag von Gast ( / / 0 / 3 ) »
Hy,
ich hätte eine 'kleine' Frage zum ALV (reuse).
Ich habe in einem Report drei ALVs. Beim Starten wird das erste ALV angezeigt, wenn man auf den 'zurück' button drückt das zweite ALV, und ein erneuter Klick auf 'zurück' zeigt das dritte (und zugleich letzte) ALV an. Funzt alles einwandfrei. Jetzt ist mir aufgefallen, dass die Steuerung über den 'zurück'-button sehr unelegant ist, und da kam mir die Idee, diese drei verschiedenen ALV's über 3 zusätzliche Buttons in der Toolbar anzusteuern.
Jetzt hab ich zwar einen Thread hier im Forum zu diesem Thema gefunden, kann aber ehrlich gesagt nicht viel damit anfangen.
Hat jmd eine Idee wie man das umsetzen könnte, oder nen Hinweis zu 'ner Doku. Könnte ich über dem Menu Painter drei Buttons anlegen, und dann jeweils pro Button auf ein anderes Form verweisen?
Wäre super, wenn mir jmd dabei helfen könnte, dann ist das Teil nämlich komplett fertig. Ärgerlich, diese Hürden kurz vor Schluss.
Schönes Wochenende euch allen.

Grüsse

Harald

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


Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
Hallo,

auf gehts 8)

1) neuen Status anlegen
2) Zusätze - Vorlage abgleichen:
unter: Vorlagestatus
Programm: SAPLKKBL
Status : STANDARD_FULLSCREEN

so, jetzt hast du einen eigenen Status, der gleich ausschaut wie der ALV-REUSE Status.
Hier deine eigenen Button(s) hinzufügen.

3) beim ALV Aufruf folgende Parameter befüllen

Code: Alles auswählen.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
   EXPORTING
      i_callback_pf_status_set          = 'SET_PF_STATUS'
      i_callback_user_command           = 'USER_COMMAND'
Hier kannst du narürlich auch andere Namen verwenden.
Wichtig ist nur: Großschreibung, und die FORM's die du noch anlegen mußt, müssen gleich heißen.

4) erste FORM

Code: Alles auswählen.

FORM set_pf_status USING rt_extab TYPE slis_t_extab.

  SET PF-STATUS 'ALV_NEU'.

ENDFORM.                                                 " SET_PF_STATUS
hier den Namen deines neuen Status übergeben. Zu diesem Zeitpunkt kannst du den Status auch noch bearbeitet. zB Buttons ausblenden.

5) zweite FORM

Code: Alles auswählen.

FORM user_command USING r_ucomm     LIKE sy-ucomm
                        rs_selfield TYPE slis_selfield.

  CASE r_ucomm.
hier Funktionscode auswerten.
r_ucomm = Funktionscode
rs_selfield = Daten über die Zeile des ALV die markiert (ausgewählt) ist.


das war mal die Schnelleinführung.
hoffentlich verständlich :lol:

mfg
Richard

Beispiele für ALV-Grid

Beitrag von mike81503 (ForumUser / 35 / 0 / 0 ) »
Hallo Harald,

schau doch mal in das Beispielprogramm BCALV_GRID_VERIFY und suche mit dem Stichwort 'toolbar'. Dort findest Du dann auch die Programmstellen, wie Du die Toolbar im ALV erweitern kannst (METHOD HANDLE_TOOLBAR_SET.) Den dort von Dir hinterlegten FCode musst Du dann nur noch in der Implementierung Deiner Eventreceiver Klasse abfragen (siehe CLASS LCL_EVENT_RECEIVER IMPLEMENTATION. METHOD HANDLE_USER_COMMAND.)
Vielleicht hilft das ja weiter.


Gruss Michael

P.S.: das mit dem Status finde ich persönlich nicht so toll, aber das ist ja Geschmackssache

Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
Hallo

@mike81503

ich dachte, wir reden von einem ALV - REUSE und nicht ALV - ABAP OBJECT

:roll:

mfg
Richard

Es funzt

Beitrag von Gast ( / / 0 / 3 ) »
Hy riffraff,
es funzt. Alter Schwede is das geil. Wie kommt man den bitte - ohne dieses coole Forum - auf die Namen SAPLKKBL bzw. STANDARD_FULLSCREEN? Das würde mich mal für die Zukunft interssieren.

Jetzt gibt es nur noch eine Optimierung. Wenn ich jetzt zwischen den verschiedenen ALV switche, und irgendwann beende will, dann bringt er mir noch einmal alle ALV's, die bisher angezeigt wurden. Dies ist aber überflüssig; besser wäre, wenn er gleich beenden würde. Könnte man das irgendwie verhindern?

Grüsse von der SAP Front,

Harald

Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
Hallo,

zu 1)
einen 'normalen' ALV starten, so wie du in vorher hattest.
System - Status
unter Programm(GUI) & Oberflächenstatus
steht's dann.

zu 2)
ungefähr so - würde da mal ansetzen (habs nicht ausprobiert)
in der FORM user_command beim BACK Button vom dritten ALV:
LEAVE PROGRAM.

mfg
Richard

Re: Zusatzbutton beim ALV Grid

Beitrag von Jorge (ForumUser / 36 / 0 / 0 ) »
Na, das ist ja Wahnsinn! Habe mich mal vor einiger Zeit damit beschäftigt und bin bisher davon ausgegangen, dass bei der REUSE-ALV ein zusätzliches Einfügen von Buttons+Function nicht möglich war. Dass man mit user-command Funktionen aus dem ALV-Grid aufrufen kann wusste ich, aber mit zusätzlichen Buttons: Das ist mir neu.

...jetzt habe ich das sogar auch verstanden. Es hat Click gemacht. Oh Mann, was war ich blöd!? Gut, dass es euch und dieses Forum gibt.

gruß jogi :wink:
learning by doing

Beitrag von black_adept (Top Expert / 4098 / 128 / 941 ) »
@Harald und Jorge

Das mit den zusätzlichen Buttons ist keine Hexerei. Wenn man sich mal die Mühe macht und in die Dokumentation schaut ( z.B. zu dem FB REUSE_ALV_GRID_DISPLAY ) und dort nicht auf der ersten Seite aufhört sondern sich auch mal die Erklärungen zu den Parametern ( insbes. dem Parameter "I_CALLBACK_PF_STATUS_SET ), dann hat SAP schon alle wesentlichen Dinge dort für alle sichtbar abgelegt.

Was fehlt, ist die Tatsache, dass die Doku noch vom "alten" Grid stammt - man somit nicht den Status aus der SALV sondern eben aus der FuGruppe, in der der Baustein "REUSE_ALV_GRID_DISPLAY" liegt - kopieren muss.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Beitrag von black_adept (Top Expert / 4098 / 128 / 941 ) »
Anonymous hat geschrieben: Jetzt gibt es nur noch eine Optimierung. Wenn ich jetzt zwischen den verschiedenen ALV switche, und irgendwann beende will, dann bringt er mir noch einmal alle ALV's, die bisher angezeigt wurden. Dies ist aber überflüssig; besser wäre, wenn er gleich beenden würde. Könnte man das irgendwie verhindern?
Die Frage ( und das damit verbundene Problem des Callstacks ) gabs schonmal:
http://www.abapforum.com/forum/viewtopic.php?t=3727
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Richtig

Beitrag von Gast ( / / 0 / 3 ) »
Jetzt hab ich zwar einen Thread hier im Forum zu diesem Thema gefunden, kann aber ehrlich gesagt nicht viel damit anfangen.
Hab ich doch geschrieben. :roll:

Doch noch ne Kleinigkeit

Beitrag von Gast ( / / 0 / 3 ) »
Jetzt ist mir doch noch letzte eine Kleinigkeit aufgefallen.
Wenn er erfolgreich auf den Selection-Screen zurück geht, und man dort auf 'Excel' bzw. 'Cancel' geht, dann geht er wieder zum letzten ALV zurück, obwohl er eigentlich das Programm komplett beenden sollte.
Ich habe probiert, ein 'LEAVE_Programm' beim at user-command zu machen. Der pfstatus ist dort wieder korrekt der 'RSSYSTDB' und dort greife ich die '&F12' und '&F15' ab, aber er will das Programm einfach nicht beenden. Ich verzweifle langsam.... :?:

Beitrag von RiffRaff (Specialist / 379 / 0 / 1 ) »
hallo,

daß liegt schlicht und einfach daran, daß F12 und F15 im USER-Command nicht verabeitet werden.

Lösung: da du ja schon einen eigenen Status hast - &F12 in zB &F12_U umbenennen.


In der Doku zum ALV, Parameter IT_EVENT_EXIT steht da eineiges.
Anmerkung: Die Funktionen 'Zurück (F3)', 'Beenden (F15)' und 'Abbrechen (F12)' sind KEINE Standardfunktionen des ALV sondern Systemfunktionen. Will die Anwendung auf diese reagieren (z.B. um eine Sicherheitsabfrage vor dem Verlassen der Liste durchzuführen), so müssen diese Funktionen durch eigene Funktionscodes der Anwendung belegt werden.
mfg
Richard

Seite 1 von 1

Vergleichbare Themen

4
Antw.
5130
Views
ALV Grid Sortierung aktualisieren im grid 1 und grid 2
von c oco » 06.02.2012 10:09 • Verfasst in ABAP Objects®
5
Antw.
4355
Views
1
Antw.
1855
Views
ALV Grid
von lisa » 17.09.2008 17:10 • Verfasst in ABAP® für Anfänger
2
Antw.
2552
Views
Row ID in ALV Grid
von Namp » 14.03.2006 13:19 • Verfasst in SAP - Allgemeines
2
Antw.
2265
Views
ALV Grid
von lisa » 08.09.2008 16:17 • 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

Aktuelle Forenbeiträge

Regex in where
vor 37 Minuten von edwin 1 / 5
Programm anlegen mit Vorlage
vor 4 Stunden von DeathAndPain 2 / 74
IT0024 Qualifikationen CP-ID
vor 5 Stunden von DeathAndPain 2 / 314
BUSOBJEKT zu CMIS PHIO ermitteln
vor 6 Stunden von snooga87 1 / 53

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

Regex in where
vor 37 Minuten von edwin 1 / 5
Programm anlegen mit Vorlage
vor 4 Stunden von DeathAndPain 2 / 74
IT0024 Qualifikationen CP-ID
vor 5 Stunden von DeathAndPain 2 / 314
BUSOBJEKT zu CMIS PHIO ermitteln
vor 6 Stunden von snooga87 1 / 53

Unbeantwortete Forenbeiträge

Regex in where
vor 37 Minuten von edwin 1 / 5
BUSOBJEKT zu CMIS PHIO ermitteln
vor 6 Stunden von snooga87 1 / 53
aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3228