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: 

Reuse Field catelog merge

Former Member
0 Kudos

Hi ,

I am using Field catelog merge,

DATA: lt_scr TYPE STANDARD TABLE OF /table WITH HEADER LINE,

SELECT * FROM table INTO TABLE lt_scr up to 5 rows.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = sy-repid

I_INTERNAL_TABNAME = 'LT_SCR'

I_INCLNAME = sy-repid

CHANGING

CT_FIELDCAT = LT_FCAT

EXCEPTIONS

INCONSISTENT_INTERFACE = 1

PROGRAM_ERROR = 2

OTHERS = 3.

and when I go in debug mode, this LT_FCAT is blank.

Any ideas plz.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

hi,

refer this link

do like this,

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = SY-REPID

  • I_INTERNAL_TABNAME = IT_TAB

  • I_STRUCTURE_NAME =

  • I_CLIENT_NEVER_DISPLAY = 'X'

  • I_INCLNAME =

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

CT_FIELDCAT = IT_FIELDCAT

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

IF SY-SUBRC 0.

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

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

ENDIF.

6 REPLIES 6

former_member555112
Active Contributor
0 Kudos

Hi,

Do not pass the sy-repid field directly.

Move it in a variable and then pass to the FM.

Regards,

Ankur Parab

Former Member
0 Kudos

Hello


data: g_repid like sy-repid.
g_repid = sy-repid.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = g_repid " replace
I_INTERNAL_TABNAME = 'LT_SCR'
I_INCLNAME = g_repid " replace
CHANGING
CT_FIELDCAT = LT_FCAT
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3.

Former Member
0 Kudos

hi,

refer this link

do like this,

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = SY-REPID

  • I_INTERNAL_TABNAME = IT_TAB

  • I_STRUCTURE_NAME =

  • I_CLIENT_NEVER_DISPLAY = 'X'

  • I_INCLNAME =

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

CT_FIELDCAT = IT_FIELDCAT

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

.

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

data l_repid like sy-repid.

l_repid = sy-repid.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = l_repid

i_internal_tabname = 'LT_SCR'

  • I_STRUCTURE_NAME = '/EXT/RT_SCR'

i_inclname = l_repid

  • i_client_never_display = 'X'

  • I_BYPASSING_BUFFER = 'X'

CHANGING

ct_fieldcat = LT_FCAT

EXCEPTIONS

inconsistent_interface = 1

program_error = 2

OTHERS = 3.

I am getting the same issue...

LT_FCAT is blank...

Former Member
0 Kudos

I sould use,

Begin of itab occurs 0,

a LIKE tablename-fieldname,

end of itab.

Problem solved...

kesavadas_thekkillath
Active Contributor
0 Kudos

check this

DATA:

lt_scr TYPE STANDARD TABLE OF mara with header line,

LT_FCAT type sLIS_T_FIELDCAT_ALV.

select * from mara into table lt_scr up to 5 rows.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

I_PROGRAM_NAME = sy-repid

I_STRUCTURE_NAME = 'MARA'

I_INTERNAL_TABNAME = 'LT_SCR'

I_INCLNAME = sy-repid

CHANGING

CT_FIELDCAT = LT_FCAT

EXCEPTIONS

INCONSISTENT_INTERFACE = 1

PROGRAM_ERROR = 2

OTHERS = 3.

I_STRUCTURE_NAME is missing in ur code