2007 Dec 11 3:39 PM
Hi All,
I am getting data from BSIK,BSEG etc tables into some internal tables and i am getting a short dump due to large volume of data and i cannot restrict the data from the selection screen.
is there any other alternative to achive this,plz help me out in solving this.
Thanks,
Kumar
Hi All,
I am getting data from BSIK,BSEG etc tables into some internal tables and i am getting a short dump due to large volume of data and i cannot restrict the data from the selection screen.
is there any other alternative to achive this,plz help me out in solving this.
Thanks,
Kumar
2007 Dec 11 3:43 PM
Hi
Try to avoid using the Table BSEG which is a cluster
instead first search in the tables
BSIk, BSAK for Acc payables data
BSID and BSAD for Account receivables data
BSIS and BSAS for GL related data
and use them instead of BSEG
so that you can save lot of process time
Regards
Anji
2007 Dec 11 3:44 PM
Not a whole lot. But you can try using field-groups, or free some memory after processing the data, if you can. As far as possible do not use BSEG, you should use BSIK(open), and BSAK(cleared)
Albert
2007 Dec 11 5:21 PM
Hi Albert,
The table i am using to retrive the data are BKPF and BSEG,now plz tell me how to get the same data from the other tables or you said that to use field symbols
plz let me know how to use that,here below is my code.
SELECT BUKRS
BELNR
GJAHR
MONAT
BUDAT
BLDAT
BLART
XBLNR
AWKEY
BKTXT
TCODE
USNAM
HWAER
WAERS
INTO TABLE IT_BKPF
FROM BKPF
WHERE BUKRS = P_BUKRS "Remedy# 165906
WHERE BUKRS IN S_BUKRS "Remedy# 165906
AND BELNR IN S_BELNR
AND GJAHR IN S_GJAHR
AND BLART IN S_BLART
AND MONAT IN S_MONAT
AND BUDAT IN S_BUDAT.
IF SY-SUBRC = 0.
SORT IT_BKPF BY BUKRS BELNR GJAHR.
ENDIF.
IF NOT IT_BKPF[] IS INITIAL.
SELECT BUKRS
BELNR
GJAHR
BUZEI
HKONT
KOSTL
PRCTR
ZUONR
FKBER
EBELN
LIFNR
SGTXT
SHKZG
DMBTR
WRBTR
KOART
INTO TABLE IT_BSEG
FROM BSEG
FOR ALL ENTRIES IN IT_BKPF
WHERE BUKRS = IT_BKPF-BUKRS
AND BELNR = IT_BKPF-BELNR
AND GJAHR = IT_BKPF-GJAHR
AND PRCTR IN S_PRCTR "Remedy# 167305
AND KOSTL IN S_KOSTL. "Remedy# 167305
IF SY-SUBRC = 0.
SORT IT_BSEG BY BUKRS BELNR GJAHR BUZEI.
ENDIF.
ENDIF.
Thanks,
Bharani kumar
2007 Dec 11 5:25 PM
Hi,
Please send us the ABAP Dump details, so we can try to fix it?
Thanks,
Sriram POnna.
2007 Dec 11 3:45 PM
Hi kumar,
Instead of reading all records in one shot, read in bunches.
1. READ ALL RECORDS IN ONE SHOT (IN ONE BUNCH)
(normal select query)
READ RECORDS IN SMALL-SMALL BUNCHES
(using packet concept)
2. The above is the main difference, and usage,
of packet concept.
3. Just copy paste to get a taste of it.
4.
REPORT abc.
DATA : t001 LIKE TABLE OF t001 WITH HEADER LINE.
DATA : ctr TYPE i.
*----
selection screen.
PARAMETERS : a TYPE c.
*----
START-OF-SELECTION.
SELECT * FROM t001
INTO TABLE t001
PACKAGE SIZE 5 .
ctr = ctr + 1.
WRITE 😕 '----
Loop Pass # ' , ctr.
LOOP AT t001.
WRITE 😕 t001-bukrs , t001-butxt.
ENDLOOP.
ENDSELECT.
regards,
amit m.
2007 Dec 11 3:46 PM
We could give a much better answer if you would post your code.
Rob
2007 Dec 11 5:13 PM
Hi Rob,
Here below is my code.
SELECT BUKRS
BELNR
GJAHR
MONAT
BUDAT
BLDAT
BLART
XBLNR
AWKEY
BKTXT
TCODE
USNAM
HWAER
WAERS
INTO TABLE IT_BKPF
FROM BKPF
WHERE BUKRS = P_BUKRS "Remedy# 165906
WHERE BUKRS IN S_BUKRS "Remedy# 165906
AND BELNR IN S_BELNR
AND GJAHR IN S_GJAHR
AND BLART IN S_BLART
AND MONAT IN S_MONAT
AND BUDAT IN S_BUDAT.
IF SY-SUBRC = 0.
SORT IT_BKPF BY BUKRS BELNR GJAHR.
ENDIF.
IF NOT IT_BKPF[] IS INITIAL.
SELECT BUKRS
BELNR
GJAHR
BUZEI
HKONT
KOSTL
PRCTR
ZUONR
FKBER
EBELN
LIFNR
SGTXT
SHKZG
DMBTR
WRBTR
KOART
INTO TABLE IT_BSEG
FROM BSEG
FOR ALL ENTRIES IN IT_BKPF
WHERE BUKRS = IT_BKPF-BUKRS
AND BELNR = IT_BKPF-BELNR
AND GJAHR = IT_BKPF-GJAHR
AND PRCTR IN S_PRCTR "Remedy# 167305
AND KOSTL IN S_KOSTL. "Remedy# 167305
IF SY-SUBRC = 0.
SORT IT_BSEG BY BUKRS BELNR GJAHR BUZEI.
ENDIF.
ENDIF.
Thanks,
Kumar
2007 Dec 11 5:16 PM
Are you getting a memory type of dump or a timeout?
Could we see some of the dump details?
Rob
2007 Dec 11 5:24 PM
Hi Rob,
Its not a time out error,it is related to memory error.
Thanks,
kumar
2007 Dec 11 5:27 PM
You can use the PACKAGE SIZE addition to the SELECT statement to process data in chunks.
Is the problem with the first SELECT on BKPF or the second one on BSEG?
Rob
Message was edited by:
Rob Burbank
2007 Dec 12 5:21 PM
Hi,
Here below is the message in the short dump.
ABAP/4 processor: TSV_TNEW_PAGE_ALLOC_FAILED
Thanks,
kumar
2007 Dec 12 5:30 PM
See my earlier response. You can use the PACKAGE SIZE addition to resolve this.
Rob
2007 Dec 13 5:07 PM
Hi all,
Please help me out in converting the code above to get the result of the two internal tables into two <FS>, as using field symbols will help me out in solving the issue.
Rob ,
I can go for the PACKAGE notation but with that performance will be low.
Thanks,
Kumar
2007 Dec 13 5:36 PM
The performance issue will be small. In any event it will be better than dumping.
But no one can help you until you tell us which SELECT it is dumping on: BKPF or BSEG?
Rob
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |