Saturday, July 18, 2015

Read Table and Describe Table

There are different kinds of fetching the records of internal table. One of these is READ TABLE statement. By using READ TABLE we can fetch only the first record from the table. Hence it can fetch a single record always. Read table statement can be used to any type of table to fetch the record. Now if the table is sorted then we can use BINARY SEARCH to fetch record. Now fetching records may take time but if we use BINARY SEARCH then the system performance will improve. Obviously if the table is sorted then the fetching operation will be faster.

We can describe an internal table as well. If the table stores 300 records then the system will inform us by the system field SY-TFILL. Here note that SY-TFILL will not work alone. We need to describe the table first then we can get data from SY-TFILL field.

DESCRIBE TABLE itab.
WRITE: / 'Number of table records: ', sy-tfill.
Here we are describing the internal table itab. After that we are getting records from SY-TFILL.

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.
SORT itab BY item.

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

READ TABLE itab INTO wtab WITH KEY item = 'Rice'
                                    BINARY SEARCH.
IF sy-subrc = 0.
  WRITE:  /3 wtab-item,
          12 wtab-quantity,
          25 wtab-price.
ENDIF.

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

DESCRIBE TABLE itab.
WRITE: / 'Number of table records: ', sy-tfill.








Though the output is showing only one record the table still contains six records.

9 comments:

  1. Really It is very helpful for me. Thanks a lot!!!!.

    ReplyDelete
  2. SAP Success Factors Real Time Hands on Training in Chennai...

    Don't always Depend on Training Institute Alone and so please aware of Best Trainers too..

    http://thecreatingexperts.com/sap-successfactors-training-in-chennai/

    If You need a Best Trainer over SAP Success Factors Means??? Please ready for an DEMO From the Trainer MR.Karthick
    CONTACT:8122241286

    Both Classroom/Online Training is Available!!!!!!

    ReplyDelete
  3. Informative Blog...For a long time I was craving for a career growth in programming and then I came to know that THE CREATING EXPERTS is the one who provide training with hands on training and real time scenarios

    http://thecreatingexperts.com/sap-abap-training-in-chennai/

    contact 8122241286

    ReplyDelete
  4. Thanks for your info...Here THE CREATING EXPERTS provide hands on training with real time scenarios

    http://thecreatingexperts.com/sap-abap-training-in-chennai/

    contact +91-08122241286

    ReplyDelete
  5. Hi, I learned SAP Training in Chennai from THE CREATING EXPERTS. The training was good and i got selected in leading MNC company as SAP Consultant.

    contact 8122241286

    www.thecreatingexperts.com

    ReplyDelete
  6. Hi, I learned SAP Training in Chennai from THE CREATING EXPERTS. The training was good and i got selected in leading MNC company as SAP Consultant.

    contact 8122241286

    www.thecreatingexperts.com

    ReplyDelete
  7. Why is it mandatory to use the SY-SUBRC Check in a read Statement?

    ReplyDelete
  8. Before using binary search, we must sort the internal table, if not it will be fail to retrieve.

    ReplyDelete
  9. thank you for sharing nyce information really very nice ..i am interested Ur sap course for more info
    sap hr online classes

    ReplyDelete

Note: Only a member of this blog may post a comment.