‎2008 Mar 31 5:02 PM
Folks,
I am getting strange dump in my program.I have declared internal table and writing simple select statement but my program gives me dump.It reads like this.
Short text
No more storage space available for extending an internal table.
What happened?
You attempted to extend an internal table, but the required space was
not available.
Error analysis
The internal table "\PROGRAM=ZPMMNT_ITM_PLN\DATA=T_ITOB[]" could not be further
extended. To enable
error handling, the table had to be delete before this log was written.
As a result, the table is displayed further down or, if you branch to
the ABAP Debugger, with 0 rows.
At the time of the termination, the following data was determined for
the relevant internal table:
Memory location: "Session memory"
Row width: 320
Number of rows: 12383152
Allocated rows: 12383152
Newly requested rows: 32 (in 1 blocks)
Can someone tell what happened here and what changes i have to make in program?
‎2008 Mar 31 5:04 PM
can you show the exact part of the code where that dump occurs?
‎2008 Mar 31 5:06 PM
SELECT EQUNR EQART SWERK SHTXT INGRP MAPAR HERST TIDNR
INTO CORRESPONDING FIELDS OF TABLE T_ITOB
FROM ITOB
WHERE EQUNR IN S_EQUNR AND
EQART IN S_EQART AND
SWERK IN S_SWERK.This is the statement and ITOB is a view.
Nirad
‎2008 Mar 31 5:09 PM
If all select-options are left empty, too many rows get selected. How may entries has this VIEW?
Again, change selection and make sure at least ONE parameter has to filled before doing a select.
‎2008 Mar 31 5:15 PM
View has lot of entries and this is quite simple select statement I am filling all parameters on selection screen.
Nirad
‎2008 Mar 31 5:19 PM
hi Nirad,
Is it not possible to select the data from the respective internal tables instead of using view as view has the data of all the transparent data base tables used in it .... Make sure you make use of all primary keys while fetching the data ...
Regards,
Santosh
‎2008 Mar 31 5:21 PM
Ok, but it seems that your table just holds too much entries (over 12 Million!!). There just isn't enough memory allocated. So if this is the requirement, you'll have to talk to basis.Maybe they will increase the memory. But still, 12 million entries, what are you planning on doing with 12 millions records? Forget about displaying them on screen using ALV for example. You will probably run into a TIME_OUT error (short dump) before data is displayed.
Any other possiblities to limit the number of records for selection? Maybe another parameter?
‎2008 Mar 31 5:04 PM
hi Nirad,
Can you please paste the piece of code for which you are getting the dump including the declarations ??
Regards,
Santosh
‎2008 Mar 31 5:04 PM
Hi ,
check whether your select statement ends in an indefinite loop.check with select single statement
regards
shibu
‎2008 Mar 31 5:05 PM
You're internal table is taking up too much memory. This can be avoided by changing your select (less entries) or ask one of your basis guys to reset the memory limit. But I think they will tell you to change your selection as well.
Your internal table already has 12383152 rows !!!! way too much!!!!! Change Selection!!!!
Good luck.
Edited by: Micky Oestreich on Mar 31, 2008 6:06 PM
‎2008 Mar 31 5:08 PM
Hi,
data: begin of itab occurs 0,
include structure itob.
end of itab.
Use This INTO CORRESPONDING FIELD OF
LIKE THIS
Select * from <tablename> into CORRESPONDING FIELD OF
itab where matnr in s_matnr.Regards,
Brown.