‎2008 Mar 05 1:08 PM
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.
‎2008 Mar 05 1:16 PM
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
‎2008 Mar 05 1:22 PM
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.