SAP R/3 форум ABAP консультантов
Russian ABAP Developer's Club

Home - FAQ - Search - Memberlist - Usergroups - Profile - Log in to check your private messages - Register - Log in - English
Blogs - Weblogs News

Color a Column Value in ALV Report



 
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ALV Grid / ALV Tree / ALV List
View previous topic :: View next topic  
Author Message
admin
Администратор
Администратор



Joined: 01 Sep 2007
Posts: 1640

PostPosted: Sun Sep 02, 2007 4:03 pm    Post subject: Color a Column Value in ALV Report Reply with quote

Example of how to color a column value in ALV Report.
Code:


REPORT  z_colour NO STANDARD PAGE HEADING  .

TABLES :pa0002.

  TYPE-POOLS: slis.                 "ALV Declarations

DATA : BEGIN OF it OCCURS 0,
      pernr LIKE pa0001-pernr,
      rufnm LIKE pa0002-rufnm,
      cell_colour TYPE lvc_t_scol,    "Cell colour
       END OF it.

SELECTION-SCREEN BEGIN OF BLOCK main WITH FRAME.
SELECT-OPTIONS :s_pnum  FOR pa0002-pernr .
SELECTION-SCREEN END OF BLOCK main.

*ALV data declarations
DATA: fieldcatalog TYPE slis_t_fieldcat_alv WITH
HEADER LINE,
      gd_layout    TYPE slis_layout_alv,
      gd_repid     LIKE sy-repid,
      gt_sort     TYPE slis_t_sortinfo_alv.

* To colour a cell.
  DATA ls_cellcolour TYPE lvc_s_scol.

START-OF-SELECTION.
  PERFORM data_retrieval.
  PERFORM build_fieldcatalog.
  PERFORM build_layout.
  PERFORM display_alv_report.
END-OF-SELECTION.
  FREE : it.

FORM build_fieldcatalog .
  fieldcatalog-fieldname   = 'PERNR'.
  fieldcatalog-seltext_m   = 'Personnel No.'.
  fieldcatalog-col_pos     =  0.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.

  fieldcatalog-fieldname   = 'RUFNM'.
  fieldcatalog-seltext_m   = 'Name'.
  fieldcatalog-col_pos     =  0.
  APPEND fieldcatalog TO fieldcatalog.
  CLEAR  fieldcatalog.
ENDFORM.

FORM build_layout .
  gd_layout-no_input          = 'X'.
  gd_layout-colwidth_optimize = 'X'.
  gd_layout-totals_text       = 'Totals'(256).
  gd_layout-coltab_fieldname = 'CELL_COLOUR'.

ENDFORM.                    " build_layout

FORM display_alv_report .
  gd_repid = sy-repid.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       = gd_repid
      is_layout                = gd_layout
      it_fieldcat              = fieldcatalog[]
      i_save                   = 'A'
    TABLES
      t_outtab                 = it
    EXCEPTIONS
      program_error            = 1
      OTHERS                   = 2.
  IF sy-subrc <> 0.
  ENDIF.
ENDFORM.                    " display_alv_report

FORM data_retrieval .
select pernr rufnm from pa0002 into corresponding
fields of table it where pernr in s_pnum.
  LOOP AT it.
*Now based on the value of the field pernr we can
change the cell colour of the field rufnm or pernr.
    IF it-pernr eq '10001' .
      ls_cellcolour-fname = 'RUFNM'.
      ls_cellcolour-color-col = '5'.
      ls_cellcolour-color-int = '1'.
      ls_cellcolour-color-inv = '0'.
      APPEND ls_cellcolour TO it-cell_colour.
      IF sy-subrc EQ 0.
        MODIFY it.
      ENDIF.
    ENDIF.
  ENDLOOP.
ENDFORM.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Russian ABAP Developer's Club Forum Index -> ALV Grid / ALV Tree / ALV List All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG.
SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG.
Every effort is made to ensure content integrity. Use information on this site at your own risk.