bei Klick auf Icon oder Doppelklick in Zeile, TA ausführen

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

Getting started ... Alles für einen gelungenen Start.
30 Beiträge • Seite 1 von 2 (current) Nächste
30 Beiträge Seite 1 von 2 (current) Nächste

bei Klick auf Icon oder Doppelklick in Zeile, TA ausführen

Beitrag von Alexi ( / / 0 / 3 ) »
Hallo,

bezugnehmend auf ..

http://www.abapforum.com/forum/viewtopic.php?t=3354

interessiert mich, wie ich ein Icon in eine ALV-Struktur einbinden und bei Klick auf das Icon eine Transaktion ausführen kann?!

Alternativ würde mich interessieren, welches Ereigniss den Doppelklick auf eine Zeile abfragt und ob ich dies auch in einer ALV-Struktur verwenden kann

Vielleicht kann mir hier jemand behilflich sein, wäre super nett von euch!

Danke, Alexi

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


Beitrag von Alexi ( / / 0 / 3 ) »
nochmal hoch damit...

danke!

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Moinsen.

Das Icon bekommst Du, wenn Du die Spalte über den Feldkatalog als Ikonenspalte deklarierst: ICON = 'X'.

Für die Interaktion kannst Du folgende Ereignisse nehmen:
- DOUBLE_CLICK
- HOTSPOT_CLICK

Für letzteren musst Du im Feldkatalog die Spalte als Hotspot deklarieren (HOTSPOT = 'X').

Hope this helps.

Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Beitrag von Alexi ( / / 0 / 3 ) »
Hallo,

danke für deine Antwort. Kannst du mir sagen, wo ich genau "Spalte über den Feldkatalog als Ikonenspalte" deklarieren muss? Das ist mir nicht klar geworden..

Dankeschööön!

Alexi

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
im Feldkatalog (Typ z.B. LVC_S_FCAT) zur entsprechenden Spalte gibt es ein Feld ICON, dass auf 'X' gesetzt werden muss.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Haubi (Expert / 625 / 20 / 30 ) »
Moinsen.

Nach der Erstellung des Feldkatalogs suchst Du Dir die Spalte heraus, die als Icon formatiert werden soll und setzt dort ICON = 'X'.

Code: Alles auswählen.

FIELD-SYMBOLS
    : <ls_fcat> TYPE lvc_s_fcat
    .
<...>
READ TABLE gt_fcat
     ASSIGNING <ls_fcat>
     WITH KEY fieldname = <feldname der Icon-Spalte>.
MOVE 'X' TO <ls_fcat>-icon.
Gruss,
Haubi
Das ABAP Kochbuch ab sofort bei Amazon...

I'd rather write code that writes code than write code...

Beitrag von Alexi ( / / 0 / 3 ) »
Hallo,

danke abermals für eure Antworten.

Ich hab jetzt den in dem verlinkten Thread stehenden Report so geändert, dass ich in Z004 ein Feld "REPS" hinzugefügt habe und hab dann in das Unterform "FORM fieldcat_init" folgendes ans Ende eingefügt...

FIELD-SYMBOLS
: <ls_fcat> TYPE lvc_s_fcat.

READ TABLE fieldcat
ASSIGNING <ls_fcat>
WITH KEY fieldname = 'REPS'.
MOVE 'X' TO <ls_fcat>-icon.


Beim Prüfen erhalte ich dann die Fehlermeldung

Der (Zeilen-)Typ von "<LS_FCAT>" muß zu einem der Typen "SLIS_FIELDCAT_ALV" kompatibel sein.

?? :roll:

Gruß, Alexi

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

der Fehler wird wohl sein, daß du deinen Fieldkatalog anders deklariert hast.

Code: Alles auswählen.

* STRUKTUREN ---------------------------------------------------- * 
DATA: fieldcat TYPE slis_t_fieldcat_alv, 
probier mal:

Code: Alles auswählen.

FIELD-SYMBOLS: <ls_fcat> TYPE lvc_s_fcat. 
in

Code: Alles auswählen.

FIELD-SYMBOLS: <ls_fcat> TYPE slis_fieldcat_alv.
umzuändern


mfg
Richard

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
oder auch:

Code: Alles auswählen.

FIELD-SYMBOLS: <ls_fcat> LIKE LINE OF fieldcat.
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Gast ( / / 0 / 3 ) »
halli hallo ihr hilfreichen Spezis :-)

Code Überprüfung läuft jetzt ohne Fehler durch, nur krieg ich beim ausführen dann einen Dump..

"Feldsymbol ist noch nicht zugewiesen."

Da sag ich doch glatt .. "da hat er wohl recht". Weil .. wo muss ich denn eigentlich mitteilen, welches Symbol angezeigt werden soll?? Daaaanke!!

Gruß, Alexi

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo Alexi,

gibt es denn eine Spalte mit dem Feldnamen 'REPS' in Deinem Feldkatalog?
In Deinem Bespiel wird nämlich nicht geprüft, ob der READ überhaupt erfolgreich war...

Code: Alles auswählen.

READ TABLE gt_fcat 
     ASSIGNING <ls_fcat> 
     WITH KEY fieldname = <feldname der Icon-Spalte>. 
IF sy-subrc EQ 0. "<<<=== sollte man bei Feldsymbolen schon generell prüfen
  MOVE 'X' TO <ls_fcat>-icon.
ENDIF.
Was sagt denn der Dump über die Stelle im Coding, an der er versucht, auf das nicht-zugewiesene Feldsymbol zuzugreifen?
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Alexi ( / / 0 / 3 ) »
Hallo ereglam,

die Spalte "Reps" gab's, allerdings an der falschen Stelle. Hab's nun korrigiert und kriege auch ohne Fehlerprüfung (bzw. sy-subrc Abfrage) keinen Dump mehr; das funktioniert also soweit anscheinend.

Kannst du mir jetzt noch verraten, wie ich ein Icon an die entsprechende Stelle bekomme und wie ich beim Klick dann eine Transaktion ausführen kann??

Tausend Dank!

Gruß, Alexi

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo Alexi,

die Icons musst Du beim Aufbau der Datentabelle in der jeweiligen Zeile setzen. Dazu deklarierst Du den TYPE-POOL 'icon' in Deinem Programm.
Im einfachsten Fall weist Du dem Feld REPS dann das entsprechende Icon zu.

Code: Alles auswählen.

wa-reps = icon_red_light. "rote Ampel
Eine Liste der Icons kannst Du Dir unter 'Umfeld -> Beispiele -> Ergonomie-Beispiele -> Liste => Liste der Icons in Listen' anschauen.

Das Aufrufen einer Transaktion hat Haubi bereits weiter oben z.T. (Hotspot) beschrieben.
Dazu ist eine Event-Handler-Klasse anzulegen, die die entsprechenden Ereignisse abhandelt.
(such mal nach 'event handler' für weitere Threads zum Thema)
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von Alexi ( / / 0 / 3 ) »
Hallo,

puuuh, ganz schön starker Tobak für mich. Also, Icon in der Liste hab ich und beim drüberfahren mit dem Mauscursor erhalte ich jetzt auch die "Hand"; das mit dem Hotspot scheint also soweit auch zu klappen.

Nur mit dem "Event-Handler-Klasse" anlegen komm ich nicht weiter. Ich hab die Forum-Suche schon mit allen möglichen Suchbegriffen gequält, aber weitergeholfen hat mir das nicht :-(

Ich weiß, es ist viel verlangt, aber könntest du (oder auch jemand anderes) mir das vielleicht nochmal erläutern? Ggf. sogar anhand meines Reports?

Tausend Dank!!

Gruß, Alexi

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

mal ne Zwischenfrage (habs nirgends gelesen):
Hast du einen ALV (REUSE) oder einen ALV (ABAP OO)

bei REUSE brauchst du keine "Event-Handler-Klasse" :lol:

mfg
Richard

Vergleichbare Themen

6
Antw.
4579
Views
Programm wird beendet bei Klick auf Icon
von Lucyalison » 14.01.2015 09:57 • Verfasst in Dialogprogrammierung
2
Antw.
6271
Views
AT LINE SELECTION - Doppelklick auf einzelne Zeile
von becker » 01.03.2010 17:19 • Verfasst in ABAP® für Anfänger
3
Antw.
5381
Views
Alv Grid Zeile mit Icon + Text
von Elmo » 14.09.2007 20:00 • Verfasst in ABAP Objects®
2
Antw.
3217
Views
Web Dynpro ALV: Icon wird nicht als Icon dargestellt
von Thanatos82 » 13.02.2013 10:49 • Verfasst in ABAP® für Anfänger
1
Antw.
1731
Views
Liest READ Zeile für Zeile oder aufeinmal
von bohne » 26.11.2006 16:46 • Verfasst in ABAP® für Anfänger

Ü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.