cl_gui_alv_grid --> Werte werden nicht gespeichert

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).

cl_gui_alv_grid --> Werte werden nicht gespeichert

Postby Laurens818 » Mon May 14, 2012 7:35 pm

Hallo liebe Leute,

ich habe einen eingabereiten ALV. Wenn ich in diesem die Werte einer bestimmten Spalte ändere und anschließend speichern möchte, werden die geänderten Daten nicht übernommen :(

Also ich habe die Werte geändert und führe anschließend einen beliebigen USER_COMMAND aus.
Danach setzt es mir die Werte wieder zurück und ich weiß nicht so recht wieso :?

Hier mal das coding für meinen ALV:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. DATA: ls_fcat TYPE lvc_s_fcat.
  2.  
  3.   IF gref_container IS NOT BOUND.
  4.     CREATE OBJECT gref_container
  5.       EXPORTING
  6.         container_name = 'CCONTROL'.
  7.  
  8. * ALV-Objekt erstellen
  9.     CREATE OBJECT gref_alv_grid
  10.       EXPORTING
  11.         i_parent = gref_container.
  12.  
  13. * ALV eingabefähig machen
  14.     CALL METHOD gref_alv_grid->set_ready_for_input
  15.       EXPORTING
  16.         i_ready_for_input = 1.
  17.  
  18. * Feldkatalog setzen
  19.     CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
  20.       EXPORTING
  21.         i_structure_name = 'DDIC_STRUKTUR'
  22.       CHANGING
  23.         ct_fieldcat      = gt_feldkatalog.
  24.  
  25. * Eigenschaften für die Spalten der Ausgabetabelle festlegen
  26.     LOOP AT gt_feldkatalog INTO ls_fcat.
  27.       CASE ls_fcat-fieldname.
  28.         WHEN 'STATUS'.
  29.           ls_fcat-coltext = 'Status'.
  30.           ls_fcat-tooltip = 'Status'.
  31.           ls_fcat-edit    = abap_true.
  32.         WHEN 'LANGTEXT'.
  33.           gs_layout-cwidth_opt = abap_true.
  34.         WHEN 'RELEVANZ'.
  35.           ls_fcat-coltext = 'Relevanz'.
  36.           ls_fcat-tooltip = 'Relevanz'.
  37.       ENDCASE.
  38.       MODIFY gt_feldkatalog FROM ls_fcat.
  39.     ENDLOOP.
  40.  
  41.   ENDIF. " container is not bound . . .
  42.  
  43. * Toolbar ausblenden
  44.   gs_layout-no_toolbar = abap_true.
  45.  
  46.   CALL METHOD gref_alv_grid->set_table_for_first_display
  47.     EXPORTING
  48.       i_structure_name = 'DDIC_STRUKTUR'
  49.       is_layout        = gs_layout
  50.     CHANGING
  51.       it_outtab        = gt_outtab
  52.       it_fieldcatalog  = gt_feldkatalog.
  53.  
  54. * ALV Refresh
  55.   CALL METHOD gref_alv_grid->refresh_table_display.
  56.  
GeSHi ©


Habe ich etwas übersehen?
Ich bin auch bei jedem USER_COMMAND sofort mit /h in den Debugger gesprungen und habe mir die Tabelle angeschaut. Daten wurden nicht geändert :?

Für jegliche Hinweise bin ich euch sehr dankbar :)
Laurens818
..
..
 
Posts: 50
Joined: Sat Oct 22, 2005 9:06 pm

Re: cl_gui_alv_grid --> Werte werden nicht gespeichert

Postby Jonny2227 » Tue May 15, 2012 8:01 am

Sali,

hat es in deinem Programm zum einen die Registrierung der Change Events (z.Bsp. DATA_CHANGED) und zum Anderen dann einen entsprechenden Event Handler dann auf diese Events ?

Gruss Jens
Jonny2227
....
....
 
Posts: 605
Joined: Wed Mar 01, 2006 3:16 pm

Re: cl_gui_alv_grid --> Werte werden nicht gespeichert

Postby Laurens818 » Mon May 21, 2012 2:53 pm

Hallo Jens,

ahh, genau das war mein Problem :)
Habe dazu auch im Tricktrseor noch was finden können:
http://www.tricktresor.de/content/index ... 23&aID=385

Interessant ist jetzt nur noch herauszufinden, wie beim Druck auf einen Button die Daten auch übernommen bleiben. Aber da werde ich sicherlich noch dahinter steigen :)
Hat ja mit der Methode CHECK_CHANGED_DATA zu tun...

Vielen Dank erstmal :)
Laurens818
..
..
 
Posts: 50
Joined: Sat Oct 22, 2005 9:06 pm


Return to ABAP Objects®

Who is online

Users browsing this forum: No registered users and 3 guests