Tips on SAP ABAP's application development expert, Matthew Billingham offers tips and advice on working with SAP ABAP as well as program design, SAP troubleshooting, Java, BAPI, XML, RFC and SAPscript.

SAP ABAP is a 4GL programming language used by SAP customers to enhance SAP applications, as well as create custom reports and interfaces. Creating ABAP programs requires programming skills, including knowledge of relational database design and preferably also of object-oriented programming concepts. SAP's newest development platform, NetWeaver, supports ABAP and Java. The ABAP language environment, including the syntax checking, code generation and runtime system, is part of the SAP Basis component.

Matthew Billingham

Tips on working with ABAP are contributed by's application development expert, Matthew Billingham. He offers advice in program design, SAP troubleshooting, ABAP, Java, BAPI, XML, RFC and SAPscript.

Billingham runs his own SAP consultancy, providing guidance and designing solutions for third parties. His expertise is in program design, troubleshooting and knowing just how SAP works/ His clients describe him as a "consultant for everything." He says he likes to solve intractable SAP problems.

 Here are some of Billingham's recent thoughts on ABAP:


  • How to better leverage the new SAP ABAP debugger
    While the new SAP ABAP debugger has some limitations, it's still possible for many developers to freely switch between the old and new, providing the best of both worlds. In this development tip, find out how to better leverage the new SAP ABAP debugger, as well as how to track down problems in ABAP programs, including finding variables and flow logic in SAP Dynpro.


  • Tips on processing records in SAP internal tables
    Before the days of SAP R/3 4.6c, users had access to two types of internal tables -- those with header lines and those without. In this tip, get advice on better processing records in internal tables, and learn why you should use LOOP AT ASSIGNING only when modifying the contents within a table.

    More on SAP application development

    Check out's ABAP/Java developer tips.

    Read Matthew's answers to readers' questions related to SAP application development.

    Learn how to create  SAP ABAP database tables.

  • How to do additional dialog processing after SAP COMMIT WORK statement
    In this tip, learn how to make your own developed screens appear once a standard SAP transaction has finished with an SAP COMMIT WORK statement.


  • How to find a piece of SAP ABAP code without debugging
    Sometimes, when you're writing a program, a requirement may arise for which you need a certain code. But how can you find the code that deals with that requirement -- and then use it for your own purpose? One method is to find the code by debugging the program. But debugging can be a painful process. In this tip, find out why using Function Modules and classes are preferable alternatives to debugging.


  • Using subclasses to develop applications that run on different releases of SAP
    In this tip, find out how to write SAP ABAP classes for different SAP releases including SAP Basis 6.20 and SAP Basis 6.40 and learn how to rewrite a program using object-oriented programming (OOP).


  • How to correct an SAP ABAP dump with an oversized condition
    Find out how to correct an SAP ABAP dump with an oversize condition to avoid an SAP ABAP dump giving an DBIF_RSQL_INVALID_RSQL error at the SQL statement.


  • Creating a function group for an SAP ABAP table maintenance generator
    Learn how to create a function group and authorization group using a SAP ABAP table maintenance generator on a Z table.


  • How to read an SAP transaction in ABAP code
    Learn how to read an SAP standard transaction in an ABAP code using a Business Application Programming Interface (BAPI).

Next Steps

Learn how to copy and paste in SAP

Dig Deeper on SAP ABAP