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

Please check the code ALV

Former Member
0 Likes
394

i dnt know y fieldcat is not getting populated i haave rtied out almost everything i c'nt find the error

If somebody got a vaulabe suggestion?

Thnkx

----


  • TYPES DECLARTIONS

----


TYPE-POOLS:slis.

TYPES:BEGIN OF str_bsid,

blart TYPE blart,

bukrs TYPE bukrs,

buzei TYPE bsid-buzei,

bschl TYPE bsid-bschl,

hkont TYPE bsid-hkont,

ktopl TYPE t001-ktopl,

bilkt TYPE ska1-bilkt,

saknr TYPE ska1-saknr,

fstag TYPE skb1-fstag,

END OF str_bsid.

TYPES:BEGIN OF str_t001,

bukrs TYPE bukrs,

ktopl TYPE ktopl,

END OF str_t001.

TYPES:BEGIN OF str_ska1,

bilkt TYPE bilkt,

ktopl TYPE ktopl,

saknr TYPE saknr,

END OF str_ska1.

TYPES:BEGIN OF str_skb1,

fstag TYPE fstag,

bukrs TYPE bukrs,

saknr TYPE saknr,

END OF str_skb1.

TYPES:BEGIN OF str_ss,

bkrs TYPE bukrs,

blart TYPE blart,

budat TYPE budat,

bschl TYPE bschl,

hkont TYPE hkont,

END OF str_ss.

TABLES: sscrfields,bsid,t001,ska1,skb1,bkpf,bseg.

----


  • DATA DECLARATIONS

----


DATA: it_bsid TYPE TABLE OF str_bsid. "WITH HEADER LINE,

DATA: wa_bsid TYPE str_bsid ,"WITH HEADER LINE,

it_t001 TYPE TABLE OF str_t001 WITH HEADER LINE,

it_ska1 TYPE TABLE OF str_ska1 WITH HEADER LINE,

it_skb1 TYPE TABLE OF str_skb1 WITH HEADER LINE.

DATA:w_index TYPE sy-tabix.

INITIALIZATION.

sscrfields-functxt_02 = 'ZEEST'.

SELECTION-SCREEN FUNCTION KEY 2.

SELECT-OPTIONS:s_bukrs FOR bkpf-bukrs,

s_blart FOR bkpf-blart,

s_budat FOR bkpf-budat,

s_bschl FOR bseg-bschl,

s_hkont FOR bseg-hkont.

AT SELECTION-SCREEN.

IF sscrfields-ucomm = 'FC02'.

ENDIF.

*field-symbols:<f1> type str_bsid.

----


  • SELECT STATEMENTS

----


START-OF-SELECTION.

SELECT blart "Document type

bukrs "Company Code

buzei "Number of Line Item Within Accounting Document

bschl "Posting Key

hkont "General Ledger Account

FROM bsid

INTO CORRESPONDING FIELDS OF TABLE it_bsid

WHERE bukrs IN s_bukrs

AND blart IN s_blart

AND budat IN s_budat

AND bschl IN s_bschl

AND hkont IN s_hkont.

IF it_bsid[] IS NOT INITIAL.

SORT it_bsid.

REFRESH it_t001.

SELECT bukrs "Company Code

ktopl "Chart of Accounts

FROM t001

INTO TABLE it_t001

FOR ALL ENTRIES IN it_bsid

WHERE bukrs = it_bsid-bukrs.

IF NOT it_t001[] IS INITIAL.

SORT it_t001.

REFRESH it_ska1.

SELECT bilkt "Group Account Number

ktopl "Chart of Accounts

saknr "G/L account number

FROM ska1

INTO TABLE it_ska1

FOR ALL ENTRIES IN it_t001

WHERE ktopl = it_t001-ktopl.

IF NOT it_ska1[] IS INITIAL.

SORT it_ska1.

REFRESH it_skb1.

SELECT fstag "Field status group

saknr

FROM skb1 INTO TABLE it_skb1

FOR ALL ENTRIES IN it_bsid

WHERE bukrs = it_bsid-bukrs.

ENDIF.

ENDIF.

ENDIF.

LOOP AT it_bsid INTO wa_bsid.

w_index = sy-tabix.

READ TABLE it_t001 WITH KEY bukrs = wa_bsid-bukrs.

IF sy-subrc = 0.

wa_bsid-ktopl = it_t001-ktopl.

IF sy-subrc = 0.

READ TABLE it_ska1 WITH KEY ktopl = wa_bsid-ktopl.

wa_bsid-saknr = it_ska1-saknr.

wa_bsid-bilkt = it_ska1-bilkt.

IF sy-subrc = 0.

READ TABLE it_skb1 WITH KEY bukrs = wa_bsid-bukrs.

wa_bsid-fstag = it_skb1-fstag.

MODIFY it_bsid FROM wa_bsid INDEX w_index

TRANSPORTING ktopl bilkt

saknr fstag.

ENDIF.

ENDIF.

ENDIF.

ENDLOOP.

DATA:slis_tab TYPE slis_tabname,

ft_cat TYPE slis_t_fieldcat_alv.

DATA : incl TYPE trdir-name.

incl = sy-repid.

slis_tab = 'IT_BSID'.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = sy-repid

i_internal_tabname = slis_tab

  • I_STRUCTURE_NAME =

i_client_never_display = 'X'

  • i_inclname = incl

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = ft_cat[]

EXCEPTIONS

inconsistent_interface = 1

program_error = 2

OTHERS = 3

.

IF sy-subrc <> 0.

WRITE:'field cat not found'.

ENDIF.

2 REPLIES 2
Read only

Former Member
0 Likes
367

hi,

DATA:tb_fieldcat TYPE slis_t_fieldcat_alv.

try like this

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_structure_name = tb_structure

i_client_never_display = 'X'

CHANGING

ct_fieldcat = tb_fieldcat

EXCEPTIONS

inconsistent_interface = 1

program_error = 2

OTHERS = 3.

IF sy-subrc <> 0.

endif

reward if helpful

Edited by: Padmasri on Mar 5, 2008 2:17 PM

Read only

Former Member
0 Likes
367

Hi,

If you are using fieldcatalog merge FM, it is always better to create the structure of the internal table in SE11 and pass the structure name to FM, I_STRUCTURE_NAME parameter.

Your issue will be solved.

Thanks,

Sriram Ponna.