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

field catalog

Former Member
0 Likes
652

hi iam trying to do an object with field catalog . but it is giving a dump error saying something like the internal table length is 72 while the program line is 114 characters wide. it is talking abt the fieldcatalog merge function. can u tell me what possibly could be the problem n its resolution

hi iam trying to do an object with field catalog . but it is giving a dump error saying something like the internal table length is 72 while the program line is 114 characters wide. it is talking abt the fieldcatalog merge function. can u tell me what possibly could be the problem n its resolution

4 REPLIES 4
Read only

Former Member
0 Likes
611

Hi,

Try the below setting to avoid short dump.

Function REUSE_ALV_FIELDCATALOG_MERGE dumps if the program contains lines longer than 72 characters, even if the lines are comment lines. An easy remedy is to turn on the switch preventing lines to be longer than 72. (Utilities -> settings. Tab-page “ABAP-Editor”, sub tab-page “Editor”, set a check mark in the field “Downwards-Comp. Line Lngth(72)”).

Regards,

Omakr.

Read only

Former Member
0 Likes
611

HI

see this example

&----


*& Report Z_ALV_EXAMPLE2

*&

&----


*&

*&

&----


REPORT Z_ALV_EXAMPLE2.

tables : scarr , sbook.

data : begin of itab occurs 0,

carrid like scarr-carrid,

carrname like scarr-carrname,

connid like sbook-connid,

luggweight like sbook-luggweight,

end of itab.

type-pools : slis.

data : itab1 type slis_t_fieldcat_alv.

data : wa type slis_fieldcat_alv.

*wa-col_pos = 1.

wa-fieldname = 'carrid'.

wa-seltext_s = 'Airline id'.

wa-tabname = 'itab'.

append wa to itab1.

*wa-col_pos = 2.

*wa-fieldname = 'carrname'.

*wa-seltext_s = 'Airline name'.

*wa-tabname = 'itab'.

*append wa to itab1.

*

*wa-col_pos = 3.

*wa-fieldname = 'connid'.

*wa-seltext_s = 'connection id'.

*wa-tabname = 'itab'.

*append wa to itab1.

*

*wa-col_pos = 4.

*wa-fieldname = 'luggweight'.

*wa-seltext_s = 'luggage weight'.

*wa-tabname = 'itab'.

*append wa to itab1.

select sccarrid sccarrname sbconnid sbluggweight into corresponding fields of table itab

from scarr as sc

inner join sbook as sb

on sccarrid = sbcarrid where sc~carrid = 'AA'.

*PERFORM BUILD_FIELD_CATELOG CHANGING itab1.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

  • I_CALLBACK_PROGRAM = ' '

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

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

IT_FIELDCAT = itab1

  • 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

  • I_HTML_HEIGHT_TOP = 0

  • I_HTML_HEIGHT_END = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • IR_SALV_FULLSCREEN_ADAPTER =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

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 BUILD_FIELD_CATELOG CHANGING itab TYPE slis_t_fieldcat_alv.

*

*data : wa type slis_fieldcat_alv.

*

*wa-col_pos = 1.

*wa-fieldname = 'carrid'.

*wa-seltext_s = 'Airline id'.

**wa-tabname = 'itab'.

*append wa to itab1.

*

*wa-col_pos = 2.

*wa-fieldname = 'carrname'.

*wa-seltext_s = 'Airline name'.

**wa-tabname = 'itab'.

*append wa to itab1.

*

*wa-col_pos = 3.

*wa-fieldname = 'connid'.

*wa-seltext_s = 'connection id'.

**wa-tabname = 'itab'.

*append wa to itab1.

*

*wa-col_pos = 4.

*wa-fieldname = 'luggweight'.

*wa-seltext_s = 'luggage weight'.

**wa-tabname = 'itab'.

*append wa to itab1.

*ENDFORM.

Read only

Former Member
0 Likes
611

HI

sorry see this code

TABLES: scarr,

sbook.

TYPE-POOLS: slis.

*& *****Data Declarations***** &*

DATA: BEGIN OF itab_data OCCURS 0,

carrid LIKE scarr-carrid,

carrname LIKE scarr-carrname,

connid LIKE sbook-connid,

customid LIKE sbook-customid,

fldate LIKE sbook-fldate,

END OF itab_data.

DATA: itab_fldcat TYPE slis_t_fieldcat_alv.

DATA: i_layout TYPE slis_layout_alv.

DATA: report_id LIKE sy-repid.

DATA: ws_title TYPE lvc_title VALUE 'Airline AVL Report'.

*& *****Get Data****** &*

SELECT acarrid acarrname bconnid bcustomid b~fldate

FROM scarr AS a INNER JOIN sbook AS b

ON acarrid = bcarrid INTO CORRESPONDING FIELDS OF TABLE itab_data

WHERE a~carrid = 'AA'.

report_id = sy-repid.

PERFORM build_layout CHANGING i_layout.

PERFORM build_field_catelogue CHANGING itab_fldcat.

*& *****Call function to display data***** &*

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE = ' '

i_callback_program = report_id

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_STRUCTURE_NAME =

is_layout = i_layout

it_fieldcat = itab_fldcat

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

I_SAVE = 'Y'

  • 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

  • IR_SALV_LIST_ADAPTER =

  • IT_EXCEPT_QINFO =

  • I_SUPPRESS_EMPTY_DATA = ABAP_FALSE

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = itab_data.

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

&----


  • text

----


  • -->I_LAYOUT text

*----


FORM build_layout CHANGING i_layout TYPE slis_layout_alv.

CLEAR i_layout.

i_layout-colwidth_optimize = 'X'.

i_layout-zebra = 'X'.

ENDFORM. "build_layout

&----


*& Form BUILD_FIELD_CATELOGUE

&----


  • text

----


  • -->I_FLDCAT text

----


FORM build_field_catelogue CHANGING i_fldcat TYPE slis_t_fieldcat_alv.

DATA: line_fieldcat TYPE slis_fieldcat_alv.

CLEAR line_fieldcat.

  • line_fieldcat-fieldname = 'CAR'.

  • line_fieldcat-tabname = 'ITAB'.

  • line_fieldcat-key = 'X'.

  • line_fieldcat-seltext_m = 'Airline Id'.

  • line_fieldcat-emphasize = 'X'.

  • APPEND line_fieldcat TO itab_fldcat.

CLEAR line_fieldcat.

line_fieldcat-fieldname = 'CARRNAME'.

  • line_fieldcat-tabname = 'ITAB'.

  • line_fieldcat-seltext_m = 'Airline Name'.

APPEND line_fieldcat TO itab_fldcat.

CLEAR line_fieldcat.

line_fieldcat-fieldname = 'CONNID'.

  • line_fieldcat-tabname = 'ITAB'.

  • line_fieldcat-seltext_m = 'Flight Id'.

APPEND line_fieldcat TO itab_fldcat.

CLEAR line_fieldcat.

line_fieldcat-fieldname = 'CUSTOMID'.

  • line_fieldcat-tabname = 'ITAB'.

  • line_fieldcat-seltext_m = 'Customer Id' .

APPEND line_fieldcat TO itab_fldcat.

CLEAR line_fieldcat.

line_fieldcat-fieldname = 'FLDATE'.

  • line_fieldcat-tabname = 'ITAB'.

  • line_fieldcat-seltext_m = 'Flight Date' .

APPEND line_fieldcat TO itab_fldcat.

ENDFORM. "BUILD_FIELD_CATELOGUE

Read only

Former Member
0 Likes
611

In your program the code line length will exceed more than 72 characters plz go thru your code.

if it goes more than 72 then write in next line this will solve ur issue.

Reward points if useful.

Regards,

Vimal