Professional Documents
Culture Documents
Docslide - Us - Upgrade For Abap Team PDF
Docslide - Us - Upgrade For Abap Team PDF
Standard How to
Address Your
Modification
ASUG Upgrade Symposium
June 2007
Thomas Jung
SAP NetWeaver Product
Management
Modification Adjustment
Unicode Enablement
Enhancement Framework
Introduction
Today we will focus on an upgrade from 4.6C to SAP ERP 6.0
(Formerly mySAP ERP 2005) from the view of the ABAP
development team. We will look at the tasks and challenges your
developers will face, showing some of the program changes that will
need to be made. Also we will see some of the new ABAP features
that you will be able to leverage once you are upgraded.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 3
Modification Adjustment
Unicode Enablement
Enhancement Framework
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 5
SPAU
The upgrade
process stops and
provides the
opportunity to make
Modification
Adjustments
Only Objects
touched by the
upgrade are listed
Split Screen Editor
for before and after
view of source code
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 6
DEMO
Demo SPAU
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 7
SE95
Allows you to view
ALL modifications
regardless of how
they may or may not
have been touched by
the Upgrade
Note Corrections are
also listed (separately
if made via Note
Assistant)
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 8
DEMO
Demo SE95
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 9
SAMT
General Tool for
performing multiple
types of system wide
program scans
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 10
DEMO
Demo SAMT
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 11
Modification Adjustment
Unicode Enablement
Enhancement Framework
Unicode
code point
UTF-16
big endian
UTF-16
little endian
U+0061
00 61
61 00
61
U+00E4
00 E4
E4 00
C3 A4
U+03B1
03 B1
B1 03
CE B1
U+3479
34 79
79 34
E3 91 B9
U+2007B
DA00 DC7B
00DA7BDC
F0A081BB
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 13
UTF-8
Unicode
system
ok
ok
ok
not allowed
Attribute set
(Unicode enabled)
Attribute not set
(not Unicode
enabled)
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 14
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 15
UCCHECK
Similar tool to SAMT,
except it is
specifically designed
for Unicode
Compatibility Checks
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 16
DEMO
Demo UCCHECK
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 17
Main Features
Clear distinction between character and byte processing
1 Character 1 Byte
Enhanced checks prevent programming based on memory layout
assumptions
Improved conversion facilities
Improved dataset interface
Improved support for dynamic programming
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 18
Byte Processing
CONCATENATE xf1 xf2 TO xf3 IN BYTE MODE.
IF xf1 BYTE-CS xf2. ...
Variants of string operations for byte processing
Addition IN BYTE MODE for statements
Prefix BYTE- for comparison operations
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 19
Example
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 20
struc1
struc2
C(4)
N(4)
C(3)
C(3)
C(10)
X(3)
N(4)
X(3)
C(4)
X(3)
C(4)
P(8)
P(8)
fragments
Example
DATA:
BEGIN OF cstru,
first(10) TYPE c,
tab(1)
TYPE c,
last(10) TYPE c,
END OF cstru.
cstru = xstru.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 21
DATA:
BEGIN OF xstru,
first(10) TYPE c,
tab(1)
TYPE x VALUE '09',
last(10) TYPE c,
END OF xstru.
"Unicode error!
N(6)
C(4)
X(3)
C(5)
+off(len)
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 22
Example
CLASS cl_abap_char_utilities DEFINITION LOAD.
DATA: text TYPE string.
REPLACE cl_abap_char_utilites=>horizontal_tab
WITH space INTO text.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 23
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 24
Endian conversion
little endian / big endian byte order
Character conversion
Unicode code point / ABAP character
ABAP Class
Conversion
CL_ABAP_CONV_IN_CE
CL_ABAP_CONV_OUT_CE
CL_ABAP_CONV_X2X_CE
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 25
Pre-Unicode
skey = stru(4).
srest = stru+4(20).
WRITE: stru-r2.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 26
stru
k1 k2
key
r1 r2
rest
Modification Adjustment
Unicode Enablement
Enhancement Framework
User
Exits
Form
routines
Business
Transaction
Events
Industries
Business
Add Ins
Function
modules
Customer
Exits
Filters
Classe
s
Workbench
Enhancement Framework
Kernel based
Business
Add Ins
Kernel
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 28
Enhancement Browser
Search for
Enhancements possibilities (Definitions typically provided by SAP)
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 31
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 32
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 33
ENHANCEMENT 1.
WRITE Hello
Paris.
ENDENHANCEMENT.
ENHANCEMENT 2.
WRITE Hello
London.
ENDENHANCEMENT.
ENHANCEMENT 3.
WRITE Enhanced.
ENDENHANCEMENT.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 34
to switch to
to leave Enhancement
DEMO
Source Code Plugin
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 35
Class/Interface Enhancements
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 36
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 37
Pre/Post Exits
Method Hugo.
Coding.
Coding.
Coding.
Endmethod.
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 38
Method Pre.
.
Endmethod.
Method Post.
.
.
Endmethod.
DEMO
Class Enhancement
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 39
BADIs - Overview
What are BAdIs?
Business Add-Ins
is an anticipated point of extension these points act like
sockets and exist in the original coding
has a well-defined interface in contrast to source code plug-ins
and is therefore more stable to changes in the original coding
Kernel BAdIs - New Features
Are integrated directly in the ABAP Language/Runtime
Improved filter support allows non-character filter types
(packed, numeric, string) and complex filter conditions
Enable reusable implementation instances (Stateful BAdI)
Control of the lifetime of implementations (BAdI-context)
Allow for inheritance of implementations
Can be switched by the Switch Framework
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 40
flt-lang = `D`.
CALL METHOD bd->method
EXPORTING
x
= 10
flt_val = flt.
Implementation
BAdI Implementation 1
Simple Enhancement Implementation SEI1
Package A
BAdI Implementation 2
BAdI BADI_A
BAdI BADI_B
BAdI Implementation 3
BAdI BADI_C
BAdI Implementation 4
Simple Enhancement Implementation SEI2
BAdI Implementation 5
Switch_2
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 42
Package B
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 43
DEMO
Kernel-BAdI
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 44
Automatic migration
by selecting
utilitiesmigration
from BAdI
Automatic
migration
by selecting
utilitiesmigrate
from
BAdI
Builder (SE18)
Builder
(se18)
Specify
Enhancement
BAdI Definition
Specify
Enhancement
Spot forSpot
BAdIfor
Defintion
Specify
Enhancement
Implementation
for BAdI
Specify
Enhancement
Implementation
for BAdI Implementation
Implementation
can be automated.
Performance Comparison
Classic BAdI
Migrated BAdI
2-27
40-600
200%-2600%
New BAdI
4000%-60000%
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 46
Further Information
Documentation
Transaction ABAPDOCU
Books ABAP Objects and Official ABAP Reference by Horst Keller and Next
Generation ABAP Development by Rich Heilman and Thomas Jung; SAP
Press
Public Web
SAP Developer Network: www.sdn.sap.com
NetWeaver Application Server ABAP
SAP Customer Services Network: www.sap.com/services/
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 47
QUESTIONS
How to contact me:
Thomas Jung
thomas.jung@sap.com
SAP AG 2007, SAP ERP: Upgrades for ABAP Developers/ Thomas Jung / 48