How to group data in ALV grid display

Hello Experts,
I am using REUSE_ALV_GRID_DISPLAY to display my data.
here, I am using SLIS_T_FIELDCAT_ALV to create field catalog.
My requirement is data of 1 field/column in ALV had to be displayed by grouping.
Is there any field any fieldcatalog which I can set so that data will be displayed as after grouping.
I had searched a lot but found solution for OO ALV but not for function modules.
Edited by: shubh_ag on Sep 2, 2011 4:38 PM

Hi shubh,
try this,
* Declarations related to ALV Display
TYPE-POOLS : slis.
DATA : gt_fcat TYPE slis_t_fieldcat_alv ,
       gs_fcat TYPE slis_fieldcat_alv,
       list_gt_fcat TYPE slis_t_fieldcat_alv ,
       list_gs_fcat TYPE slis_fieldcat_alv,
       gt_listheader TYPE slis_t_listheader,
       gs_listheader TYPE slis_listheader,
       gs_layout TYPE slis_layout_alv,
       list_gs_layout TYPE slis_layout_alv,
       gs_wvar TYPE i VALUE 1.
DATA: gt_events           TYPE slis_t_event,
      gs_events           LIKE LINE OF gt_events,
      gt_sort             TYPE  slis_t_sortinfo_alv,
      gs_sort             TYPE slis_sortinfo_alv.
DATA:gs_ovar TYPE disvariant.
FORM alv_display .
  PERFORM field_catalog.
  PERFORM display_data.
ENDFORM.                    " ALV_DISPLAY
*&      Form  FIELD_CATALOG
      text
-->  p1        text
<--  p2        text
FORM field_catalog .
  gs_fcat-col_pos   = gs_wvar.
  gs_fcat-tabname   = 'GT_FINAL'.
  gs_fcat-fieldname = 'MATERIAL'.
  gs_fcat-do_sum    = 'X'.
  gs_fcat-seltext_m = text-001.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'DESCRIPTION'.
  gs_fcat-seltext_m = text-011.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'TYPE'.
  gs_fcat-seltext_m = text-002.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'UOM'.
  gs_fcat-seltext_m = text-003.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'PLANT'.
  gs_fcat-do_sum    = 'X'.
  gs_fcat-seltext_m = text-004.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'PURCHASING_GROUP'.
  gs_fcat-seltext_m = text-005.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'MRP_TYPE'.
  gs_fcat-seltext_m = text-006.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'MRP_CONTROLLER'.
  gs_fcat-seltext_m = text-007.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'SPECIAL_PRO '.
  gs_fcat-seltext_m = text-008.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos = gs_wvar.
  gs_fcat-tabname = 'GT_FINAL'.
  gs_fcat-fieldname = 'STORAGE_LOCATION'.
  gs_fcat-seltext_m = text-009.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_fcat-col_pos   = gs_wvar.
  gs_fcat-tabname   = 'GT_FINAL'.
  gs_fcat-fieldname = 'UNRESTRCITED_STOCK'.
  gs_fcat-do_sum    = 'X'.
  gs_fcat-seltext_m = text-010.
  gs_fcat-emphasize = 'C510'.
  gs_fcat-fix_column = 'X'.
  APPEND gs_fcat TO gt_fcat.
  CLEAR gs_fcat.
  ADD 1 TO gs_wvar.
  gs_sort-fieldname = 'MATERIAL'.
  gs_sort-tabname = 'GT_FINAL'.
  gs_sort-subtot = 'X'.
  APPEND gs_sort TO gt_sort.
  gs_sort-fieldname = 'PLANT'.
  gs_sort-tabname = 'GT_FINAL'.
  gs_sort-subtot = 'X'.
  APPEND gs_sort TO gt_sort.
ENDFORM.                    " FIELD_CATALOG
*&      Form  DISPLAY_DATA
      text
-->  p1        text
<--  p2        text
FORM display_data .
  DATA:c_top  TYPE slis_formname.
  c_top  = 'TOP'.
" For avoiding EPC warnings
CLEAR sy-index.
IF sy-index EQ 1.
  PERFORM top.
ENDIF.
  gs_layout-zebra = 'X'.
  gs_layout-colwidth_optimize = 'X'.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program      = sy-cprog
      i_callback_user_command = 'USER_COMMAND'
      i_callback_top_of_page  = c_top
      is_layout               = gs_layout
      it_fieldcat             = gt_fcat[]
      it_sort                 = gt_sort
      i_default               = 'X'
      i_save                  = 'U'
      is_variant              = gs_ovar
    TABLES
      t_outtab                = gt_final
    EXCEPTIONS
      program_error           = 1
      OTHERS                  = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
ENDFORM.                    " DISPLAY_DATA
Regards,
Abhisek

Similar Messages

  • Leading Zeros Missing - When exporting data from ALV grid display to Excel

    Hi,
    Am exporting the data from ALV GRID DISPLAY to Excel sheet using standard toolbar icon 'Local file'
    the leading zeros displayed in the ALV output is missing in the EXCEL sheet.
    (eg)  in ALV o/p - 0029. 
            in Excel - Only 29 is appearing.
    As per the requiement i have to show the leading zeros in excel also.
    Pls help on this issue.
    Thanks in advance..

    Hi ,
      Please set the property  :
      wa_fieldcat-lzero = 'X' .
    when you are creating field catalog for display alv data .
    your prob will solved .
    Regards ,
    Nilesh Jain

  • How to give space in ALV grid display

    Hi,
    I have developed one report using alv grid.
    Iam getting details like this.
    ABCD  |12345|34567|
    |35363|74567|
    but i want like this
    ABCD   <b>here i want space</b>
    |12345|34567|
    |35363|74567|
    how to give space?
    points guaranteed
    cheers
    kaki

    Hi experts,
    Iam trying to get the output like in this report
    BALVHD01
    for example: ID & No iam getting in the same line.I want to group the numbers for the particular ID.
    In my code ID is 'STEXT'
    and  NO is 'QMNUM'.
    this is my code.
    REPORT  YET_DISPLAYCOST
                MESSAGE-ID  ZM
                NO STANDARD PAGE HEADING
                LINE-SIZE 200.
    TYPE-POOLS: SLIS.
    TABLES: QPCT,
            QPGT,
            QMEL,
            QMMA,
            IHPA,
            JEST,
            HRP1000.
    DATA: FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
          ITAB_EXTAB   TYPE SLIS_T_EXTAB.
    DATA :
      I_FIELDCAT         TYPE SLIS_T_FIELDCAT_ALV,
      S_FIELDCAT         TYPE SLIS_FIELDCAT_ALV  ,
      G_USER_COMMAND     TYPE SLIS_FORMNAME VALUE 'USER_COMMAND' ,
      G_TOP_OF_PAGE      TYPE SLIS_FORMNAME VALUE 'T_TOP_OF_PAGE',
      I_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER WITH HEADER LINE,
      I_EVENTS           TYPE SLIS_T_EVENT WITH HEADER LINE,
      S_EVENT            TYPE SLIS_ALV_EVENT ,
      S_LAYOUT           TYPE SLIS_LAYOUT_ALV,
      IT_SORT            TYPE SLIS_T_SORTINFO_ALV.
    *to remove sort buttons on the tool bar
    DATA : EX TYPE SLIS_T_EXTAB.
    DATA : EXWA TYPE SLIS_EXTAB.
    DATA: LS_LINE TYPE SLIS_LISTHEADER.
    DATA: I_FCALV TYPE SLIS_FIELDCAT_ALV OCCURS 0 WITH HEADER LINE.
    DATA:F_TDOBJECT LIKE THEAD-TDOBJECT,
         F_TDNAME   LIKE THEAD-TDNAME,
         F_TDID     LIKE THEAD-TDID,
         ITAB_LINES LIKE tline OCCURS 0 WITH HEADER LINE.
    DATA:BEGIN OF ITAB OCCURS 10,
          QMNUM LIKE QMEL-QMNUM,
            DESC(72),
         END OF ITAB.
    DATA: BEGIN OF T_HDR OCCURS 0,
           QMNUM LIKE QMEL-QMNUM,
          PARNR LIKE IHPA-PARNR,
          OBJID LIKE HRP1000-OBJID,
           STEXT LIKE HRP1000-STEXT,
          END OF T_HDR.
    DATA: BEGIN OF T_DET OCCURS 10,
           SNO TYPE I,
           QMNUM LIKE QMEL-QMNUM,
           QMTXT LIKE QMEL-QMTXT,
           QMGRP LIKE QMEL-QMGRP,
           QMCOD LIKE QMEL-QMCOD,
           PARNR LIKE IHPA-PARNR,
           OBJNR LIKE QMEL-OBJNR,
           STEXT LIKE HRP1000-STEXT,
           DESC(72),
           COST(20),
          END OF T_DET.
    DATA: T_FINAL LIKE T_DET OCCURS 0 WITH HEADER LINE.
    DATA: SNO(3).
    DATA: CHK2(4).
    DATA: V_REPID TYPE SY-REPID.
    SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-001.
    SELECT-OPTIONS:S_QMNUM FOR QMEL-QMNUM,
                      S_QMART FOR QMEL-QMART,
                      S_QMDAT FOR  QMEL-QMDAT.
    SELECTION-SCREEN END OF BLOCK A1.
    START-OF-SELECTION.
      PERFORM GET_DATA.
      PERFORM DISPLAY_ALV.
    END-OF-SELECTION.
    *&      FORM  GET_DATA
          TEXT
    FORM GET_DATA.
      DATA: G_STEXT LIKE T_DET-STEXT.
    *TO GET DETAILS
      SELECT QMNUM REFNUM QMDAT QMTXT OBJNR QMGRP QMCOD FROM QMEL
        INTO CORRESPONDING FIELDS OF TABLE T_DET
                                  WHERE QMNUM IN S_QMNUM AND
                                        QMART IN S_QMART AND
                                        QMDAT IN S_QMDAT.
      LOOP AT T_DET.
        SELECT SINGLE * FROM IHPA WHERE OBJNR = T_DET-OBJNR and
                                        PARVW = 'AB'.
        IF SY-SUBRC = 0.
          T_DET-PARNR = IHPA-PARNR.
          MODIFY T_DET.
          CLEAR T_DET.
        ENDIF.
      ENDLOOP.
      LOOP AT T_DET.
        DELETE T_DET WHERE PARNR EQ ''.
        SELECT SINGLE * FROM JEST WHERE OBJNR = T_DET-OBJNR AND
                                        STAT  = 'I0072' AND
                                        INACT NE 'X'.
        IF SY-SUBRC NE 0.
          DELETE T_DET INDEX SY-TABIX.
        ENDIF.
      ENDLOOP.
      LOOP AT T_DET.
        SELECT SINGLE * FROM HRP1000 WHERE OBJID = T_DET-PARNR.
        IF SY-SUBRC = 0.
          T_DET-STEXT = HRP1000-STEXT.
          MODIFY T_DET.
          CLEAR T_DET.
        ENDIF.
      ENDLOOP.
      LOOP AT T_DET.
        CHK2 = T_DET-QMNUM+0(4).
        IF CHK2 NE '0002'.
          DELETE T_DET INDEX SY-TABIX.
        ENDIF.
      ENDLOOP.
    *--FOR HEADER
      LOOP AT T_DET.
        SELECT SINGLE * FROM HRP1000 WHERE OBJID = T_DET-PARNR AND
                                           STEXT NE ''.
        T_HDR-QMNUM = T_DET-QMNUM.
        T_HDR-STEXT = HRP1000-STEXT.
        APPEND T_HDR.
        CLEAR T_HDR.
      ENDLOOP.
      LOOP AT T_DET.
        F_TDID     = 'LTQM'.
        F_TDNAME   = T_DET-QMNUM.
        F_TDOBJECT = 'QMEL'.
        CALL FUNCTION 'READ_TEXT'
          EXPORTING
            CLIENT                  = SY-MANDT
            ID                      = F_TDID
            LANGUAGE                = SY-LANGU
            NAME                    = F_TDNAME
            OBJECT                  = F_TDOBJECT
          TABLES
            LINES                   = ITAB_LINES
          EXCEPTIONS
            ID                      = 1
            LANGUAGE                = 2
            NAME                    = 3
            NOT_FOUND               = 4
            OBJECT                  = 5
            REFERENCE_CHECK         = 6
            WRONG_ACCESS_TO_ARCHIVE = 7
            OTHERS                  = 8.
        DESCRIBE TABLE ITAB_LINES LINES SY-TFILL.
        IF SY-TFILL > 0.
          LOOP AT ITAB_LINES.
            ITAB-QMNUM = T_DET-QMNUM.
            ITAB-DESC = ITAB_LINES-TDLINE.
            APPEND ITAB.
            CLEAR ITAB.
          ENDLOOP.
        ENDIF.
      ENDLOOP.
      SORT T_DET.
      LOOP AT T_DET.
        SNO = SNO + 1.
        T_FINAL-SNO = SNO.
        T_FINAL-QMNUM = T_DET-QMNUM.
        T_FINAL-QMTXT =  T_DET-QMTXT.
        T_FINAL-COST = T_DET-COST.
       IF G_STEXT NE T_DET-STEXT.
         G_STEXT = T_DET-STEXT.
        T_FINAL-STEXT = T_DET-STEXT.
       ENDIF.
        LOOP AT ITAB WHERE QMNUM = T_DET-QMNUM.
          T_FINAL-DESC = ITAB-DESC.
          APPEND T_FINAL.
          CLEAR T_FINAL.
          IF T_FINAL-SNO = '0'.
            T_FINAL-SNO = ''.
          ENDIF.
        ENDLOOP.
      ENDLOOP.
    ENDFORM.                    "GET_DATA
    *&      FORM  DISPLAY_ALV
          TEXT
    FORM DISPLAY_ALV.
    V_REPID = SY-REPID.
      PERFORM FIELD_CATLOG.
      PERFORM EVENT.
      PERFORM LAYOUT.
      PERFORM SORT_T_FINAL.
      PERFORM TOP-OF-PAGE.
    PERFORM REMOVE_SORT.
      CALL FUNCTION <b>'REUSE_ALV_GRID_DISPLAY'</b>
        EXPORTING
          I_CALLBACK_PROGRAM = SY-CPROG     
          IS_LAYOUT          = S_LAYOUT
          IT_FIELDCAT        = I_FIELDCAT[]
          I_SAVE             = 'A'
          IT_SORT            = IT_SORT
          IT_EVENTS          = I_EVENTS[]
          IT_EXCLUDING       = EX
        TABLES
          T_OUTTAB           = T_FINAL
        EXCEPTIONS
          PROGRAM_ERROR      = 1
          OTHERS             = 2.
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    "DISPLAY_ALV
    *&      Form  FIELD_CATLOG
          text
    FORM FIELD_CATLOG .
      PERFORM FILL_FCAT USING:
                1 1  'STEXT'    'ATTRIBUTED DIV'           18 'T_FINAL' ' '
                1 2  'SNO'      'SR.NO'                    18 'T_FINAL' ' '
                1 3  'QMNUM'    'ET.REF.NO'                30 'T_FINAL' ' '
                1 4  'QMTXT'    'DESCRIPTION'              20 'T_FINAL' ' '
                1 4  'DESC'     'DEFECT'                   20 'T_FINAL' ' '
                1 5  'COST'     'COST'                    15 'T_FINAL'  'S'.
    ENDFORM.                    " FIELD_CATLOG
    *&      Form  FILL_FCAT
          text
         -->LEV        text
         -->POS        text
         -->FLD        text
         -->DES        text
         -->LEN        text
         -->TABLE      text
         -->F          text
    FORM FILL_FCAT  USING    LEV POS FLD DES LEN TABLE F.
      CLEAR I_FCALV.
      I_FCALV-COL_POS   = POS.
      I_FCALV-FIELDNAME = FLD.
      I_FCALV-SELTEXT_L = DES.
      I_FCALV-DDICTXT   = 'L'.
      I_FCALV-OUTPUTLEN = LEN.
      I_FCALV-TABNAME   = TABLE.
      IF F EQ 'S'.
        I_FCALV-DO_SUM    = 'X'.
      ENDIF.
      APPEND I_FCALV TO  I_FIELDCAT.
    ENDFORM.                    "FILL_FCAT
    *&      Form  SORT_T_FINAL
          text
    FORM SORT_T_FINAL.
      DATA: L_SORT LIKE LINE OF IT_SORT.
    REFRESH IT_SORT.
    CLEAR L_SORT.
    L_SORT-SPOS      = '1'.
    L_SORT-FIELDNAME = 'STEXT'.
    L_SORT-TABNAME   = 'T_FINAL'.
    L_SORT-UP        = 'X'.
    APPEND L_SORT TO IT_SORT.
    CLEAR L_SORT.
      L_SORT-SPOS      = '6'.
      L_SORT-FIELDNAME = 'COST'.
      L_SORT-TABNAME   = 'T_FINAL'.
      L_SORT-UP        = 'X'.
      L_SORT-SUBTOT    = 'X'.
      APPEND L_SORT TO IT_SORT.
      CLEAR L_SORT.
    S_LAYOUT-CELL_MERGE = 'X'.
    ENDFORM.                    "SORT_T_FINAL
    *&      Form  EVENT
          text
    FORM EVENT.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          I_LIST_TYPE = 0
        IMPORTING
          ET_EVENTS   = I_EVENTS[].
      LOOP AT I_EVENTS.
        IF I_EVENTS-NAME = SLIS_EV_TOP_OF_PAGE.
          I_EVENTS-FORM = 'T_TOP_OF_PAGE'.
        ENDIF.
        IF I_EVENTS-NAME = SLIS_EV_USER_COMMAND.
          I_EVENTS-FORM = 'USER_COMMAND'.
        ENDIF.
        MODIFY I_EVENTS.
      ENDLOOP.
    ENDFORM.                    " EVENT
    *&      Form  LAYOUT
          text
    FORM LAYOUT .
      S_LAYOUT-DETAIL_POPUP = 'X'.
    <b>  S_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.</b>
    ENDFORM.                    " LAYOUT
    *&      Form  TOP-OF-PAGE
          text
    FORM TOP-OF-PAGE .
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = 'Error Trouble -by cost'.
      APPEND LS_LINE TO I_LIST_TOP_OF_PAGE.
      CLEAR LS_LINE.
    ENDFORM.                    " TOP-OF-PAGE
    *&      Form  REMOVE_SORT
          text
    FORM REMOVE_SORT.
      EXWA-FCODE = '&ODN'.
      APPEND EXWA TO EX.
      EXWA-FCODE = '&OUP'.
      APPEND EXWA TO EX.
    ENDFORM.                    "REMOVE_SORT
    *&      Form  T_TOP_OF_PAGE
          text
    FORM T_TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = I_LIST_TOP_OF_PAGE[].
    ENDFORM.                   " T_TOP_OF_PAGE

  • How to fill field with test data in alv grid display

    hi all,
    i m adding field TEXT to the structure for displaying grid.
    i m modifying program like this
    DATA: ALV_OUTPUT  LIKE HRPDV_EXPIRED_Q OCCURS 0 WITH HEADER LINE.
    TYPES : BEGIN OF FS_OUTPUT .
          TEXT(20) TYPE C.
            INCLUDE STRUCTURE HRPDV_EXPIRED_Q.
    TYPES       TEXT(20) TYPE C.
    TYPES    END OF FS_OUTPUT.
    DATA: fs_output like table of alv_output.
    CLEAR WA_FIELDCAT.
      WA_FIELDCAT-FIELDNAME = 'TEXT'.
      WA_FIELDCAT-seltext_l = 'Abteilungs Struktur'.
      wa_fieldcat-tabname   = 'ALV_OUTPUT'.
      WA_FIELDCAT-COL_POS  = '13'.
      APPEND WA_FIELDCAT TO P_GT_FIELDCAT.
    this is what i have write for diapalying field. but my question is how to fill test data with field TEXT.I m writing like this but not executed in the aboove grid dispaly statement.
    loop at alv_output.
    *alv_output-text(20)  = 'abcdefgh'.
    *modify alv_output.
    *endloop.
    plz tell me how to fill test data

    hI..,
    Your table declaration has to be like this..
    TYPES : BEGIN OF FS_OUTPUT .
    INCLUDE STRUCTURE HRPDV_EXPIRED_Q.
    TYPES TEXT(20) TYPE C.
    TYPES END OF FS_OUTPUT.
    DATA: ALV_OUTPUT LIKE standard table of fs_output initial size 0.
    loop at alv_output <b>into fs_output</b>.
    <b>fs</b>_output-text(20) = 'abcdefgh'.
    <b>modify alv_output index sy-tabix from fs_output transporting text.</b>
    endloop.
    Now give this table alv_output to the GRID_DISPLAY function module..
    you will get the required output !!
    Plz do remember to close the thread when ur problem is solved !!
    reward all helpful answers !!
    regards,
    sai ramesh

  • How to merge rows with similar values in alv grid display in webdynpro

    Hi experts,
                   i want to know about how to merge rows with similar values in alv grid display of webdynpro.grouping rows is possible in table display in webdynpro but i am not able to do row grouping in the alv grid display in webdynpro.
    kindly suggest.
    thanks ,
    Anita.

    Hi Anita,
    did you find a solution for this? I have opened a Thread, if you know the answer maybe you could help me out:
    Is there an ALV function similar to the TABLE Row grouping?
    Thanx in advanced!!!
    Kind Regards,
    Gerardo J

  • Problem with check box in ALV Grid Display

    I am Displaying Material Master Data in ALV Grid Display with Check Box for each record and if i checked check box then i am processing Update operation in Database,  my question is after perform update operation check box should be clear.
    Kindly help me!!!!

    Hello Raj
    Given the fact that you do not tell us the most important piece of information (namely whether you are using OO-based ALV or not) I assume you are using fm-based ALV lists.
    In this case you probably have defined a USER_COMMAND routine as described in the documentation of the fm.
    FORM user_command  USING r_ucomm LIKE sy-ucomm
                             rs_selfield TYPE slis_selfield.
    * define local data
      DATA: ls_outtab  LIKE LINE OF gt_outtab,
                ld_idx       TYPE i.
      LOOP AT gt_outtab INTO ls_outtab
                     WHERE ( chkbox = 'X' ).
        ld_idx = syst-tabix.
        " Call your update function / method / perform
       ls_outtab-chkbox = space.
       MODIFY gt_outtab FROM ls_outtab INDEX ld_Idx
          TRANSPORTING chkbox.
      ENDLOOP.
    " And now trigger refresh of the ALV display:
      rs_selfield-refresh = 'X'.  " <<< !!!
    ENDFORM.
    Regards
      Uwe

  • How to capture the checkbox status in ALV Grid display

    I need some immediate help regarding Grid ALV.
    My Requirement: I need to display an ALV grid report along with checkboxes. Further, I need to provide an option wherein the user can checkboxes and select the records that I need to process further (by clicking the process button on the ALV Report).
    My Query: The problem here is that I am not able to capture the status of the checkboxes. This means that I am not able to capture which of the records have been selected by checking their resp checkboxes.
    Solutions that I have tried: I have tried capturing the same at user command by checking the value in slis_selfield. But all the records show the value as 1 for the checkbox field.
    Kinldy suggest how to go about it.
    I am not using Object Oriented ALV. Please suggest something to be used in ALV Grid display in 4.6C version.
    Regards,
    Namrata

    Here is a Sample code , it might help you
    TABLES : sflight.
    TYPE-POOLS: slis.
    DATA : w_repid LIKE sy-repid.
    w_repid = sy-repid.
    DATA: BEGIN OF it_sflight OCCURS 0,
      checkbox(1),
      carrid LIKE sflight-carrid,
    END OF it_sflight.
    *layout
    DATA: wa_layout TYPE slis_layout_alv.
    *field catalog
    DATA: it_fieldcatalog TYPE slis_t_fieldcat_alv,
              wa_fieldcatalog TYPE slis_fieldcat_alv.
    START-OF-SELECTION.
      SELECT carrid FROM sflight
         INTO CORRESPONDING FIELDS OF TABLE it_sflight.
    END-OF-SELECTION.
      CLEAR it_fieldcatalog.
      REFRESH it_fieldcatalog.
      wa_fieldcatalog-fieldname = 'CHECKBOX'.
      wa_fieldcatalog-outputlen = '3'.
      wa_fieldcatalog-col_pos = '1'.
      wa_fieldcatalog-seltext_m = 'Chk'.
      wa_fieldcatalog-checkbox = 'X'.
      wa_fieldcatalog-edit = 'X'.
      APPEND wa_fieldcatalog TO it_fieldcatalog.
      CLEAR wa_fieldcatalog.
      wa_fieldcatalog-fieldname = 'CARRID'.
      wa_fieldcatalog-outputlen = '10'.
      wa_fieldcatalog-col_pos = '2'.
      wa_fieldcatalog-seltext_m = 'Carrid'.
      APPEND wa_fieldcatalog TO it_fieldcatalog.
      CLEAR wa_fieldcatalog.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program = w_repid
          is_layout = wa_layout
          i_callback_user_command = 'USER_COMMAND'
          it_fieldcat = it_fieldcatalog
        TABLES
          t_outtab = it_sflight
        EXCEPTIONS
          program_error = 1
          OTHERS = 2.
    *& Form USER_COMMAND
    FORM user_command USING p_ucomm TYPE sy-ucomm
      p_selfld TYPE slis_selfield.
      CASE p_ucomm.
       WHEN '&DATA_SAVE'.
          DATA ref1 TYPE REF TO cl_gui_alv_grid.
          CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
             IMPORTING
               e_grid = ref1.
          CALL METHOD ref1->check_changed_data.
          LOOP AT it_sflight WHERE checkbox = 'X'.
             DELETE it_sflight INDEX sy-tabix.
          ENDLOOP.
          p_selfld-refresh = 'X'.
      ENDCASE.
    ENDFORM. "user_command

  • How to color a row in ALV grid display

    Hi,
    A few rows in the output of ALV grid display should be shown in different color.How can I achieve this?

    Hi,
    Try out this code
    DATA : BEGIN OF G_T_CASH OCCURS 0,
           PARTICULARS TYPE CHAR120,
           AMOUNT1 TYPE CHAR20,
           AMOUNT2 TYPE CHAR20,
           AMOUNT3 TYPE CHAR20,    
           ROW_COLOR TYPE CHAR4,----
    add this in the internal table for alv
          END OF G_T_CASH.
      CLEAR G_WA_CASH.
      G_WA_CASH-PARTICULARS = 'Opening Cash Balance'.
      G_WA_CASH-AMOUNT1 = G_DMBTR.
      G_WA_CASH-AMOUNT2 = ''.
      G_WA_CASH-AMOUNT3 = ''.
    while appending other values also add the following code
      G_WA_CASH-ROW_COLOR = 'C200'.----- C200 depicts light gray color
      APPEND G_WA_CASH TO G_T_CASH.
    add the following code in layout
    MOVE 'ROW_COLOR' TO WA_LS_LAYOUT-INFO_FIELDNAME.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_BYPASSING_BUFFER = ' '
          I_SAVE             = 'A'
        I_CALLBACK_PROGRAM                = SY-REPID
      I_CALLBACK_PF_STATUS_SET          = 'SET_PF_STATUS'
       I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'
         IS_LAYOUT                        = WA_LS_LAYOUT
         IT_FIELDCAT                      = G_T_CATALOG
         IT_EVENTS                         = GT_EVENTS
         TABLES
           T_OUTTAB                       = G_T_CASH[]
    EXCEPTIONS
       PROGRAM_ERROR                     = 1
       OTHERS                            = 2
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    Let me know if the problem still persist.
    Regards,
    Janaki

  • How to devide the top of page in alv grid display

    hi all
    in the alv grid display am getting the page number and total number of pages in the left hand side
    but what i need is i need in the right hand side
    how to get that

    Hi,
    PLease refer to the code below:
    *& Report  ZDEMO_ALVGRID                                               *
    *& Example of a simple ALV Grid Report                                 *
    *& The basic requirement for this demo is to display a number of       *
    *& fields from the EKKO table.                                         *
    REPORT  zdemo_alvgrid                 .
    TABLES:     ekko.
    type-pools: slis.                                 "ALV Declarations
    *Data Declaration
    TYPES: BEGIN OF t_ekko,
      ebeln TYPE ekpo-ebeln,
      ebelp TYPE ekpo-ebelp,
      statu TYPE ekpo-statu,
      aedat TYPE ekpo-aedat,
      matnr TYPE ekpo-matnr,
      menge TYPE ekpo-menge,
      meins TYPE ekpo-meins,
      netpr TYPE ekpo-netpr,
      peinh TYPE ekpo-peinh,
    END OF t_ekko.
    DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko TYPE t_ekko.
    *ALV data declarations
    data: fieldcatalog type slis_t_fieldcat_alv with header line,
          gd_tab_group type slis_t_sp_group_alv,
          gd_layout    type slis_layout_alv,
          gd_repid     like sy-repid,
          gt_events     type slis_t_event,
          gd_prntparams type slis_print_alv.
    *Start-of-selection.
    START-OF-SELECTION.
    perform data_retrieval.
    perform build_fieldcatalog.
    perform build_layout.
    perform build_events.
    perform build_print_params.
    perform display_alv_report.
    *&      Form  BUILD_FIELDCATALOG
    *       Build Fieldcatalog for ALV Report
    form build_fieldcatalog.
    * There are a number of ways to create a fieldcat.
    * For the purpose of this example i will build the fieldcatalog manualy
    * by populating the internal table fields individually and then
    * appending the rows. This method can be the most time consuming but can
    * also allow you  more control of the final product.
    * Beware though, you need to ensure that all fields required are
    * populated. When using some of functionality available via ALV, such as
    * total. You may need to provide more information than if you were
    * simply displaying the result
    *               I.e. Field type may be required in-order for
    *                    the 'TOTAL' function to work.
      fieldcatalog-fieldname   = 'EBELN'.
      fieldcatalog-seltext_m   = 'Purchase Order'.
      fieldcatalog-col_pos     = 0.
      fieldcatalog-outputlen   = 10.
      fieldcatalog-emphasize   = 'X'.
      fieldcatalog-key         = 'X'.
    *  fieldcatalog-do_sum      = 'X'.
    *  fieldcatalog-no_zero     = 'X'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'EBELP'.
      fieldcatalog-seltext_m   = 'PO Item'.
      fieldcatalog-col_pos     = 1.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'STATU'.
      fieldcatalog-seltext_m   = 'Status'.
      fieldcatalog-col_pos     = 2.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'AEDAT'.
      fieldcatalog-seltext_m   = 'Item change date'.
      fieldcatalog-col_pos     = 3.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MATNR'.
      fieldcatalog-seltext_m   = 'Material Number'.
      fieldcatalog-col_pos     = 4.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MENGE'.
      fieldcatalog-seltext_m   = 'PO quantity'.
      fieldcatalog-col_pos     = 5.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'MEINS'.
      fieldcatalog-seltext_m   = 'Order Unit'.
      fieldcatalog-col_pos     = 6.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'NETPR'.
      fieldcatalog-seltext_m   = 'Net Price'.
      fieldcatalog-col_pos     = 7.
      fieldcatalog-outputlen   = 15.
      fieldcatalog-do_sum      = 'X'.
      fieldcatalog-datatype     = 'CURR'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'PEINH'.
      fieldcatalog-seltext_m   = 'Price Unit'.
      fieldcatalog-col_pos     = 8.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    endform.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
    *       Build layout for ALV grid report
    form build_layout.
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
      gd_layout-totals_text       = 'Totals'(201).
    *  gd_layout-totals_only        = 'X'.
    *  gd_layout-f2code            = 'DISP'.  "Sets fcode for when double
    *                                         "click(press f2)
    *  gd_layout-zebra             = 'X'.
    *  gd_layout-group_change_edit = 'X'.
    *  gd_layout-header_text       = 'helllllo'.
    endform.                    " BUILD_LAYOUT
    *&      Form  DISPLAY_ALV_REPORT
    *       Display report using ALV grid
    form display_alv_report.
      gd_repid = sy-repid.
      call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program      = gd_repid
                i_callback_top_of_page   = 'TOP-OF-PAGE'  "see FORM
                i_callback_user_command = 'USER_COMMAND'
    *            i_grid_title           = outtext
                is_layout               = gd_layout
                it_fieldcat             = fieldcatalog[]
    *            it_special_groups       = gd_tabgroup
                it_events               = gt_events
                is_print                = gd_prntparams
                i_save                  = 'X'
    *            is_variant              = z_template
           tables
                t_outtab                = it_ekko
           exceptions
                program_error           = 1
                others                  = 2.
      if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
    endform.                    " DISPLAY_ALV_REPORT
    *&      Form  DATA_RETRIEVAL
    *       Retrieve data form EKPO table and populate itab it_ekko
    form data_retrieval.
    select ebeln ebelp statu aedat matnr menge meins netpr peinh
    up to 10 rows
      from ekpo
      into table it_ekko.
    endform.                    " DATA_RETRIEVAL
    * Form  TOP-OF-PAGE                                                 *
    * ALV Report Header                                                 *
    Form top-of-page.
    *ALV Header declarations
    data: t_header type slis_t_listheader,
          wa_header type slis_listheader,
          t_line like wa_header-info,
          ld_lines type i,
          ld_linesc(10) type c.
    * Title
      wa_header-typ  = 'H'.
      wa_header-info = 'EKKO Table Report'.
      append wa_header to t_header.
      clear wa_header.
    * Date
      wa_header-typ  = 'S'.
      wa_header-key = 'Date: '.
      CONCATENATE  sy-datum+6(2) '.'
                   sy-datum+4(2) '.'
                   sy-datum(4) INTO wa_header-info.   "todays date
      append wa_header to t_header.
      clear: wa_header.
    * Total No. of Records Selected
      describe table it_ekko lines ld_lines.
      ld_linesc = ld_lines.
      concatenate 'Total No. of Records Selected: ' ld_linesc
                        into t_line separated by space.
      wa_header-typ  = 'A'.
      wa_header-info = t_line.
      append wa_header to t_header.
      clear: wa_header, t_line.
      call function 'REUSE_ALV_COMMENTARY_WRITE'
           exporting
                it_list_commentary = t_header.
    *            i_logo             = 'Z_LOGO'.
    endform.
    *       FORM USER_COMMAND                                          *
    *       --> R_UCOMM                                                *
    *       --> RS_SELFIELD                                            *
    FORM user_command USING r_ucomm LIKE sy-ucomm
                      rs_selfield TYPE slis_selfield.
    * Check function code
      CASE r_ucomm.
        WHEN '&IC1'.
    *   Check field clicked on within ALVgrid report
        IF rs_selfield-fieldname = 'EBELN'.
    *     Read data table, using index of row user clicked on
          READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.
    *     Set parameter ID for transaction screen field
          SET PARAMETER ID 'BES' FIELD wa_ekko-ebeln.
    *     Sxecute transaction ME23N, and skip initial data entry screen
          CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
        ENDIF.
      ENDCASE.
    ENDFORM.
    *&      Form  BUILD_EVENTS
    *       Build events table
    form build_events.
      data: ls_event type slis_alv_event.
      call function 'REUSE_ALV_EVENTS_GET'
           exporting
                i_list_type = 0
           importing
                et_events   = gt_events[].
      read table gt_events with key name =  slis_ev_end_of_page
                               into ls_event.
      if sy-subrc = 0.
        move 'END_OF_PAGE' to ls_event-form.
        append ls_event to gt_events.
      endif.
        read table gt_events with key name =  slis_ev_end_of_list
                               into ls_event.
      if sy-subrc = 0.
        move 'END_OF_LIST' to ls_event-form.
        append ls_event to gt_events.
      endif.
    endform.                    " BUILD_EVENTS
    *&      Form  BUILD_PRINT_PARAMS
    *       Setup print parameters
    form build_print_params.
      gd_prntparams-reserve_lines = '3'.   "Lines reserved for footer
      gd_prntparams-no_coverpage = 'X'.
    endform.                    " BUILD_PRINT_PARAMS
    *&      Form  END_OF_PAGE
    form END_OF_PAGE.
      data: listwidth type i,
            ld_pagepos(10) type c,
            ld_page(10)    type c.
      write: sy-uline(50).
      skip.
      write:/40 'Page:', sy-pagno .
    endform.
    *&      Form  END_OF_LIST
    form END_OF_LIST.
      data: listwidth type i,
            ld_pagepos(10) type c,
            ld_page(10)    type c.
      skip.
      write:/40 'Page:', sy-pagno .
    endform.
    Thanks,
    Sriram Ponna.

  • How change standard field lable in alv grid display

    Hi Experts,
        How are you doing! I am having some doubts in the alv grid display, I am new to this concepts.
    I want to display field  lable manually, actually its taking from table field discription but I want to display one field name manually.
    example code.
    ls_fldcat-fieldname = 'BPKIND'.
      ls_fldcat-ref_tabname = 'BUT000'.
      ls_fldcat-ref_fieldname = 'BPKIND'.
      APPEND ls_fldcat TO lt_fldcat.
      ls_fldcat-fieldname = 'PARTNER2'.
      ls_fldcat-ref_tabname = 'BUT051'.
      ls_fldcat-ref_fieldname = 'PARTNER2'.
    Here I dont want to display 'PARTNER2' I need 'KEY ACCOUNT MANAGER'.
    Please send me how to do this.
    Surya Ramireddy.

    Hi
      Please check out this program.
    Type-pools: slis.
    Tables: likp.
    Data: Begin of i_likp occurs 0,
            vbeln like likp-vbeln,
            ernam like likp-ernam,
            erzet like likp-erzet,
            erdat like likp-erdat,
          End of i_likp.
    Data: it_fieldcat type slis_t_fieldcat_alv,
          wa_fieldcat type SLIS_FIELDCAT_ALV,
          it_events type slis_t_event.
    Selection-screen: Begin of block b1 with frame title text-001.
      select-options: s_vbeln for likp-vbeln.
    Selection-screen: End of block b1.
    start-of-selection.
    perform get_sales_header_data.
    end-of-selection.
    perform field_catalogue.
    perform modify_field_catalogue.
    perform display_alv_grid_display.
    *&      Form  get_sales_header_data
          text
    -->  p1        text
    <--  p2        text
    form get_sales_header_data .
    select vbeln
           ernam
           erzet
           erdat
           into table i_likp
           from likp
           where vbeln in s_vbeln.
    endform.                    " get_sales_header_data
    *&      Form  field_catalogue
          text
    -->  p1        text
    <--  p2        text
    form field_catalogue .
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
       I_PROGRAM_NAME               = sy-repid
       I_INTERNAL_TABNAME           = 'I_LIKP'
       I_INCLNAME                   = sy-repid
      CHANGING
        ct_fieldcat                  = it_fieldcat
    EXCEPTIONS
       INCONSISTENT_INTERFACE       = 1
       PROGRAM_ERROR                = 2
       OTHERS                       = 3
    endform.                    " field_catalogue
    *&      Form  modify_field_catalogue
          text
    -->  p1        text
    <--  p2        text
    form modify_field_catalogue .
    loop at it_fieldcat into wa_fieldcat.
    case wa_fieldcat-fieldname.
      when 'VBELN'.
       wa_fieldcat-col_pos = 1.
       wa_fieldcat-seltext_l = 'Sales Doc Header No'.
       wa_fieldcat-emphasize = 'C100'.
      when 'ERNAM'.
       wa_fieldcat-col_pos = 2.
       wa_fieldcat-seltext_l = 'Created By'.
       wa_fieldcat-emphasize = 'C200'.
      when 'ERZET'.
       wa_fieldcat-col_pos = 3.
       wa_fieldcat-seltext_l = 'Entry Time'.
       wa_fieldcat-emphasize = 'C300'.
      when 'ERDAT'.
       wa_fieldcat-col_pos = 4.
       wa_fieldcat-seltext_l = 'Created On'.
       wa_fieldcat-emphasize = 'C400'.
      endcase.
      modify it_fieldcat from wa_fieldcat.
    endloop.
    endform.                    " modify_field_catalogue
    *&      Form  display_alv_grid_display
          text
    -->  p1        text
    <--  p2        text
    form display_alv_grid_display .
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
       I_CALLBACK_PROGRAM                = sy-repid
       IT_FIELDCAT                       = IT_FIELDCAT
      TABLES
        t_outtab                          = i_likp
    EXCEPTIONS
       PROGRAM_ERROR                     = 1
       OTHERS                            = 2
    endform.                    " display_alv_grid_display
    Regards
    Haritha.

  • How to insert the checkbox as a separate column  in alv grid display

    Hi
    How to insert the checkboxes as a separate column  in alv grid display with using the reuse_alv_fieldcatlog_mege.
    example
    matnr    maktx  ersda                 checkbox
    10        books  28/03/2009          checkbox
    Thanks
    chinnu

    Hi,
        Check the following code.
    TYPE-POOLS: slis.
    TYPES:
          BEGIN OF ty_output,
          chk TYPE c,
          number TYPE i,
          name(20) TYPE c,
          END OF ty_output.
    DATA: gt_output TYPE STANDARD TABLE OF ty_output,
          gs_output TYPE ty_output.
    DATA: wa_layout           TYPE slis_layout_alv.
    DATA: it_fieldcatalog TYPE slis_t_fieldcat_alv,
    After you populate the data, build the field catlog like shown below.
    wa_fieldcatalog TYPE slis_fieldcat_alv.
    wa_fieldcatalog-fieldname = 'CHK'.
      wa_fieldcatalog-outputlen = '3'.
      wa_fieldcatalog-col_pos = '1'.
      wa_fieldcatalog-seltext_m   = 'CHK'.
      wa_fieldcatalog-checkbox = 'X'.
      wa_fieldcatalog-edit = 'X'.
      APPEND  wa_fieldcatalog TO it_fieldcatalog.
    wa_fieldcatalog-fieldname = 'NUMBER'.
      wa_fieldcatalog-outputlen = '10'.
      wa_fieldcatalog-col_pos = '2'.
      wa_fieldcatalog-seltext_m   = 'NUMBER'.
      APPEND  wa_fieldcatalog TO it_fieldcatalog.
      CLEAR  wa_fieldcatalog.
      wa_fieldcatalog-fieldname = 'NAME'.
      wa_fieldcatalog-outputlen = '10'.
      wa_fieldcatalog-col_pos = '3'.
      wa_fieldcatalog-seltext_m   = 'NAME'.
      APPEND  wa_fieldcatalog TO it_fieldcatalog.
      CLEAR  wa_fieldcatalog.
      wa_layout-box_fieldname     = 'CHK' .
      wa_layout-box_tabname       = 'GT_OUTPUT' .
    Now call the FM
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
    *   I_INTERFACE_CHECK                 = ' '
    *   I_BYPASSING_BUFFER                = ' '
    *   I_BUFFER_ACTIVE                   = ' '
          i_callback_program                = sy-repid
          i_callback_pf_status_set          = 'PF_STATUS'
          i_callback_user_command           = 'USER_COMMAND_GRID'
    *   I_CALLBACK_TOP_OF_PAGE            = ' '
    *   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *   I_CALLBACK_HTML_END_OF_LIST       = ' '
    *   I_STRUCTURE_NAME                  =
    *   I_BACKGROUND_ID                   = ' '
    *   I_GRID_TITLE                      =
    *   I_GRID_SETTINGS                   =
          is_layout                         = wa_layout
          it_fieldcat                       = it_fieldcatalog
    *   IT_EXCLUDING                      =
    *   IT_SPECIAL_GROUPS                 =
    *   IT_SORT                           =
    *   IT_FILTER                         =
    *   IS_SEL_HIDE                       =
    *   I_DEFAULT                         = 'X'
    *   I_SAVE                            = ' '
    *   IS_VARIANT                        =
    *   IT_EVENTS                         =
    *   IT_EVENT_EXIT                     =
    *   IS_PRINT                          =
    *   IS_REPREP_ID                      =
    *   I_SCREEN_START_COLUMN             = 0
    *   I_SCREEN_START_LINE               = 0
    *   I_SCREEN_END_COLUMN               = 0
    *   I_SCREEN_END_LINE                 = 0
    *   IT_ALV_GRAPHICS                   =
    *   IT_HYPERLINK                      =
    *   IT_ADD_FIELDCAT                   =
    *   IT_EXCEPT_QINFO                   =
    *   I_HTML_HEIGHT_TOP                 =
    *   I_HTML_HEIGHT_END                 =
    * IMPORTING
    *   E_EXIT_CAUSED_BY_CALLER           =
    *   ES_EXIT_CAUSED_BY_USER            =
        TABLES
          t_outtab                          = gt_output
    * EXCEPTIONS
    *   PROGRAM_ERROR                     = 1
    *   OTHERS                            = 2
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

  • How to change a color for a row in ALV grid display

    Hi,
       how to change a color for a row in ALV grid display based on a condition.Any sample code plz

    Hello Ramya,
    Did you check in [SCN|How to color a row of  alv grid]
    Thanks!

  • How to give a page break in alv grid display after 65 lines are displayed?

    hi all,
    I need to give a page break in alv grid display after 65 lines are displayed on each page...Please help me with this...

    hai
    give this command beging of the report name... u have to diclar the beging of the report ......
    <b>report</b> ( name of the report)  <b>standard page heading line-size 200 line-count 65.</b>
    ex1.:- report name is  rtpm_trl_show_flows 
    report <b>rtpm_trl_show_flows </b> no standard page heading line-size 200
                                                         line-count 65.
    ex:2
    report  <b>zlpur01</b> no standard page heading line-size 200
                                                         line-count 65.
    type-pools: slis.
    tables: bkpf.
    selection-screen begin of block sel with frame title text-001.
    select-options: s_comp for bkpf-bukrs, " Company
                    s_valut for bkpf-budat. " Invoice Date
                   S_MTART FOR MARA-MTART. " Material Type
    selection-screen end of block sel.
    parameters: p_vari like disvariant-variant. " ALV Variant
    constants: formname_top_of_page type slis_formname value 'TOP_OF_PAGE'.
    data:   i_bseg type bseg  occurs 0 with header line.
    data: vatval type p decimals 2 value '0.15'.
    data: xhkont type string value '154000'.
    data COM type c.
    data: begin of invt occurs 100,
            budat like bkpf-budat, " Inv Dat
            bukrs like bkpf-bukrs, " Material
            STCEG like bsak-STCEG, "name of the companycode
            belnr like bkpf-belnr,
            xblnr like bkpf-xblnr, " Inv Reference
            ebeln like rseg-ebeln, " PO number
            lifnr like bseg-lifnr, " Vendor No
            name1 like lfa1-name1, " Supplier Name
            matnr like bseg-matnr,
            maktx like makt-maktx,
            stcd1 like lfa1-stcd1, " Supplier VAT REG NO
            xamt like bseg-dmbtr, " TAX amt
            yamt like bseg-wrbtr,
            wrbtr like bseg-wrbtr, " Base amount
            mwskz like bseg-mwskz,
            dmbtr like bseg-dmbtr, " TAX amt
            gjahr like bkpf-gjahr,
            hkont like bseg-hkont,
            zamt like bseg-dmbtr, " TAX amt
            wamt like bseg-dmbtr,
            shkzg like bseg-shkzg,
            shkzg1 like bseg-shkzg,
          end of invt.
    regard
    nawa

  • How to capture the event in ALV grid display?

    Hi experts,
      How to capture the event in an ALV grid display which is editable. I have to capture the TAB key or ENTER key.
    regards,
    Arul Jothi.

    Hi Arul,
    Take a look at sample program BCALV_EDIT_03. (Find string "register ENTER" in the program to see how to register)
    Basically you have to Register edit events using method call REGISTER_EDIT_EVENT and then write a handler method for event DATA_CHANGED..
    If you are using a REUSE..GRID fm then first get the grid reference using function module GET_GLOBALS_FROM_SLVC_FULLSCR and then repeat the above procedure..
    Hope this helps..
    Sri
    Message was edited by: Srikanth Pinnamaneni

  • How to change the selected row color in an alv grid display ?

    Hello ,
    I WANT TO CHANGE THE COLOR OF THE SELECTED RECORDS  IN AN ALV GRID DISPLAY ?
    ITS URGENT..
    WILL BE REWARDED...

    hai   Ssnagh Samala 
    EXicut This report >
    Hope It Will  Meet U r Requirement.
    If Found Helpfull Reward.
    REPORT zcuitest_alv_07.
    Use of colours in ALV grid (cell, line and column) *
    Table
    TABLES : mara.
    Type
    TYPES : BEGIN OF ty_mara,
    matnr LIKE mara-matnr,
    matkl LIKE mara-matkl,
    counter(4) TYPE n,
    free_text(15) TYPE c,
    color_line(4) TYPE c, " Line color
    color_cell TYPE lvc_t_scol, " Cell color
    END OF ty_mara.
    Structures
    DATA : wa_mara TYPE ty_mara,
    wa_fieldcat TYPE lvc_s_fcat,
    is_layout TYPE lvc_s_layo,
    wa_color TYPE lvc_s_scol.
    Internal table
    DATA : it_mara TYPE STANDARD TABLE OF ty_mara,
    it_fieldcat TYPE STANDARD TABLE OF lvc_s_fcat,
    it_color TYPE TABLE OF lvc_s_scol.
    Variables
    DATA : okcode LIKE sy-ucomm,
    w_alv_grid TYPE REF TO cl_gui_alv_grid,
    w_docking_container TYPE REF TO cl_gui_docking_container.
    PARAMETERS : p_column AS CHECKBOX,
    p_line AS CHECKBOX,
    p_cell AS CHECKBOX.
    START-OF-SELECTION.
    PERFORM get_data.
    END-OF-SELECTION.
    PERFORM fill_catalog.
    PERFORM fill_layout.
    CALL SCREEN 2000.
    *& Module status_2000 OUTPUT
    text
    MODULE status_2000 OUTPUT.
    SET PF-STATUS '2000'.
    ENDMODULE. " status_2000 OUTPUT
    *& Module user_command_2000 INPUT
    text
    MODULE user_command_2000 INPUT.
    DATA : w_okcode LIKE sy-ucomm.
    MOVE okcode TO w_okcode.
    CLEAR okcode.
    CASE w_okcode.
    WHEN 'BACK'.
    LEAVE TO SCREEN 0.
    ENDCASE.
    ENDMODULE. " user_command_2000 INPUT
    *& Module alv_grid OUTPUT
    text
    MODULE alv_grid OUTPUT.
    IF w_docking_container IS INITIAL.
    PERFORM create_objects.
    PERFORM display_alv_grid.
    ENDIF.
    ENDMODULE. " alv_grid OUTPUT
    *& Form create_objects
    text
    --> p1 text
    <-- p2 text
    FORM create_objects.
    Ratio must be included in http://5..95
    CREATE OBJECT w_docking_container
    EXPORTING
    ratio = 95
    EXCEPTIONS
    cntl_error = 1
    cntl_system_error = 2
    create_error = 3
    lifetime_error = 4
    lifetime_dynpro_dynpro_link = 5
    others = 6.
    CREATE OBJECT w_alv_grid
    EXPORTING
    i_parent = w_docking_container.
    ENDFORM. " create_objects
    *& Form display_alv_grid
    text
    --> p1 text
    <-- p2 text
    FORM display_alv_grid.
    CALL METHOD w_alv_grid->set_table_for_first_display
    EXPORTING
    is_layout = is_layout
    CHANGING
    it_outtab = it_mara
    it_fieldcatalog = it_fieldcat
    EXCEPTIONS
    invalid_parameter_combination = 1
    program_error = 2
    too_many_lines = 3
    OTHERS = 4.
    ENDFORM. " display_alv_grid
    *& Form get_data
    text
    --> p1 text
    <-- p2 text
    FORM get_data.
    SELECT * FROM mara UP TO 5 ROWS.
    CLEAR : wa_mara-color_line, wa_mara-color_cell.
    MOVE-CORRESPONDING mara TO wa_mara.
    ADD 1 TO wa_mara-counter.
    MOVE 'Blabla' TO wa_mara-free_text.
    IF wa_mara-counter = '0002'
    AND p_line = 'X'.
    Color line
    MOVE 'C410' TO wa_mara-color_line.
    ELSEIF wa_mara-counter = '0004'
    AND p_cell = 'X'.
    Color cell
    MOVE 'FREE_TEXT' TO wa_color-fname.
    MOVE '5' TO wa_color-color-col.
    MOVE '1' TO wa_color-color-int.
    MOVE '1' TO wa_color-color-inv.
    APPEND wa_color TO it_color.
    wa_mara-color_cell] = it_color[.
    ENDIF.
    APPEND wa_mara TO it_mara.
    ENDSELECT.
    ENDFORM. " get_data
    *& Form fill_catalog
    text
    --> p1 text
    <-- p2 text
    FORM fill_catalog.
    Colour code : *
    Colour is a 4-char field where : *
    - 1st char = C (color property) *
    - 2nd char = color code (from 0 to 7) *
    0 = background color *
    1 = blue *
    2 = gray *
    3 = yellow *
    4 = blue/gray *
    5 = green *
    6 = red *
    7 = orange *
    - 3rd char = intensified (0=off, 1=on) *
    - 4th char = inverse display (0=off, 1=on) *
    Colour overwriting priority : *
    1. Line *
    2. Cell *
    3. Column *
    DATA : w_position TYPE i VALUE '1'.
    CLEAR wa_fieldcat.
    MOVE w_position TO wa_fieldcat-col_pos.
    MOVE 'MATNR' TO wa_fieldcat-fieldname.
    MOVE 'MARA' TO wa_fieldcat-ref_table.
    MOVE 'MATNR' TO wa_fieldcat-ref_field.
    APPEND wa_fieldcat TO it_fieldcat.
    ADD 1 TO w_position.
    CLEAR wa_fieldcat.
    MOVE w_position TO wa_fieldcat-col_pos.
    MOVE 'MATKL' TO wa_fieldcat-fieldname.
    MOVE 'MARA' TO wa_fieldcat-ref_table.
    MOVE 'MATKL' TO wa_fieldcat-ref_field.
    Color column
    IF p_column = 'X'.
    MOVE 'C610' TO wa_fieldcat-emphasize.
    ENDIF.
    APPEND wa_fieldcat TO it_fieldcat.
    ADD 1 TO w_position.
    CLEAR wa_fieldcat.
    MOVE w_position TO wa_fieldcat-col_pos.
    MOVE 'COUNTER' TO wa_fieldcat-fieldname.
    MOVE 'N' TO wa_fieldcat-inttype.
    MOVE '4' TO wa_fieldcat-intlen.
    MOVE 'Counter' TO wa_fieldcat-coltext.
    APPEND wa_fieldcat TO it_fieldcat.
    ADD 1 TO w_position.
    CLEAR wa_fieldcat.
    MOVE w_position TO wa_fieldcat-col_pos.
    MOVE 'FREE_TEXT' TO wa_fieldcat-fieldname.
    MOVE 'C' TO wa_fieldcat-inttype.
    MOVE '20' TO wa_fieldcat-intlen.
    MOVE 'Text' TO wa_fieldcat-coltext.
    APPEND wa_fieldcat TO it_fieldcat.
    ENDFORM. " fill_catalog
    *& Form fill_layout
    text
    --> p1 text
    <-- p2 text
    FORM fill_layout.
    Field that identify color line in internal table
    MOVE 'COLOR_LINE' TO is_layout-info_fname.
    Field that identify cell color in inetrnal table
    MOVE 'COLOR_CELL' TO is_layout-ctab_fname.
    ENDFORM. " fill_layout
    Regards.
    Eshwar.

Maybe you are looking for

  • Create Folder with the name of expense report number in SHAREPOINT ?

    Hi All, iExpence - In expense report confirmation page. There is custom link. Requirement When user click on link, system should create folder with the name of expense report number in SHAREPOINT and copy copies of expense receipts in the created fol

  • Совместимость

    Мое почтение! Помогите пожалуйста решить слеующую проблему!-У меня  MS-7525 (Бостон) материнская плата!http://h10025.www1.hp.com/ewfrf/wc/document?docname=c01386897&tmp_task=prodinfoCategory&lc=en&dlc=en... Конфигурация компьютера--Тип Award BIOS Pho

  • Indesign previews in creative cloud dont show fonts?!?!

    ok.. so surely this is not the way its supposed to happen indesign file with a non web font uploaded to creative cloud preview gets created with a substituted font.. = design looks rubbish and certainly wouldnt work to show a client as suggested. i t

  • I am not able to upload my iMovie video to youtube?

    I am not able to upload my video created in iMovie11 to you tube. I have tried different extentsions, quickplayer, avi, mpeg, all to no avail. Are there any suggestionsn I have generated similar video in Camtasia in Windows computer and it works fine

  • Will Apple ever become entrenched in the Business Workplace?

    The post Will Apple ever become entrenched in the Business Workplace? appeared first on PostmanMojo.com, Inc.. Read More This topic first appeared in the Spiceworks Community