ABAP Classes Information.

Good Afternoon,
I've never programmed using Classes (Object Oriented) in ABAP but i want to start doing so.
Right now i'm "surfing" in this huge Class Builder and i can see lots of classes... This looks promissing but the problem is that most of the descriptions of the classes are in German and i do read English, French, Spanish, Italian, but unfortunately not German (for now).
Where can i find information on how to start developing using classes, also information about the existing classes in ABAP (something like the API Documentation in JAVA, preferably in English), examples of programs developed this way or tutorials, and at last... best practices.
Every help will be most apreciated.
Best Regards,
Pedro Gaspar

Hi,
Check This Link
Hope it Helps
OO Oriented Concept
http://www.sapgenie.com/abap/OO/
http://help.sap.com/saphelp_nw04/helpdata/en/ce/b518b6513611d194a50000e8353423/content.htm
http://esnips.com/doc/5c65b0dd-eddf-4512-8e32-ecd26735f0f2/prefinalppt.ppt
http://esnips.com/doc/2c76dc57-e74a-4539-a20e-29383317e804/OO-abap.pdf
http://esnips.com/doc/0ef39d4b-586a-4637-abbb-e4f69d2d9307/SAP-CONTROLS-WORKSHOP.pdf
Class
http://help.sap.com/saphelp_nw04/helpdata/en/ef/d94b78ebf811d295b100a0c94260a5/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/ef/d94b78ebf811d295b100a0c94260a5/frameset.htm
Mark HelpFul Answers
Message was edited by: Manoj Gupta

Similar Messages

  • How to use ABAP Class to modify Web Query Result ??

    Hi all !
    We are using Web Templates to display our Query.
    What I would like to do ( and seems a really important issue for our users! ) is to have a "PAGE BREAK" everytime the value of a charateristics change in the report
    For Example :
    -Page 1-
    Division     Project
       A               1
                        2
                        3
    -Page 2-
    Division     Project
       B               1
                        2
                        3
    and so on....
    I read threads about using ABAP CLASS but no example what so ever...
    We are presently under BW 3.1 but are considering upgrading to 7.0 by the end of the year so if there is a solution to my problem on either version i'd like to know.
    If anyone has any information about how I can do this it would be most appreciated
    Thx
    JB.

    Hi Yong,
    Ravi is right, first check the blogs by Jocelyn, and if you still have specific questions you can ask them. I have used ABAP classes in workflow and I know Mike Pokraka tries to use classes exclusively.
    Regards,
    Martin

  • Calling ABAP class methods from JAVA application

    Hi All,
    I want to fetch ITS related information (SITSPMON Tcode) in my JAVA application. But i didnt find much BAPIs for the same. While debugging I came accross few class methods with help of which I can get the required information. So is there any way we can call and execute methods of ABAP classes through java application?
    for e.g. I want to call GET_VERSION method of CL_ITSP_UTIL class.
    Thanks,
    Arati.

    Hi,
    Yes, as per my knowledge the only way to interact is using BAPI exposed as RFCs. So try to invoke those class methods in one CUSTOM BAPI and expose that BAPI as RFC and consume that RFC to get those details.
    Regards,
    Charan

  • ABAP class or function for retrieving BEx query properties at runtime

    Hello Experts,
    I'm working on BADI RSR_OLAP_BADI and for a special calculation I need to know which characteristics are in the drill-down of the BEX query, sol later on I can aggregate some key figures using only these characteristics.
    Problem is that structure C_s_DATA in method COMPUTE contains all fields of the query (filters, free chars, chars in the rows, etc) and I need to now which characteristics are currently being showing in the Bex analyzer.
    So is there an ABAP class or function module I can use to find out this kind of information at run time?
    Any suggestion?
    Thank you

    Tank you for the feedback,
    I tried to use the class you provided, but I'm stuck now in how to get from within my class that implements RSR_OLAP_BADI interface, a handle, reference, o whatever represent my runtime query (not the query at design time) . As the class you provide must be instantiated before I can use
    In pseudo code could be something like this
    DATA my_query type query_ref.
    my_query = get_rt_query().
    my_query->get_state()
    regards

  • Function module equivalent to SWE_EVENT_CREATE while using ABAP classes

    Hi there,
    I used to use SWE_CREATE_EVENT to fire the events linked to my BOR objects, in order to start certain workflows.
    Now I am using ABAP classes within the WorkFlows, and the name of the classes MUST (in my case) be longer than 10 characters, and SWE_EVENT_CREATE is cutting the name so it does not work
    Do you know any FM equivalent to start an event from a ABAP class (SE24) object?
    I have tried to use SAP_WAPI_START_WORKFLOW, but I cannot find the way to include my object in the container. Any ideas on this point would be welcome as well
    Thanks so much,
    Miguel

    Thanks for such a quick reply,
    You were right. I actually did follow Jocelyn's blogs, but somehow I skipped the raising event section.
    Just for information, the URL with the solution to this problem is:
    /people/jocelyn.dart/blog/2006/07/27/raising-abap-oo-events-for-workflow
    Have a good one

  • ABAP Class to start Infopackage load

    I want to write a little interface that allows a non-tech user to provide a desktop file (.csv) allow a selection of filetype (sales, repair, historical, demand) and a button to start the load process.
    The file is then transfered to the BW system and afterwards uploaded using an appropriate Infopackage depending on the filetype.
    Are there ABAP classes available that have methods to e.g. start the load of an InfoPackage?
    Regards,
    Eric

    Hi Eric,
    if you want to start or even create or change Infopackages by ABAP, you
    could also use BAPIs. These are provided in BAPI Ecplorer (TC BAPI)
    -SAP Business Information Warehouse
    --Warehouse Management
    ---InfoPackage
    Here you should find required methods
    Regards
    Joe

  • ABAP-Memory per User or static ABAP-class??

    Hi there,
    I want to save some information for each user in a transaction which uses SUBMIT-statements. So I want to store the information globally across reports and transactions (starting from my own single transaction).
    So I can use the ABAP-Memory for storing this information. Is the information stored there seperated by user or is it possible that one user gehts the information of another user? When is ABAP-memory cleared? Is this done automaticly when my transaction flow is finished.
    Alternatively I think I can use a global static ABAP-class with attributes to store the information. Is such a ABAP-class also user-dependent??
    And when is this information cleared??
    Can you give me some hints?
    Thank you very much!
    Kind regards
    Jens

    Hi,
    Both ABAP and SAP memory are user specific. In your case if the issue would concern just one user you should go for SAP memory (when data should be exchanged between external sessions that is windows of SAP gui) or ABAP memory when data exchanged within one external session (between internal sessions - that is between programs run in one GUI session ).
    If you want the data be stored globally for all the users, you have to either store them in some custom global table in DDIC (and later read from different user) or use [Shared objects|http://help.sap.com/saphelp_nw70/helpdata/EN/14/dafc3e9d3b6927e10000000a114084/frameset.htm] which is a special memory buffer in Application Server, where you can exchange data between user sessions.
    Regards
    Marcin

  • Abap Class - Friend

    Hello Forum,
    What is the 'Friend' defined in a Class?
    What is its role and how is it used together with Methods?
    Any easy to understand materials on Abap class would be greatly appreciated.
    Thanks!
    Best regards,
    S.Patel

    Hi
    Classes
    LIKE-Zusatz
    Classes are templates for objects. Conversely, you can say that the type of an object is the same as its class. A class is an abstract description of an object. You could say that it is a set of instructions for building an object. The attributes of objects are defined by the components of the class, which describe the state and behavior of objects.
    Local and Global Classes
    Classes in ABAP Objects can be declared either globally or locally. You define global classes and interfaces in the Class Builder (Transaction SE24) in the ABAP Workbench. They are stored centrally in class pools in the class library in the R/3 Repository. All of the ABAP programs in an R/3 System can access the global classes. Local classes are defined within an ABAP program. Local classes and interfaces can only be used in the program in which they are defined. When you use a class in an ABAP program, the system first searches for a local class with the specified name. If it does not find one, it then looks for a global class. Apart from the visibility question, there is no difference between using a global class and using a local class.
    There is, however, a significant difference in the way that local and global classes are designed. If you are defining a local class that is only used in a single program, it is usually sufficient to define the outwardly visible components so that it fits into that program. Global classes, on the other hand, must be able to be used anywhere. This means that certain restrictions apply when you define the interface of a global class, since the system must be able to guarantee that any program using an object of a global class can recognize the data type of each interface parameter.
    The following sections describe how to define local classes and interfaces in an ABAP program. For information about how to define local classes and interfaces, refer to the  Class Builder section of the ABAP Workbench Tools documentation.
    Defining Local Classes
    Local classes consist of ABAP source code, enclosed in the ABAP statements CLASS ... ENDCLASS. A complete class definition consists of a declaration part and, if required, an implementation part. The declaration part of a class <class> is a statement block:
    CLASS <class> DEFINITION.
    ENDCLASS.
    It contains the declaration for all components (attributes, methods, events) of the class. When you define local classes, the declaration part belongs to the global program data. You should therefore place it at the beginning of the program.
    If you declare methods in the declaration part of a class, you must also write an implementation part for it. This consists of a further statement block:
    CLASS <class> IMPLEMENTATION.
    ENDCLASS.
    The implementation part of a class contains the implementation of all methods of the class. The implementation part of a local class is a processing block. Subsequent coding that is not itself part of a processing block is therefore not accessible.
    Structure of a Class
    The following statements define the structure of a class:
    A class contains components
    Each component is assigned to a visibility section
    Classes implement methods
    The following sections describe the structure of classes in more detail.
    Class Components
    The components of a class make up its contents. All components are declared in the declaration part of the class. The components define the attributes of the objects in a class. When you define the class, each component is assigned to one of the three visibility sections, which define the external interface of the class. All of the components of a class are visible within the class. All components are in the same namespace. This means that all components of the class must have names that are unique within the class.
    There are two kinds of components in a class - those that exist separately for each object in the class, and those that exist only once for the whole class, regardless of the number of instances. Instance-specific components are known as instance components. Components that are not instance-specific are called static components.
    In ABAP Objects, classes can define the following components. Since all components that you can declare in classes can also be declared in interfaces, the following descriptions apply equally to interfaces.
    Attributes
    Attributes are internal data fields within a class that can have any ABAP data type. The state of an object is determined by the contents of its attributes. One kind of attribute is the reference variable. Reference variables allow you to create and address objects. Reference variables can be defined in classes, allowing you to access objects from within a class.
    Instance Attributes
    The contents of instance attributes define the instance-specific state of an object. You declare them using the DATA statement.
    Static Attributes
    The contents of static attributes define the state of the class that is valid for all instances of the class. Static attributes exist once for each class. You declare them using the CLASS-DATA statement. They are accessible for the entire runtime of the class.
    All of the objects in a class can access its static attributes. If you change a static attribute in an object, the change is visible in all other objects in the class.
    Methods
    Methods are internal procedures in a class that define the behavior of an object. They can access all of the attributes of a class. This allows them to change the data content of an object. They also have a parameter interface, with which users can supply them with values when calling them, and receive values back from them The private attributes of a class can only be changed by methods in the same class.
    The definition and parameter interface of a method is similar to that of function modules. You define a method <met> in the definition part of a class and implement it in the implementation part using the following processing block:
    METHOD <meth>.
    ENDMETHOD.
    You can declare local data types and objects in methods in the same way as in other ABAP procedures (subroutines and function modules). You call methods using the CALL METHOD statement.
    Instance Methods
    You declare instance methods using the METHODS statement. They can access all of the attributes of a class, and can trigger all of the events of the class.
    Static Methods
    You declare static methods using the CLASS-METHODS statement. They can only access static attributes and trigger static events.
    Special Methods
    As well as normal methods, which you call using CALL METHOD, there are two special methods called CONSTRUCTOR and CLASS_CONSTRUCTOR, which are automatically called when you create an object (CONSTRUCTOR) or when you first access the components of a class (CLASS_CONSTRUCTOR).
    Events
    Objects or classes can use events to trigger event handler methods in other objects or classes. In a normal method call, one method can be called by any number of users. When an event is triggered, any number of event handler methods can be called. The link between the trigger and the handler is not established until runtime. In a normal method call, the calling program determines the methods that it wants to call. These methods must exist. With events, the handler determines the events to which it wants to react. There does not have to be a handler method registered for every event.
    The events of a class can be triggered in the methods of the same class using the RAISE EVENT statement. You can declare a method of the same or a different class as an event handler method for the event <evt> of class <class> using the addition FOR EVENT <evt> OF <class>.
    Events have a similar parameter interface to methods, but only have output parameters. These parameters are passed by the trigger (RAISE EVENT statement) to the event handler method, which receives them as input parameters.
    The link between trigger and handler is established dynamically in a program using the SET HANDLER statement. The trigger and handlers can be objects or classes, depending on whether you have instance or static events and event handler methods. When an event is triggered, the corresponding event handler methods are executed in all registered handling classes.
    Instance Events
    You declare instance events using the EVENTS statement. An instance event can only be triggered in an instance method.
    Static Events
    You declare static events using the CLASS-EVENTS statement. All methods (instance and static methods) can trigger static events. Static events are the only type of event that can be triggered in a static method.
    See also Triggering and Handling Events.
    Types
    You can define your own ABAP data types within a class using the TYPES statement. Types are not instance-specific, and exist once only for all of the objects in a class.
    Constants
    Constants are special static attributes. You set their values when you declare them, and they can then no longer be changed. You declare them using the CONSTANTS statement. Constants are not instance-specific, and exist once only for all of the objects in a class.
    Visibility Sections
    You can divide the declaration part of a class into up to three visibility areas:
    CLASS <class> DEFINITION.
      PUBLIC SECTION.
      PROTECTED SECTION.
      PRIVATE SECTION.
    ENDCLASS.
    These areas define the external visibility of the class components, that is, the interface between the class and its users. Each component of a class must be assigned to one of the visibility sections.
    Public Section
    All of the components declared in the public section are accessible to all users of the class, and to the methods of the class and any classes that inherit from it. The public components of the class form the interface between the class and its users.
    Protected Section
    All of the components declared in the protected section are accessible to all methods of the class and of classes that inherit from it. Protected components form a special interface between a class and its subclasses. Since inheritance is not active in Release 4.5B, the protected section currently has the same effect as the private section.
    Private Section
    Components that you declare in the private section are only visible in the methods of the same class. The private components are not part of the external interface of the class.
    Encapsulation
    The three visibility areas are the basis for one of the important features of object orientation - encapsulation. When you define a class, you should take great care in designing the public components, and try to declare as few public components as possible. The public components of global classes may not be changed once you have released the class.
    For example, public attributes are visible externally, and form a part of the interface between an object and its users. If you want to encapsulate the state of an object fully, you cannot declare any public attributes. As well as defining the visibility of an attribute, you can also protect it from changes using the READ-ONLY addition.
    Refer the following link
    http://help.sap.com/saphelp_nw04/helpdata/en/c3/225b5c54f411d194a60000e8353423/frameset.htm

  • ABAP CLASS in work flow

    Hi all.
         Can you pls let me know what is the use of ABAP CLASS in workflow with one sample scenario.
    How it differs from  BOR. Thanks in advance.
    Kind Regards,
    sami.

    Hi Sami,
    ABAP classes are pure representation of OOPS. They provide additional functionality that is not provided by business objects.
    If you search SDN you would find ample information on the same, you can refer the following blogs to start with:
    /people/jocelyn.dart/blog/2006/06/19/why-use-abap-oo-with-workflow
    /people/jocelyn.dart/blog/2006/07/27/raising-abap-oo-events-for-workflow
    Hope this helps!
    Regards,
    Saumya

  • Searching for extended ABAP Classes documentation

    Hi,
    I'm a newbie to this forum (perhaps I'm a newbie in an abap too - with my 1.5 yrs abaping) but I'm interested in a few topics related to classes available in the repository:
    1. Where can I find full and detailed info (means description of interfaces both public and private/static) on classes included in a dev.class SLIS, SCET, especially specific ones - currently I'm looking for a documentation on class <cl_alv_changed_data_protocol>, because the info supplied in the repository is not so obviously clear for me.
    2. Can someone point me to a SAP cource/academy -name(s) related to the public classes related to a gui programming and!!!! their support-classes (such as mentioned one above) - which is most important.
    3. (specific question) In the OO framework(s) I worked with in my background there was a possibility to 'extend' some class' behaviour (usualy adding interface). Is there any possibility in a SAP environment to do this and if yes where can I find a docu/info on how to achieve this? Is this achieved only with a related access key?
    4. Please could someone provide me a dev.class names with demo-programs (such as SLIS, SCET) related (mostly) to a GUI-programming?
    Perhaps checking the source of the demo-reports supplied in these dev.classes would help me, but occasionaly it's a bit more complicated and time-consuming than to check a related docu, isn't it?
    The info-sources I have (and used widely) are:
    a) html-documentation with my (ok, our) installation > 4.6C (both integrated into an environment and CHM-help).
    b) 'Controls Technology - Workbench edition' - which I would recommend to all the programmers interested in this area.
    c) 'An Easy Reference for ALV Grid Control'  by Serdar SIMSEKLER (BTW, thank you very, very much Serdar! for providing this reference to the public, I found it very usefull)
    d) of cource, the Class Builder via Repository Browser (se80) which usually and unfortunately doesn't report me any class information when asked.
    e) occasionaly google-ing the world with a specific question and checking this fourm or some related one(s) in the sap community and in de.alt.comp.sap-r3 newsgroup (unfortunately for me the last one is basicaly with postings in German, which makes it unusable to me).
    Perhaps most of you would agree there is a lack of information on these topics. Or, of course, I'm still a newbie and don't know how/where to find it
    Please note, answers in sort of 'Feel free to ask with a specific question here...' are not the answer(s) I'm looking for I know this possiblilty and am using it :-).
    Finaly, one question off topic and related mostly to the moderators:
    Is there an intention or even better a possibility to achieve this forum via NNTP-protocol (means using a standard news-client)? It would be great for me if it's possible or is intended to become possible - I'm using a news-client to track few newsgroups (forums) and it would be great not to switch to a different browser to track this one, which is IMHO the best english-speaking abap-related forum.
    Many thanks in advance.
    Best Regards,
    Ivaylo Mutafchiev
    BC Consultant - Abap developer
    VBS Ltd.
    Varna. Bulgaria
    Message was edited by: Ivaylo Mutafchiev

    From within SE80 choose menu Environment->Controls Examples.  This will lead you to many fine Enjoy Control Example programs.
    Also SAP had a class several years ago called BC412 ABAP Dialog Programming Using EnjoySAP Controls.  It might still be around in some format.

  • ABAP class mapping in PI (7.0)

    I just switched from XI (3.0) to PI (7.0).
    I tried to move one of my interfaces, but in Interface Mapping there is no "ABAP-class" option. How to use ABAP mapping in PI?

    Hi Mariuszu
    you need to enable it as described here
    in the exchange profile
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
    or you can ask us directly via mail
    Regards,
    michal

  • Error on Desktop: iTunes unable to load data class information from sync services.

    Error on Desktop; iTunes unable to load data class information from sync services.

    Hi there Randall112,
    You may find the troubleshooting steps in the article below helpful.
    iTunes for Windows: "Unable to load data class" or "Unable to load provider data" sync services alert
    http://support.apple.com/kb/ts2690
    -Griff W. 

  • When trying to sync my I Phone 4 to I tunes I am getting a message: Unable to Data class information from Sync Services. What does this mean?

    When I-tunes is trying to sync my phone, I get a message regarding Data Class Information from Sync Services saying they were unable to do this.  I have no idea what this means.  I have not been having any problems with syncing info from my computer to phone until just now.  I am trying to install new alert tones from an app that I purchased.  The alert ones are now in my library on I-tunes and they play but they are not syncing to my phone.  The snycing options is not available in my library and when I try to manually sync these tones, nothing is happening.  I recently purhcased ringtones from the I-tunes store and from my phone and they downloaded with no problems and are synced onto my computer and are showing up in the same library list as the tone alerts which I cannot seem to sync.  I have no idea why this is.  Please help!

    In the course of your troubleshooting to date, have you worked through the following document?
    iTunes for Windows: "Unable to load data class" or "Unable to load provider data" sync services alert

  • Shooping cart creation in SRM 7.0 using web dynpro ABAP classes.

    Hi,
    We have recently upgraded to SRM 7.0 from SRM 4.0. We are using customized portal application for the creation of the shopping cart.I am planning to create custom FM which will use the standard Web dynpro ABAP classes to create the shopping cart.
    Could you please guide with the classes that are need to be implemented and the sequence of the classes used in the shopping cart creation.
    I think these are the classes that are used in the standard web dynpro ABAP component.
    CL_FPM_EVENT ->                  Creates an instance of this class based on an event ID.
    CL_BADI_FLT_DATA_TRANS_AND_DB -> Data Handling: Transport and Database.
    CL_EXITHANDLER ->               Class for Ext. Services Within Framework of Exit Technique.
    CL_EX_BBP_DOC_CHANGE_BADI ->     BAdI Class CL_EX_BBP_DOC_CHANGE_BADI.
    CL_BBP_OBJECTS_ACCESS ->         Access Functions for Object Types.
    /SAPSRM/CL_PDO_BO_SC ->          Shopping Cart BO.
    Your expert comments will be appreciated...
    Regards,
    Naresh

    Dear Poster,
    As no response has been provided to the thread in some time I must assume the issue is resolved, if the question is still valid please create a new thread rephrasing the query and providing as much data as possible to promote response from the community.
    Best Regards,
    SDN SRM Moderation Team

  • TS2529 iTunes was unable to load data class information from Sync Services. Reconnect or try again later is the error message I am getting when i connect my iphone 4 to my windows based computer. Any help out there?

    iTunes was unable to load data class information from Sync Services. Reconnect or try again later. This is the message when I try to connect my iphone 4 to my computer. If anyone could help me with this, I would appreciate it.

    iOS: Device not recognized in iTunes for Windows
    http://support.apple.com/kb/TS1538
    iOS: Device not recognized in iTunes for Mac OS X
    http://support.apple.com/kb/ts1591

Maybe you are looking for