Page 1 of 2

ALV: Cursor bleibt in Toolbar

PostPosted: Wed May 15, 2013 9:29 am
by Ellen1902
Hallo zusammen.
In der GUI-Version 730 gibt es ein "feature" :evil: das wir gerne umgehen würden.
Wir haben ein eingabebereites ALV und erzeugen über die Toolbar eine neue Zeile.
Mit GUI 720 steht der Cursor automatisch in der neuen Zeile. Ab 730 bleibt der Cursor auf dem
"neue Zeile Button" stehen. Lt. SAP (via Marketplace-Meldung) ist das gewollt um mit der
Leertaste die gewählte Funktion zu wiederholen :roll: .
Hat jemand eine Idee wie man den Cursor in die neue Zeile stellen kann?
Danke schon mal für die Unterstützung!
Viele Grüße
Heiko

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 6:03 am
by Jonny2227
Sali,

welchen ALV benutzt ihr - FUBA oder Classe CL_GUI_ALV_GRID oder CL_SALV_TABLE ?

Gruss Jens

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 7:37 am
by Ellen1902
Hallo Jens,

wir nutzen die Classe CL_GUI_ALV_GRID.

Heiko

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 8:16 am
by Jonny2227
Sali,

schon mal mit der Methode - set_current_cell_via_id - versucht ?

Gruss Jens

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 8:54 am
by Ellen1902
Hallo,
das Problem ist, dass nach dem click auf die Toolbar kein PAI ausgelöst wird. Das Programm merkt also nicht, dass eine Zeile eingefügt wurde.
Teste mal mit BCALV_EDIT_04.

Heiko

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 9:16 am
by Jonny2227
Sali,

und wenn du dann den Funktionscode für den Insert als Usercommand definierst - dann mit der Methode APPEND_ROWS - Zeilen anhängen und dann kannst du mit dem Handler für after_user_command - darauf reagieren.

Gruss Jens

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 11:07 am
by Ellen1902
Hallo Jens,

also ich habe jetzt einen zusätzlichen Button in der Toolbar eingebaut. APPEND_ROWS klappt.
Mit set_current_cell_via_id wird der Focus auf die richtige Zeile / Zelle gesetzt, allerdings bleibt der Curosr auf der Toolbar.
Shitkram!!

Heiko

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 11:16 am
by Jonny2227
Sali,

hast du auch den Refresh für das Display noch mit gegeben oder das Ganze noch kombinieren mit der Zeilenselektion und dem Refresh fürs Display ?

Gruss Jens

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 11:33 am
by Ellen1902
Also in der Methode on_user_command habe ich das hier eingebaut:

Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.   DATA: line TYPE lvc_s_row,
  2.         colu TYPE lvc_s_col,
  3.         roid TYPE lvc_s_roid,
  4.         stbl TYPE lvc_s_stbl.
  5.  
  6.   CHECK p_ucomm = 'INS'.
  7.  
  8.   g_grid->append_rows( ).
  9.  
  10.   roid-row_id = line-index = lines( gt_outtab ) + 1 .
  11.   colu-fieldname = 'PRICE'.
  12.   g_grid->set_current_cell_via_id(
  13.     EXPORTING
  14.       is_row_id    = line      " Zeile
  15.       is_column_id = colu      " Spalte
  16.     is_row_no    =   roid  ) . " Numerische Zeilen ID
  17.  
  18.   stbl-row = abap_true.
  19.   stbl-col = abap_true.
  20.  
  21.   g_grid->refresh_table_display(
  22.     EXPORTING
  23.       is_stable      = stbl    " zeilen-/spaltenstabil
  24.       i_soft_refresh = abap_true    " Ohne Sortierung, Filter, etc.
  25.     EXCEPTIONS
  26.       finished       = 1
  27.       OTHERS         = 2 ).
  28.  
GeSHi ©


Ergebnis: refresh_table_display löscht die gerade neu hinzugefügte Zeile...

Re: ALV: Cursor bleibt in Toolbar

PostPosted: Thu May 16, 2013 11:41 am
by Jonny2227
Sali,

und Zeilenstabil = false oder gar den Refresh erst im Eventhandler - zu after_user_command ?

Gruss Jens