Professional Documents
Culture Documents
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Therefore
Consequences
Not all ABAP code can be debugged (no RPERFs: Conversion / Field exit)) Not free of side effects (F1, F4 help, list output) Implementation of new features not always straight-forward No chance to use modern UI techniques (no ABAP allowed in the debugger !)
Use two separated sessions for the debugger and the application
SAP AG 2003 Title of Presentation, Speaker Name / 7
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Session 2 - Debugger
/h
Debugger Engine
UI
The New Debugger is started in a separated session, after prompting /h The debuggee is inactive while the debugger is active. Advantage:
SAP AG 2003 Title of Presentation, Speaker Name / 10
The debugger is still available but inactive, when the program finished The debugger is not closed as long as the debuggee session is alive ! You may detach the debugger by prompting /hx in the debuggee session Advantage: The debugger with all your settings, variables, breakpoints, is always available, when you restart debugging !
Demo
New Debugger
External session (GUI window) breakpoints UI settings tool content, e.g. variables NOT lost -> /hx closes debugger -> option: close automatically
Internal session (roll area) ( breakpoints ) UI settings tool content, e.g. variables lost in new roll area
Window
where the debugger is presented in
Separate window last input screen visible focus follows active window
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
UI Basics
Demo
Tools
The New Debugger provides: Three user specific desktops, which you can customize and save as your favorite debugger environment
Seven standard desktops, which should cover most of the common working conditions in the debugger: Standard: Stepping through the code (Editor, Stack, Quick Watch) Structures: Display structures Tables: Display tables Objects: Display objects DetailDispls: Display strings , simple fields Break-/Watchpoints: Maintain your break-/watch-/checkpoints Diff Compare Variables
Save current layout of the user specific desktops. The customizing of the standard desktops is NOT saved !
Change size
Close Tool Create Tool Exchange Tool Full screen mode Maximize horizontally Swap Tool Services of the tool
You may create up to 4 instances of one tool on one desktop. ( e.g. to compare 4 internal tables )
SAP AG 2003 Title of Presentation, Speaker Name / 19
Content
Motivation Architecture & Handling New ABAP Debugger UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
New ABAP Frontend Editor will be part of standard 6.40 GUI within the next month. But for colleagues who cant wait an installer is availble: \\pwdf1018\d031288\ab4\setup.vbs FAQs: OSS note 812186
Demo
Syntax coloring Block marking / folding Display scope Convenient vertical and horizontal scrolling Powerful search functionality Control (layout, colors, ) can be customized
Mouse pointer hovers over variable: -> Variable content and type is displayed in a quick info window.
In the control option dialog you can disable the quick info or adapt the reaction time.
Set / Delete breakpoints by clicking in the left (breakpoint) column . Double-Clicking in the code will no longer set or delete breakpoints. Deactivate /Activate the breakpoint via context menu.
SAP AG 2003 Title of Presentation, Speaker Name / 26
Editor Context Menu contains: local control features like Find,Outlining Debug features like maintain BP, Jump to statement ) Other services including layout customizing
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Demo
Variable Display I
Quick info in ABAP Front-end Control
Detail View
Variable Display II
Data Explorer
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Diff Tool
Why is XLINE <> XLINE2? Find the difference !! (XLINE and XLINE2 are only 2000 bytes long ) Use the brand new debugger Diff tool !
Diff tool: Compare two compatible ABAP variables: e.g. two tables, objects, structures, strings, Diff tool provides differences concerning type and value. For value differences the ABAP IF semantic is used.
SAP AG 2003 Title of Presentation, Speaker Name / 40
Demo
For subcomponents of type reference or internal table no deep diff is executed. But in the corresponding result lines you find again a diff button to start a comparison for these sub components. You may use the history tab to get back to the first result list.
SAP AG 2003 Title of Presentation, Speaker Name / 43
Content
Motivation Architecture & Handling UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Breakpoints
Breakpoints
Logon Session 3
Create/Delete/Activate/Deactivate breakpoints
Demo
Watchpoints
Watchpoints
Demo
Content
Motivation New ABAP Debugger Core Basics New ABAP Debugger UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Debugger Engine
ADI
Debugger UI framework
TOOL_FACTORY OK_CODE_HANDLER SUBSCREEN_HANDLER Tool interface
Stack
Editor
Breakpoints
Tool class
IF_TPDA_TOOL
Tools
SAP AG 2003 Title of Presentation, Speaker Name / 54
The New ABAP Debugger UI frameworks makes it very easy to plug in new tools.
The New ABAP Debugger UI can be reused by other applications: E.g. the new ABAP Runtime Analysis uses the Debugger UI Framework
SAP AG 2003 Title of Presentation, Speaker Name / 55
Content
Motivation New ABAP Debugger Core Basics New ABAP Debugger UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Diff-Tool
Easily navigate through differences of internal tables, structures, etc
Data Explorer
Navigation through and display of data object graphs
Loaded Programs
Overview of all loaded programs Identification of program groups and program heads Displays all global data of a specified loaded programs
Dynpro-Analysis
dynpro and container tree dynpro and container properties
System areas
: internal
Stack
Complete Dynpro & ABAP Stack
Save
debugging session
Outlook: 7.1
Simple Transformation debugging Changing long fields Stack of calling internal sessions Statement tracing
Content
Motivation New ABAP Debugger Core Basics New ABAP Debugger UI Basics New ABAP Frontend Editor Variable Display & Navigation Comparing Variables (Diff-Tool) Breakpoints & Watchpoints Debugger Framework Summary, Open Points & Outlook Q&A
Questions?
Q&A
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint and SQL Server are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix and Informix Dynamic ServerTM are trademarks of IBM Corporation in USA and/or other countries. ORACLE is a registered trademark of ORACLE Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, the Citrix logo, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, MultiWin and other Citrix product names referenced herein are trademarks of Citrix Systems, Inc. HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA is a registered trademark of Sun Microsystems, Inc. JAVASCRIPT is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MarketSet and Enterprise Buyer are jointly owned trademarks of SAP AG and Commerce One. SAP, SAP Logo, R/2, R/3, mySAP, mySAP.com and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are trademarks of their respective companies.
Weitergabe und Vervielfltigung dieser Publikation oder von Teilen daraus sind, zu welchem Zweck und in welcher Form auch immer, ohne die ausdrckliche schriftliche Genehmigung durch SAP AG nicht gestattet. In dieser Publikation enthaltene Informationen knnen ohne vorherige Ankndigung gendert werden. Die von SAP AG oder deren Vertriebsfirmen angebotenen Softwareprodukte knnen Softwarekomponenten auch anderer Softwarehersteller enthalten. Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint und SQL Server sind eingetragene Marken der Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix und Informix Dynamic ServerTM sind Marken der IBM Corporation in den USA und/oder anderen Lndern. ORACLE ist eine eingetragene Marke der ORACLE Corporation. UNIX, X/Open, OSF/1 und Motif sind eingetragene Marken der Open Group. Citrix, das Citrix-Logo, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, MultiWin und andere hier erwhnte Namen von Citrix-Produkten sind Marken von Citrix Systems, Inc. HTML, DHTML, XML, XHTML sind Marken oder eingetragene Marken des W3C, World Wide Web Consortium, Massachusetts Institute of Technology. JAVA ist eine eingetragene Marke der Sun Microsystems, Inc. JAVASCRIPT ist eine eingetragene Marke der Sun Microsystems, Inc., verwendet unter der Lizenz der von Netscape entwickelten und implementierten Technologie. MarketSet und Enterprise Buyer sind gemeinsame Marken von SAP AG und Commerce One. SAP, SAP Logo, R/2, R/3, mySAP, mySAP.com und weitere im Text erwhnte SAP-Produkte und -Dienstleistungen sowie die entsprechenden Logos sind Marken oder eingetragene Marken der SAP AG in Deutschland und anderen Lndern weltweit. Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.