Reg :  wd_get_api( ) method

What is the use of wd_get_api( ). method??
Iam confused on this method....Can anyone help me .
When Iam using message manager..the below code got generated . Here why are we using this method?? this method Returns
of  type REF TO if_wd_controller .
get message manager
DATA lo_api_controller     TYPE REF TO if_wd_controller.
DATA lo_message_manager    TYPE REF TO if_wd_message_manager.
lo_api_controller ?= wd_this->wd_get_api( ).
but when iam using popup window.. the below code got generated .Here why are we using this method?? this method Returns
of  type REF TO  if_wd_component.
DATA lo_api_component  TYPE REF TO if_wd_component.
lo_api_component  = wd_comp_controller->wd_get_api( ).
why there is difference in returning  parameter ??
for message it is  type REF TO if_wd_controller .
for poup it is TYPE REF TO if_wd_component

Hi Arjun ,
hope this post by neha satifies ur query :
When you create any web dynpro component, two controller interfaces are created. One you can see at design time of type IF_COMPONENTCONTROLLER, this is the interface which provides you necessary API specific to your component only. Like contexts,nodes,attributes,events etc. The reference variable which is available in code is wd_this.
However at runtime you also get an access to so called run time interface of type IF_WD_COMPONENT. This is a generic standard API which is provided by web dynpro framework to access some important information related to the component. This particular interface contains near about 20 methods which gives you different information. To see the methods just go through the interface IF_WD_COMPONENT in se24. So the method wd_get_api just returns you the instance/object of type IF_WD_COMPONENT. This interface is implemented by web dynpro framework so you need not to worry about that. Once you have the instance you can use this API in your code as and when required.
reference thread :
Re: purpose of methods wd_get_api ?
rgds.
amit

Similar Messages

  • Reg. METHOD redefnition

    Hi,
    I tried to inherit a subclass from super class. In se38, i created supercalss and subclasses as local classes. Here in subclass, the system was expecting the keyword REDEFINITION while resuing the same method in the subclass.
    But when i do the same thing in SE24 for creating a Global Class, the system was not asking to redefine the method.
    Can anyone tell me what could the difference?
    Regards,
    Prabu

    Hi Marcin,
    Thanks for your response.
    I still have the same doubt.
    See the following code, i ahve used the only method DISPLAY in both superclass and subclass. Here if i remove the keyword REDEFINITION from the subclass. I am getting the error as " method DISPLAY as already been declared "
    class lc_superclass DEFINITION.
      PUBLIC SECTION.
      METHODS : display.
    ENDCLASS.
    CLASS lc_superclass IMPLEMENTATION.
      METHOD display.
      ENDMETHOD.
    ENDCLASS.
    CLASS lc_subclass DEFINITION INHERITING FROM lc_superclass.
      PUBLIC SECTION.
      METHODS : display REDEFINITION.
    ENDCLASS.
    CLASS lc_subclass IMPLEMENTATION.
      METHOD display.
      ENDMETHOD.
    ENDCLASS.
    Can you please correct if i am wrong.
    Regards,
    Prabu

  • Reg UserAssaigned() method in RoleListener API

    Hi,This method is  in the interface RoleListener
    1) I want to know when the following method is called. This is in the interface RoleListener
    2)When do we may find its usage?
    3)Do we need to register for  the Roles that are to be observed when a user assaigned to them?
    or is this method called each time a user assiagned to any role in UME.
    javadoc:
    public void  userAssigned (java.lang.String uniqueIdOfRole,
                             java.lang.String uniqueIdOfUser)
                      throws UMExceptionuserAssigned() is called if event INFORM_ON_USER_ASSIGNED is fired from the registering factory
    Parameters:
    uniqueIdOfRole - name of the role
    uniqueIdOfUser - name of the user who was assigned to the role
    Thanks & Regards
    Veerabhadram

    Hi,
    Just look for observer pattern, as the RoleListener api is implementing this pattern.
    RoleListener allows to register for user mangagement events and classes which are interested in these events can implement the RoleListener.
    Classes AclManager, GroupManager, EventHandler and so on implement RoleListener.
    1) I want to know when the following method is called. This is in the interface RoleListener
    --> As the method signature says, this method is called when a user is assigned to role. This method is called on all classes that registered to hear for this event.
    2)When do we may find its usage?
    -->Check AclManager, GroupManager, EventHandler classes to understand its usage.
    3)Do we need to register for the Roles that are to be observed when a user assaigned to them?
    or is this method called each time a user assiagned to any role in UME.
    -->You need not do any thing special, the userAssigned method is called on all listeners each time a user is assigned to any role in UME.
    Regards,
    Praveen Gudapati

  • Reg : Payment method details in MIRO

    Hi All,
    In MIRO i have to populate Payment method supplement field with some data based on the vendor. I have to use an exit for this in MIRO.
    Could you please tell me from which table we are getting the data for payment method so that in the exit i can update that table for the corresponding vendor.
    Regards,
    Anil.

    The payment method info on MIRO gets populated from the Vendor Master Data which is LFB1.
    Nandita

  • Reg call method im_item- set_data

    hi,
    if i try to pass values to me52n tr thro badi me_process_req_cust-process_item method ->set_data...its not going to screen and not reflecting...
    please help if anybody knows

    my req is:
    if user checks the checkbox "closed' in quantities/dates tab, block id of status tab changed to "blocked by requestor'' for that line item.i am pasting my code...please correct me where i am wrong.
    data: ls_datax type mereq_itemx.
      data : item_data        type  mereq_item.
    if im_count = 1.
        if sy-tcode eq 'ME52N' or sy-tcode eq 'ME53N'.
          call method im_item->get_data
            receiving
              re_data = item_data.
          if item_data-ebakz eq 'X' and item_data-frgkz = '2'.
    move 'X' to ls_datax-blckd.
                call method im_item->set_datax
                  exporting
                    im_datax = ls_datax.
                item_data-blckd = '1'.
    CALL METHOD im_item->set_data
    EXPORTING
    im_data =  item_data.
    endif.
    endif.

  • Cannot insert into database

    Can any body help plzzzzzzzzzzzzzzzz,
    I establish a connection using connection pooling as given in netbeans
    helps.With that ican retrieve data from database but cant insert into it.While inserting only null values ere entered into database.why?
    please somebody help

    My Jsp page userRegistration.jsp
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
    <%@taglib prefix="c"uri="http://java.sun.com/jsp/jstl/core"%>
    <%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
    <%@ page import="java.sql.*" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
            </head>
        <body>
    <html:errors/>
        <table>
    <html:form action="reg.do"method="post" >
    <tr>
    <td>
    firstname<html:text  property="firstName"  />
    </td>
    </tr>
    <tr>
    <td>
    lastname<html:text property="lastName" />
    </td>
    </tr>
    <tr>
    <td>
    username<html:text property="userName" />
    </td>
    </tr>
    <tr><td>
    email<html:text property="email" />
    </td>
    </tr>
    <tr>
    <td>
    phone<html:text property="phone" />
    </td>
    </tr>
    <tr>
    <td>
    fax<html:text property="fax" />
    </td>
    </tr>
    <tr>
    <td>
    password<html:password property="password" />
    </td>
    </tr>
    <tr><td>
    passwordcheck<html:password property="passwordCheck" />
    </td>
    </tr>
    <tr>
    <td>
    <html:submit />
    </td>
    <td>
    <html:cancel />
    </td>
    </tr>
    </table>
    </html:form>
    </body>
    </html>
    my struts action
    package action;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionForward;
    import javax.servlet.http.HttpSession;
    public class reg extends Action {
         private String firstName;
        private String lastName;
        private String userName;
               private String email;
               private String phone;
               private String fax;
               private String password;
               private String passwordCheck;
        /* forward name="success" path="" */
        private final static String SUCCESS = "success";
        public ActionForward execute(ActionMapping mapping, ActionForm  form,
                HttpServletRequest request, HttpServletResponse response)
                throws Exception {
            response.sendRedirect("complete.jsp");
            return mapping.findForward(getSUCCESS());
        public String getFirstName() {
            return firstName;
        public void setFirstName(String firstName) {
            this.firstName = firstName;
        public String getLastName() {
            return lastName;
        public void setLastName(String lastName) {
            this.lastName = lastName;
        public String getUserName() {
            return userName;
        public void setUserName(String userName) {
            this.userName = userName;
        public String getEmail() {
            return email;
        public void setEmail(String email) {
            this.email = email;
        public String getPhone() {
            return phone;
        public void setPhone(String phone) {
            this.phone = phone;
        public String getFax() {
            return fax;
        public void setFax(String fax) {
            this.fax = fax;
        public String getPassword() {
            return password;
        public void setPassword(String password) {
            this.password = password;
        public String getPasswordCheck() {
            return passwordCheck;
        public void setPasswordCheck(String passwordCheck) {
            this.passwordCheck = passwordCheck;
        public static String getSUCCESS() {
            return SUCCESS;
        private javax.sql.DataSource getHima() throws javax.naming.NamingException {
            javax.naming.Context c = new javax.naming.InitialContext();
            return (javax.sql.DataSource) c.lookup("java:comp/env/jdbc/hima");
    my complete.jsp where insertion happens
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
    <%@taglib prefix="c"uri="http://java.sun.com/jsp/jstl/core"%>
    <%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
    <%@ page import="java.sql.*" %>
    String firstName=("firstName");
    String lastName = getInitParameter("lastName");
    String userName = getInitParameter("userName");
    String email= getInitParameter("email");
    String phone = getInitParameter("phone");
    String fax = getInitParameter("fax");
    String password = getInitParameter("password");
    String passwordCheck = getInitParameter("passwordCheck");
    <%
           String firstName=(String)request.getAttribute("firstName");
           request.getSession().setAttribute("firstName",firstName);
    %>  
    <sql:query var="queryresults" dataSource="jdbc/hima">
            select phone from user
            </sql:query>
    <sql:update var="resultset" dataSource="jdbc/hima">
                INSERT INTO user1 (firstName,lastName,userName,email,phone,fax,password,passwordCheck)
                VALUES(firstName,lastName,userName,email,phone,fax,password,passwordCheck)
            </sql:update>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
       <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
        </head>
        <body>
    <form action="comp"></form>
        <h1>JSP Page</h1>
        <table>
        <tr>
        <th>first</th>
        </tr>
        <c:forEach var="row" items="${queryresults.rows}">
            <tr>
            <td><c:out value="${row.phone}"/></td>
            </tr>
        </c:forEach>
    </table>
        </body>
    </html>

  • RMI connection refused

    Hello to all,
    I have created and completed an RMI chat application and tested it on my localhost. It worked all right.
    Now I want to make it live i.e. run it through internet.
    Is it same as running on localhost only we have to change the IP address for locating registry.
    I have done that and uploaded the server file on host, also I have the IP address of that host.
    I have replaces localhost whit the give IP address but connection refused exception is thrown.
    I have located the registry on the server through IP address then when I use
    Registry reg=LocateRegistry("xx.xx.xx.xxx");
    System.out.println("1");
    chatAppIF chatStub=(chatAppIF)Naming.lookup("rmi://xx.xx.xx.xxx:xxxx/service");
    System.out.println("2");
    int i=chatStub.logMeIn(user,pass);
    System.out.println("3");Output screen shows
    1
    2
    Client exception: java.rmi.ConnectException: Connection refused to host: xx.xx.xx.xxx; nested exception is:
            java.net.ConnectException: Connection refused: connectWhile when i use
    Registry reg=LocateRegistry("xx.xx.xx.xxx");
    System.out.println("1");
    chatAppIF stub=(chatAppIF)reg.lookup("service");
    System.out.println("2");
    int i=chatStub.logMeIn(user,pass);
    System.out.println("3");it give output as
    1
    Client exception: java.rmi.ConnectException: Connection refused to host: xx.xx.xx.xxx; nested exception is:
            java.net.ConnectException: Connection refused: connectIs there is difference between naming.lookup() and reg.lookup() method?
    I think Naming.lookup() finds the registry but cannot find the method logMeIn() while reg.lookup() has no success.
    anyway why the connection is refused?

    The argument to Naming.bind()/rebind()/unbind() and Naming.lookup() is a URI of the form rmi://hostname[:port]/path.
    The argument to Registry.bind()/rebind()/unbind() and Registry.lookup() is just the path part.
    The data returned by Naming.list() is an array of URIs.
    The data returned by Registry.list() is an array of paths.
    In other words Naming.list() returns items which can be used as arguments to Naming.lookup(), and Registry.list() returns items which can be used as arguments to Registry.lookup().
    The reason is that when you construct a Registry, via LocateRegistry.getRegistry(), you supply the host and port at that point, so specifying it again in the bind/lookup string would be redundant. There's nothing stopping you doing that but the resulting name won't be compatible with what Naming.bind() would have done.

  • Validating framework

    HI
    can we we use server side validation framework in struts and validate() method in form.
    I used both but only server side validate framework works.
    can u suggest how to use vaildate method also.
    here is the code what i have done
    register.jsp
         <body>
              <html:form action="regs.do" method="post">          
              <bean:message key="user" />
                   <html:text property="userid" />
                   <html:errors property="userid" />
                   <br>
                   <bean:message key="pass" />
                   <html:password property="password" />
                   <html:errors property="password" />
                   <br>
                   <html:submit value="Submit" />
              </html:form>
         </body>
    </html>
    struts-config.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
    <data-sources />
    <form-beans>
         <form-bean name="regForm" type="com.forms.RegistrationForm" />
    </form-beans>
    <global-exceptions />
    <global-forwards>
         <forward name="start" path="/register.jsp" />
    </global-forwards>
    <action-mappings>
         <action path="/regs" type="com.actions.RegistrationAction" name="regForm" scope="request" validate="true" input="/register.jsp">
              <forward name="success" path="/success.jsp" />
              <forward name="failure" path="/failure.jsp" />
         </action>
    </action-mappings>
    <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
    <!-- validator framework plugin -->
         <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
         <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
         </plug-in>     
    </struts-config>
    ApplicationResources.properties
    errors.required={0} is required as said rama.
    RegistrationForm .java
    package com.forms;
    import javax.servlet.http.HttpServletRequest;
    import org.apache.struts.action.ActionError;
    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.validator.ValidatorForm;
    public class RegistrationForm extends ValidatorForm {     
         protected String userid;
         protected String password;
         public String getPassword() {
              return password;
         public void setPassword(String password) {
              this.password = password;
         public String getUserid() {
              return userid;
         public void setUserid(String userid) {
              this.userid = userid;
         public ActionErrors validate(ActionMapping map,HttpServletRequest req){
              ActionErrors errors=new ActionErrors();
              if(this.password==null ||this.password == "" ||this.userid==null ||this.userid== ""){
                   errors.add("userid",new ActionError("this is rama"));
              return errors;
    validation.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE form-validation PUBLIC
    "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN"
    "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
    <form-validation>
         <formset>
              <form name="regForm">
                   <field property="userid" depends="required">
                        <arg0 key="some.userid"/>
                   </field>
                   <field property="password" depends="required">
                        <arg0 key="some.password"/>
                   </field>          
              </form>
         </formset>
    </form-validation>

    I think you could still use the validator form.
    You say you have 10 fields on your form, up to 3 of which are visible?
    Its a bit of a hack, but what it would require is 10 hidden fields on the page. One for each of the controls. The hidden field value would be set if the control was meant to be present, and empty if not.
    That way the validWhen syntax only has to deal with two fields
    1 - a hidden field indicating whether or not to validate
    2 - the field to validate itself.
    You just have to set the values of the hidden fields according to which controls you are showing/hiding.
    An alternative:
    Use ValidatorActionForm rather than just ValidatorForm.
    ValidatorActionForm fires on a specific "action" rather than a specific "form"
    ie it uses the name of the action to choose which validation to run rather than the name of the form
    You would then have to define seperate ACTIONS in struts-config for each of the variations of the page, and validation for each action, but you would still only have one jsp page and one Action class as they could all be the same.
    Cheers,
    evnafets

  • CIFS, Novell Client, & Windows 7

    We are running 6.5 sp6 cluster nodes. We have some windows xp clients using cifs and others using the novell client v4.9.1 . We are now setting up windows 7 clients on our network. Please advice how to setup some windows 7 clients with cifs, and what version of the novell client and settings do i need for windows 7.
    appreciate any tips.
    thanx.

    On 30/03/2010 15:26, robles wrote:
    >>> Have you set Windows 7 to use NTLMv1?
    > No, i haven't. how where do i change this? is there a document i can
    > refer to?
    Please see TID 3437586. Note that is only required to connect via CIFS
    and not via NCP (the protocol the Novell Client uses).
    In additional I'll also note that you can also use the distributable
    "reg" file method with Windows 7 (as well as Vista).
    HTH.
    Simon
    Novell Knowledge Partner (NKP)
    Do you work with Novell technologies at a university, college or school?
    If so, your campus could benefit from joining the Novell Technology
    Transfer Partners (TTP) group. See www.novell.com/ttp for more details.

  • Purpose of methods wd_get_api ?

    Hi friends..
    while creating web dynpro component in WDA. automatically controller interface if_componentcontroller get created.
    inside the code.. i can able to see
    1. constant for context name
    2. elments for context node
    above 2, i created in the context node so its coming but
    3.  methods wd_get_api
        returning
          value(Result) type ref to IF_WD_COMPONENT.
    what is the purpose of this code ?
    why it wil come ? wen we use thid method ?
    kindly give some inputs
    regards
    deva

    Hi,
    When you create any web dynpro component, two controller interfaces are created. One you can see at design time of type IF_COMPONENTCONTROLLER, this is the interface which provides you necessary API specific to your component only. Like contexts,nodes,attributes,events etc. The reference variable which is available in code is wd_this.
    However at runtime you also get an access to so called run time interface of type IF_WD_COMPONENT. This is a generic standard API which is provided by web dynpro framework to access some important information related to the component. This particular interface contains near about 20 methods which gives you different information. To see the methods just go through the interface IF_WD_COMPONENT in se24. So the method wd_get_api just returns you the instance/object of type IF_WD_COMPONENT. This interface is implemented by web dynpro framework so you need not to worry about that. Once you have the instance you can use this API in your code as and when required.
    I suggest you to go through the methods that will give you clear picture what type of information I am refering to.
    Regards,
    Neha

  • Reg : BDC issue while updating infotype 40 inside BADI class method

    Hi Friends,
         Actually in my badi class, there is a method where i need to save the infotype fields including comment fields.. So with BDC recording i recorded screen fields and passing the pernr internal table values to recorded pernr values.. by doing this im getting error and so BDC is not upadting the data.. moreover if i pass directly pernr number within single quotes, BDC is working fine and data is getting updated..
    bdc_field        'RP50G-PERNR'   pernr.  --> Error Message while calling transaction through BDC
    bdc_field        'RP50G-PERNR'   '00001234'  ---> updating successfully..
    1. Tell me whether the issue is with BADI or wat ? means we cant able to use BDC inside badi ?
    2. I also tried changing my internal table value of pernr to type 'C' of length 8.. eventhough its showing error..
    Please tell me what i need to do .... ?

    Hi  Dilek Ersoz Adak ,
      I also tried with that, but getting same error..  Below is my error im getting while updating BDC through call transaction,
    1     PA30     SAPMP50A     1000     E     K     PBAS_SERVICE     001     HRADMIN     EPPRELE 00000121     HRAdministrator          CTU     RP50G-PERNR
              Person is treated already by the HR Administrator

  • Reg msg "Payment method(s) are not allowed for this program".

    Hi...
    I am copying a standard program RFFOES_T (Print program for bank transfer) into a custom program. When i try to execute the custom program it gives me a msg saying
    "Payment method(s) are not allowed for this program".
    Can you please Provide a solution for this problem.
    Regards,
    Indira.

    Indira,
    1.RFFOES_T is using Logical database PYF.Seems you have copied it as it is without changing the attributes of the program.
    2.As it is using logical database PYF  it needs to be tagged to the respective payment methods in FBZP settings as below
    FBZP
    >>Payment methods in Country
    >> in the next screen click on position and give the company code and payment method
    >> in the next screen select the corresponding payment method and click on the details(ctrlshiftf2) ie magnifying glass icon
    >>in the next screen  within  Payment Medium you will get to see two radio buttons as Payment medium workbench(uses DMEE tree structure)  and payment medium programs (uses the standard prog).Here in Payment medium Program either the standard prog or your zprogram should be tagged otherwise you will get the error message as you mentioned.
    3.Once you tag the program in the FBZP setting to the respective payment methods,after the payment run you will be able to run the program.
    4.If you don't want the program to be linked to FBZP settings then as far as my knowledge is concerned you need to avoid using logical database PYF and change the entire code using the regular database tables like reguh,regup,bkpf,bseg etc.(I think this should be the best approach)
    Thanks,
    K.Kiran.

  • Reg: Order in which view and controller methods executed

    Hi,
    I want to know in which order the following methods get executed in the intial stage of application.
    View wdinit()
    wddomodify()
    controller wdinit()
    and when a we press a button or something what is the order in which the following methods get executed.
    Action of corresponding button
    wddomodify()
    Thanks in advance.

    Hi Armin,
    Thanks for the reply.
    Just to make sure, Do u mean the on start of application the order is Controller Init(),View init()
    on some action the order is actionhandler, wddomodify().
    Thanks in advance.

  • APP- DTAUS0 method output- reg

    Hi,
    I am in configuration for a German Company, the requirement is, SAP has provided country specific payment methods like DTAUS0 for Germany, BACS for Great Britan and so,
    To configure DTAUS0 method for German company, the bank requires the output in text (string) format,
    I need help to configure APP payment through DTAUS0 (Data Medium exchange DME file ) method so that the SAP system of company can directly connect to BANK system for making payments.
    Kindly provide details how to configure the same.
    Thanks & regards,
    S. Habib Pasha.

    Habib
    You have already asked this question...
    Try this link:
    http://help.sap.com/bp_bblibrary/500/documentation/N70_BPP_03_EN_DE.doc
    Starts Page 8

  • Reg. oops...implementation of abstract method in se24...have ur ponts..

    Hi all,
    In SE24 i made an abstract class & made a method abstract successfully.
    Now i made another class that inherited my abstract class, it is showing my abstract method there.
    Now when i want to give implementation to that method, but when i double click on that system is showing "method is abstract & has not yet redefined".
    Pleas let me know..how i implement it..
    Thanx in advance..
    <b>Have ur point.s</b>

    Hi
    Inheritance Inheritance defines the implementation relationship between classes, in which one class (the subclass) shares the structure and the behavior defined in one or more other classes (superclasses). Note: ABAP Objects only allows single inheritance.
    Inheritance is a relationship, in which one class (the subclass) inherits all the main characteristics of another class (the superclass). The subclass can also add new components (attributes, methods, and so on) and replace inherited methods with its own implementations.
    <b>Single Inheritance</b>
    ABAP Objects only has single inheritance.
    A class may only have one direct superclass, but it can have more than one direct subclass. The empty class OBJECT is the root node of every inheritance tree in ABAP Objects.
    <b>Relationship between Superclasses and Subclasses</b>
    Common components only exists in  the superclass
            new components in the supercalss are automatically available in subclass
            amount of new coding is reduced ( programing by difference)
    Subclass are extremely dependent on superclases
           white box reuse – subclass must possess detailed knowledge of the implementation of the superclass
    <b>Inheritance: Syntax</b>
           Normally the only other entry required for subclasses is what has changed in relation to the direct superclass. Only additions are permitted in ABAP Objects, that  is, in a subclass you can "never take something away from a superclass". All components from the superclass are automatically present in the subclass.
    <b>Class name defination.
        public section.
             methods. First name importing some type some type
                                            returning value(value) type some type.
       private section
              data : make type string..
    Endclass.
    Class name1 definition inheriting name
    public section
           method. : get  returning value ( value) type get.
    Priavte section.
       data : max type some type
    endclass</b>
    <b> Redefining methods</b>
    The REDEFINITION statement for the inherited method must be in the same SECTION as the definition of the original method.
    If you redefine a method, you do not need to enter its interface again in the subclass, but only the name of the method.
    In the case of redefined methods, changing the interface (overloading) is not permitted; exception: Overloading is possible with the constructor.
    Within the redefined method, you can access components of the direct superclass using the SUPER reference.
    The pseudo-reference super can only be used in redefined methods.
    reward if usefull

Maybe you are looking for

  • How Can I change the color in a 3d object?

    Hello. I have received a 3dPDF, on which several buildings are created in 3d. Is it possible afterwards to change the color of the buildings in Acrobat X Pro? Or do I need the plugin "Tetra4D"? Thank you for your help. Greeting Sascha

  • IPod Touch 4G forgotten password.. STUCK

    Haven't used my iPod Touch 4th gen in nearly a year for preference of my Cowon Z2. Turned it on today to realize that I had forgotten the password... I wanna restore it anyways so I held down the correct buttons etc etc to get it into recovery mode a

  • E72-1 RM350 - Can I use this phone in Japan - wh...

    Hi, Im travelling to Japan and would like to know if it is possible to use my E72-1 there  my local provider is TELENOR  AS I understnad it all netowkr in Japan are 3G but seems according to guide books that most european phones will not work in Japa

  • How to get the exact sql developer which used for data migration?

    Hi all, Hope doing well, Sir i seen a link for data migration that is : http://www.oracle.com/technetwork/developer-tools/sql-developer/sql-server-connection-viewlet-swf-089886.html in this link when they are connecting to sql database so after click

  • Best way to manage digital signing on Active Directory environment?

    Hi, I have created a couple of interactive documents and they have signature fields for the staff. Some documents have multiple signature fields. At the moment staff signing the document and emailing his/her supervisor and supervisor saving as this d