Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Problem with ALV grid in edit mode

Former Member
0 Likes
650

Hello, gurus!

I have a problem with ALV-grid. Sometimes when I call F4 help for a cell, data is inserted in a different cell. And when I call check_changed_data method, my internal table (passed to ALV-control in set_table_for_first_display) does not updates properly. In what can be a problem?

Thanks,

Mikhail

Hello, gurus!

I have a problem with ALV-grid. Sometimes when I call F4 help for a cell, data is inserted in a different cell. And when I call check_changed_data method, my internal table (passed to ALV-control in set_table_for_first_display) does not updates properly. In what can be a problem?

Thanks,

Mikhail

2 REPLIES 2
Read only

Former Member
0 Likes
512

Helllo Mikhail ,

its better to paste your codings here .

Read only

Former Member
0 Likes
512

Hi Prabhu,

MODULE pbo_100 OUTPUT.

  SET PF-STATUS 'MAIN100'.
  title_of_report = text-010.
  SET TITLEBAR '0100' WITH title_of_report.

  DATA: g_event_receiver TYPE REF TO lcl_event_handler.

  IF z_custom_container IS INITIAL .

    CREATE OBJECT z_custom_container
      EXPORTING
        container_name = 'ALV_ZAC'.

    CREATE OBJECT alv_grid
      EXPORTING
        i_parent = z_custom_container.


    g_repid = sy-repid.
    gs_variant-report = g_repid.
    x_save = 'A'.

    PERFORM check_alv_grid_fields.
    ps_layout-cwidth_opt = 'X'.
    ps_layout-edit = 'X'.

    CALL METHOD alv_grid->set_ready_for_input
      EXPORTING
        i_ready_for_input = '1'.

*    CALL METHOD alv_grid->register_edit_event
*      EXPORTING
*        i_event_id = cl_gui_alv_grid=>mc_evt_enter.

    APPEND   s_list_rec   to it_list_rec.

    CALL METHOD alv_grid->set_table_for_first_display
      EXPORTING
        is_layout       = ps_layout
        is_variant      = gs_variant
        i_save          = x_save
      CHANGING
        it_fieldcatalog = pt_fieldcat
        it_outtab       = it_list_rec[]. 


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

    CALL METHOD alv_grid->register_edit_event
      EXPORTING
        i_event_id = cl_gui_alv_grid=>mc_evt_modified.
ENDIF.

FORM check_alv_grid_fields .
  DATA: ls_fcat LIKE LINE OF pt_fieldcat.
 
 REFRESH pt_fieldcat .
 CLEAR: ps_layout, ls_fcat.

  ls_fcat-fieldname = 'VBELN'.
  ls_fcat-ref_field = 'VBELN'. ls_fcat-ref_table =  'LIPS'. " .
  ls_fcat-outputlen = 9.
*  ls_fcat-datatype   = 'CHAR'.
*  ls_fcat-inttype    = 'C'.

  APPEND  ls_fcat TO pt_fieldcat.
  CLEAR: ls_fcat.

  ls_fcat-fieldname = 'ERDAT'.
  ls_fcat-ref_field = 'ERDAT'. ls_fcat-ref_table = 'LIPS'.
  ls_fcat-outputlen = 9.
*  ls_fcat-f4availabl = 'X' .
*  ls_fcat-datatype   = 'DATS'.
*  ls_fcat-inttype    = 'D'.

  APPEND ls_fcat TO pt_fieldcat.
  CLEAR: ls_fcat.

ENDFORM.                    " check_alv_grid_fields

.....

FORM save_p .
  CLEAR l_valid.
  CALL METHOD alv_grid->check_changed_data
    IMPORTING
      e_valid = l_valid.
  IF l_valid IS INITIAL.
    CALL FUNCTION 'POPUP_TO_INFORM'
      EXPORTING
        titel = text-i01
        txt1  = text-i02
        txt2  = text-i03
        txt3  = text-i04.
  ELSE.
    i_dat_reg = zrumm_prr-cdprr.
    CLEAR is_temp_otc.

    freshit i_prrpus_fax.
    freshit i_list2_ot.

    LOOP AT it_list_rec INTO s_list_rec.
      MOVE-CORRESPONDING s_list_rec TO i_list2_ot. 
      i_list2_ot-fgrup = 'RECE'.
      i_list2_ot-prrnu = i_num_prr. 
      APPEND i_list2_ot.
      MOVE-CORRESPONDING s_list_rec TO i_prrpus_fax.
      APPEND i_prrpus_fax.
    ENDLOOP.


  ENDIF.

Edited by: Mikhail Sarychev on Mar 16, 2011 6:41 AM

Edited by: Mikhail Sarychev on Mar 16, 2011 6:49 AM

Edited by: Mikhail Sarychev on Mar 16, 2011 6:49 AM