Application Development 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: 

colouring each column

Former Member
0 Kudos

Plz tell me how to get colour for a comlete column,

i am here using alv to retrieved and displayed selected

fields by using three internal tables with common

fields between those three.

plz send the coding immediately..

1 ACCEPTED SOLUTION

Former Member
0 Kudos

check this code

*&---------------------------------------------------------------------*
*& Report  ZHAI_COLOR4
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZHAI_COLOR4.
TYPE-POOLS: SLIS.

*--Fieldcatalog
DATA: IT_FIELDCAT  TYPE LVC_T_FCAT,
      X_FIELDCAT  TYPE LVC_S_FCAT.
*--For Events
DATA: IT_EVENTS TYPE SLIS_T_EVENT.
*--Layout
DATA: X_LAYOUT TYPE LVC_S_LAYO.
*--for Cell Color
DATA: LS_CELLCOLOR TYPE LVC_S_SCOL.
DATA: L_INDEX TYPE SY-TABIX.
DATA: L_POS TYPE I VALUE 1.

DATA: BEGIN OF IT_VBAP OCCURS 0,
      VBELN LIKE VBAP-VBELN,
      POSNR LIKE VBAP-POSNR,
      CELLCOLOR TYPE LVC_T_SCOL,
     END OF IT_VBAP.

START-OF-SELECTION.
  PERFORM GET_DATA.
  PERFORM GENERATE_FLDCAT.
  PERFORM SET_CELL_COLORS.

END-OF-SELECTION.
  PERFORM GENERATE_ALV_GRID.

*&---------------------------------------------------------------------*
*&      Form  GET_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM GET_DATA.
  SELECT VBELN
         POSNR
         UP TO 10 ROWS
        INTO (IT_VBAP-VBELN,
              IT_VBAP-POSNR)
        FROM VBAP.
    APPEND IT_VBAP.
  ENDSELECT.

ENDFORM.                    " GET_DATA
*&---------------------------------------------------------------------*
*&      Form  GENERATE_FLDCAT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM GENERATE_FLDCAT.
  CLEAR: L_POS.
  L_POS = L_POS + 1.
  X_FIELDCAT-SELTEXT = 'VBELN'.
  X_FIELDCAT-FIELDNAME = 'VBELN'.
  X_FIELDCAT-TABNAME = 'ITAB'.
  X_FIELDCAT-COL_POS    = L_POS.
  X_FIELDCAT-OUTPUTLEN = '10'.
  APPEND X_FIELDCAT TO IT_FIELDCAT.
  CLEAR X_FIELDCAT.

  L_POS = L_POS + 1.
  X_FIELDCAT-SELTEXT = 'POSNR'.
  X_FIELDCAT-FIELDNAME = 'POSNR'.
  X_FIELDCAT-TABNAME = 'ITAB'.
  X_FIELDCAT-COL_POS    = L_POS.
  X_FIELDCAT-OUTPUTLEN = '5'.
  APPEND X_FIELDCAT TO IT_FIELDCAT.
  CLEAR X_FIELDCAT.

  L_POS = L_POS + 1.
  X_LAYOUT-CTAB_FNAME = 'CELLCOLOR'.

ENDFORM.                    " GENERATE_FLDCAT
*&---------------------------------------------------------------------*
*&      Form  SET_CELL_COLORS
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM SET_CELL_COLORS.
  LOOP AT IT_VBAP.
    L_INDEX = SY-TABIX.
    LS_CELLCOLOR-FNAME = 'VBELN'.
    LS_CELLCOLOR-COLOR-COL = '7'.
    LS_CELLCOLOR-COLOR-INT = '1'.
    LS_CELLCOLOR-COLOR-INV = '1'.
    APPEND LS_CELLCOLOR TO IT_VBAP-CELLCOLOR.
    MODIFY IT_VBAP INDEX L_INDEX TRANSPORTING CELLCOLOR.
  ENDLOOP.

ENDFORM.                    " SET_CELL_COLORS
*&---------------------------------------------------------------------*
*&      Form  GENERATE_ALV_GRID
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM GENERATE_ALV_GRID.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
       EXPORTING
            I_CALLBACK_PROGRAM = 'ZTESTALV'
            IS_LAYOUT_LVC      = X_LAYOUT
            IT_FIELDCAT_LVC    = IT_FIELDCAT
       TABLES
            T_OUTTAB           = IT_VBAP[]
       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.                    " GENERATE_ALV_GRID

6 REPLIES 6

RichHeilman
Developer Advocate
Developer Advocate
0 Kudos

Did you not see this thread which is STILL on the first page here?

Regards,

Rich Heilman

Former Member
0 Kudos

Hello,

Please read this:[https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e8a1d690-0201-0010-b7ad-d9719a415907]. At page 27.

Regards.

Former Member
0 Kudos

Hi,

Use this link given below... All your concepts would get cleared.

http://help.sap.com/saphelp_nw04/helpdata/en/34/e7eb40c4f8712ae10000000a155106/frameset.htm

Thanks

Nayan

Reward if useful

Former Member
0 Kudos

hi check this..

REPORT ZALV_LIST4.

TABLES:

SPFLI.

TYPE-POOLS:

SLIS.

DATA:

T_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,

FS_FIELDCAT LIKE LINE OF T_FIELDCAT,

FS_LAYOUT TYPE SLIS_LAYOUT_ALV ,

W_COLOR(3) ,

W_ROW TYPE I,

W_FIELDNAME(20),

W_PROG TYPE SY-REPID.

DATA:

BEGIN OF T_SPFLI OCCURS 0,

COLOR(3),

CHECKBOX ,

CELL TYPE SLIS_T_SPECIALCOL_ALV,

CARRID TYPE SPFLI-CARRID,

CONNID TYPE SPFLI-CONNID,

CITYFROM TYPE SPFLI-CITYFROM,

CITYTO TYPE SPFLI-CITYTO,

DISTANCE TYPE SPFLI-DISTANCE,

END OF T_SPFLI.

DATA:

FS_CELL LIKE LINE OF T_SPFLI-CELL.

SELECT *

FROM SPFLI

INTO CORRESPONDING FIELDS OF TABLE T_SPFLI.

FS_FIELDCAT-FIELDNAME = 'CARRID'.

FS_FIELDCAT-REF_TABNAME = 'SPFLI'.

FS_FIELDCAT-COL_POS = 1.

FS_FIELDCAT-KEY = 'X'.

FS_FIELDCAT-HOTSPOT = 'X'.

APPEND FS_FIELDCAT TO T_FIELDCAT.

CLEAR FS_FIELDCAT .

FS_FIELDCAT-FIELDNAME = 'CONNID'.

FS_FIELDCAT-REF_TABNAME = 'SPFLI'.

FS_FIELDCAT-COL_POS = 2.

FS_FIELDCAT-KEY = 'X'.

FS_FIELDCAT-HOTSPOT = 'X'.

APPEND FS_FIELDCAT TO T_FIELDCAT.

CLEAR FS_FIELDCAT .

FS_FIELDCAT-FIELDNAME = 'DISTANCE'.

FS_FIELDCAT-REF_TABNAME = 'SPFLI'.

*FS_FIELDCAT-INPUT = 'X'.

FS_FIELDCAT-COL_POS = 3.

FS_FIELDCAT-KEY = ' '.

FS_FIELDCAT-EDIT = 'X'.

APPEND FS_FIELDCAT TO T_FIELDCAT.

CLEAR FS_FIELDCAT.

FS_FIELDCAT-FIELDNAME = 'CITYFROM'.

FS_FIELDCAT-REF_TABNAME = 'SPFLI'.

FS_FIELDCAT-COL_POS = 4.

FS_FIELDCAT-KEY = ' '.

APPEND FS_FIELDCAT TO T_FIELDCAT.

LOOP AT T_SPFLI WHERE DISTANCE GT 600.

W_FIELDNAME = 'DISTANCE'.

FS_CELL-FIELDNAME = W_FIELDNAME .

FS_CELL-COLOR-COL = 5.

FS_CELL-NOKEYCOL = 'X'.

APPEND FS_CELL TO T_SPFLI-CELL.

MODIFY T_SPFLI TRANSPORTING CELL.

ENDLOOP.

FS_LAYOUT-INFO_FIELDNAME = 'COLOR'.

FS_LAYOUT-BOX_FIELDNAME = 'CHECKBOX'.

FS_LAYOUT-COLTAB_FIELDNAME = 'CELL'.

FS_LAYOUT-F2CODE = '&ETA'.

W_PROG = SY-REPID.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = W_PROG

IS_LAYOUT = FS_LAYOUT

IT_FIELDCAT = T_FIELDCAT

TABLES

T_OUTTAB = T_SPFLI

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.

Former Member
0 Kudos

check this code

*&---------------------------------------------------------------------*
*& Report  ZHAI_COLOR4
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZHAI_COLOR4.
TYPE-POOLS: SLIS.

*--Fieldcatalog
DATA: IT_FIELDCAT  TYPE LVC_T_FCAT,
      X_FIELDCAT  TYPE LVC_S_FCAT.
*--For Events
DATA: IT_EVENTS TYPE SLIS_T_EVENT.
*--Layout
DATA: X_LAYOUT TYPE LVC_S_LAYO.
*--for Cell Color
DATA: LS_CELLCOLOR TYPE LVC_S_SCOL.
DATA: L_INDEX TYPE SY-TABIX.
DATA: L_POS TYPE I VALUE 1.

DATA: BEGIN OF IT_VBAP OCCURS 0,
      VBELN LIKE VBAP-VBELN,
      POSNR LIKE VBAP-POSNR,
      CELLCOLOR TYPE LVC_T_SCOL,
     END OF IT_VBAP.

START-OF-SELECTION.
  PERFORM GET_DATA.
  PERFORM GENERATE_FLDCAT.
  PERFORM SET_CELL_COLORS.

END-OF-SELECTION.
  PERFORM GENERATE_ALV_GRID.

*&---------------------------------------------------------------------*
*&      Form  GET_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM GET_DATA.
  SELECT VBELN
         POSNR
         UP TO 10 ROWS
        INTO (IT_VBAP-VBELN,
              IT_VBAP-POSNR)
        FROM VBAP.
    APPEND IT_VBAP.
  ENDSELECT.

ENDFORM.                    " GET_DATA
*&---------------------------------------------------------------------*
*&      Form  GENERATE_FLDCAT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM GENERATE_FLDCAT.
  CLEAR: L_POS.
  L_POS = L_POS + 1.
  X_FIELDCAT-SELTEXT = 'VBELN'.
  X_FIELDCAT-FIELDNAME = 'VBELN'.
  X_FIELDCAT-TABNAME = 'ITAB'.
  X_FIELDCAT-COL_POS    = L_POS.
  X_FIELDCAT-OUTPUTLEN = '10'.
  APPEND X_FIELDCAT TO IT_FIELDCAT.
  CLEAR X_FIELDCAT.

  L_POS = L_POS + 1.
  X_FIELDCAT-SELTEXT = 'POSNR'.
  X_FIELDCAT-FIELDNAME = 'POSNR'.
  X_FIELDCAT-TABNAME = 'ITAB'.
  X_FIELDCAT-COL_POS    = L_POS.
  X_FIELDCAT-OUTPUTLEN = '5'.
  APPEND X_FIELDCAT TO IT_FIELDCAT.
  CLEAR X_FIELDCAT.

  L_POS = L_POS + 1.
  X_LAYOUT-CTAB_FNAME = 'CELLCOLOR'.

ENDFORM.                    " GENERATE_FLDCAT
*&---------------------------------------------------------------------*
*&      Form  SET_CELL_COLORS
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM SET_CELL_COLORS.
  LOOP AT IT_VBAP.
    L_INDEX = SY-TABIX.
    LS_CELLCOLOR-FNAME = 'VBELN'.
    LS_CELLCOLOR-COLOR-COL = '7'.
    LS_CELLCOLOR-COLOR-INT = '1'.
    LS_CELLCOLOR-COLOR-INV = '1'.
    APPEND LS_CELLCOLOR TO IT_VBAP-CELLCOLOR.
    MODIFY IT_VBAP INDEX L_INDEX TRANSPORTING CELLCOLOR.
  ENDLOOP.

ENDFORM.                    " SET_CELL_COLORS
*&---------------------------------------------------------------------*
*&      Form  GENERATE_ALV_GRID
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM GENERATE_ALV_GRID.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
       EXPORTING
            I_CALLBACK_PROGRAM = 'ZTESTALV'
            IS_LAYOUT_LVC      = X_LAYOUT
            IT_FIELDCAT_LVC    = IT_FIELDCAT
       TABLES
            T_OUTTAB           = IT_VBAP[]
       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.                    " GENERATE_ALV_GRID

Former Member
0 Kudos

very very very thanks i got d answer because of u only.....