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.
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.
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.
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |