Course Content
Class
- Accessibility of different sections of a class
- Subclass cannot access the private component of superclass
- External users cannot access protected/private components of a class
- Local Class can understand data and types in the global area of the program
- Class can be instantiated within implementation of another class
- Deferred Definition of a Class
- Place to put non-declarative statements
- Use of Field Symbols in Class
- Use of Static Attributes
- Creation of Global class and using it in a local program
Methods
- Method with one import parameter/ only one non-optional parameter
- Import parameters passed by ref. can't be changed inside the method
- Use of PREFERRED PARAMETER in a method
- Use of EXPORT and CHANGING parameters of a method
- Method using Internal Table as one of the parameters
- Use of RETURNING parameters in method
- Demo on Static Method
- Static methods can only use static attributes, instance methods use both
- Method Raising Exceptions
- Method can call itself
- Use of ME in methods
- Pointer Tables
- Dynamic Method Calls
- Use of parameter table
- Use of Exception Table
Constructors
- Instance Constructors get fired at the time of class instantiation
- Instance Constructors can have import parameters
- Constructors cannot have any export parameters
- Instance Constructors can raise exceptions
- Use of static constructor
- Static constructor can be triggered at the beginning of a processing block(form /event/block/procedure)
- Static/Class constructors cannot have any interface
Inheritance
- Subclass can access public/protected components of superclass
- Subclass can re-implement inherited methods from superclass
- Objects cannot be created from an abstract class
- Abstract methods cannot be implemented in abstract class
- Final classes cannot have any subclass
- Final methods cannot be redefined in the subclasses
- Static attributes exist only once per inheritance tree
- Constructors of superclass flows down the chain
- Subclass can have enhanced constructor than its superclass
- Static constructor of a class is called only once per program
- Static type and Dynamic type of a variable
- Static type should be more general than dynamic type of a reference variable
- Method of a parent class, used from its subclass, uses attributes of the parent class only, if the method is not re-defined in subclass.
- Demo on Widening Cast
- Singleton Class
Interface
- Simple use of an interface
- Interfaces can only be implemented in the public section of a class
- A class with an interface should implement all the methods of that interface
- Values for interface attributes are assigned at the time of inclusion in a class
- Use of FINAL methods from Interface
- Use of Abstract methods from Interface
- Use of Interface Reference Variable
- Use of Nested Interface
- Using ALIASES
- Polymorphism via Interfaces
Friendship
- Friendship between Classes
- Subclasses of friends can also become friends.
- Friendship is one sided
Events
- Events with Handler Method in the same class
- Event with event handler method in different class
- More than one event handler method can exist for same event
- Use of static event
- Events with export parameters
Class-Based Exceptions
- Using SAP provided exception class
- When both superclass and subclass are used to track error
- Propagation of Class-Based exceptions in procedures to the caller
- Program can raise exceptions based on SAP standard exception - classes
- Objects are created from exception classes when error is trapped
- Demo on Locally Defined Exception-Class
- Nested TRY...ENDTRY block
- Use of CLEANUP section
Web DynPro ABAP
Overview
- Introduction to Web Dynpro ABAP
- Architecture
- MVC model
Controllers
- Different Controllers Types
- Controllers Lifetime
- Web Dynpro Navigation
- Context at Design Time
- Controller and Context Mapping
- BAPI usage using Service Call
- Cardinality
- Lead Selection
- Supply Function
UI Elements
- Handling error message
- Pop up
- Calling an Web URL
- Image UI element
- Radio Button
- Check Box
- Drop Down By Key
- Drop Down By Index
- Code Wizard - Reading the node as table operation
- Table UI Element
- Table Popin
- Road Map UI element
- File Upload UI element
ALV
- ALV Table
- Editable ALV
- ALV table Events Handling
- Select Options
- OVS Search help
- Freely programmed search help
Miscellaneous
- OTR Texts
- Dynamic modifications at Runtime
- Designing User Interfaces, Internationalizaton concept
- Adobe form integration
Miscellaneous
- Enhancement in Webdynrpo ABAP
- Enhancing a View
- Enhancing a controller
- Enhancing a component and window