Skip to content
Apr 12 14

The Quality of your ABAP Development – Part 1

by admin
Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest

Tony CecchiniAnthony Cecchini is the President of Information Technology Partners (ITP), an SAP consulting company headquartered in Pennsylvania. ITP offers comprehensive planning, resource allocation, implementation, upgrade, and training assistance to companies. Anthony has over 17 years of experience in SAP R/3 business process analysis and SAP systems integration. His areas of expertise include SAP NetWeaver integration; ALE development; RFC, BAPI, IDoc, Dialog, and Web Dynpro development; and customized Workflow development. You can reach him at ajcecchini@itpsap.com.

 

Why Use SAP Tools for Quality and Performance

ABAP is a powerful language for building sophisticated applications. But as any developer understands, even the most carefully written and tested objects can wind up terminating with a runtime error, producing unexpected messages, returning incorrect results, or causing application performance problems. As a result, SAP provides a comprehensive set of specialized tools for performing static code checks, coverage analysis, post-mortem analysis, runtime traces, and debugging as part of the standard delivery of SAP Web Application Server (Web AS).

A Systematic Approach to Testing ABAP Objects

Let’s assume that you have already removed all syntax errors from your SAP ABAP Program, so you can at least activate and execute it. However, you still cannot be sure that the program will not produce a runtime error or that the program will deliver the intended results. What are the next steps? What tools are available for further source code checks and runtime testing to validate the runtime behavior of the program?

read more…

Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest
Mar 16 14

Debugging ABAP for Functional Teams – Part 2

by admin
Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest

Tony CecchiniAnthony Cecchini is the President of Information Technology Partners (ITP), an SAP consulting company headquartered in Pennsylvania. ITP offers comprehensive planning, resource allocation, implementation, upgrade, and training assistance to companies. Anthony has over 17 years of experience in SAP R/3 business process analysis and SAP systems integration. His areas of expertise include SAP NetWeaver integration; ALE development; RFC, BAPI, IDoc, Dialog, and Web Dynpro development; and customized Workflow development. You can reach him at ajcecchini@itpsap.com.

 

Recap from last Month

In last month’s blog we discussed why debugging is important for discovering root cause when SAP transactions are behaving badly. We also went through some ways to trigger debugging, and took a look at the debugger screen, navigation and Break-Points.

Debugging for Various Scenarios

This month we will look at one common scenario that may cause you to need the debugger. Let’s start with Standard SAP Messages.

Please understand that for teaching purposes, I am using a VERY SIMPLE example, but the idea behind it applies to more complex transactions as well. Let’s get started!

Your are executing a simple PO Browse using ME23 and you get an error message explaining that the PO you entered does not exist. You are not sure why this message has appeared, and there is no long text available in the message. (see Below)

ME23 Debug

 You want to know why the SAP system has sent this error, so you need to debug the logic for this message. So lets use what we have learned. To activate the debugger enter transaction /h in the command prompt. Go ahead and enter your PO number and press Enter.  We will be at the debugging screen (see below)

Debugger

Now here is where a little ABAP knowledge pays off….

read more…

Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest
Feb 18 14

Debugging ABAP for Functional Teams – Part 1

by admin
Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest

Tony CecchiniAnthony Cecchini is the President of Information Technology Partners (ITP), an SAP consulting company  headquartered in Pennsylvania. ITP offers comprehensive planning, resource allocation,  implementation, upgrade, and training assistance to companies. Anthony has over 17 years of  experience in SAP R/3 business process analysis and SAP systems integration. His  areas of expertise  include SAP NetWeaver integration; ALE development; RFC, BAPI, IDoc, Dialog, and Web Dynpro  development; and customized Workflow development. You can reach him at ajcecchini@itpsap.com.

 

Why learn how to use the Debugger?

Debugging is the way to find the root cause of  SAP transaction behavior (e.g., finding a reason why a certain value in a field was updated or determining why users receive an error, warning, or abnormal termination message during the processing of a transaction). Debugging is necessary if the root cause cannot be determined from functional methods such as checking customizing or master data.

Since ABAP is the backbone of SAP, at one point or another, every member of a functional team must have had to deal with SAP development technicalities behind the business functionality. This need for technical details can occur during various phases, such as writing functional specifications or analyzing a production environment issues.

In this blog I’ll explain basic terminology for ABAP and various tools and techniques for debugging. This knowledge is helpful when you are trying to find the root cause of an issue or designing a needed functionality to fill a GAP in requirements. I will you show the various objects for debugging with some examples, such as debugging for an error message, or debugging a function module.

How to Trigger Debugging

Lets look at some basic ways to trigger debugging…..

If you are not sure about which line of code you want to debug, enter transaction /h in the command prompt, sometimes refereed to as the OK CODE, while executing any transaction. Press Enter to activate the debugger.  (see below)

Start Debugger

You’ll see the message Debug switched on in the status line and now if you were to press enter again, or hit save, or perform any function on this transaction, you will see the DEBUGGER screen appear (see below). You will be positioned at the first executable instruction based on the user interaction you performed. If you knew the exact line of code you wanted to have the DEBUGGER screen appear at, then you could use a BREAKPOINT Debugger Breakpoint, but we will cover that a little later read more…

Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest
Jan 19 14

What are BTE and BDT Enhancements – Part 2

by admin
Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest

Were back with Tim’s next installment of this blog to teach us about two little known SAP Enhancement techniques, BTE’s and BDT’s Here is a little bit about Tim….

BTE BDT

Tim Moore is the president of 4 Ever Moore Enterprises, L.L.C., located outside of Charlotte, North Carolina.  Tim has over 15 years of experience with SAP including ERP, SRM, CRM, SCM, BI and XI. He has technical middleware experience as well as functional knowledge in many different industry solutions, such as FI, CO, MM, PP, SD, PS, HCM. He has Solutions Architect experience as well as expertise in SAP Business Workflow, ABAP and Form development.  He made his way into programming as an MM functional SME who grew tired of laying out technical requirements for developers, so he decided to teach himself to code ABAP. Since then, he has taken courses in ABAP, expanded to Web programming languages, and learned XML to help with integration points with SAP.  Prior to programming, Tim was a Business School graduate and served as a manufacturing manager for a company who implemented SAP. He continues to build his professional skills by expanding his business and technical knowledge in new areas.  You can reach him at sapcodemonkey@gmail.com

Enhancements: BTE and BDT

There are many options for enhancements in SAP. This blog will touch on two little known but very powerful options, BTEs and BDTs. We will discuss what they are and how they may be leveraged.

To begin, we must keep in mind every SAP implementation is different. That is because every business is different in the details related to their individual business processes and/or master data. Even within the same company or entity, there can be slight or major differences in a business process or master data based on an enterprise slice. Some parts of the organization perform business one way, while another performs business another. While this is a challenge during implementations, SAP has delivered many different enhancement options. These may be leveraged by the design and development teams to meet the needs of the organization.  Enhancement options are always preferable to core modifications when possible.

The acronym BTE stands for Business Transaction Events. This type of enhancement is typically leveraged in FI and SD transaction objects for process modification. To get a better understanding of BTE’s and how they work, take a look at last month’s blog What are BTE and BDT Enhancements – Part 1.

This month we will look at BDT’s. So lets get started!

The acronym BDT stands for Business Data Tool-set. This type of enhancement can offer exits in the Master Data maintenance for certain objects.

BDTs – What are they?

BDTs are Business Data Toolsets and are central control tools for maintaining SAP dialog programs for Master Data Objects. They enable enhancement spots in standard maintenance transactions for certain master data objects. The BDT Toolset supports maintenance via the use of dialog techniques, direct input and/or function modules.

read more…

Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest
Dec 9 13

What are BTE and BDT Enhancements – Part 1

by admin
Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest

In the next few installments of this blog I will be inviting a good friend of mine Tim Moore to teach us about two little known SAP Enhancement techniques, BTE’s and BDT’s Here is a little bit about Tim….

BTE BDT

Tim Moore is the president of 4 Ever Moore Enterprises, L.L.C., located outside of Charlotte, North Carolina.  Tim has over 15 years of experience with SAP including ERP, SRM, CRM, SCM, BI and XI. He has technical middleware experience as well as functional knowledge in many different industry solutions, such as FI, CO, MM, PP, SD, PS, HCM. He has Solutions Architect experience as well as expertise in SAP Business Workflow, ABAP and Form development.  He made his way into programming as an MM functional SME who grew tired of laying out technical requirements for developers, so he decided to teach himself to code ABAP. Since then, he has taken courses in ABAP, expanded to Web programming languages, and learned XML to help with integration points with SAP.  Prior to programming, Tim was a Business School graduate and served as a manufacturing manager for a company who implemented SAP. He continues to build his professional skills by expanding his business and technical knowledge in new areas.  You can reach him at sapcodemonkey@gmail.com

Enhancements: BTE and BDT

There are many options for enhancements in SAP. This blog will touch on two little known but very powerful options, BTEs and BDTs. We will discuss what they are and how they may be leveraged.

To begin, we must keep in mind every SAP implementation is different. That is because every business is different in the details related to their individual business processes and/or master data. Even within the same company or entity, there can be slight or major differences in a business process or master data based on an enterprise slice. Some parts of the organization perform business one way, while another performs business another. While this is a challenge during implementations, SAP has delivered many different enhancement options. These may be leveraged by the design and development teams to meet the needs of the organization.  Enhancement options are always preferable to core modifications when possible.

The acronym BTE stands for Business Transaction Events. This type of enhancement is typically leveraged in FI and SD transaction objects for process modification.

The acronym BDT stands for Business Data Tool-set. This type of enhancement can offer exits in the Master Data maintenance for certain objects.

While both of  these types of enhancement objects have been around for several years, many developers outside of those areas mentioned above are only part-time supporting them and may not be as familiar or comfortable as they could be with a little knowledge. So, my wish is for this blog to shed some light on these lesser known enhancement options. Lets take each enhancement type, starting with BTEs, in turn.

read more…

Recommend This Post! TwitterFacebookLinkedInGoogle+Pinterest