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

ALV USING ABAP OBJECTS

Former Member
0 Likes
335

HI ALL.

WHY I AM NOT ABLE TO COLOUR u2018LIFNRu2019 COLUMN USING FIELDCATALOG(FCAT).

HERE IS THE SOURCE CODE.

PLZ HELP ME OUT.

&----


*& Module pool ZOOPSDEMO *

*& *

&----


*& *

*& *

&----


PROGRAM ZOOPSDEMO .

DATA: BEGIN OF WA.

INCLUDE STRUCTURE LFA1.

DATA: LINE_COLOR(4) TYPE C,

END OF WA.

DATA ITAB LIKE TABLE OF WA.

DATA FCAT TYPE LVC_T_FCAT WITH HEADER LINE.

DATA: WA1 LIKE EKKO,

JTAB LIKE TABLE OF EKKO.

DATA: WA2 LIKE EKPO,

KTAB LIKE TABLE OF EKPO.

DATA: WA_LAYOUT TYPE LVC_S_LAYO.

DATA: O_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,

O_GRID TYPE REF TO CL_GUI_ALV_GRID.

CLASS E_EVENTS DEFINITION.

PUBLIC SECTION.

METHODS:

DC FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID IMPORTING E_ROW E_COLUMN.

ENDCLASS.

CLASS E_EVENTS IMPLEMENTATION.

METHOD DC.

IF E_COLUMN = 'LIFNR'.

READ TABLE ITAB INTO WA INDEX E_ROW-INDEX .

SELECT * FROM EKKO INTO TABLE JTAB UP TO 140 ROWS WHERE LIFNR = WA-LIFNR

.

SET PARAMETER ID 'LIF' FIELD WA-LIFNR.

CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY

EXPORTING

  • I_BUFFER_ACTIVE =

  • I_BYPASSING_BUFFER =

  • I_CONSISTENCY_CHECK =

I_STRUCTURE_NAME = 'EKKO'

  • IS_VARIANT =

  • I_SAVE =

  • I_DEFAULT = 'X'

  • IS_LAYOUT =

  • IS_PRINT =

  • IT_SPECIAL_GROUPS =

  • IT_TOOLBAR_EXCLUDING =

  • IT_HYPERLINK =

  • IT_ALV_GRAPHICS =

  • IT_EXCEPT_QINFO =

CHANGING

IT_OUTTAB = JTAB.

  • IT_FIELDCATALOG =

  • IT_SORT =

  • IT_FILTER =

  • EXCEPTIONS

  • INVALID_PARAMETER_COMBINATION = 1

  • PROGRAM_ERROR = 2

  • TOO_MANY_LINES = 3

  • others = 4

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDIF.

IF E_COLUMN = 'EBELN'.

READ TABLE JTAB INTO WA1 INDEX E_ROW-INDEX.

SELECT * FROM EKPO INTO TABLE KTAB UP TO 100 ROWS WHERE EBELN =

WA1-EBELN.

CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY

EXPORTING

  • I_BUFFER_ACTIVE =

  • I_BYPASSING_BUFFER =

  • I_CONSISTENCY_CHECK =

I_STRUCTURE_NAME = 'EKPO'

  • IS_VARIANT =

  • I_SAVE =

  • I_DEFAULT = 'X'

  • IS_LAYOUT =

  • IS_PRINT =

  • IT_SPECIAL_GROUPS =

  • IT_TOOLBAR_EXCLUDING =

  • IT_HYPERLINK =

  • IT_ALV_GRAPHICS =

  • IT_EXCEPT_QINFO =

CHANGING

IT_OUTTAB = KTAB.

  • IT_FIELDCATALOG =

  • IT_SORT =

  • IT_FILTER =

  • EXCEPTIONS

  • INVALID_PARAMETER_COMBINATION = 1

  • PROGRAM_ERROR = 2

  • TOO_MANY_LINES = 3

  • others = 4

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDIF.

ENDMETHOD.

ENDCLASS.

&----


*& Module STATUS_0100 OUTPUT

&----


  • text

----


MODULE STATUS_0100 OUTPUT.

  • SET PF-STATUS 'xxxxxxxx'.

  • SET TITLEBAR 'xxx'.

CREATE OBJECT O_CONTAINER

EXPORTING

CONTAINER_NAME = 'CONTAINER'.

CREATE OBJECT O_GRID

EXPORTING

I_PARENT = O_CONTAINER.

DATA O_EVENT TYPE REF TO E_EVENTS.

CREATE OBJECT O_EVENT .

SET HANDLER O_EVENT->DC FOR O_GRID.

WA_LAYOUT-INFO_FNAME = 'LINE_COLOR'.

WA-LINE_COLOR = 'C511'.

MODIFY ITAB FROM WA INDEX 5 TRANSPORTING LINE_COLOR.

WA_LAYOUT-SEL_MODE = 'D'.

CALL METHOD O_GRID->SET_TABLE_FOR_FIRST_DISPLAY

EXPORTING

  • I_BUFFER_ACTIVE =

  • I_BYPASSING_BUFFER =

  • I_CONSISTENCY_CHECK =

I_STRUCTURE_NAME = 'LFA1'

  • IS_VARIANT =

  • I_SAVE =

  • I_DEFAULT = 'X'

IS_LAYOUT = WA_LAYOUT

  • IS_PRINT =

  • IT_SPECIAL_GROUPS =

  • IT_TOOLBAR_EXCLUDING =

  • IT_HYPERLINK =

  • IT_ALV_GRAPHICS =

  • IT_EXCEPT_QINFO =

CHANGING

IT_OUTTAB = ITAB

IT_FIELDCATALOG = FCAT[].

  • IT_SORT =

  • IT_FILTER =

  • EXCEPTIONS

  • INVALID_PARAMETER_COMBINATION = 1

  • PROGRAM_ERROR = 2

  • TOO_MANY_LINES = 3

  • others = 4

.

IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDMODULE. " STATUS_0100 OUTPUT

MODULE READ_DATA OUTPUT.

PERFORM COL_HEAD.

SELECT * FROM LFA1 INTO TABLE ITAB UP TO 140 ROWS.

ENDMODULE.

FORM COL_HEAD.

FCAT-EMPHASIZE = 'C511'.

MODIFY FCAT[] FROM FCAT TRANSPORTING EMPHASIZE WHERE FIELDNAME = 'LIFNR'

.

ENDFORM.

1 REPLY 1
Read only

Former Member
0 Likes
298

Hi ,

In module status where you

WA-LINE_COLOR = 'C511'.

MODIFY ITAB FROM WA INDEX 5 TRANSPORTING LINE_COLOR

better read table itab with index

Read table itab into wa index 5 .

WA-LINE_COLOR = 'C511'.

MODIFY ITAB FROM WA INDEX 5 TRANSPORTING LINE_COLOR.

please reward if useful .