Hashed Internal Table in SAP

Go down

Hashed Internal Table in SAP

Post  Admin on Fri Apr 06, 2012 11:59 pm

Hashed table is useful when your have to work with very big internal table and to read it with
"READ TABLE WITH KEY ..."

The time access is constant !

Definition of a Hashed Table:

"Defines the table as one that is managed with an internal hash procedure. You can imagine a hashed table as a set, whose elements you can address using their unique key. Unlike standard and sorted tables, you cannot access hash tables using an index. All entries in the table must have a unique key.

Access time using the key is constant, regardless of the number of table entries.

You can only access a hashed table using the generic key operations or other generic operations (SORT, LOOP, and so on). Explicit or implicit index operations (such as LOOP ... FROM to INSERT itab within a LOOP) are not allowed."

As long as your records has unique key(s), using hash table will give you a huge performance gain when dealing with large dataset. assuming in your case, 10000 record , and if the key is unique, use hash table. The main use of hash tables is for looking up fixed information from a key. So if you have a report that has personnel number and you want to display their name, you could use a hash table.

Code:


types: begin of typ_pernr, 
        pernr  like pa0001-pernr, 
        ename  like pa0001-ename, 
      end  of typ_pernr. 
data: ls_pernr  type typ_pernr, 
      lt_pernr  type  hashed table of typ_pernr  with unique key pernr. 
  select pernr ename into table lt_pernr  from pa0001. 


  loop at itab. 
    read table lt_pernr  with table key pernr  =  itab-pernr 
        into ls_pernr. 
    write: ls_pernr-ename, itab-data. 
  endloop. 

Admin
Admin

Posts : 92
Join date : 2012-01-26

http://mysaplab.forumotions.in

Back to top Go down

Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum