Skip to Content
0
Apr 18, 2014 at 10:37 AM

Problem with merging two internal tables

37 Views

I have two internal table for bkpf and bseg.But when i merge these two internal tables in third one it works correctly and gives output but problem is it takes very large time to give result.

The code is as follow:

SELECT-OPTIONS:s_docnum FOR bkpf-belnr,

s_cmpcde FOR bkpf-bukrs OBLIGATORY.

PARAMETERS: p_fysyr TYPE bkpf-gjahr matchcode object Z_GZAHR OBLIGATORY.

SELECT-OPTIONS : s_accnt FOR bseg-koart.

*1st intrnal table

TYPES: BEGIN OF ty_bkpf,

docno TYPE bkpf-belnr,

comcode TYPE bkpf-bukrs,

year TYPE bkpf-gjahr,

END OF ty_bkpf.


*2nd internal table
TYPES: BEGIN OF ty_bseg,

litmno TYPE bseg-buzei,

acctyp TYPE bseg-koart,

cust TYPE bseg-kunnr,

vendor TYPE bseg-lifnr,

indicator TYPE bseg-shkzg,

amt TYPE bseg-dmbtr,

END OF ty_bseg.

*final internal table

TYPES : BEGIN OF ty_ftab,

docno TYPE bkpf-belnr,

comcode TYPE bkpf-bukrs,

year TYPE bkpf-gjahr,

litmno TYPE bseg-buzei,

acctyp TYPE bseg-koart,

cust TYPE bseg-kunnr,

vendor TYPE bseg-lifnr,

indicator TYPE bseg-shkzg,

amt TYPE bseg-dmbtr,

END OF ty_ftab.

DATA: it_bseg TYPE TABLE OF ty_bseg,

wa_bseg TYPE ty_bseg,

it_bkpf TYPE TABLE OF ty_bkpf,

wa_bkpf TYPE ty_bkpf,

it_ftab TYPE TABLE OF ty_ftab,

wa_ftab TYPE ty_ftab.

START-OF-SELECTION.

SELECT belnr bukrs gjahr

FROM bkpf

INTO TABLE it_bkpf

WHERE belnr IN s_docnum and bukrs IN s_cmpcde AND gjahr = p_fysyr.

SELECT buzei koart kunnr lifnr shkzg dmbtr

FROM bseg

INTO TABLE it_bseg

WHERE koart in s_accnt.

LOOP AT it_bseg INTO wa_bseg.

read table it_bkpf into wa_bkpf index sy-tabix.

wa_ftab-docno = wa_bkpf-docno.

wa_ftab-comcode = wa_bkpf-comcode.

wa_ftab-year = wa_bkpf-year.


wa_ftab-litmno = wa_bseg-litmno.

wa_ftab-acctyp = wa_bseg-acctyp.

wa_ftab-cust = wa_bseg-cust.

wa_ftab-vendor = wa_bseg-vendor.

wa_ftab-indicator = wa_bseg-indicator.

wa_ftab-amt = wa_bseg-amt.

APPEND wa_ftab TO it_ftab.

CLEAR wa_ftab.

ENDLOOP.

*so when i try to display final internal table it_ftab in grid alv then it is taking very large time.

so need some help to optimize performance.