{"id":5232,"date":"2023-09-18T14:57:18","date_gmt":"2023-09-18T12:57:18","guid":{"rendered":"https:\/\/www.js-soft.com\/?p=5232"},"modified":"2025-11-06T16:24:40","modified_gmt":"2025-11-06T15:24:40","slug":"abap-introduction-itabs","status":"publish","type":"post","link":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/","title":{"rendered":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example"},"content":{"rendered":"\n<p class=\"has-lead-font-size wp-block-paragraph\"><strong>TL; DR: In this ABAP beginner&#8217;s blog series, you&#8217;ll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively in ABAP programming to store and manipulate data.<\/strong><br><br>An internal table in ABAP is a dynamic data structure used temporarily during the runtime of an SAP program to process possibly large volumes of data. It stores multiple data records in rows and columns with a consistent structure and key. Internal tables (ITABs) are accessed using keys and are discarded when the program execution ends. They serve as temporary storage areas, allowing data modification as needed. The size of ITABs is flexible and handled by the ABAP runtime system.&nbsp;These tables can have multiple rows. ITABs, depending on the table type, are consisting of various fields, including non-unique keys, allowing duplicate records. They are employed for calculations, quick data access, and versatile applications.<\/p>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">In this section, we explain some basic uses of ITABs with an example and their results. Let\u2019s assume, a friend is coming on a short visit to Germany, seeking to explore both vibrant places and scenic hiking trails. To meet the perfect itinerary, we have compiled the following list of ten popular places to visit in Germany that offer nearby hiking opportunities:<\/p>\n\n\n\n<div class=\"wp-block-columns has-sans-font-family is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<figure class=\"wp-block-table is-style-regular has-lead-font-size\"><table><tbody><tr><td><strong>State<\/strong><\/td><td><strong>Place<\/strong><\/td><td><strong>Trail<\/strong><\/td><\/tr><tr><td>Brandenburg<\/td><td>Berlin<\/td><td>Briesetal<\/td><\/tr><tr><td>Bavaria<\/td><td>Schloss Neuschwanstein<\/td><td>Allgaeu<\/td><\/tr><tr><td>Baden-Wuerttemberg<\/td><td>Black Forest<\/td><td>Black Forest<\/td><\/tr><tr><td>Hessen<\/td><td>Ruedesheim<\/td><td>Rheinsteig<\/td><\/tr><tr><td>Bavaria<\/td><td>Munich<\/td><td>Partnach Gorge<\/td><\/tr><tr><td>Saxony<\/td><td>Dresden<\/td><td>Painter\u2019s Way<\/td><\/tr><tr><td>Bavaria<\/td><td>Nuremberg<\/td><td>Goldsteig<\/td><\/tr><tr><td>Baden-Wuerttemberg<\/td><td>Heidelberg<\/td><td>Albsteig<\/td><\/tr><tr><td>North Rhine-Westphalia<\/td><td>Cologne<\/td><td>Eifelsteig<\/td><\/tr><tr><td>Rhineland-Palatinate<\/td><td>Trier<\/td><td>Moselsteig<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">Based on this table, we are going to explore the basic uses of ITABs by answering the following questions:<\/p>\n<\/div>\n<\/div>\n\n\n\n<ol type=\"1\" start=\"1\" class=\"has-sans-font-family wp-block-list\">\n<li class=\"has-lead-font-size\"><a href=\"#internal-table\">How can we add the values to the internal table?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#newrow\">How can we append a new row to the ITAB?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#lines\">How many lines does the ITAB contain?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#sort\">How can we sort the ITAB?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#read\">How can we read a row from the ITAB that contains a specific value?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#delete\">How can we delete one row from the ITAB?<\/a><\/li>\n\n\n\n<li class=\"has-lead-font-size\"><a href=\"#duplicate\">How can we delete duplicate rows?<\/a><br><\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step 0:&nbsp;<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">At the beginning, we defined a structure \u2018place_type\u2019 which includes three fields: state, place, and trail with respective data type. Next, the \u2018itab_popularplaces\u2019 is declared as the data type for the ITAB, which allows multiple lines and maintains the entries in the order they were inserted. Finally, the \u2018popularplaces\u2019 is the variable that represents the actual internal table, instantiated using the \u2018itab_popularplaces\u2019 data type. It will hold the data records, where each entry will follow the structure defined by \u2018place_type\u2019.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture1-1024x260.png\" alt=\"\" class=\"wp-image-5238\" style=\"width:971px;height:247px\" width=\"971\" height=\"247\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture1-1024x260.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture1-300x76.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture1-768x195.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture1.png 1053w\" sizes=\"(max-width: 971px) 100vw, 971px\" \/><\/figure>\n\n\n\n\n\n<h2 class=\"wp-block-heading\" id=\"internal-table\">1<strong>. How can we add the values to the internal table?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">Solution: We populate the ITAB component by component with VALUE operator.<br>Here is the sample program to populate the ITAB. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture2-1024x319.png\" alt=\"\" class=\"wp-image-5241\" style=\"width:982px;height:306px\" width=\"982\" height=\"306\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture2-1024x319.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture2-300x93.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture2-768x239.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture2.png 1053w\" sizes=\"(max-width: 982px) 100vw, 982px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">We can print the ITAB in the ABAP console using the commands: &nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture3.png\" alt=\"\" class=\"wp-image-5243\" style=\"width:978px;height:110px\" width=\"978\" height=\"110\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture3.png 969w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture3-300x34.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture3-768x86.png 768w\" sizes=\"(max-width: 978px) 100vw, 978px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output: <\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture4-1024x440.png\" alt=\"\" class=\"wp-image-5245\" style=\"width:972px;height:418px\" width=\"972\" height=\"418\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture4-1024x440.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture4-300x129.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture4-768x330.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture4.png 1049w\" sizes=\"(max-width: 972px) 100vw, 972px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"newrow\"><strong>2. How can we append a new row to the ITAB?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">Suppose we have a new suggestion about a place, and we want to append the row to the ITAB.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-regular has-sans-font-family has-lead-font-size\"><table><tbody><tr><td><strong>State<\/strong><\/td><td><strong>Place<\/strong><\/td><td><strong>Trail<\/strong><\/td><\/tr><tr><td>Saxony-Anhalt<\/td><td>Magdeburg<\/td><td>Goethe way<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\"><br>Solution: We can append a new row at the end of the ITAB with APPEND operator. &nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture5-1024x59.png\" alt=\"\" class=\"wp-image-5249\" style=\"width:977px;height:56px\" width=\"977\" height=\"56\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture5-1024x59.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture5-300x17.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture5-768x44.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture5.png 1053w\" sizes=\"(max-width: 977px) 100vw, 977px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture6-1-1024x473.png\" alt=\"\" class=\"wp-image-5251\" style=\"width:976px;height:451px\" width=\"976\" height=\"451\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture6-1-1024x473.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture6-1-300x139.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture6-1-768x355.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture6-1.png 1049w\" sizes=\"(max-width: 976px) 100vw, 976px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"lines\"><strong>3. How many lines does the ITAB contain?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">We can count the lines contain the ITAB by using following sample program:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized is-style-default\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture7-1024x131.png\" alt=\"\" class=\"wp-image-5253\" style=\"width:975px;height:125px\" width=\"975\" height=\"125\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture7-1024x131.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture7-300x38.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture7-768x98.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture7.png 1053w\" sizes=\"(max-width: 975px) 100vw, 975px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture8.png\" alt=\"\" class=\"wp-image-5255\" style=\"width:970px;height:123px\" width=\"970\" height=\"123\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture8.png 934w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture8-300x38.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture8-768x98.png 768w\" sizes=\"(max-width: 970px) 100vw, 970px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"sort\"><strong>4. How can we sort the ITAB?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">In ABAP, we can sort the ITABs by using SORT operator. This sorting can be done based on column and ascending-descending order. In this example, we have sorted by column \u2018state\u2019 in ascending order.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture9.png\" alt=\"\" class=\"wp-image-5257\" style=\"width:966px;height:79px\" width=\"966\" height=\"79\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture9.png 943w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture9-300x24.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture9-768x63.png 768w\" sizes=\"(max-width: 966px) 100vw, 966px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture10-1024x479.png\" alt=\"\" class=\"wp-image-5259\" style=\"width:962px;height:451px\" width=\"962\" height=\"451\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture10-1024x479.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture10-300x140.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture10-768x359.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture10.png 1027w\" sizes=\"(max-width: 962px) 100vw, 962px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"read\"><strong>5. How can we read a row from the ITAB that contains a specific value?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">There are multiple ways to read any specific row from the ITAB, providing flexibility in how the data is retrieved and manipulated. In this example, we have used a loop&#8230;endloop statement to read the specific row in the ITAB that contains the place &#8216;Berlin&#8217;. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture11-1024x143.png\" alt=\"\" class=\"wp-image-5261\" style=\"width:970px;height:135px\" width=\"970\" height=\"135\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture11-1024x143.png 1024w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture11-300x42.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture11-768x107.png 768w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture11.png 1053w\" sizes=\"(max-width: 970px) 100vw, 970px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture12.png\" alt=\"\" class=\"wp-image-5267\" style=\"width:969px;height:165px\" width=\"969\" height=\"165\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture12.png 837w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture12-300x51.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture12-768x131.png 768w\" sizes=\"(max-width: 969px) 100vw, 969px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"delete\"><strong>6. How can we delete one row from the ITAB?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">We can delete any row from ITAB by using DELETE operator, including specifying the row number. For example, we can delete index 11 with the following command line. &nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture13.png\" alt=\"\" class=\"wp-image-5269\" style=\"width:965px;height:82px\" width=\"965\" height=\"82\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture13.png 791w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture13-300x25.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture13-768x65.png 768w\" sizes=\"(max-width: 965px) 100vw, 965px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture14.png\" alt=\"\" class=\"wp-image-5273\" style=\"width:965px;height:458px\" width=\"965\" height=\"458\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture14.png 967w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture14-300x143.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture14-768x365.png 768w\" sizes=\"(max-width: 965px) 100vw, 965px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"duplicate\"><strong>7. How can we delete duplicate rows?<\/strong><\/h2>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">In ABAP, the DELETE ADJACENT DUPLICATES statements give us the ability to remove all consecutive lines, excluding the first occurrence. Prior to utilizing these statements, it is essential to perform suitable sorting of the data. For this example, we have chosen state column and the duplicate states (e.g., Bavaria) are deleted. <strong><\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture15.png\" alt=\"\" class=\"wp-image-5275\" style=\"width:960px;height:70px\" width=\"960\" height=\"70\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture15.png 998w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture15-300x22.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture15-768x55.png 768w\" sizes=\"(max-width: 960px) 100vw, 960px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">The output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.js-soft.com\/app\/uploads\/2023\/09\/Picture16.png\" alt=\"\" class=\"wp-image-5277\" style=\"width:959px;height:369px\" width=\"959\" height=\"369\" srcset=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture16.png 989w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture16-300x115.png 300w, https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/Picture16-768x295.png 768w\" sizes=\"(max-width: 959px) 100vw, 959px\" \/><\/figure>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">In conclusion, ITABs are a crucial part of ABAP and particularly important to store and format data from a database table within a program. Are you ready to dive into ITABs &#8211; the essential building block of ABAP development? Keep your eyes on our beginner blog series!<\/p>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\"><strong>Additional information.<\/strong><\/p>\n\n\n\n<p class=\"has-lead-font-size wp-block-paragraph\">For more information, see the SAP documentation:<br>English: <a href=\"https:\/\/help.sap.com\/doc\/abapdocu_750_index_htm\/7.50\/en-US\/abenitab_guidl.htm\">https:\/\/help.sap.com\/doc\/abapdocu_750_index_htm\/7.50\/en-US\/abenitab_guidl.htm<\/a>&nbsp;<br>German: <a href=\"https:\/\/help.sap.com\/doc\/abapdocu_750_index_htm\/7.50\/de-de\/abenitab_guidl.htm\">https:\/\/help.sap.com\/doc\/abapdocu_750_index_htm\/7.50\/de-de\/abenitab_guidl.htm<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this ABAP beginner&#8217;s blog series, you&#8217;ll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively in ABAP programming to store and manipulate data.<\/p>\n","protected":false},"author":14,"featured_media":14160,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[176],"tags":[],"class_list":["post-5232","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-abap-en"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example - j&amp;s-soft<\/title>\n<meta name=\"description\" content=\"In this ABAP beginner&#039;s blog series, you&#039;ll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example - j&amp;s-soft\" \/>\n<meta property=\"og:description\" content=\"In this ABAP beginner&#039;s blog series, you&#039;ll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/\" \/>\n<meta property=\"og:site_name\" content=\"j&amp;s-soft\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-18T12:57:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-06T15:24:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1860\" \/>\n\t<meta property=\"og:image:height\" content=\"1084\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Momtaj-Anar Monni\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Momtaj-Anar Monni\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example - j&amp;s-soft","description":"In this ABAP beginner's blog series, you'll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/","og_locale":"en_US","og_type":"article","og_title":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example - j&amp;s-soft","og_description":"In this ABAP beginner's blog series, you'll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively.","og_url":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/","og_site_name":"j&amp;s-soft","article_published_time":"2023-09-18T12:57:18+00:00","article_modified_time":"2025-11-06T15:24:40+00:00","og_image":[{"width":1860,"height":1084,"url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png","type":"image\/png"}],"author":"Momtaj-Anar Monni","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Momtaj-Anar Monni","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#article","isPartOf":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/"},"author":{"name":"Momtaj-Anar Monni","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/person\/777d142c29eeea28926c03ce6027b57a"},"headline":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example","datePublished":"2023-09-18T12:57:18+00:00","dateModified":"2025-11-06T15:24:40+00:00","mainEntityOfPage":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/"},"wordCount":837,"publisher":{"@id":"https:\/\/www.js-soft.com\/en\/#organization"},"image":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#primaryimage"},"thumbnailUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png","articleSection":["ABAP"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/","url":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/","name":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example - j&amp;s-soft","isPartOf":{"@id":"https:\/\/www.js-soft.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#primaryimage"},"image":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#primaryimage"},"thumbnailUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png","datePublished":"2023-09-18T12:57:18+00:00","dateModified":"2025-11-06T15:24:40+00:00","description":"In this ABAP beginner's blog series, you'll learn the fundamental concepts of internal tables (ITABs) and how to use them effectively.","breadcrumb":{"@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#primaryimage","url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png","contentUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2023\/09\/ABAP-ITABs.png","width":1860,"height":1084,"caption":"ABAP Beginners"},{"@type":"BreadcrumbList","@id":"https:\/\/www.js-soft.com\/en\/abap-introduction-itabs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Start","item":"https:\/\/www.js-soft.com\/en\/"},{"@type":"ListItem","position":2,"name":"An Introduction to ABAP Based on Basics of Internal Tables (ITABs) Example"}]},{"@type":"WebSite","@id":"https:\/\/www.js-soft.com\/en\/#website","url":"https:\/\/www.js-soft.com\/en\/","name":"j&amp;s-soft","description":"IT-Unternehmensberatung f\u00fcr SAP","publisher":{"@id":"https:\/\/www.js-soft.com\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.js-soft.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.js-soft.com\/en\/#organization","name":"j&amp;s-soft","url":"https:\/\/www.js-soft.com\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/logo\/image\/","url":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/03\/Logo-js-soft.png","contentUrl":"https:\/\/www.js-soft.com\/wp-content\/uploads\/2022\/03\/Logo-js-soft.png","width":2560,"height":544,"caption":"j&amp;s-soft"},"image":{"@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.js-soft.com\/en\/#\/schema\/person\/777d142c29eeea28926c03ce6027b57a","name":"Momtaj-Anar Monni","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","url":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","contentUrl":"https:\/\/www.js-soft.com\/wp-includes\/images\/blank.gif","caption":"Momtaj-Anar Monni"},"description":"A junior ABAP developer with a passion for SAP technologies. Eager to share insights from my journey in the world of ABAP and beyond."}]}},"_links":{"self":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/5232","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/comments?post=5232"}],"version-history":[{"count":1,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/5232\/revisions"}],"predecessor-version":[{"id":10289,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/posts\/5232\/revisions\/10289"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/media\/14160"}],"wp:attachment":[{"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/media?parent=5232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/categories?post=5232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.js-soft.com\/en\/wp-json\/wp\/v2\/tags?post=5232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}