<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-8486792620151345294</atom:id><lastBuildDate>Sat, 31 Aug 2024 09:33:37 +0000</lastBuildDate><category>abap</category><category>programming</category><category>beginner</category><category>intermediate</category><category>databases</category><category>exception classes</category><category>message classes</category><category>sap</category><category>tables</category><category>SQL</category><category>advanced</category><category>lock objects</category><category>meta</category><category>personal experience</category><category>reflection</category><category>transactions</category><category>workflow</category><title>SAP ABAP Tutorial</title><description></description><link>http://sapabaptutorial.blogspot.com/</link><managingEditor>noreply@blogger.com (Idan)</managingEditor><generator>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-1318893719249402967</guid><pubDate>Wed, 23 Mar 2011 11:44:00 +0000</pubDate><atom:updated>2011-03-23T04:44:10.632-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">tables</category><title>Copying an Internal Table into another Internal Table</title><atom:summary type="text">You can copy one or more rows of an internal table into another internal table by using the statement INSERT LINES OF.

Note the difference between INSERT LINES OF and APPEND LINES OF:

INSERT LINES OFCopies the contents of several rows of an internal table to another internal table.

APPEND LINES OFAppends the contents of several rows of an internal table to another standard table.</atom:summary><link>http://sapabaptutorial.blogspot.com/2011/03/copying-internal-table-into-another.html</link><author>noreply@blogger.com (Idan)</author><thr:total>29</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-5609348080561188454</guid><pubDate>Sun, 02 May 2010 11:41:00 +0000</pubDate><atom:updated>2011-06-03T13:54:23.073-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">intermediate</category><category domain="http://www.blogger.com/atom/ns#">workflow</category><title>Introduction to SAP Business Workflow</title><atom:summary type="text">A workflow is a model that describes a sequence of operations, representing an actual business process.

A simple example would be a leave request. An employee calls his manager saying he’d like to take a vacation. The manager asks for specific dates. The employee specifies the date in which he’ll be absent, to which the manager replies with either “I approve your request” or “Forget it.”

Using </atom:summary><link>http://sapabaptutorial.blogspot.com/2010/05/introduction-to-sap-business-workflow.html</link><author>noreply@blogger.com (Idan)</author><thr:total>27</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-3199332186020188740</guid><pubDate>Tue, 01 Dec 2009 06:31:00 +0000</pubDate><atom:updated>2009-12-01T09:42:17.627-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">intermediate</category><category domain="http://www.blogger.com/atom/ns#">tables</category><title>Iterating On a Table Using Field Symbols</title><atom:summary type="text">Say you have a Table called “table_name”, of line type “table_row”, and you wish to iterate on it and perhaps change the rows while you’re iterating. You can do it in ABAP using field symbols.First, you need to define the field symbol. In our example it’s called “symbol_name”FIELD-SYMBOLS &amp;lt;symbol_name&amp;gt; TYPE table_row.Now, you can iterate over the table, assigning each row to the field </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/11/iterating-on-table-using-field-symbols.html</link><author>noreply@blogger.com (Idan)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-5499728811679847643</guid><pubDate>Tue, 10 Nov 2009 06:24:00 +0000</pubDate><atom:updated>2009-11-09T22:44:11.300-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">databases</category><category domain="http://www.blogger.com/atom/ns#">SQL</category><title>The difference between INSERT, UPDATE, and MODIFY</title><atom:summary type="text">Here&#39;s a very common syntactic question: What&#39;s the difference between INSERT, UPDATE, and MODIFY?The answer is plain and simple:INSERT - inserts a new record. INSERT expects that a record with the required key does NOT exist in the table. Therefore, if a record with the same key already exists, a runtime error occurs. For more details on INSERT, visit here.UPDATE - update an existing record. </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/11/difference-between-insert-update-and.html</link><author>noreply@blogger.com (Idan)</author><thr:total>12</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-5900846885732388721</guid><pubDate>Thu, 01 Oct 2009 15:56:00 +0000</pubDate><atom:updated>2009-10-01T11:44:25.074-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">advanced</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">reflection</category><title>Reflection in ABAP</title><atom:summary type="text">Say you want to create an instance of a class that implements a certain interface, but you won’t know the name of the class you want to create until runtime. In Java or .NET you would have used the reflection mechanism, but can you handle this case in ABAP?Apparently, you can.Here’s a short code snippet showing how:DATA: iv_classname TYPE seoclsname.DATA: iv_interface TYPE REF TO </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/10/reflection-in-abap.html</link><author>noreply@blogger.com (Idan)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-583440718876524319</guid><pubDate>Tue, 29 Sep 2009 15:15:00 +0000</pubDate><atom:updated>2009-09-29T08:25:11.528-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">exception classes</category><category domain="http://www.blogger.com/atom/ns#">intermediate</category><category domain="http://www.blogger.com/atom/ns#">message classes</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Using ABAP Exception classes with Message classes (Part 2 of 2)</title><atom:summary type="text">In the previous post, we created a simple ABAP exception class that uses a Message Class. Now let’s see how we can use this class. It’s strongly recommended that you read part one before continuing.The statement for raising (or throwing) an exception class that uses a Message class looks as follows:raise exception type CX_DB_ERROR       exporting TEXTID = CX_DB_ERROR=&gt;WRITE_ERROR              </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/09/using-abap-exception-classes-with_29.html</link><author>noreply@blogger.com (Idan)</author><thr:total>5</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-598266802729249361</guid><pubDate>Tue, 15 Sep 2009 14:29:00 +0000</pubDate><atom:updated>2009-10-02T12:07:09.510-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">exception classes</category><category domain="http://www.blogger.com/atom/ns#">intermediate</category><category domain="http://www.blogger.com/atom/ns#">message classes</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Using ABAP Exception classes with Message classes (Part 1 of 2)</title><atom:summary type="text">We’ve talked about Exception Classes, and we’ve talked about Message Classes. Now let’s see how we can combine these two together.Let’s take a scenario, in which you have an exception that is thrown whenever a database error occurs in your program. Let’s call this exception class CX_DB_ERROR. We want our exception to display various messages that can also be translated later on to different </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/09/using-abap-exception-classes-with.html</link><author>noreply@blogger.com (Idan)</author><thr:total>16</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-7023509472358107580</guid><pubDate>Thu, 10 Sep 2009 14:02:00 +0000</pubDate><atom:updated>2009-09-10T07:11:31.217-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">databases</category><category domain="http://www.blogger.com/atom/ns#">intermediate</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Initializing an Internal Table</title><atom:summary type="text">In case you have an internal table “itab”, and you wish to initialize it (clear it), here are some common statements:CLEAR itab.This command clears the header of a table, but keeps its content. The initial memory allocated for the table remains reserved.(If you don’t remember what a header line is, you can find out here or here).CLEAR itab[].The content of the table is released, and the header </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/09/initializing-internal-table.html</link><author>noreply@blogger.com (Idan)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-4285510590239583212</guid><pubDate>Sun, 23 Aug 2009 13:26:00 +0000</pubDate><atom:updated>2009-08-23T06:29:10.002-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">databases</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Updating a Database Table from an Internal Table</title><atom:summary type="text">In case you have an internal table, and wish to use it in order to update a database table, use the following statements:UPDATE dbtab FROM TABLE itabOrINSERT dbtab FROM TABLE itabWhere dbtab is the name of the database table, itab is the name of the internal tableNote: A common mistake would be to omit the word TABLE from the above statement. Doing this will yield the following error:“You cannot </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/08/updating-database-table-from-internal.html</link><author>noreply@blogger.com (Idan)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-6118326768938480451</guid><pubDate>Tue, 11 Aug 2009 10:07:00 +0000</pubDate><atom:updated>2009-09-15T07:39:49.648-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">message classes</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Message Classes</title><atom:summary type="text">Messages are text which you use in your programs in order to communicate with your users. For example, you wish to state that some process completed successfully, or, you wish to declare an error.Message classes are containers of messages. Each message has a number and a value. Parameters can also be added to message classes, just as could be achieved by string formatting in languages such as </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/08/message-classes.html</link><author>noreply@blogger.com (Idan)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-726725334337080174</guid><pubDate>Wed, 29 Jul 2009 05:19:00 +0000</pubDate><atom:updated>2009-07-29T01:43:56.693-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">exception classes</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Exception Classes</title><atom:summary type="text">For all you C++, Java and .NET developers, the concept of exception classes, which is relatively new in ABAP, will be easy to understand.Exception classes are, as their name imply, classes that define exceptions.Exception classes are created in a manner similar to creating regular ABAP classes. You can create exception classes in SE80, but you choose “Exception class” as the class type.Java </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/07/exception-classes.html</link><author>noreply@blogger.com (Idan)</author><thr:total>5</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-333570240398959040</guid><pubDate>Wed, 22 Jul 2009 14:22:00 +0000</pubDate><atom:updated>2009-07-28T22:33:38.801-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">databases</category><category domain="http://www.blogger.com/atom/ns#">lock objects</category><category domain="http://www.blogger.com/atom/ns#">programming</category><title>Lock Objects</title><atom:summary type="text">Lock objects are used to manage database locking in your program. Locking is important in case you expect concurrent accesses to a database table.You create lock objects in either SE11 or SE80 transactions (under the Dictionary Object in the navigation tree)Each lock object you create is associated with a database table. You can choose by which fields in the table you lock. For example, in case </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/07/lock-objects.html</link><author>noreply@blogger.com (Idan)</author><thr:total>4</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-5068713623722826463</guid><pubDate>Tue, 21 Jul 2009 09:53:00 +0000</pubDate><atom:updated>2009-07-28T22:33:59.993-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">beginner</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">sap</category><category domain="http://www.blogger.com/atom/ns#">transactions</category><title>Ten ABAP Transaction You Will Probably Use Most</title><atom:summary type="text">SE80 – Object NavigatorSE80 is the most important transaction for the ABAP programmer. It’s the entry point for the workbench. From SE80 you can for example create new packages, classes, programs, dictionary objects (database tables) etc.SE11 – DictionaryUsing SE11, you can create and maintain database objects such as Database tables, data types, and lock objects.SE30 – PerformanceSE30 is used </atom:summary><link>http://sapabaptutorial.blogspot.com/2009/07/abap-transaction-you-will-probably-use.html</link><author>noreply@blogger.com (Idan)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-8349371075143601641</guid><pubDate>Tue, 21 Jul 2009 09:43:00 +0000</pubDate><atom:updated>2009-07-21T02:51:47.195-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">abap</category><category domain="http://www.blogger.com/atom/ns#">personal experience</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">sap</category><title>How I came to meet ABAP</title><atom:summary type="text">I’ve been working as a software developer for 5 years now. During my career as a software developer, I had experience with many programming languages. I started as a C/C++ programmer(*), continued to Java and J2EE, and even had some experience with C#. One day, not long ago, my manager announced that our project would require some programming in ABAP. He asked me to be one of the first developers</atom:summary><link>http://sapabaptutorial.blogspot.com/2009/07/how-i-came-to-meet-abap.html</link><author>noreply@blogger.com (Idan)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8486792620151345294.post-6599000616677732725</guid><pubDate>Tue, 21 Jul 2009 09:25:00 +0000</pubDate><atom:updated>2009-09-10T07:14:34.051-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">meta</category><title>About</title><atom:summary type="text">This blog contains tips, tricks, tutorials, and stories about my personal experiences with the SAP ABAP language.About the AuthorYours Truly has been a developer for more than 5 years now, with experience with C, C++, Java/J2EE, and, recently, with ABAP.</atom:summary><link>http://sapabaptutorial.blogspot.com/2009/07/about.html</link><author>noreply@blogger.com (Idan)</author><thr:total>4</thr:total></item></channel></rss>