Download presentation
Presentation is loading. Please wait.
1
from enjoySAP to mySAP.com
ABAP Workbench from enjoySAP to mySAP.com Karl Kessler
2
Overview New user interface of ABAP Workbench
Object Navigator (SE80) ABAP Editor Enjoy controls and ABAP Objects programming Web Application Builder Modification and Enhancement Modification Assistant Business Add Ins
3
New ABAP Workbench User Interface (SE80)
Object list selection Tool area Browser area
4
Object Navigator (SE80): Browser Area
Object list selection Tree control for object lists (classes/interfaces, programs, function groups, development classes, local objects, Internet service) Context menu for tree items Display, change, create ... Object oriented menu entries Suitable context menu for each node type
5
Object Navigator: Navigation Tool Bar
Previous/Next object list navigation history Expand/Collapse Navigation to higher or object list Object list favorites/favorites management Refresh object list Close browser
6
Object Navigator: Tool Area
Tool bar Previous/Next object Change/Display Active/Inactive version Other object... Check/Activate/Test/Where used list Display object list Display navigation stack Full screen mode
7
ABAP Editor (SE38): Local Editing
Edit control with local (desktop) features Local scrolling in Include, method, function module Local search/replace, fast up-/download Multilevel undo/redo Access to application server only when saving, checking or navigating Context menu Positioning: Ctrl + double click or double click an empty source line Comment code with ctrl and > Goto Buffers
8
ABAP Editor (SE38): Mark, Copy, Paste
Mark source text Via mouse Mark all: ctrl a Mark block with shift, arrow and scroll keys Mark words: ctrl and shift with arrow keys Cut&Paste, Drag&Drop In Winword style Block structure with tab key, reverse function: shift tab comments are indented as well no automatic line wrapping
9
Object Navigator: Worklist, Set Operations
Personal worklist Menu: Utilities è Worklist è Display Add items from reuse library Drag&drop items from browser area Save Set operations Multiple selection with ctrl key Supported set operations in context menu Add to worklist
10
Drag and Drop, ABAP Objects Patterns
Drag and Drop: Object list è editor Automatic insertion of patterns CREATE OBJECT CALL METHOD CALL FUNCTION Menu: Pattern è ABAP Objects patterns
11
Personal settings Menu: Utilities è Settings Each tool has its own tab
12
Control Based Architecture of the New Workbench
HTML control Docking container Docking container ALV grid control Toolbar control Splitter container Tree control Dynpro Custom container Editor control
13
Controls: Creating Objects, Calling Methods
Frontend Automation Handling Java OLE Beans ActiveX Controls SAPGUI Client RFC Control Framework Automation Controller Wrapper Class (Proxy) Backend Application Server ABAP PROGRAM CREATE OBJECT CALL METHOD ...
14
Event Handling Frontend SAPGUI Client Backend Application Server
Control Manager ActiveX Control ActiveX Control ActiveX Control SAPGUI Client Function Code Java OLE Automation Handling Backend Control Framework Wrapper Class (Proxy) ABAP PROGRAM METHOD Handler. … ENDMETHOD. Application Server
15
ABAP Objects: Basics for Controls Programming
Defining object references DATA: objref TYPE REF TO cl1. Creating objects CREATE OBJECT objref. Calling methods CALL METHOD objref->method EXPORTING ... IMPORTING ... Defining event handler classes CLASS cl_event_handler DEFINITION. METHODS: evt_handler1 FOR EVENT evt1 OF cl1. evt_handler2 FOR EVENT evt2 OF cl2. ENDCLASS. CLASS cl_event_handler IMPLEMENTATION. METHOD evt_handler ENDMETHOD. METHOD evt_handler ENDMETHOD. ENDCLASS. CREATE OBJECT handler. SET HANDLER handler->evt_handler1 FOR objref.
16
Controls Class Hierarchy
CL_GUI_CFW Central services: Automation Queue Drag & drop (CL_DRAGDROP) Context menu (CL_CTMENU) CL_GUI_OBJECT CL_GUI_CONTROL Control container Visibility Lifetime CL_GUI_CONTAINER CL_GUI_CUSTOM_CONTAINER CL_GUI_DOCKING_CONTAINER CL_GUI_SPLITTER_CONTAINER CL_GUI_DIALOGBOX_CONTAINER SAP standard controls SAP Textedit SAP Tree SAP HTML Viewer SAP Picture CL_GUI_TEXTEDIT CL_GUI_COLUMN_TREE CL_GUI_HTML_VIEWER CL_GUI_PICTURE CL_GUI_TOOLBAR
17
Demos: Drag&Drop, Tree, Grid, Container...
Via Environment è Controls examples in each workbench tool Via transaction code: DWDM ABAP Editor ABAP Code Demos
18
Documentation on Controls Technology
New book available on Controls Technology Programming guide with many ABAP code examples Complete control reference 400 pages/color print Costs 25 € Order online at shop.sap.com Customers/partners: invoice Others: credit card Refer to mat. no
19
Wizards for Table Control and Tab Strip
20
Web Application Builder
Design Goals Integrated development environment for web apps Runtime environment: Internet Transaction Server (ITS) Easy access to function modules (RFC), BAPIs, Dictionary Reuse support (business building blocks) Inside out vs. Outside in Online vs. offline Debugging
21
1:1 Relation Between Template and Dynpro
22
How ITS Works Today SAP GUI User Request Call WGate Send Prepared
R/3 Fields Web Server AGate WGate HTML Page HTML Page Changed R/3 Fields Load HTML Template
23
EWT und Transaction Classification
24
Web Application Builder: Integration into SE80
Create/edit Web app components in SE80 Internet service (name and parameters) Templates incl. generate from dynpro Language resources Mimes Flow logic for outside-in web apps Link to Transport organizer Publish to ITS, launch service in Web browser Version management for service, language resources and template resp. flow
25
Internet services in SE80
26
Business HTML Publish to ITS Launch web browser Business Functions
27
Decoupling (Flowlogic)
HTML Template Outside-in approach
28
Flow Logic (XML)
29
SAP’s Universal Internet Platform
Internet Transaction Server WebGUI IACs/EWTs Template HTML SAP system Flow Logic XML Flow Template HTML
30
Modifications and Enhancements
Flexibility Modifications Assisted modifications Business Add Ins Customer exits Ease of Use
31
Modification Assistant
Techniques to adapt the R/3 applications without modification Customizing Report variants, transaction variants Personalization Customer exits menu, dynpro, field, function, keywords Do not allow for arbitrary modifications Modification assistant Built-in support for controlled modifications Upgrade support
32
Modifications in ABAP Editor
FORM user_command. CASE sy-ucomm. WHEN fun1. *{# SDK /25/1997 Replacement * IF condition. IF condition OR mycondition. *}# perform handle_fun1. ELSE. ... ENDIF. WHEN fun2. perform handle_fun2. *{# SDK /19/ Insertion WHEN myfun. perform handle_myfun. ENDCASE. ENDFORM. Replace Insert
33
ABAP Editor in Modification Mode
Replace
34
Screen Modifications New elements Modified elements
35
Menu Modifications Modified elements New elements
36
Modification Browser (SE95) and Upgrade Support (SPAU)
(Semi)automatic reinsertion
37
Requirements for Business Add Ins
Delivery of implemented add ins (country-specific versions, IBU solutions, partner software, ...) Technique can be used by different software vendors Delivery and correction of default solutions Filter-dependent implementation possible Structured filter types ‘Event-like’ add ins (Publish & Subscribe) Integrated administration and documentation Trace possibilities
38
Add ins are points in an object’s source code where additional
Add Ins: Definition Add ins are points in an object’s source code where additional functions or statements can be inserted. Add ins are defined by the object’s initial developer and allow other developers to easily include additional code in a subsequent phase of development without having to ‘modify’ the original. Additional advantages: No change licences necessary Interfaces are upwardly compatible Less work at upgrade
39
Architecture: Business Add Ins
Customer extension Add In- Adapter: Publish & Subscribe Filter Control Interface Interface CORE R/3 Industry solution Interface
40
Solution Based on ABAP Interfaces
Interface: IF_app_exit m1, m2 Application Customer DATA: exit TYPE REF TO if_app_exit. CALL METHOD cl_exithandler=> create_instance IMPORTING instance = exit CALL exit->m1 EXPORTING IMPORTING ... Generated adapter class CL_imp_app_exit Method m1. ... Endmethod. Method m2. ... m1 m2 ...
41
Filter Dependence Type of filter: data element with search help
Sometimes it is important for partners to be able to implement and deliver a single add in with different filter values ( for different countries, for example). For this reason, add ins can be defined for specific filter values. Type of filter: data element with search help Parameter flt_val must be suitably filled when the add in is called. Add in must be implemented for a specific filter value
42
Business Add In Manager
Definition part (SE18) Specification of common Interface (method collection) Define Add In Type (publish & subscribe, filter dependent) Automatic generation of adapter classes Implementation (SE19) Select filter value (e.g. country code) Supply code for interface methods Activate Add In
43
Copyright 2000 SAP AG (All rights reserved)
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft®, WINDOWS®, NT®, EXCEL®, Word® and SQL-Server® are registered trademarks of Microsoft Corporation. IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®, OS/390®, and OS/400® are registered trademarks of IBM Corporation. OSF/Motif® is a registered trademark of Open Software Foundation. ORACLE® is a registered trademark of ORACLE Corporation, California, USA. INFORMIX®-OnLine for SAP is a registered trademark of Informix Software Incorporated. UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of The Open Group. ADABAS® is a registered trademark of Software AG. SAP, SAP-Logo, mySAP.com, R/2, R/3, RIVA, ABAP, SAP-EDI, SAP Business Workflow, SAP EarlyWatch, SAP ArchiveLink, ALE/WEB, BAPI, SAPPHIRE, Management Cockpit, SEM, are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other products mentioned are trademarks or registered trademarks of their respective companies.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.