Delete Table Statement


Internal table can be edited as per requirement. We can delete a particular line of it based on the condition. The statement is “DELETE TABLE itabFROM wtab.” Here itab is internal table and wtab is its work area. This statement can be used in any type of internal table whenever there is a requirement.

REPORT  zabap_gui.

* Declaring the local structure of internal table
TYPES:
      BEGIN OF ty_tab,
        item     TYPE char10,
        quantity TYPE i,
        price    TYPE i,
      END OF ty_tab.

* Declaring the Standard internal table with non unique key
DATA:
      itab TYPE STANDARD TABLE OF ty_tab,
      wtab TYPE ty_tab.

* Entering records to each field
wtab-item = 'Rice'. wtab-quantity = 2. wtab-price = 80.

* Now one single row has been fulfilled with data
* Next appending one single row data into the table
APPEND wtab TO itab.

wtab-item = 'Suger'. wtab-quantity = 1. wtab-price = 90.
APPEND wtab TO itab.

wtab-item = 'Tea'. wtab-quantity = 1. wtab-price = 100.
APPEND wtab TO itab.

wtab-item = 'Rice'. wtab-quantity = 3. wtab-price = 150.
APPEND wtab TO itab.

wtab-item = 'Horlicks'. wtab-quantity = 1. wtab-price = 200.
APPEND wtab TO itab.

wtab-item = 'Suger'. wtab-quantity = 2. wtab-price = 70.
APPEND wtab TO itab.

WRITE:  /3 'Item',
        13 'Quantity(KG)',
        28 'Price(Rs)'.
WRITE / '=========================================='.
SKIP" Skipping one single line

LOOP AT itab INTO wtab.
  IF wtab-item = 'Rice'.
    DELETE TABLE itab FROM wtab.
  ELSEIF wtab-item = 'Suger'.
    DELETE TABLE itab FROM wtab.
  ENDIF.
ENDLOOP.

LOOP AT itab INTO wtab.
  WRITE:  /3 wtab-item,
          12 wtab-quantity,
          25 wtab-price.
ENDLOOP.

SKIP.
WRITE '=========================================='.
SKIP.





Whenever the program controller finds Rice & Suger it deletes from the internal table.

Share this

Related Posts