Almost every development environment is researching and investing into adding extensive functionality, features and ways to help bring the solutions to the web/ portal.
SAP initiated this effort long back and went through a series of solutions, enhancements, new solutions, new enhancements, upgrades, further upgrades, and currently are at SAP NetWeaver technology.
Discussions, white papers, and presentations on SAP NetWeaver environment highlights the availability of a multiple development environment to build front-end solutions, using Java as well as the native ABAP development environment.
1. While reading about NetWeaver and its support for Java and traditional ABAP, when you bump into articles or talks about ABAP Objects, you kind of feel that now the NetWeaver environment/Web Dynpro development can play with ABAP Objects the same way as Java programmers have so long been playing with their objects, classes, methods, etc.
2. A very good and informative article by Mr. Horst Keller, titled, 'Did ABAP Objects fail as a whole?' says that "ABAP Objects are the only way to use the new ABAP technology such as Web Dynpro." Well, both points are not true in their entirety.
First, ABAP Objects are created in the SAP native environment (not through NetWeaver etc). They reside in the SAP native environment, and can be used and referred to only in the SAP native environment i.e. by SAP programs, function modules, methods, etc. A class or object, created using Class Builder (transaction SE24) is not available as being visible to the outside world, even to SAP NetWeaver components, and thus is not visible directly to Web Dynpro development too.
ABAP Objects are a great way to simplify and standardize coding, increase reusability and maintenance of code, yet the only way (as of now) to expose any of their availability is through BAPIs or RFC enabled function modules. Developed function modules can be very primitive, e.g. as accepting the parameters expected to be used by the corresponding class method, yet they (function modules) are needed to serve as a wrapper around ABAP Objects for exposing the ABAP Objects to the outside world (NetWeaver, Dynpro, etc).
Web Dynpro applications can be developed without the use of ABAP Objects, i.e. using naive and old ways of RFC enabled functions, but for readability, maintenance, and reusability viewpoint, you should start exploring implementing underlying logic using ABAP Objects. Who knows, down the road these ABAP Objects may find a way to be directly visible for reference (without a function module as wrapper) as soon as they get created and defined in Class Builder.
Chetan Singh is an SAP Technical Architect/Developer at WBG, Washington, DC (USA). You can reach him at his e-mail address helloCP@yahoo.com.