SQL Server administration and T-SQL development, Web Programming with ASP.NET, HTML5 and Javascript, Windows Phone 8 app development, SAP Smartforms and ABAP Programming, Windows 7, Visual Studio and MS Office software SAP ABAP Programming and HANA Database Tutorials
Development resources, articles, tutorials, samples, codes and tools for .Net, SQL Server, Windows, Windows Phone, SAP and ABAP, like SAP UI5, Screen Personas, etc.




CRM Companies List
Web Based CRM Software


ABAP Debugging using Log Point and Break Point

Debugging ABAP programs using Log Point ID and Break Point ID CheckPoint Group (SAAB tcode) commands makes ABAP debugging easier for programmers. For developers CheckPoint groups enable them to activate logging of program variables and to activate break-points dynamically within ABAP programs.

SAP SAAB transaction is used to create new CheckPoint group and activate a checkpoint group for a specified time range and for selected users. In this ABAP tutorial, I'll try to show how to use CheckPoint groups using SAAB transaction and the ABAP code syntax of Log-Point Id and Break-Point Id commands.

Create Checkpoint Group in ABAP using SAP SAAB Transaction

Using ABAP Keyword Documentation, I placed the following code line within oe of my ABAP reports to use Log-Point Id for ABAP debugging.

LOG-POINT ID zeytest FIELDS lt_text.

Unfortunately the ABAP program throw the following error message since the checkpoint group was not created on the SAP system.

Checkpoint Group "ZEYTEST" is unknown.

So in order to start our ABAP tutorial, let's start with creation of ABAP checkpoint group first.

First of all, call SAP transaction SAAB

ABAP SAAB transaction for Checkpoint Group

Enter check point name in the Name textbox in Checkpoint Group section and press Display icon or button

checkpoint groups for ABAP developers

If it does not exist or previously created on the target SAP system, the following error message is displayed.

Checkpoint group ZEYTEST not found
Message no. SAAB004

If you get the error message, then we have to create a new CheckPoint Group with the specified name.
Press Create icon create object in ABAP

Provide the Checkpoint Group name and description.

new checkpoint for ABAP debugging and logging

And then press Enter or Continue icon. In fact we are finished with creation step of the ABAP CheckPoint Group


Activate Checkpoint Group for Log-Point and Break-Point

Right after the create task, the ABAP developer will bew redirected to the Change screen. Here is the Change CheckPoint Group SAP screen after checkpoint group is created on SAAB transaction.

ABAP checkpoint detail

On CheckPoint Group Activation tab, an ABAP developer can activate log-points using Logpoints section. Additionally, breakpoints can be activated under the Breakpoints section as well. One last option for a programmer is the Assertions

Checkpoint Group activation for debugging or log options in ABAP

If you switch options from Inactive to Break, Log or other options defined under Assertion, the activated options will be available and running effectively on the current SAP system for the defined users after you click Save icon

specify activation period for debugging tasks

The ABAP programmer can add additional SAP users to debug using Break-Point Id or to log data obtained during program execution using Log-Point Id ABAP statements, the User button can be used under All Activations section.

After activation of the CheckPoint Group, using its name the ABAP Log-Point Id statement is used to log required data for debugging of the ABAP report execution. Below sample ABAP program can be useful to show how LOG-POINT ID can be used in its simplest form to log an internal ABAP table data.

REPORT zey_read_text.

DATA lt_text TYPE TABLE OF textpool.
DATA ls_text TYPE textpool.

CALL FUNCTION 'RS_TEXTPOOL_READ'
 EXPORTING
  objectname = 'ZEY_READ_TEXT'
  action = 'DISPLAY'
  language = 'E'
 TABLES
  tpool = lt_text.

LOG-POINT ID zeytest FIELDS lt_text.

READ TABLE lt_text INTO ls_text WITH KEY key = 'T02'.
WRITE ls_text-entry.

To check what is logged during the ABAP report execution for troubleshooting in ABAP, switch to Log tab of the related CheckPoint Group screen.
On Log tab, ABAP developers can drill through a detailed view of used places of the log-point in ABAP programs.
The last leaf will enable programmers to see the data contained in selected variables during the ABAP code execution

The CheckPoint Group has an option for ABAP programmers to create SUBKEY under main key defined with ID

ABAP debugging with Log-Point

Double click on last line to see the content of the logged data.

log details fetched using Log-Point in ABAP coding


Break-Point Id Statement for ABAP Debugging

Very similar to Log-Point Id usage in ABAP codes, ABAP programmers can benefit from the usage of BREAK-POINT ID in their ABAP reports for activation of break points. Using Break-Point Id enables ABAP debugger to activate break points set into the code whenever required. If the Break Points are not activated using the SAAB transaction, they will not hit during the execution of the ABAP program. But if the debugging user has activated the Checkpoint Group for Breakpoints using SAP SAAB transaction, the code execution will stop at the "BREAK-POINT ID" statement line for the specified users.

Here is the activation of the break point group by setting the option from Inactive to break.

use of Break-Point Id in ABAP codes

And this change will activate the break point statements set as follows using the "BREAK-POINT ID checkpoint_group_name." ABAP command within ABAP programs.

REPORT zey_read_text.

BREAK-POINT ID zeytest.

I hope in this ABAP tutorial, I could give hints for the ABAP developers to debug their programs using logging provided by Log-Point Id and debugging with Break-Point Id commands of the CheckPoint Group






SAP Tutorials

SAP Tutorial

SAP Forums

SAP Tools

SAP Transaction Codes Table






Related Articles and Tutorials(http://www.kodyaz.com/sap-abap/abap-debugging-using-checkpoint-goup-logpoint-breakpoint.aspx)
Complete List of SAP Modules
Check Existence using ABAP SELECT
Create Business Object in SAP
Delete All Data from SAP Database Table
How to Upload Data to SAP from Excel File using alsm_excel_to_internal_table Function Module
ABAP - Create Hierarchy Tree List using rs_tree_construct, rs_tree_list_display and snodetext
ABAP Tutorial - ABAP String Split Example Code
Upload Data from Excel File in ABAP using TEXT_CONVERT_XLS_TO_SAP
Create CL_GUI_ALV_GRID ALV Grid Column Header using ABAP Data Element
Email Spool Request using SAPOffice - Spool to PDF
How to Create SAPScript Text using SO10 Transaction Code
How to Display SAP Graphics using SE78 Transaction Code
ALV Grid Color - Table Row Background Color in ALV List
SAP ABAP Tutorial - ALV Grid Example with cl_gui_alv_grid and Screen Painter
SAP Smartforms - How to Call Smartform within ABAP Program
ABAP Tutorial - SAP Split and ABAP Split String Function
SAP Tutorial - Convert Spool Request to PDF File using RSTXPDFT4 ABAP Report
Set Default Single Values List for SAP Selection Screen Parameter
ABAP Debugging using Log Point and Break Point
ABAP RegEx for ABAP Regular Expression to fetch Date from String
ABAP Runtime Error ST22 Transaction using Short Dump Analysis
ABAP Shared Memory Objects Tutorial with Sample ABAP Code
ABAP Try Catch for exception is neither caught Code Inspector Error
Add Year, Month or Day to Date Variable in ABAP using RP_CALC_DATE_IN_INTERVAL
Add Web Dynpro Applications to SAP Favorites Menu
Read Address Data using FM ADDR_GET instead of Querying ADRC Table
Free Adobe LiveCycle Designer Download
ABAP Authority-Check Object For User Other Than Current
SAP Code Inspector for ABAP Break-Point Statement
Call Function Module using RFC Destination in ABAP
CALL_FUNCTION_NOT_FOUND ABAP Run Time Error
Change Fields for Selection in SE11 ABAP Data Browser
Compare Code in ABAP using SE39 SplitScreen Editor
Connect SAP from Eclipse using ABAP Project
How to Spell Numbers using ABAP Spell_Amount Function Module
Convert Smartform to PDF in Print Preview Mode
Convert the table using the Database Utility (SE14)
Convert Sales Unit into Text using Function Module in Target Language
ABAP Code Inspector Check Variants for HANA Migration Optimization
Create SAP Dynamic Variant using Date Calculation
Create Scheduled Job using SAP SM36 Transaction
Create Search Help in ABAP for Web Dynpro Component
Create Transaction Code for Web Dynpro Application
Create SAP Transaction to Maintain ABAP Table using SM30
Create Transport Request for Text Translations using RS_LXE_RECORD_TORDER
Database Hint Pseudo-Comment for SAP Code Inspector
Delete Entries in NAST Table using RSCLNAST ABAP Program
List Locks in SAP system using SM12 Transaction Code
Dynamic Programming using Field Symbols in ABAP Reports
Prevent DYNPRO_SEND_IN_BACKGROUND Error in Background Process
Enable Remote Debugging in ABAP using RSRDEBUG
Execute ABAP Program Automatically After Transport Request Import
How to Execute SAP Program in Background Task
Export Graphics from SE78 SAP Form Graphics Administration using ABAP program
How to Export IDOC as Excel and Save as Local File from WE02 Transaction
Export SAP Spool Requests as PDF using SP01 Transaction
How to Find Internal Table Row Count in ABAP
How to Find SAP Role Users Assigned for Transaction Code
Export SAP Data to Fixed Length Text File
Get Fullname of SAP user using Function Module in ABAP Program
How to Debug Popup Screen in ABAP
How to Delete Standard Text using SO10 SAP Transaction
How to Find User Exits in ABAP Codes of SAP Transaction
Read Integer and Decimals of a Numeric Value in ABAP Programming
How to Transport SAP Graphics using SE78 Transaction
Import and Export SO10 Standard Text using RSTXSCRP ABAP Program
ABAP LOOP Statement with At New and At End
Main program for include RV61Bxxx not found
Move Minus Sign from Right to Left of Negative Number in SAP Smartform
Primary key change not permitted for value table
Business Document Service Error: Error when accessing graphic (BDS), RC = 5
Read Pricing Condition Text using ABAP in SAP Sales Document Output
Read Text Symbols in Specific Language using ABAP RS_TEXTPOOL_READ
Get SAP Document Flow using SD_DOCUMENT_FLOW_GET ABAP Function Module
SAP Purchase Order Tables, Transaction Codes and Output
Graphics White Background Displayed Grey on SAP Smartform Output
Export Table Contents into Text File and Download File
SE63 Smartform Translation and Export using SLXT Program
Search and Find SAP Transaction Code using SE93 or SEARCH_SAP_MENU
SAP Code Inspector Error: Select For Cluster Table Without Order By
ABAP Select Statement using Space instead of Null or Initial
SAP Code Inspector: Select-Statement can be Transformed
ABAP Tutorial for SET and GET PARAMETER ID Command
How to Set Start Transaction in SAP GUI
ABAP CONVT_NO_NUMBER Error on SP01 due SP01_WARN Parameter
How to find string length using STRLEN ABAP string function
ABAP Submit Report to Run Another ABAP Program within Code
Unicode Character Problem in IFS File Interface
Web Dynpro Text Translation using Assistance Class
Transport Variants of an ABAP Program into Workbench Request
TVAP Item Category and SAP Table TVAPT for Text Translations
Unlock Objects Locked in Request or Task using Transport Organizer Tools
Code Inspector: Unsecure use of FOR ALL ENTRIES
Update Multiple Variables in ABAP Select Single Statement
Update Database Table Data using ABAP SE16N_INTERFACE
VF31 SAP Transaction to Reprocess Billing Output Messages
Function module is not released for the Internet
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement
Activate Fixed Point Arithmetic Flag for Open SQL Statement


Copyright © 2004 - 2017 Eralper YILMAZ. All rights reserved.
Community Server by Telligent Systems