‎2007 May 29 11:34 AM
Hi,
Can anyone tell me How much is the capacity of an internal table??
Is there any size restriction that an internal table can hold these many rows??
Regards
Jiku
‎2007 May 29 11:37 AM
There is no restriction. When you add new rows and if the already allocated memory exceeds then a new 8kb memory will be allocated. so, It will only depend on the available free memory left in the system.
‎2007 May 29 11:38 AM
depends on the memory on the application server....no particular size limit as such.
‎2007 May 29 11:38 AM
Hi
The maximum memory that can be occupied by an internal table (including its internal administration) is 2 gigabytes. A more realistic figure is up to 500 megabytes. An additional restriction for hashed tables is that they may not contain more than 2 million entries.
Also see the link..
http://help.sap.com/saphelp_nw2004s/helpdata/en/fc/eb35de358411d1829f0000e829fbfe/content.htm
Reward All Helpfull Answers.........
‎2007 May 29 11:38 AM
Hi
There is no restriction. When you add new rows and if the already allocated memory exceeds then a new 8kb memory will be allocated. so, It will only depend on the available free memory left in the system.
Regards,
Sree
‎2007 May 29 11:40 AM
Hi,
The minimum size of an internal table is 256 bytes. This is
important if an internal table occurs as a component of an aggregated data object, since even
empty internal tables within tables can lead to high memory usage. (In the next functional
release, the size of the table header for an initial table will be reduced to 8 bytes).
****do rewards if usefull
Regards,
vijay
‎2007 May 29 11:43 AM
their is no limit for the internal table..............but it depends on the memory set in application server.
‎2007 May 29 11:59 AM
hi jiku,
there is no limit like that until unless u define the capacity as follows,
data: begin of <itab> occurs 8,
-
-
data: end of <itab>.
in such cases, it takes only upto 8 kb.
regards,
seshu.
‎2007 May 29 12:06 PM
the internal table size can be defined by the programmer as
occurs 0
occurs 1,
ouccrs 2,
occurs3,
...
...
...
occurs n .. etc where are the maximum memort of the internal table is OCCURS 0
<b>0->ZERO means 2 gigabytes of data size which is 2powerof 30.</b> .
after that there is no memory growth in the program ... so it will give you sort dump for that only <b>field-sysmbols</b> are used .... <b>for separating the internal table data dynamically to avoid short dump and to increase the performance of the read concept</b>
GIRISH
‎2007 May 29 12:25 PM
Hi,
No, limit depends on the memory size itself. Because whenever more space is needed it is automatically allocated.
IF you define an internal table using OCCURS N then it will reallocate n memory slots of same size.
RReward is useful.
Regards,
Harsha
‎2008 Apr 21 8:38 AM
hi jiku,
there is no such limit... but it depends on the memory alloted for the application server..
moreover.. when we use occurs 0(zero) then 8 kb memory is being allocated to the internal table..
similarly when occurs 2,3,4.... ....n , a memory of n x 8 kb is alloted .
this memory allocation is in patches .. ie, when u use occurs 2 and suppose ur internal table has used up the alloted 16 kb memory then
another 16 kb memory is allocated...
but if ur internal tableis not that big to use this 16kb.. there is waste of memory ..
so use occurs 0 when u are not sure about the size of ur internal table....and use occurs n when you are know the size.
syntax:
data: begin of <itab> occurs n,
....
.........
end of <itab>.
please reward if useful.
devashish