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

regarding fieldcatlog

Former Member
0 Likes
623

how to create fieldcatlog?

how to add fields to fieldcatlog?

plz explain clearly with example and comments.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
598

Hi,

Check the following code.

I used it in my program:

*For Field cat.

SFLD-FIELDNAME = 'SWERK'.

SFLD-SELTEXT_L = 'Division'.

SFLD-OUTPUTLEN = 9.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'MSGRP'.

SFLD-SELTEXT_L = 'Depot'.

SFLD-OUTPUTLEN = 10.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'BEZDT'.

SFLD-SELTEXT_L = 'Date'.

SFLD-OUTPUTLEN = 10.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'EQUNR'.

SFLD-SELTEXT_L = 'Pole No.'.

SFLD-OUTPUTLEN = 16.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATFLV1'.

SFLD-SELTEXT_L = 'Size(M)'.

SFLD-OUTPUTLEN = 7.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'PLTXT'.

SFLD-SELTEXT_L = 'Location'.

SFLD-OUTPUTLEN = 30.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATWRT2'.

SFLD-SELTEXT_L = 'Authority'.

SFLD-OUTPUTLEN = 16.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'KURZTEXT'.

SFLD-SELTEXT_L = 'Reason for change'.

SFLD-OUTPUTLEN = 17.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATFLV3'.

SFLD-SELTEXT_L = 'Wattage(W)'.

SFLD-OUTPUTLEN = 11.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATWRT4'.

SFLD-SELTEXT_L = 'Lamp Type'.

SFLD-OUTPUTLEN = 9.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'COMMENTS'.

SFLD-SELTEXT_L = 'Comments'.

SFLD-OUTPUTLEN = 25.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

PERFORM BUILD_LAYOUT.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

  • I_INTERFACE_CHECK = ' '

I_CALLBACK_PROGRAM = 'ZRPMSLM'

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

I_CALLBACK_TOP_OF_PAGE = 'TOP'

  • 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 = GD_LAYOUT

IT_FIELDCAT = ITFLD[]

  • 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

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

T_OUTTAB = ITABMEL1

  • 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.

Hope this helps.

Reward if helpful.

Regards,

Sipra

how to create fieldcatlog?

how to add fields to fieldcatlog?

plz explain clearly with example and comments.

5 REPLIES 5
Read only

Former Member
0 Likes
599

Hi,

Check the following code.

I used it in my program:

*For Field cat.

SFLD-FIELDNAME = 'SWERK'.

SFLD-SELTEXT_L = 'Division'.

SFLD-OUTPUTLEN = 9.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'MSGRP'.

SFLD-SELTEXT_L = 'Depot'.

SFLD-OUTPUTLEN = 10.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'BEZDT'.

SFLD-SELTEXT_L = 'Date'.

SFLD-OUTPUTLEN = 10.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'EQUNR'.

SFLD-SELTEXT_L = 'Pole No.'.

SFLD-OUTPUTLEN = 16.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATFLV1'.

SFLD-SELTEXT_L = 'Size(M)'.

SFLD-OUTPUTLEN = 7.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'PLTXT'.

SFLD-SELTEXT_L = 'Location'.

SFLD-OUTPUTLEN = 30.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATWRT2'.

SFLD-SELTEXT_L = 'Authority'.

SFLD-OUTPUTLEN = 16.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'KURZTEXT'.

SFLD-SELTEXT_L = 'Reason for change'.

SFLD-OUTPUTLEN = 17.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATFLV3'.

SFLD-SELTEXT_L = 'Wattage(W)'.

SFLD-OUTPUTLEN = 11.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'ATWRT4'.

SFLD-SELTEXT_L = 'Lamp Type'.

SFLD-OUTPUTLEN = 9.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

SFLD-FIELDNAME = 'COMMENTS'.

SFLD-SELTEXT_L = 'Comments'.

SFLD-OUTPUTLEN = 25.

  • SFLD-KEY = 'X'.

APPEND SFLD TO ITFLD.

CLEAR SFLD.

PERFORM BUILD_LAYOUT.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

  • I_INTERFACE_CHECK = ' '

I_CALLBACK_PROGRAM = 'ZRPMSLM'

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

I_CALLBACK_TOP_OF_PAGE = 'TOP'

  • 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 = GD_LAYOUT

IT_FIELDCAT = ITFLD[]

  • 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

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

T_OUTTAB = ITABMEL1

  • 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.

Hope this helps.

Reward if helpful.

Regards,

Sipra

Read only

Former Member
0 Likes
598

pls go through it

<a href="http://www.sapdevelopment.co.uk/reporting/alv/alv_variousfcat.htm">http://www.sapdevelopment.co.uk/reporting/alv/alv_variousfcat.htm</a>

regards

shiba dutta

Read only

p291102
Active Contributor
0 Likes
598

Hi,

Herewith i am sending the ALV REPORT sample coding which is used by fieldcatalogs.

REPORT YMS_TESTALV .

TYPE-POOLS: SLIS.

DATA: REPID LIKE SY-REPID,

X_FIELDCAT TYPE SLIS_FIELDCAT_ALV,

IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,

L_LAYOUT type slis_layout_alv,

  • x_events type slis_alv_event,

it_events type slis_t_event with header line. "SLIS_T_EVENT.

DATA: BEGIN OF ITAB OCCURS 0,

VBELN LIKE VBAK-VBELN,

POSNR LIKE VBAP-POSNR,

MALE type i,

female type i,

  • PLANE(10),

  • ACTUAL(10),

  • PLANE1(10),

  • ACTUAL1(10),

END OF ITAB.

START-OF-SELECTION.

REPID = SY-REPID.

SELECT VBELN POSNR FROM VBAP UP TO 20 ROWS INTO TABLE ITAB.

X_FIELDCAT-FIELDNAME = 'VBELN'.

X_FIELDCAT-SELTEXT_L = text-020. "'Planned cost'.

X_FIELDCAT-TABNAME = 'ITAB'.

X_FIELDCAT-COL_POS = 1.

X_FIELDCAT-OUTPUTLEN = 10 .

APPEND X_FIELDCAT TO IT_FIELDCAT.

CLEAR X_FIELDCAT.

X_FIELDCAT-FIELDNAME = 'POSNR'.

X_FIELDCAT-SELTEXT_L = text-053. "'Actual cost '.

X_FIELDCAT-TABNAME = 'ITAB'.

X_FIELDCAT-COL_POS = 2."1.

APPEND X_FIELDCAT TO IT_FIELDCAT.

CLEAR X_FIELDCAT.

X_FIELDCAT-FIELDNAME = 'MALE'.

X_FIELDCAT-SELTEXT_L = 'MALE'.

X_FIELDCAT-TABNAME = 'ITAB'.

X_FIELDCAT-COL_POS = 3.

APPEND X_FIELDCAT TO IT_FIELDCAT.

CLEAR X_FIELDCAT.

X_FIELDCAT-FIELDNAME = 'FEMALE'.

X_FIELDCAT-SELTEXT_L = TEXT-T01. "'FEMALE'.

X_FIELDCAT-TABNAME = 'ITAB'.

X_FIELDCAT-COL_POS = 3.

APPEND X_FIELDCAT TO IT_FIELDCAT.

CLEAR X_FIELDCAT.

it_events-NAME = SLIS_EV_TOP_OF_PAGE.

it_events-FORM = 'TOP_OF_PAGE'.

APPEND iT_EVENTS.

CLEAR it_events .

L_LAYOUT-NO_COLHEAD = 'X'.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = REPID

IS_LAYOUT = L_LAYOUT

IT_FIELDCAT = IT_FIELDCAT

it_events = it_events[]

TABLES

T_OUTTAB = ITAB

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.

FORM TOP_OF_PAGE.

*-To display the headers for main list

FORMAT COLOR COL_HEADING.

WRITE: / SY-ULINE(143).

WRITE: / SY-VLINE,

(8) 'LAST YEAR' ,

  • SY-VLINE,

(10) ' ' ,

SY-VLINE,

  • (19) 'CURRENT YEAR'(020) centered,

(19) 'CURRENT YEAR'(020),

sy-vline.

WRITE: / SY-VLINE,

(8) 'PLANE'(053) ,

SY-VLINE,

(8) 'ACTUAL'(054) ,

SY-VLINE,

(8) 'MALE'(056) ,

sy-vline,

(9) 'FEMALE'(057) ,

sy-vline.

FORMAT COLOR OFF.

**

ENDFORM.

Hope it will helps to u.

Thanks,

Shankar

Read only

Former Member
0 Likes
598

thanks

Read only

Former Member
0 Likes
598

FIELDCATALOG

To prepare field catalog certain fields are essential .There are various other fields allowing for vaarious possibilities and display options.

TABNAME

FIELDNAME

REF_TABNAME

SELTECT_M

e.g.

DATA: WS_FCAT TYPE SLIS_FIELDCAT_ALV . "LINE ITEM OF FCAT

DATA: IN_FCAT TYPE SLIS_T_FIELDCAT_ALV.

WS_FCAT-TABNAME = 'MARA'.

WS_FCAT-FIELDNAME = 'MATNR'.

WS_FCAT-SELTEXT_M = 'Material Number'.

APPEND WS_FCAT TO IN_FCAT .

CLEAR WS_FCAT.

WS_FCAT-TABNAME = 'MAKT'.

WS_FCAT-FIELDNAME = 'MAKTX'.

WS_FCAT-SELTEXT_M = 'Material Description'.

APPEND WS_FCAT TO IN_FCAT .

This will create fieldcatalog with two columns for displaying material and material description .

RESUSE_ALV_LIST_DISPLAY.

The following FM is used to display the data in the internal table in the form of ALV

LIST. The Event table is only required if event handling is being done.

CALL FUNCTION 'RESUSE_ALV_LIST_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = W_REPID "of TYPE SY-REPID and

" value SY-REPID

IS_LAYOUT = W_LAYOUT "of TYPE SLIS_LAYOUT_ALV

IT_FIELDCAT = IN_FCAT "of TYPE SLIS_T_FIELDCAT_ALV

I_SAVE = W_SAVE "of TYPE C ,values A ,U ,' '

IT_EVENTS = IN_EVENTS " of TYPE SLIS_T_EVENT

TABLES

T_OUTTAB = IN_DATA "internal table conatining data

"corresponding to IN_FCAT

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2

IF SY-SUBRC NE 0.

MESSAGE ENNN .

ENDIF.

<b>Various ways to build a Fieldcatalog</b>

http://www.sapdevelopment.co.uk/reporting/alv/alv_variousfcat.htm

<b>ALV grid display (inc. column total)</b>

http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_basic.htm