ABAP : OO-ALV nicht immer aktualisiert

Ich weiß, mein problem wurde gebeten, hundert mal.
Aber ich kann immer noch nicht finden eine geeignete Lösung für mich

  1. Ich habe ein dropdown, jedes mal, wenn ich Daten ändern in der dropdown geladen werden, die neuen Daten basierend auf den dropdown-Daten
  2. Aus Schritt eins, ich aktualisieren editierbaren ALV
  3. Jede änderung in editierbaren ALV willbe gespeichert (eine weitere Aktion für die Rettung)

Mein problem, wenn, Nachdem ich speichern, ich kann nicht aktualisieren, mein ALV
Aber es ist kein problem wenn ich nicht gedrückt Schaltfläche speichern

Bitte bitte helft mir
Dank

Angefügten Code
Schritt 1 ist "wenn SET_P" in diesem code

HINWEIS :
jemand aus SAP-forum gesagt, mich zu bewegen refresh-Funktion der PBO habe ich versucht, dieses aber noch nicht

MODULE pbo_1000 OUTPUT.
   IF flag = 0.
     SET PF-STATUS '1000'.
     SET TITLEBAR  '1000'.

     s_name = sy-uname.
     s_date = sy-datum.

     IF s_month IS INITIAL AND s_year IS INITIAL.
       s_month = sy-datum+4(2).
       s_year = sy-datum(4).
     ENDIF.


     PERFORM create_toolbar.
     PERFORM create_catalog.
     PERFORM select_data.

     CREATE OBJECT ob_custom
       EXPORTING
         container_name = 'CCTRL'.
     CREATE OBJECT ob_grid
       EXPORTING
         i_parent      = ob_custom
         i_appl_events = 'X'.


     PERFORM create_dropbox.
     CALL METHOD ob_grid->set_table_for_first_display
       EXPORTING
         i_structure_name     = 'TYPE'
         it_toolbar_excluding = lt_toolbar
         is_layout            = lyt
       CHANGING
         it_fieldcatalog      = fld[]
         it_outtab            = itab[].

     CALL METHOD ob_grid->set_ready_for_input
       EXPORTING
         i_ready_for_input = 1.

     CALL METHOD ob_grid->register_edit_event
       EXPORTING
         i_event_id = cl_gui_alv_grid=>mc_evt_enter.

   ENDIF.
ENDMODULE.   




PAI Module



MODULE user_command_1000 INPUT .
   DATA: v_perio(6) TYPE c.


   CASE sy-ucomm.
     WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
       LEAVE TO SCREEN 0.
     WHEN 'SAVE'.
       PERFORM save_data.
       PERFORM send_email.

     WHEN 'SET_S'.
       flag = 1.
       PERFORM set_status.
       CALL METHOD ob_grid->refresh_table_display
         EXPORTING
           is_stable = stbl.

     WHEN 'SET_P'.
       flag = 1.
       PERFORM select_data.
       CALL METHOD ob_grid->refresh_table_display
         EXPORTING
           is_stable      = stbl.






   ENDCASE.
ENDMODULE. 
InformationsquelleAutor yukou | 2015-03-05
Schreibe einen Kommentar