edit alv user commonds

Well i going to cover all senario below topic
Reports     : Alv Reports, Classical Report And interactive Reports
Forms       : Scripts and Smart Forms Adove Forms
Interface   : RFC BAPI ALE/IDCS
Converstion : BDC LSMW BAPI


Enhancement : User-EXITS BADI, Customer Exit

FORM display_item USING ucomm TYPE sy-ucomm
                   selfield TYPE slis_selfield.             "#EC CALLED
******************************************************** this code captured the change request in alv reports ***********
  DATA: gd_repid LIKE sy-repid,
    ref_grid TYPE REF TO cl_gui_alv_grid.

  IF ref_grid IS INITIAL.
    CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
      IMPORTING
        e_grid = ref_grid.
  ENDIF.
  IF NOT ref_grid IS INITIAL.
    CALL METHOD ref_grid->check_changed_data.
  ENDIF.
***************************************************************************************************************************
  DATA: lt_final TYPE STANDARD TABLE OF ty_final,
        ls_final TYPE                   ty_final.
  CASE ucomm.
    WHEN 'UPDATE'.
      LOOP AT gt_final INTO gs_final WHERE check = 'X'.

        UPDATE zvbak_table SET

        vbeln = gs_final-vbeln
        ernam = gs_final-ernam
        trvog = gs_final-trvog
        auart = gs_final-auart
        augru = gs_final-augru
        lifsk = gs_final-lifsk
        faksk = gs_final-faksk
        WHERE vbeln = gs_final-vbeln.
      ENDLOOP.
      IF  sy-subrc IS INITIAL.

        MESSAGE  text-032 TYPE 'I'.

      ELSE.
        MESSAGE text-033 TYPE 'I'.
      ENDIF.



    WHEN '&DATA_SAVE'.
      LOOP AT gt_final INTO gs_final WHERE check = 'X'.

        UPDATE zvbak_table SET

        vbeln = gs_final-vbeln
        ernam = gs_final-ernam
        trvog = gs_final-trvog
        auart = gs_final-auart
        augru = gs_final-augru
        lifsk = gs_final-lifsk
        faksk = gs_final-faksk
        WHERE vbeln = gs_final-vbeln.
      ENDLOOP.
      IF  sy-subrc IS INITIAL.

        MESSAGE  text-032 TYPE 'I'.

      ELSE.
        MESSAGE text-033 TYPE 'I'.
      ENDIF.
    WHEN  'SELECTALL'.
      LOOP AT gt_final INTO gs_final.
        gs_final-check = 'X'. " ' '.
        MODIFY gt_final FROM gs_final TRANSPORTING check.
        COMMIT WORK.
      ENDLOOP.
      selfield-refresh = 'X'.
    WHEN  'DESELECT'.
      LOOP AT gt_final INTO gs_final.
        gs_final-check = ' '. " ' '.
        MODIFY gt_final FROM gs_final TRANSPORTING check.
        COMMIT WORK.
      ENDLOOP.
      selfield-refresh = 'X'.
    WHEN   'UPLODEDATA'.
      lt_final = gt_final.
      DELETE lt_final WHERE check <> 'X'.
      PERFORM uplode TABLES lt_final.
      IF gt_sucess IS NOT INITIAL.
        PERFORM display_sucess TABLES gt_sucess.
        CLEAR gt_sucess.
      ENDIF.
      IF gt_error IS NOT INITIAL.
        PERFORM display_error  TABLES gt_error.
        CLEAR gt_error.
      ENDIF.
  ENDCASE.
ENDFORM.                    "display_item

Comments

Popular posts from this blog

all user exit mv45afzz (implicit user exit )

MB_MIGO_BADI THIS BADI USED TO POSTING DATA IN MIGO

Long Text in input and output field in module pool