Doubt about interface & abstract

Hai everybody,
I am new java technology. I need clear discribtion about interface & abstract.
Please give some examples and differentiate it.
i awaiting for your reply
by
azhar

Even Wikipedia has info about this:
http://en.wikipedia.org/wiki/Interface_%28Java%29
http://en.wikipedia.org/wiki/Class_%28computer_science
%29#Abstract_and_concrete_classeswhenever someone asks this question, they don't really want to read about it, they just want someone to tell them the secret rules about when to use an interface and when to use an abstract class. but we're not telling :-)

Similar Messages

  • Doubt about interfaces in "final Runnable closerRunner = new Runnable()"

    Till this date i think that interfaces can not be instantiated because they dont define methods.But one line of code found in a sample program(creating splash screen)creates lots of confusions to me.The line is as follows:
    final Runnable closerRunner = new Runnable()
    An interface is instantiated using "new" operator.How is this possible ?
    Any body help me please.
    The whole program follows:
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    class SplashWindow3 extends JWindow
    public SplashWindow3(String filename,JFrame f, int waitTime)
    super(f);
    JLabel l = new JLabel(new ImageIcon(filename));
    getContentPane().add(l, BorderLayout.CENTER);
    pack();
    Dimension screenSize =
    Toolkit.getDefaultToolkit().getScreenSize();
    Dimension labelSize = l.getPreferredSize();
    setLocation(screenSize.width/2 - (labelSize.width/2),
    screenSize.height/2 - (labelSize.height/2));
    addMouseListener(new MouseAdapter()
    public void mousePressed(MouseEvent e)
    setVisible(false);
    dispose();
    final int pause = waitTime;
    final Runnable closerRunner = new Runnable()
    public void run()
    setVisible(false);
    dispose();
    Runnable waitRunner = new Runnable()
    public void run()
    try
    Thread.sleep(pause);
    SwingUtilities.invokeAndWait(closerRunner);
    catch(Exception e)
    e.printStackTrace();
    // can catch InvocationTargetException
    // can catch InterruptedException
    setVisible(true);
    Thread splashThread = new Thread(waitRunner, "SplashThread");
    splashThread.start();
    public static void main(String [] a)
              //this.setSize(1000,1000);
              JFrame f=new JFrame();
              f.setSize(300,300);
              SplashWindow3 s=new SplashWindow3("shan.jpg",f,100000);
    }

    That is called an anonymous inner class.
    See JLS 15.9.
    http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.9

  • About interface mapping

    what are there case about interface mapping?
    i knew that the following:
    outbound to inbound
    abstract to abstract.
    what else the case?

    Hi joy zheng  ,
    These r the details about interface mapping :
    Interface Mappings
    You can define mappings for an interface pair (source and target interface) by using message interfaces and message types in the Integration Repository.You can also define the corresponding mappings when the source or target interface is an IDoc, an RFC, or another interface connected by an adapter.
    When defining mapping programs for request, response, or fault messages, the definition is first separated from the interfaces that reference the corresponding message types. Furthermore, you can reuse a message type for multiple interfaces. This means that the simple definition of a mapping program is not sufficient to establish a connection (that is based on the assignment of outbound and inbound interfaces).
    This role is undertaken by the interface mapping:
    ●     An interface mapping specifies the corresponding mapping programs for request, response, or fault messages for a selected interface pair. You use an interface mapping to register mappings for an interface pair.
    ●     You can also specify multiple mapping programs to be executed one after the other in the case of requests and responses for an interface mapping.
    You can also define multiple interface mappings for the same interface pair, to provide multiple variants in the Integration Repository. At configuration time, the customer can select the appropriate mapping in an interface determination and save it in the Integration Directory
    Use :
    Interface mappings register your mapping program for an interface pair in the Integration Repository. If you require a mapping at runtime, it is sufficient to select the interface mapping for the interface pair at configuration time . The Integration Server uses the interface mapping to identify associated mapping programs for request messages, response messages, fault messages, or all three.
    Features
    Executing Multiple Mapping Programs for One Direction
    By using an interface mapping you can execute multiple mapping programs consecutively for the transformation of a request or response message. In such cases, an interface mapping comprises multiple steps for which the following applies:
    ●     The steps are executed in the sequence specified (from top to bottom). The result of the mapping program from the previous step is forwarded to the mapping program of the subsequent step.
    ●     Each step can reference a mapping program that executes a 1:1, 1:n, n:1, or an m:n transformation. In the case of multi-mappings (1:n, n:1, or m:n), the previous step must create the same number of messages that the subsequent step expects.
    ●     Multi-mappings use one envelope to put all messages in one structure. If one of the steps references a multi-mapping program, all subsequent steps must use the same envelope.
    The mapping for a request message comprises two message mapping programs: one 1:1 transformation and one 1:n transformation. Since the latter message mapping uses the multi-mapping envelope for both the target message and the source message, the message mapping for the 1:1 transformation must also create a transformation result with a multi-mapping envelope.
    You do not strictly need to divide up one direction of the whole mapping into different steps. However, this enables all the message formats in one system landscape to be mapped to a central message format, for example. This results in less mapping programs being required because you no longer need to be able to map all the different message formats to each other.
    Activities
           1.      Create your interface mapping on the design maintenance screen of the Integration Builder (see also: Creating an Object).
    You can also create multiple interface mappings for the same interface pair.
           2.      Enter the source and target interfaces that require a mapping of the request message, the response message, the fault message, or all three, in the table of the same name. The following restrictions apply:
    ○     If you want to use the interface mapping in a transformation step in an integration process, you must only specify abstract message interfaces. Furthermore, all objects (integration process, interface mapping, and all objects referenced by the interface mapping) must be in the same software component version. If you want to reference objects from underlying software component versions, you must access the objects from the Basis Objects branch (in the navigation tree or using an input help) (see also: Underlying Software Component Versions).
    ○     If you want to map multiple messages to each other by using a multi-mapping, you can only specify asynchronous interfaces (for further restrictions, see: Multi-Mappings). If any message interfaces are missing, you can also create them by using the functionCreate New Object ().
    If the interface cannot be imported or cannot be created in the Integration Repository (in the case of an external adapter, for example), you must enter the interface names manually. However, it is not possible to check the technical name in this case.
           3.      To import the properties of the interfaces, choose Read Interfaces. The table in the lower area displays tab pages for the request message, response message, and if available, for the fault message, for each mode of the interfaces (either synchronous or asynchronous).
           4.      To develop an external mapping program, export the XSD schema of the respective request or response message as a zip file after you have imported the interfaces. The zip file can contain multiple schema files that reference each other, for example in a multi-mapping. In this case, the schema with the global message element has the name MainSchema.
           5.      To reference a mapping program for the respective message, you have the following options:
    ○     Select an existing mapping program from the Integration Repository by using the input help (). If this is a message mapping, the default setting of the input help only displays those message mappings that are found using the source and target message in the Integration Repository (in multi-mappings, the first source and target messages are used as the search criteria). However, you can also display any number of message mappings, for example, because you are constructing a mapping from several mapping programs with intermediate instances which have no message types.
    ○     You can create message mappings directly from the interface mapping. To do this, select the mapping type Message Mapping in the Type column. Position the cursor in the Name column and choose the function Create New Message Mapping () in the Mapping Program frame. The Integration Builder copies the specifications of the messages and their occurrence directly from the interface mapping.
    An interface mapping can only reference mapping programs that belong to the same or an underlying software component version of the interface mapping. This ensures that the mapping program can be shipped together with the interface mapping (see: Software Logistics).
           6.      If you are not using a mapping for a fault message, you can execute multiple mapping programs in succession for request and response messages:
    ○     To insert an additional line for a mapping program, choose .
    ○     To delete the registration for a mapping program, choose .
    At runtime, the mapping programs are executed from top to bottom.
           7.      Save the interface mapping.
    The following web-site gives complete details about interface mapping :
    http://help.sap.com/saphelp_nw2004s/helpdata/en/12/05731a10264057badc32d3d3957015/content.htm
    **********Please reward points if u find this useful
    cheers,
    gyanaraj

  • Question about Interface

    Hi everyone,
    I have a question about interface :
    an interface can only have abstract methods, right ?
    so how come ResultSet (which is an interface) has methods like next() which can't be abstract otherwise it wouldn't do anything ?
    thanks for answering !

    an interface can only have abstract methods, right ?Yes. All methods in an interface are inherently public and abstract.
    so how come ResultSet (which is an interface) has
    methods like next() which can't be abstract otherwise
    it wouldn't do anything ?It defines the next() method for classes that implement the interface. When you get a ResultSet reference returned from a method call, you're not getting a reference to an interface; you're getting a reference to an object that implements that interface (or null, as the case may be).

  • Use of interface, abstract

    Hi all
    A simple question, I have been read some books or web sites about the use of interface, abstracts, but I still don't quite get it such as when should we use it, how should we apply it in terms of programming design..
    Can someone teach me or show me some example....
    Thanks!

    user978043 wrote:
    A simple question, I have been read some books or web sites about the use of interface, abstracts, but I still don't quite get it such as when should we use itAlmost always, especially in non-trivial cases.
    how should we apply it in terms of programming design..Jverd's already given you a good example, but just to reinforce it for you: an interface describes the WHAT; a class defines the HOW.
    An abstract class is somewhere between the two, and is often used for 'skeleton implementations' (you may want to Google it), which allow you to build your own concrete (non-abstract) classes very easily.
    Can someone teach me or show me some example.... This one is filched from "Effective Java" and converts an array of any reference type into a fixed-length List:public static final <T> List<T> asList(final T[] array) {
       return new AbstractList<T>() {
          public T get(int index) {
             return array[index];
          public T set(int index, T value) {
             T oldValue = get(index);
             array[index] = value;
             return oldValue;
          public int size() {
             return array.length;
    }In fact it's highly likely that Arrays.asList() does something very similar to the above.
    Given all the neat things that a List can do, it's a pretty powerful bit of code, and only possible because of the existence of AbstractList.
    HIH
    Winston

  • Doubt about proxies implementation

    hi experts i have small doubt about proxies implementation
    1. if we r implementing client proxies, it means sap r/3(proxy)->>xi->>>file
         system.here where we have to execute the SPROXY  transaction. in sap r/3 or
         in the xi server.and the next thing is where we have to write the report program
         to trigger the interface.in sap r/3 or in the xi server.
    2. if we r implementing server proxies, it means File->>xi->>>sap r/3
        (proxy).here where we have to execute the SPROXY  transaction. in sap r/3 or
         in the xi server.
    please clear me
    Regards
    giri

    Sreeram,
    The Integration Server and the client on which you generate the proxies should not be the same. If they are different then yes, you can use another client in your XI box itself to generate proxies and trigger the call to XI.
    If you see this blog by Ravi ( incidentally he is my boss as well ) this is exactly what we have done as well.
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
    When you say XI, you mean the Client on which the Integration Server is running! XI is basically a R3 instance with more functionality and its own Integration Engine.
    Regards
    Bhavesh

  • Doubt about Substitution Rules

    Hello gurus!
    We have a doubt about Management Substitution Rules. We fully understand all the benefits of this feature and tried to communicate to all our personnel to make it work properly, but as we have a big staff and not everybody have the same "skills" understanding technology, we eant to have a different approach to this: we want to develop a "user friendly" interface, as a single acreen where we can emulate all the features of Substitution Rules, but we want to know if there is a control program or a Function that controls this, and the understand it fully to achieve this. Anybody knows if this is possible?
    Regards IA

    Hi,
    If you use UWL only with one backend system, you can easily build your own application for example with web dynpro ABAP. Just use the function modules SAP_WAPI_SUBSTITUTE* to do the different operations (creating, deleting substitutions, etc.).
    If you have multiple backend systems, it is a bit more complicated. You could build your own (Java WD) application by using the Substitution API. Check the docs at: http://help.sap.com/javadocs/NW04S/SPS09/uw/com/sap/netweaver/bc/uwl/IUWLSubstitutionManager.html
    Both approaches work.
    Regards,
    Karri

  • Doubt about webDynpro windows

    HI Experts,
    I have small doubt about webdynpro windows.
    1) If i have only one application in webdynpro DC , what is use of using multiple windows.
    2) If i have multiple windows in a DC which has single application, how i can i navigate between windows?
    3)if i have multiple applications with multiple windows, then how will i know which window belongs to which application.
    4)If i have multiple windows and multiple applications, then how can we navigate between windows? It means navigation betn windows and navigation betn applications...?
    Please explain me, i browsed in SDN, i found the threads but they are explaining my doubts exactly
    Thanks in advance.
    Regards,
    Bala

    Hi.
    Simply the Window is part of Web Dynpros public interfaces, and are needed whenever you want to access a graphic component from outside of your web dynpro component.
    Web Dynpro uses the MVC design pattern. Model View Control.
    In order to reuse components, Web Dynpro exposes the View and Controller to the outside world.
    Internally the View and Control in MVC is just that:
    Views
    Component Controller and Custom Controller.
    Externally the View and Control are exposed as
    Interface Controller and Interface Views. The Interface View is the external part of a Window. (When a Window is created, an associated Interface View is created).
    So, to be able to actually see anything from a Web Dynpro application. The browser would access a Interface View that opens the Window with some view in it.
    An other example is that you have two Web Dynpro projects, where the first one have a View with an integrated view from the second Web Dynpro. The integration would be through the Interface View again.
    Internally in your Web Dynpro component, you can use the views directly (i.e. navigate between views).
    Opening an external popup would generate a new browser window. In order for the new browser window to display anything it would need to access an interface view. That's why you need to create a separate Window when you want to use a popup.
    Regards.
    Edited by: Mikael Löwgren on Feb 15, 2008 12:58 PM

  • Doubt about Integration Directory

    Hi Expers,
    I have one doubt about ID.
    What are  the objects we can re-use in the IR And  ID.
    Please let me know.
    Regards
    Khanna

    Hi Rajesh,
    <i>With out Developing of the ID Also my Scenario is Working Fine.</i>
    Yes it will work, if you are using the same names for message interface, message mapping and interface mapping.
    Beacause in ID an Object key is uniquely assigned for each configuration object.
    if it already exist then no need to create another.
    Check this link for more details.
    http://help.sap.com/saphelp_nw04/helpdata/en/7c/7c33419026f423e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/5d/372f41fe21c059e10000000a155106/frameset.htm
    Sachin

  • Doubt about Role and Policy

    Hi everyone,
    I have a doubt about role and policy,
    I'm using OBIEE11.1.1.5, I try to creating role R1 by creating like BIConsumer.
    then I go to policies interface,Edit 'BIConsumer' policy,
    I find only one role 'BIConsumer' under grantee.
    so I'd like to ask why 'R1' is not under policy 'BIConsumer' while R1 has permission like role BIConsumer ???
    thanks in advance!

    Application policies are sets of java permissions that are associated with a principal which is BIConsumer role in this case which grants permissions necessary to use, or to consume, content created by other users.
    So when you try to create like BIConsumer, you are not modifying the existing BIConsumer principal policy( which you should never do) but instead trying to create one similar grants like it.
    Usually as long as you are not dealing with BI Publisher, Financial Reporting and Real-Time Decisions application security permissions restriction, you would not have to modify any of these policies and use the default ones.
    Hope this helps. Pls mark if it does.
    Thanks,
    SVS

  • Suggestions about interface: graph, directed and undirected graph

    Hello all,
    I'm having some doubts about the right 'choice' of interfaces. I'm designing a little library for graphs and I was thinking about the difference between directed and undirected graphs, and how I should reflect this in the library. My apologies for my bad English.
    There is a small, but elegant, difference between directed and undirected graphs. Therefor, I don't know if it's worth to distuingish this difference in interfaces or not. I'll explain the difference by example. Usually, you can ask a directed graph the following queries:
    - all out-edges of a node + the total of such edges (outdegree)
    - all in-edges of a node + indegree
    - the successors of a node
    - the predecessors of a node
    The same questions can be asked to a undirected graph, but the in-edges and the out-edges of a node are equal, the successors and the predecessors are equal, etc... Thats basically the only difference between directed and undirected graphs.
    I found some solutions to define graphs, directed graphs and undirected graphs by means of interfaces.
    [1] one interface, duplicate methods, no tagging interfaces
    public interface Graph {
        Set getOutEdges(Node node);
        int getOutDegree(Node node);
        Set getinEdges(Node node);
        int getinDegree(Node node);
        Set getSuccessors(Node node);
        Set getPredecessor(Node node);
        boolean isDirected(); // no tagging interface
    }[2] one interface, duplicate methods, tagging interfaces
    public interface Graph {
        Set getOutEdges(Node node);
        int getOutDegree(Node node);
        Set getinEdges(Node node);
        int getinDegree(Node node);
        Set getSuccessors(Node node);
        Set getPredecessor(Node node);
    public DirectedGraph extends Graph { } // tagging interface
    public UndirectedGraph extends Graph { } // tagging interface[3] three interfaces
    public interface Graph {
    public interface DirectedGraph extends Graph {
        Set getOutEdges(Node node);
        int getOutDegree(Node node);
        Set getinEdges(Node node);
        int getinDegree(Node node);
        Set getSuccessors(Node node);
        Set getPredecessor(Node node);
    public interface UndirectedGraph extends Graph {
        Set getTouchingEdges(Node node);
        int getdegree(Node node);
        Set getNeighbors(Node node);
    }In the first solution, you dont know at compile time whether a graph is directed or undirected. However, it is very elegant for algorithms, since a lot of algorithms work for directed and undirected graphs. The main disadvantage of this solution is that you have duplicate functions in case of of undirected graphs: getOutEdges and getInEdges return the same set, etc.
    The difference between the first and the second solution is that the second solutions gives a way to detect whether a graph is directed or undirected at compile-time.
    The third solution has two seperate interfaces. This is much logical, and you know the graphtype at compile-time. However, this approach might lead to bloated code, as the algoritms for undirected and directed graphs now have two graphtypes (this can ofcourse be fixed by itroducing some kind of decorator, which in fact simulates the first solution).
    As I don't have much experience in design, I can't forsee any big problems or disadvantes of one of the approaches. Therefor, I would like to ask for your opinion. What approach is most common and best practice?
    Thanks in advance.

    I would tend to go with true inheritance for this case. There is a strong ISA relationship between a graph and uni-directional and bi-directional graphs. Programming to an interface (as in the Lyskov substitution principle) will give you a parallel heirachy of interfaces and implementations. This can become a problem if you start out not knowing what interface needs to be published, but in the case of graphs this should not be a problem. With a heirachy all the shared code can be written once. In this case the specialized code will just simplify calling more general code in the parent class.
    If all your graphs fit into memory then the implemenation should not be a problem. I used to work with map data where the graph does not fit into memory. Then you have to be careful about your interface or you will be getting calls that cannot be properly optimized "behind the scenes". Another specialization is in game programming where nodes are not actually expanded until they are "arrived at". Then you have to keep information about what parts of the structure are fleshed out and which are provisional.

  • Doubt About ASM

    Hi All,
    I have some doubts about ASM.
    I have installked ASM on my linux box and created two databases which are totaly
    using ASM. I created controlfile on local file system only.
    1. Suppose I want to remove my one database. I just shut abort the database and
    remove the controlfile. Now I need to remove all files belong to DB_1 from ASM.
    I am using one single Diskgroup for both Databases. So, can not drop Diskgroup.
    Now, How can I identify files of DB_1 database ?
    2. If I create a normal redundancy diskgroup using two failgroup. It shows me total_mb
    and free_mb space as available. Whenever my database takes 1 extent of 100mb
    it reduces 200mb from free_mb column which is also understandable.
    But I am not able to figureout about col required_mirror_free_mb. What it is saying.
    I have read oracle documentation but still not able to understand.
    Can some please shed some light on this ?
    Regards,
    Js

    If you are using 10.2 then just use asmcmd .
    It is very similar to a regular Unix command prompt interface, when in fact it runs sql commands against ASM instance.
    If you are using 10.1 then you have ti run those sql commands manually.

  • Doubts about some popular function modules?

    Hi all,
    I have doubts about these function modules (see in parenthesis)
    ws_filename_get (to get the file name at ...?)
    ws_query (to get file size and environment variables from the presentation server to the ...?)
    upload and download (what are the new function modules used in place of these (I know they are obsolete now)
    what is the Object oriented equivalents of these functions?
    Thanks.
    Charles.
    ++++++++++++++++++++++++++++++++++++

    <i>(1)What is the use of ws_filename_get? Please be specific in your answer, about where the file resides: application server, presentation server or the ABAP program.</i>
    It is simply providing an interface for the user to choose a filename which resides on the frontend PC(presentation server). As suggested already, this has been replaced with FILE_OPEN_DIALOG method of the class CL_GUI_FRONTEND_SERVICES.
    <i>2)What is the use of ws_query? Please be specific in your answer, about where the file resides: application server, presentation server or the ABAP program.</i>
    Again, already answered,  this has been replace by multiple more specific methods of the same class mentioned above.
    <i>How can GUI_UPLOAD be a substitute of Upload? It is a substitute of WS_UPLOAD as upload is used to transfer data from presentation server to the ABAP program, whereas the other two are used to get it from presentation server to the application server.</i>
    They all transafer data from the presentation to your application.  They are all interchangable(in a sense), but you should be using the GUI_UPLOAD method of the class CL_GUI_FRONTEND_SERVICES.
    Regards
    Rich Heilman

  • Doubt about  a null value assigned to a String variable

    Hi,
    I have a doubt about a behavior when assigning a null value to a string variable and then seeing the output, the code is the next one:
    public static void main(String[] args) {
            String total = null;
            System.out.println(total);
            total = total+"one";
            System.out.println(total);
    }the doubt comes when i see the output, the output i get is this:
    null
    nulloneA variable with null value means it does not contains a reference to an object in memory, so the question is why the null is printed when i concatenate the total variable which has a null value with the string "one".
    Is the null value converted to string ??
    Please clarify
    Regards and thanks!
    Carlos

    null is a keyword to inform compiler that the reference contain nothingNo. 'null' is not a keyword, it is a literal. Beyond that the compiler doesn't care. It has a runtime value as well.
    total contains null value means it does not have memory,No, it means it refers to nothing, as opposed to referring to an object.
    for representation purpose it contain "null"No. println(String) has special behaviour if the argument is null. This is documented and has already been described above. Your handwaving about 'for representation purpose' is meaningless. The compiler and the JVM don't know the purpose of the code.
    e.g. this keyword shows a hash value instead of memory addressNo it doesn't: it depends entirely on the actual class of the object referred to by 'this', and specifically what its toString() method does.
    similarly "total" maps null as a literal.Completely meaningless. "total" doesn't 'map' anything, it is just a literal. The behaviour you describe is a property of the string concatenation operator, not of string literals.
    I hope you can understand this.Nobody could understand it. It is compete nonsense. The correct answer has already been given. Please read the thread before you contribute.

  • Doubt about Select statement.

    Hi folks!!
                 I have a few doubts about the select statements, it may be a silly things but its useful for me.
    what is   difference between below statment.
    1)SELECT * FROM TABLE.
    2)SELECT SINGLE * FROM TABLE
    3)SELECT SINGLE FROM TABLE.
    Hope i will get answer,thanks in advance.
    Regards
    Richie..

    Hi,
    try this and if possible use sap help.i mean place the cursor on select and press F1.
                 Types of select statements:
    1.     select * from ztxlfa1 into table it.
                 This is simple select statement to fetch all the data of db table into internal table it.
       2.   select * from ztxlfa1 into table it where lifnr between 'V2' and 'V5'.
            Thisis using where condition between v2 and v5.
      4. select * from ztxlfa1 where land1 = 'DE'. "row goes into default table work Area
      5. select lifnr land1 from ztxlfa1
            into corresponding fields of it   "notice 'table' is omitted
             where land1 = 'DE'.
              append it.
               endselect.
         Now data will go into work area. and then u will add it to internal table by     
            append statement.
      6.   Table 13.2 contains a list of the various forms of select as it is used with internal tables and their relative efficiency. They are in descending order of most-to-least efficient.
    Table 13.2  Various Forms of SELECT when Filling an Internal Table
    Statement(s)                                   Writes To
    select into table it                                    Body
    select into corresponding fields of table it   Body
    select into it                                    Header line
    select into corresponding fields of it           Header line
    7. SELECT VBRK~VBELN
           VBRK~VKORG
           VBRK~FKDAT
           VBRK~NETWR
           VBRK~WAERK
           TVKOT~VTEXT
           T001~BUKRS
           T001~BUTXT
        INTO CORRESPONDING FIELDS OF TABLE IT_FINAL
        FROM VBRK
        INNER JOIN TVKOT ON VBRKVKORG = TVKOTVKORG
        INNER JOIN T001 ON VBRKBUKRS = T001BUKRS
        WHERE VBELN IN DOCNUM AND VBRK~FKSTO = ''
       AND VBRK~FKDAT in date.
    Select statement using inner joins for vbrk and t001 and tvkot table for this case based on the conditions
    8. SELECT T001W~NAME1 INTO  TABLE IT1_T001W
    FROM T001W INNER JOIN EKPO ON T001WWERKS = EKPOWERKS
    WHERE EKPO~EBELN = PURORD.
    here selecting a single field into table it1_t001winner join on ekpo.
    9. SELECT BUKRS LIFNR EBELN FROM EKKO INTO CORRESPONDING FIELDS OF IT_EKKO WHERE     EBELN IN P_O_NO.
    ENDSELECT.
    SELECT BUTXT   FROM T001 INTO  IT_T001 FOR ALL ENTRIES IN IT_EKKO WHERE BUKRS = IT_EKKO-BUKRS.
    ENDSELECT.
    APPEND IT_T001.
    here I am using for all entries statement with select statement. Both joins and for all entries used to fetch the data on condition but for all entries is the best one.
    10. SELECT AVBELN BVTEXT AFKDAT CBUTXT ANETWR AWAERK INTO TABLE ITAB
                 FROM  VBRK AS A
                 INNER JOIN TVKOT AS B ON
                 AVKORG EQ BVKORG
                 INNER JOIN T001 AS C ON
                 ABUKRS EQ CBUKRS
                 WHERE  AVBELN IN BDOCU AND AFKSTO EQ ' ' AND B~SPRAS EQ
                 SY-LANGU
                 AND AFKDAT IN BDATE AND AVBELN EQ ANY ( SELECT VBELN FROM
                VBRP WHERE VBRP~MATNR EQ ITEMS ).
        Here we are using sub query in inner join specified in brackets.
    Thanks,
    chandu.

Maybe you are looking for

  • How do I create custom field in MDM shopping cart preview screen (srm-mdm)

    Hi Am on SRM 5.0 MDM 2.0. Requirement is 'temp labor'. i have a price form a specific supplier for a specific service is $80 in SRM_MDM internal catalog. But i talked to supplier and they have agreed on a new price of $75. After I select this catalog

  • No problems after update 3G To OS4

    Hello, I know there have been multiple posts on this topic but i wanted to post so others can see. I updated my 3G to the new OS4 and have had no problems. I think the reason for this is the fact that i did a restore from ITunes instead of just updat

  • Function module to create formula profile : Device Management/ EDM

    Hi experts! We create Formula profile against register 2 of the bi-directional device using transaction EEDM06. We create profile header by using function module "ISU_S_PROFHEAD_CREATE" but this function module doesn't have input parameter that need

  • [Table access] RFC with XML

    Hi everyone, The idea is to be able to read/write a table in the backend system (would it be R/3 or BW) from the Visual Composer. In a first attempt, I managed to do it by creating 2 RFCs: one for reading the table, another for modifying it. It works

  • Can automation plug-in gets error notification from Photoshop ?

    Hi All, Suppose I open the photoshop file(.psd) and font is missing in the layer. Photoshop shows error dialog box. Can automation plug-in get any kind of notification regarding this font missing in layer ? I want to do some stuff if font is missing