How find which method-class will be selected?

Hello sap gurus,
I have another question:
There are 2 the same methods: customer_exit_event_save, BUT in different classes.
One for the class CL_EX_BCA_PO_CUSTOMER_EXIT, another from the class ZCL_IM_BCA_PO_CUSTOMER_EXI
Not fully clear how the system decide which exactly method should be executed.
Hereby  having executed a code(see below) in one case we are executing a  method: customer_exit_event_save from the class CL_EX_BCA_PO_CUSTOMER_EXIT,
In the another case u2013 the same method customer_exit_event_save, BUT from the class ZCL_IM_BCA_PO_CUSTOMER_EXI !!!
  IF NOT g_exit_obj_cust_exit IS INITIAL.
    CALL METHOD g_exit_obj_cust_exit->customer_exit_event_save
      EXPORTING
        flt_val         = l_flt_country
        i_header        = l_str_po_hd
        i_sender        = l_str_po_snd
        i_receiver      = l_tab_po_rcv
        i_payment_note  = l_tab_po_nt
        i_item_info     = l_str_item_info
      IMPORTING
        e_header        = l_str_po_hd
        e_sender        = l_str_po_snd
        e_receiver      = l_tab_po_rcv
        e_note          = l_tab_po_nt
      EXCEPTIONS
        raised_customer = 1.
Do we have any table, where spesific method is selected?
Many thanks in advance.
Edited by: Paul Birch on Oct 16, 2008 2:50 PM

Hello,
You may execute SE24 to goto Class definition for both classes, go to methods tab and drilldown into the code of the method. Apply a break-point here in both cases and execute your main program which calls the method. Based on the break-point hit, you can decide as to which global class method was called.
Hope this helps.
Thanks,
Venu

Similar Messages

  • How to see which methods/classes are important?

    Hi Everyone,
    I am a beginner writing one of my first applications and I have a very newby question. How do I organize and manage many methods (and classes) to see which are the important ones and which are not?
    The questions arised for me because I noticed that I am a bit reluctant to introduce new helper private methods in a class, because I fear there would be too many methods and I couldn’t handle/oversee them... I know it’s probably very wrong and stupid. That’s why I would really like to put it right in me.
    So for example I create a class with a few public methods that are of course the most important part of the class. Those public methods need some more private methods that still do something important and maybe complex thing. But then I stilll need more methods to make clear code in the previous methods. Finally I end up with 20-30 methods in a supposed to be simple class. If I just look into it in Eclipse I have to scroll up and down a lot and even in the package explorer I can’t tell the importants methods apart from the rest. Is this normal?* (Please confirm it is; it would bring relief to me :))
    I thought some kind of method hierarchy shown in the package explorer and expressed in the indentation of the code would help. It would be based on the call hierarchy, but I realize that may be ambiguous. Still, do you know if there is any tool, plugin, solution for this?
    I mean something like this:
    SomeClass:
    ..-veryImportantMethod
    ....-importantMethod
    ....-imprtantMehtod2
    ........-method
    ........-method2
    ........-method3
    ............-reallyNotImportanMethod
    The same thing goes for classes. I start with a few important ones and introduce many less important later. I guess I can’t organize them into different packages based on importance because packages are not for that. It’s just looks strange for me to see a small unimportant helper class opened in the tab next to my main delagator class. (I'm not sure I know correclty what delegator means but that's not important at the moment :))
    I am really just a beginner (needless to say probably :)) but I think it would be easier to intellectually manage the code if there would be some importance hierarchy. It doesn’t even have to be unambiguous as it would only be a way to display the code by the IDE; it wouldn’t affect the program in any way.
    If you have any comments about why this whole thing is not important “because when you write your code..... “ or why I am totally lost and wrong here; I would really appreciate that as well :)
    Thanks in advance,
    lemonboston

    lemonboston wrote:
    Hi Everyone,
    I am a beginner writing one of my first applications and I have a very newby question. How do I organize and manage many methods (and classes) to see which are the important ones and which are not?
    The questions arised for me because I noticed that I am a bit reluctant to introduce new helper private methods in a class, because I fear there would be too many methods and I couldn’t handle/oversee them... I know it’s probably very wrong and stupid. That’s why I would really like to put it right in me.
    So for example I create a class with a few public methods that are of course the most important part of the class. Those public methods need some more private methods that still do something important and maybe complex thing. But then I stilll need more methods to make clear code in the previous methods. Finally I end up with 20-30 methods in a supposed to be simple class. If I just look into it in Eclipse I have to scroll up and down a lot and even in the package explorer I can’t tell the importants methods apart from the rest. Is this normal?* (Please confirm it is; it would bring relief to me :))
    I thought some kind of method hierarchy shown in the package explorer and expressed in the indentation of the code would help. It would be based on the call hierarchy, but I realize that may be ambiguous. Still, do you know if there is any tool, plugin, solution for this?
    I mean something like this:
    SomeClass:
    ..-veryImportantMethod
    ....-importantMethod
    ....-imprtantMehtod2
    ........-method
    ........-method2
    ........-method3
    ............-reallyNotImportanMethod
    The same thing goes for classes. I start with a few important ones and introduce many less important later. I guess I can’t organize them into different packages based on importance because packages are not for that. It’s just looks strange for me to see a small unimportant helper class opened in the tab next to my main delagator class. (I'm not sure I know correclty what delegator means but that's not important at the moment :))
    I am really just a beginner (needless to say probably :)) but I think it would be easier to intellectually manage the code if there would be some importance hierarchy. It doesn’t even have to be unambiguous as it would only be a way to display the code by the IDE; it wouldn’t affect the program in any way.
    If you have any comments about why this whole thing is not important “because when you write your code..... “ or why I am totally lost and wrong here; I would really appreciate that as well :)
    Thanks in advance,
    lemonbostonI think you would benefit from this http://en.wikipedia.org/wiki/Domain-driven_design

  • Which method is better, the SELECT .. CURSOR(.. , or the Queries in loop

    I have a table t1, this table has 1 to many relation with
    tables t2,t3. t2,t3 do not have any direct relation with eachother.
    I have to read all data in all tables, what do you prefer
    from the following. I am using 10g release 2 but if there
    is some better way in 11g I can go for it also.
    Also generalize this for t2,t3,t4,t5,... etc.
    Method 1.
    FOR i in (SELECT * FROM T1) LOOP
    FOR j in (SELECT * FROM t2 WHERE t2.x=t1.x)LOOP
    ...process data...
    END LOOP
    FOR k in (SELECT * FROM t3 WHERE t3.x=t1.x)LOOP
    ...process data...
    END LOOP
    END LOOP;
    Method 2
    FOR i in
    (SELECT t1.*,
    CURSOR(select * from t2 where t2.x=t1.x),
    CURSOR(select * from t3 where t3.x=t1.x)
    FROM t1) LOOP
    ... process data...
    END LOOP
    Which one will be the faster and why.
    Thanks

    Your question is meaningless.
    Why? Because...
    > There is no way to join all these 3 tables correctly, because joining will
    produce reduandant rows.
    and...
    > its impossible to join all three tables here
    and then you show Method 1 and 2 as options.
    Guess what.
    You have coded a nested loop join in both!
    So just what makes your hack of a join in PL/SQL so much superior than an "impossible" nested loop join in SQL?
    Your problem is not joining.. it is conceptual and design fundamentals. Your approach says that the problem should be approached by discarding the fundamental concept of joining data in a RDBMS.. and thinking of row-by-row slow-by-slow serialised processing.
    Join. Use parallel processing. Either PQ or self-rolled via PL/SQL. There are loads of tools in the Oracle toolbox to address this type of problem.
    Message was edited by:
    Billy Verreynne

  • Help Determining Which Methods/Classes Are Being Used

    Hello,
    I'm having issues with my company's Java application and because I've luckily narrowed the classes down to a meager 30+ I need some help pinpointing my problem.
    I realize there are a lot of Java monitoring applets/applications and some are deployment-specific but I need something very detailed-- I haven't found the features I need.
    Specs:
    Jrun4, Java 1.4, Windows Server 2003
    I would like to have a monitor that tells me exactly (real-time) what classes, methods, variables, etc. are being called in real-time. Looking at the JRun launcher console for one process gives me this:
    Generating report:quadbase.reportdesigner.ReportAPI.QbReport with export type:PDF
    01/16 14:05:33 error Software caused connection abort: socket write error
    java.net.SocketException: Software caused connection abort: socket write error
            at java.net.SocketOutputStream.socketWrite0(Native Method)
            at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
            at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
            at jrun.servlet.io.MetricsOutputStream.write(MetricsOutputStream.java:75)
            at java.io.BufferedOutputStream.write(BufferedOutputStream.java:106)
            at jrun.servlet.http.WebOutputStream.write(WebOutputStream.java:64)
            at jrun.servlet.file.FileServlet.pipeData(FileServlet.java:419)
            at jrun.servlet.file.FileServlet.service(FileServlet.java:254)
            at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:91)
            at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)This is cute, but not really helpful. I would like to determine what was passed to the process, from where and what went wrong.
    For example,
    Instead of this:
    Generating report:quadbase.reportdesigner.ReportAPI.QbReport with export type:PDF
    01/16 14:05:33 error Software caused connection abort: socket write errorI would get something like this:
    Generating report:quadbase.reportdesigner.ReportAPI.QbReport with export type:PDF
            Page variables: test.jsp ($var1= "I'm"; $var2= "Going"; $var3="To"; $var4="Break"; $var5 = null)
            Calling: test2.jsp
            With: jrun.bin.db.foo.Bar();
    01/16 14:05:33 error Software caused connection abort: socket write error
            Problem: $var5 = null;Sorry if I'm rambling, I just want to know what is where and who it's calling when it breaks. Then I could deduce which class, what variable, what page, etc. My application is very complicated and seemingly mundane changes can throw it all off.
    Any ideas?

    We'll look into usage tracking. We're on the standard edition, so I'm not sure if it's available. Also, some of these reports may be quarterly -- so there may be a long wait to see if the view is used and I need to know fairly soon. (If it's not used, it saves us some work in a project transition going on.)
    I certainly don't understand the underlying structure of the product, but it seems like there should be some way to determine if a view is used by a report. I apologize if I'm not using the correct terminology. Thanks for your help -- we'll keep looking into it.

  • In LSMW which method is exactly suits for Master Recipe Creation (TC-C201)

    Hi All,
    I am unable to find which method suits for Master Recipe Creation in LSMW.
    Please send me in detail if any method suits.
    Can any body help me in this.
    Points will be awarded for correct answer which helps me come out of this problem.
    Regards,
    Shobha

    Hi shobha,
    if  there is code u have to do before uploading go for BDC or BAPI,
    it not go for LSMW (recording method) --> in this its very difficult to code.
    Thanks

  • Which method of SSLServerSocket implement HelloRequest

    In the HandShake Protocol, there is a HelloRequest where it allows server to ask a client to restart the SSL handshake negotiation.
    I cannot find which method in SSLServerSocket that implement this. Guys, any ideas?

    SSLServerSocket creates a SSLSocket in server mode, this is the object that does the SSL/TLS protocol. You want SSLSocket.startHandshake(); (or is it beginHandshake()?).

  • The dreaded "could not find the Main Class, Program will exit", how?

    Hello all,
    I am trying to run my .jar file and I get this error message.
    I want to mention I googled and searched for it, without success: There is so many different explanations!
    I tried this:
    Adding some lines in a manifest.fm file...
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    X-COMMENT: Main-Class will be added automatically by build
    I have Netbeans 5.5.
    Also I noticed my "build.xml" file is empty" and my "manifest.fm" nearly empty. I have also added "project, main class" in the options...
    Here is my "build":
    {code}<?xml version="1.0" encoding="UTF-8"?>
    <!-- You may freely edit this file. See commented blocks below for -->
    <!-- some examples of how to customize the build. -->
    <!-- (If you delete it and reopen the project it will be recreated.) -->
    <project name="BetaCourseworkJava3d_Final" default="default" basedir=".">
    <description>Builds, tests, and runs the project BetaCourseworkJava3d_Final.</description>
    <import file="nbproject/build-impl.xml"/>
    <!--
    There exist several targets which are by default empty and which can be
    used for execution of your tasks. These targets are usually executed
    before and after some main targets. They are:
    -pre-init: called before initialization of project properties
    -post-init: called after initialization of project properties
    -pre-compile: called before javac compilation
    -post-compile: called after javac compilation
    -pre-compile-single: called before javac compilation of single file
    -post-compile-single: called after javac compilation of single file
    -pre-compile-test: called before javac compilation of JUnit tests
    -post-compile-test: called after javac compilation of JUnit tests
    -pre-compile-test-single: called before javac compilation of single JUnit test
    -post-compile-test-single: called after javac compilation of single JUunit test
    -pre-jar: called before JAR building
    -post-jar: called after JAR building
    -post-clean: called after cleaning build products
    (Targets beginning with '-' are not intended to be called on their own.)
    Example of inserting an obfuscator after compilation could look like this:
    <target name="-post-compile">
    <obfuscate>
    <fileset dir="${build.classes.dir}"/>
    </obfuscate>
    </target>
    For list of available properties check the imported
    nbproject/build-impl.xml file.
    Another way to customize the build is by overriding existing main targets.
    The targets of interest are:
    -init-macrodef-javac: defines macro for javac compilation
    -init-macrodef-junit: defines macro for junit execution
    -init-macrodef-debug: defines macro for class debugging
    -init-macrodef-java: defines macro for class execution
    -do-jar-with-manifest: JAR building (if you are using a manifest)
    -do-jar-without-manifest: JAR building (if you are not using a manifest)
    run: execution of project
    -javadoc-build: Javadoc generation
    test-report: JUnit report generation
    An example of overriding the target for project execution could look like this:
    <target name="run" depends="BetaCourseworkJava3d_TestsBACKUPSUNDAY05April-impl.jar">
    <exec dir="bin" executable="launcher.exe">
    <arg file="${dist.jar}"/>
    </exec>
    </target>
    Notice that the overridden target depends on the jar target and not only on
    the compile target as the regular run target does. Again, for a list of available
    properties which you can use, check the target you are overriding in the
    nbproject/build-impl.xml file.
    -->
    </project>
    {code}
    my Manifest:
    {code}Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    X-COMMENT: Main-Class will be added automatically by build
    {code}
    And my whole code (although I have like 4 .JAVA files in my project):
    {code}
    package courseworkjava3d;
    import java.awt.*;
    import java.awt.event.*;
    import com.sun.j3d.utils.geometry.*;
    import com.sun.j3d.utils.universe.*;
    import javax.swing.*;
    import javax.media.j3d.*;
    import javax.vecmath.*;
    import javax.media.j3d.PositionPathInterpolator;
    import javax.media.j3d.Alpha;
    import javax.media.j3d.BoundingSphere;
    import com.sun.j3d.utils.applet.MainFrame;
    import java.applet.Applet;
    import java.awt.event.WindowAdapter;
    import javax.swing.Timer;
    import com.sun.j3d.utils.image.*;
    public class Simple3D extends JFrame implements ActionListener, KeyListener
    private TransformGroup objTransxx;
    private Button go = new Button("Press to start the Bouncing Ball. Press A and S to move the ball Left and Right once it started!");
    private Transform3D transxx = new Transform3D();
    private float height=0.0f;
    private float sign = 1.0f; // aller vers le haut ou vers le bas
    private Timer timer;
    private float xloc=-2.25f;
    public Simple3D()
    setSize(800, 800);
    GraphicsConfiguration graphicsConfig = SimpleUniverse.getPreferredConfiguration();
    Canvas3D canvas = new Canvas3D(graphicsConfig);
    getContentPane().add("Center", canvas);
    BasicUniverse universe = new BasicUniverse(canvas, 8.0f);
    // Rotate the view platform by PI/4 radians about X in the BasicUniverse
    TransformGroup viewTransform = universe.getViewPlatformTransform();
    Transform3D transform = new Transform3D();
    transform.rotX(-Math.PI / 4.0);
    Transform3D currentTransform = new Transform3D();
    viewTransform.getTransform(currentTransform);
    transform.mul(currentTransform);
    viewTransform.setTransform(transform);
    // Add something to display
    BranchGroup scene = createCubeGraph();
    universe.addBranchGraph(scene);
    /* //ultra important! comment theses lines otherwise it bugs!
    //Merde
    setLayout(new BorderLayout());
    GraphicsConfiguration config =
    SimpleUniverse.getPreferredConfiguration();
    Canvas3D c = new Canvas3D(config); */
    add("Center", canvas);
    //i messed up te code, i replaced canvas c by "canvas" as i already had one!
    canvas.addKeyListener(this);
    timer = new Timer(75,this);
    //timer.start();
    Panel p =new Panel();
    p.add(go);
    add("North",p);
    go.addActionListener(this);
    go.addKeyListener(this);
    // Cr�er une sc�ne simple et l�ajouetr � l�univers
    //BranchGroup scene2 = createCubeGraph();
    //SimpleUniverse u = new SimpleUniverse(c);
    //u.getViewingPlatform().setNominalViewingTransform();
    //u.addBranchGraph(scene2);
    //End Merde
    public BranchGroup createCubeGraph() {
    BranchGroup Humanoid = new BranchGroup();
    //Debut Ball REBOUND
    // Create the root of the branch graph
    //BranchGroup objRoot = new BranchGroup();
    objTransxx = new TransformGroup();
    objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    Humanoid.addChild(objTransxx);
    // Cr�er une forme simple et l�ajouter au graph de sc�ne
    Sphere spherex = new Sphere(0.85f);
    objTransxx = new TransformGroup();
    objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    Transform3D pos1 = new Transform3D();
    pos1.setTranslation(new Vector3f(-2.0f,0.0f,-2.0f));
    objTransxx.setTransform(pos1);
    objTransxx.addChild(spherex);
    Humanoid.addChild(objTransxx);
    BoundingSphere boundsx =
    new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
    // I messed up the colors: I have applied 2 times some colorslights to the same BranchGroup
    Color3f light1Colorx = new Color3f(1.0f, 1.0f, 1.0f);
    Vector3f light1Directionx = new Vector3f(4.0f, -7.0f, -12.0f);
    DirectionalLight light1x
    = new DirectionalLight(light1Colorx, light1Directionx);
    light1x.setInfluencingBounds(boundsx);
    Humanoid.addChild(light1x);
    // R�gler la lumi�re ambiante
    Color3f ambientColorx = new Color3f(1.0f, 1.0f, 1.0f);
    AmbientLight ambientLightNodex = new AmbientLight(ambientColorx);
    ambientLightNodex.setInfluencingBounds(boundsx);
    Humanoid.addChild(ambientLightNodex);
    // END BallRebound
    // Apparence BODY
    // Configurer les couleurs
    Color3f blackbody = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitebody = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redbody = new Color3f(0.8f, .85f, .85f);
    // Configurer la texture
    //if I want it in Black and white i need to replace RGB by LUMINANCE
    TextureLoader loaderbody = new TextureLoader("C:\\java3d\\body.jpg", "RGB", new Container());
    Texture texturebody = loaderbody.getTexture();
    texturebody.setBoundaryModeS(Texture.WRAP);
    texturebody.setBoundaryModeT(Texture.WRAP);
    texturebody.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrbody = new TextureAttributes();
    texAttrbody.setTextureMode(TextureAttributes.MODULATE);
    Appearance apbody = new Appearance();
    apbody.setTexture(texturebody);
    apbody.setTextureAttributes(texAttrbody);
    //Configurer le mat�riau
    apbody.setMaterial(new Material(redbody, blackbody, redbody, blackbody, 1.0f));
    // Cr�er une sph�re pour y appliquer les textures
    int primflagsbody = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    // End Apparence BODY
    // Apparence BODYHEAD
    // Configurer les couleurs
    Color3f blackbodyH = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitebodyH = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redbodyH = new Color3f(0.8f, .85f, .85f);
    // Configurer la texture
    //if I want it in Black and white i need to replace RGB by LUMINANCE
    TextureLoader loaderbodyH = new TextureLoader("C:\\java3d\\head.jpg", "RGB", new Container());
    Texture texturebodyH = loaderbodyH.getTexture();
    texturebodyH.setBoundaryModeS(Texture.WRAP);
    texturebodyH.setBoundaryModeT(Texture.WRAP);
    texturebodyH.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrbodyH = new TextureAttributes();
    texAttrbodyH.setTextureMode(TextureAttributes.MODULATE);
    Appearance apbodyH = new Appearance();
    apbodyH.setTexture(texturebodyH);
    apbodyH.setTextureAttributes(texAttrbodyH);
    //Configurer le mat�riau
    apbodyH.setMaterial(new Material(redbodyH, blackbodyH, redbodyH, blackbodyH, 1.0f));
    // Cr�er une sph�re pour y appliquer les textures
    int primflagsbodyH = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    // End Apparence BODY HEAD
    //for the trunk c le corps
    TransformGroup fortheTrunk = new TransformGroup();
    //will allow to modify object wgile executing
    fortheTrunk.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlpha2=new Alpha(-1,9000);
    //behviour for our rotation
    RotationInterpolator rotator2= new RotationInterpolator(rotationAlpha2,fortheTrunk);
    // area where rotation will be
    BoundingSphere bounds2=new BoundingSphere();
    rotator2.setSchedulingBounds(bounds2);
    fortheTrunk.addChild(rotator2);
    //end of rtotation
    Alpha transAlphahuman=new Alpha(-1,600);
    //transform 3d trans for the interpolatipon HUMANOID
    Transform3D transhumanoid=new Transform3D();
    //matrix for 2positions
    Point3f[] cheminhuman=new Point3f[3];
    cheminhuman[0]=new Point3f(0.8f,0.0f,0.0f);
    cheminhuman[1]=new Point3f(-0.8f,0.0f,0.0f);
    cheminhuman[2]=new Point3f(0.8f,0.0f,0.0f);
    //matrix of floats to make the dots match with timeline
    float[] timePositionhuman={0.0f,0.50f,1.0f};
    PositionPathInterpolator interpolhuman=new PositionPathInterpolator(transAlphahuman,fortheTrunk,transhumanoid,timePositionhuman,cheminhuman);
    BoundingSphere bounds4=new BoundingSphere();
    interpolhuman.setSchedulingBounds(bounds4);
    fortheTrunk.addChild(interpolhuman);
    //add the trunk to the branchgroup
    Humanoid.addChild(fortheTrunk);
    TransformGroup zeTrunk = new TransformGroup();
    zeTrunk.addChild(new com.sun.j3d.utils.geometry.Box(.55f,.80f,.50f,
    primflagsbody,apbody));
    //t3D for the head= bouge up
    Transform3D T3DHead = new Transform3D();
    T3DHead.set(new Vector3f(0f,1.1f,0f));
    //create a tranform group for this t3Dhead
    TransformGroup fortheHead = new TransformGroup();
    fortheHead.setTransform(T3DHead);
    //add the box head
    //fortheHead.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.10f, primflagsbody,apbody));
    fortheHead.addChild(new com.sun.j3d.utils.geometry.Sphere(0.35f,primflagsbodyH,apbodyH));
    /* I dont need that anymore it was for putting a flat texture on a face. I chose a sphere instead!
    //transform 3D for the face
    Transform3D T3DFace = new Transform3D();
    T3DFace.set(new Vector3f(0f,0f,.14f));
    //create a TransformGroup for this Face
    TransformGroup Face = new TransformGroup();
    Face.setTransform(T3DFace);
    //add the child box to the face;
    Face.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.2f,
    primflagsbodyH,apbodyH));
    //add this face to the head as a child
    fortheHead.addChild(Face);
    //tranform3d left arm
    Transform3D T3DArmL = new Transform3D();
    T3DArmL.set(new Vector3f(-0.79f,0.73f,0f));
    //create Tranform Group for the leftarm
    TransformGroup fortheArmL = new TransformGroup();
    fortheArmL.setTransform(T3DArmL);
    //add the group for upperarm
    TransformGroup ArmL = new TransformGroup();
    ArmL.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f,
    primflagsbody,apbody));
    fortheArmL.addChild(ArmL);
    //create a transform3D for the forearmleft
    Transform3D T3DForearmL = new Transform3D();
    T3DForearmL.set(new Vector3f(-.51f,0f,0f));
    //create the tranformgroup for the forearmleft
    TransformGroup ForearmL = new TransformGroup();
    ForearmL.setTransform(T3DForearmL);
    //add the child box to forearm
    ForearmL.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f,
    primflagsbody,apbody));
    ArmL.addChild(ForearmL);
    //create transform 3d for the lefthand
    Transform3D T3DHandL = new Transform3D();
    T3DHandL.set(new Vector3f(-.42f,0f,0f));
    //create the child tranform group for the box of the hand
    TransformGroup HandL= new TransformGroup();
    HandL.setTransform(T3DHandL);
    //add the child hand to the forearm
    ForearmL.addChild(HandL);
    //create the box for the handLeft
    HandL.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.140f,.10f,
    primflagsbody,apbody));
    //Right Arm
    //tranform3d right arm
    Transform3D T3DArmR = new Transform3D();
    T3DArmR.set(new Vector3f(0.79f,0.73f,0f));
    //create Tranform Group for the right arm
    TransformGroup fortheArmR = new TransformGroup();
    fortheArmR.setTransform(T3DArmR);
    //add the group for upperarm right
    TransformGroup ArmR = new TransformGroup();
    ArmR.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f, primflagsbody,apbody));
    //com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    fortheArmR.addChild(ArmR);
    //create a transform3D for the forearmright
    Transform3D T3DForearmR = new Transform3D();
    T3DForearmR.set(new Vector3f(.51f,0f,0f));
    //create the tranformgroup for the forearmright
    TransformGroup ForearmR = new TransformGroup();
    ForearmR.setTransform(T3DForearmR);
    //add the child box to forearmright
    ForearmR.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f, primflagsbody,apbody));
    ArmR.addChild(ForearmR);
    //create transform 3d for the righthand
    Transform3D T3DHandR = new Transform3D();
    T3DHandR.set(new Vector3f(.42f,0f,0f));
    //create the child tranform group for the box of the hand
    TransformGroup HandR= new TransformGroup();
    HandR.setTransform(T3DHandR);
    //add the child hand to the forearmright
    ForearmR.addChild(HandR);
    //create the box for the handright
    HandR.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.14f,.10f, primflagsbody,apbody));
    //Left Leg
    //tranform3d left leg
    Transform3D T3DLegL = new Transform3D();
    T3DLegL.set(new Vector3f(0.43f,-1.23f,0f));
    //create Tranform Group for the leftleg
    TransformGroup fortheLegL = new TransformGroup();
    fortheLegL.setTransform(T3DLegL);
    //add the group for uppeleg
    TransformGroup LegL = new TransformGroup();
    LegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
    fortheLegL.addChild(LegL);
    //create a transform3D for the downlegleft
    Transform3D T3DDownLegL = new Transform3D();
    T3DDownLegL.set(new Vector3f(0f,-.70f,0f));
    //create the tranformgroup for the downegleft
    TransformGroup DownLegL = new TransformGroup();
    DownLegL.setTransform(T3DDownLegL);
    //add the child box to downlegm
    DownLegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
    LegL.addChild(DownLegL);
    //create transform 3d for the leftfeet
    Transform3D T3DFeetL = new Transform3D();
    T3DFeetL.set(new Vector3f(.0f,-.45f,0f));
    //create the child tranform group for the box of thefeet
    TransformGroup FeetL= new TransformGroup();
    FeetL.setTransform(T3DFeetL);
    //add the child hand to the downleg
    DownLegL.addChild(FeetL);
    //create the box for the feetLeft
    FeetL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
    //Right Leg
    //tranform3dright leg
    Transform3D T3DLegR = new Transform3D();
    T3DLegR.set(new Vector3f(-0.43f,-1.23f,0f));
    //create Tranform Group for the righttleg
    TransformGroup fortheLegR = new TransformGroup();
    fortheLegR.setTransform(T3DLegR);
    //add the group for uppelegR
    TransformGroup LegR = new TransformGroup();
    LegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
    fortheLegR.addChild(LegR);
    //create a transform3D for the downlegright
    Transform3D T3DDownLegR = new Transform3D();
    T3DDownLegR.set(new Vector3f(0f,-.70f,0f));
    //create the tranformgroup for the downegright
    TransformGroup DownLegR = new TransformGroup();
    DownLegR.setTransform(T3DDownLegR);
    //add the child box to downlegRight
    DownLegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
    LegR.addChild(DownLegR);
    //create transform 3d for the rightfeet
    Transform3D T3DFeetR = new Transform3D();
    T3DFeetR.set(new Vector3f(.0f,-.45f,0f));
    //create the child tranform group for the box of thefeetright
    TransformGroup FeetR= new TransformGroup();
    FeetR.setTransform(T3DFeetR);
    //add the child feet right to the downleg
    DownLegR.addChild(FeetR);
    //create the box for the feetright
    FeetR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
    //rajoute la box zetrunk et des fils
    fortheTrunk.addChild(zeTrunk);
    fortheTrunk.addChild(fortheHead);
    fortheTrunk.addChild(fortheArmL);
    fortheTrunk.addChild(fortheArmR);
    fortheTrunk.addChild(fortheLegL);
    fortheTrunk.addChild(fortheLegR);
    //DEBUT CUBE
    //beginning of rotation
    TransformGroup objSpin=new TransformGroup();
    //create transform 3d for box which spin
    Transform3D T3DobjSpin = new Transform3D();
    T3DobjSpin.set(new Vector3f(-2.50f,.45f,0f));
    //create the child tranform group for the box which spin
    objSpin.setTransform(T3DobjSpin);
    //will allow to modify object while executing
    objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlpha=new Alpha(-1,900);
    Alpha transAlpha=new Alpha(-1,900);
    //transform 3d trans for the interpolatipon
    Transform3D trans=new Transform3D();
    //matrix for 2positions
    Point3f[] chemin=new Point3f[3];
    chemin[0]=new Point3f(-2.8f,0.40f,1.0f);
    chemin[1]=new Point3f(-0.8f,0.40f,1.0f);
    chemin[2]=new Point3f(-2.8f,0.40f,1.0f);
    //matrix of floats to make the dots match with timeline
    float[] timePosition={0.0f,0.50f,1.0f};
    PositionPathInterpolator interpol=new PositionPathInterpolator(transAlpha,objSpin,trans,timePosition,chemin);
    BoundingSphere bounds3=new BoundingSphere();
    interpol.setSchedulingBounds(bounds3);
    objSpin.addChild(interpol);
    //behviour for our rotation
    RotationInterpolator rotator= new RotationInterpolator(rotationAlpha,objSpin);
    // area where rotation will be
    BoundingSphere bounds=new BoundingSphere();
    rotator.setSchedulingBounds(bounds);
    objSpin.addChild(rotator);
    //end of rtotation
    //add transform group objspin to branchgroup humanoid
    Humanoid.addChild(objSpin);
    //test a cube which heritate of this rotation?
    objSpin.addChild(new ColorCube(0.25));
    //test
    //module cube + transparency
    // create an ALPHA transparency apparence (invisible)
    Appearance app0x=new Appearance();
    app0x.setColoringAttributes(new ColoringAttributes(new Color3f(0.3f,0.2f,1.0f),ColoringAttributes.SHADE_GOURAUD));
    app0x.setTransparencyAttributes(new TransparencyAttributes(TransparencyAttributes.NICEST,0.5f));//0.5f represente 50% de transparence
    // create the blue sphere which rotate
    Transform3D transsphere=new Transform3D();
    transsphere.set(new Vector3f(0.0f, -0.1f, 0.3f));
    TransformGroup TGsphere=new TransformGroup(transsphere);
    TGsphere.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    objSpin.addChild(TGsphere);
    //objRotatecube.addChild(TGsphere);
    TGsphere.addChild( new Sphere(0.3f,app0x) );
    //End Module Cube + Transparency
    //END CUBE
    //DEBUT WHOLE BIRD
    //beginning of Rotation for Bird
    TransformGroup Bird=new TransformGroup();
    //will allow to modify object while executing
    Bird.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    //alpha rotation time related
    Alpha rotationAlphaBird=new Alpha(-1,400);
    Alpha transAlphaBird=new Alpha(-1,5990);
    //transform 3d trans for the interpolatipon
    Transform3D transBird=new Transform3D();
    //create transform 3d for the Bird
    transBird.set(new Vector3f(1.90f,-.45f,0.9f));
    //create the child tranform group for the Bird Box
    Bird.setTransform(transBird);
    //matrix for 2positions
    Point3f[] cheminBird=new Point3f[3];
    cheminBird[0]=new Point3f(1.95f,0.0f,-6.8f);
    cheminBird[1]=new Point3f(1.95f,0.90f,-0.8f);
    cheminBird[2]=new Point3f(1.95f,0.0f,5.8f);
    //matrix of floats to make the dots match with timeline
    float[] timePositionBird={0.00f,0.50f,1.0f};
    PositionPathInterpolator interpolBird=new PositionPathInterpolator(transAlphaBird,Bird,transBird,timePosition,cheminBird);
    BoundingSphere bounds3Bird=new BoundingSphere();
    //BoundingSphere bounds3Bird= new BoundingSphere(new Point3d(0.0, 0.0, -50.0), 0.5);
    interpolBird.setSchedulingBounds(bounds3Bird);
    Bird.addChild(interpolBird);
    //behviour for our rotation
    RotationInterpolator rotatorBird= new RotationInterpolator(rotationAlphaBird,Bird);
    // area where rotation will be
    BoundingSphere boundsBird=new BoundingSphere();
    rotatorBird.setSchedulingBounds(boundsBird);
    Bird.addChild(rotatorBird);
    //end of rotation For Bird
    //add transform group objspin to branchgroup humanoid
    Humanoid.addChild(Bird);
    //debut test APPARENCE Wing Left
    //test textures
    // Configurer les couleurs
    Color3f blackx = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f whitex = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f redx = new Color3f(0.7f, .75f, .75f);
    // Configurer la texture
    TextureLoader loaderx = new TextureLoader("C:\\java3d\\pois.jpg", "RGB", new Container());
    Texture texturex = loaderx.getTexture();
    texturex.setBoundaryModeS(Texture.WRAP);
    texturex.setBoundaryModeT(Texture.WRAP);
    texturex.setBoundaryColor( new Color4f( 0.0f, 1.0f, 0.0f, 0.0f ) );
    // Configurer les attributs de la texture
    // Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
    TextureAttributes texAttrx = new TextureAttributes();
    texAttrx.setTextureMode(TextureAttributes.REPLACE);
    Appearance apx = new Appearance();
    apx.setTexture(texturex);
    apx.setTextureAttributes(texAttrx);
    //Configurer le mat�riau
    apx.setMaterial(new Material(redx, blackx, redx, blackx, 1.0f));
    int primflagsx = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
    //End test APPARENCE Wing Left
    //test a cube which heritate of this rotation?
    // Bird.addChild(new ColorCube(0.8));
    //test bird body
    // Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f,
    // com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f, primflagsx,apx));
    //test WingRightBird
    //create a transform3D for the BirdWIngR
    Transform3D T3DBirdWingR = new Transform3D();
    T3DBirdWingR.set(new Vector3f(0.45f,.0f,-0.35f));
    //create the tranformgroup for the BirdWIngR
    TransformGroup BirdWingR = new TransformGroup();
    BirdWingR.setTransform(T3DBirdWingR);
    //add the child box to BirdWIngR
    // BirdWingR.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f,
    // com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
    //End test WingRightBird
    ////////comments/////////
    //beginning of Rotating WINR
    //----------------------d�but de la cr�ation de la rotation--------------------------------
    TransformGroup WinRSpin=new TransformGroup();
    // permet de modifier l'objet pendant l'execution
    WinRSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
    // on cr�e un fonction de rotation au cours du temps
    Alpha rotationAlphaWinRSpin=new Alpha(-1,1000);
    Transform3D rot = new Transform3D();
    rot.rotX((float)Math.PI/- 2.0f);
    //rot.rotX(-45);
    //rot.rotX((-Math.PI / 4.0)+30);
    //rot.rotZ((-Math.PI / 4.0));
    //rot.rotX(-Math.PI / 4.0);
    //rot.rotY(-Math.PI / 4.0);
    // rot.rotZ(-Math.PI / 4.0);
    // rot.rotY(00);
    //rot.rotZ(45);
    // on cr�e un comportement qui va appliquer la rotation � l'objet voulu
    // on d�finit la zone sur laquelle va s'appliquer la rotation
    //RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 0.50f,(float)(2.0*Math.PI));
    RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 25,26);
    BoundingSphere boundsWinRSpin=new BoundingSphere(new Point3d((Math.PI / 4.0), 0.0, 0.0), 0.5);
    // boundsWinRSpin.setCenter(new Point3d((Math.PI / 4.0),0,0));
    boundsWinRSpin.setCenter(new Point3d(-10,0,0));
    //boundsWinRSpin.setCenter();
    //test put a t3d to a boundingsphere??
    //Transform3D T3Dbounding = new Transform3D();
    // T3Dbounding.set(new Vector3f(5.00f,0.0f,0.00f));
    //WinRSpin.setTransform(T3Dbounding);
    //end test put a t3d to a boundingsphere, not working
    rotatorWinRSpin.setSchedulingBounds(boundsWinRSpin);
    // test BoundingSphere of BODY BIRD rotatorWinRSpin.setSchedulingBounds(boundsBird);
    WinRSpin.addChild(rotatorWinRSpin);
    //----------------------End de la cr�ation de la rotation--------------------------------
    BirdWingR.addChild(WinRSpin);
    // on cree un cube qui h�rite de la rotation
    //WinRSpin.addChild(new ColorCube(0.5));// de rayon 50 cm
    WinRSpin.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f, primflagsx,apx));
    //End of Rotating WINR
    //////// END comments/////////
    //I commented the following, that was the TEST sinusoidal, rotation which help me understood how to rotate wingR
    // -----------d�but de cr�ation de la rotation--------------------------------------------------
    TransformGroup objSpinxx=new TransformGroup();
    // permet de modifier l'objet pendant l'execution
    objSpinxx.setCapability(TransformGroup.ALL

    Thank you very much!
    I cant believe this little comment has been so helpful!
    But yes it is:
    I explain, despite my efforts to find, googled it, forums, faqs, etc...
    no where it mentionned the manifest.fm file is... INSIDE the .jar!
    Your comment "a zip" made me attempt to open it with winrar, and I found a manifest.fm file inside!
    So far I was editing the one at the "source" of my project and rebuilding it with netbeans.
    I am going to try that now.
    Actually.... :( no its mentionning my main class!
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.0
    Created-By: 10.0-b19 (Sun Microsystems Inc.)
    Main-class: courseworkjava3d.Simple3D
    Class-Path:
    X-COMMENT: Main-Class will be added automatically by buildWell I have no problems uploading you the .jar, it is for a coursework it is not a private project or whatever:
    http://www.uploading.com/files/CM2LKWYU/BetaCourseworkJava3d_Final.jar.html
    Oh and I felt on your comment "dont ask us" as if I was suppose to know... i'm a beginner, I did not know that! And I tried to give you so many infos so you dont lose your time if you want to help, especially as after my own research I found many, many results for this "main class" and I tried a few solutions!
    Edited by: CupofTea on Apr 13, 2008 3:28 AM

  • How to find out in program which all classes have implemented an interface

    Hello,
    I have created an interface and few classes are implementing the interface.
    I want to know in a program which all class have implemented the interface.
    Is it possible to find it out and how?
    Regards,
    Bikash.

    Hi Bikash,
    Read the Database view VSEOIMPLEM with where condition REFCLSNAME = Interface Name and version = 1.
    This would give you all the classes which have implemented the interface and are active...
    If you want to look at the values that the field version can have then see Type Group SEOC ans search for version....
    Hope this help...
    Regards,
    Sitakant

  • How will decide which method is suitable for uploading data

    Hi,
    How will you decide which method is suitable for uploading data

    Hi,
    <li>If you haver very few records, even entering manually is also an option.
    <li>In most cases where we need more than 20,000 records , BAPI or Direct input would be the fastest. Here error handling is tough here.
    <li>You can use BDC(Session and Call transaction methods), where we can write code to identify error records, if you get error records, those can be reprocessed.
    Thanks
    Venkat.O

  • How do you find out which plugins firefox will install BEFORE you click 'install missing plugins'?

    How do I determine which plugins firefox will install BEFORE I click 'install missing plugins'?
    I don't just want to install some unknown plugins. Isn't there a way to determine the plugins that firefox will isntall? Can't it present me with a list of plugins that is going to be installed, before I click the button?

    Did you look in the Windows Control Panel > Add / Remove Programs?
    http://www.uninstallreview.com/Browsers/how-to-uninstall-Keep-Tube-for-Firefox_7005.html

  • How to call methods defined in another class ? is it possible?

    Hi all,
    I am new to using JNI, was wondering if this is possible and how I might be able to do this. I'm trying to call some set/get functions defined in a class that is not part of the class where I have my native code defined and called...
    Let me explain a bit, I have a class JobElement (singular Job) that stores all the data associated with a Job, such as job name, job id, etc.
    Another class JobsElement (plural Jobs) contains all the Jobs that are currently running.
    The code is set up something like this...
    class JobElement {
         String jobID;
         String jobName;
         public void setJobId(String newJobID) { jobID = newJobID; }
         public void setJobName(String newJobName) { jobName = newJobName; }
    class JobsElement {
         Date timeDateStamp;
         JobElement job;
    class AppRoot {
         JobsElement allJobs = null;
         JobElement _currentJob = null;
         public native getAllJobs();
    }In my native method, getAllJobs(), I essentially want to call the set functions that are defined for JobElement when filling in the information of the Job. (then finally add the JobElement to the JobsElement list)
    In summary, I basically want to know if it's possible to call the equivilent of this java code from the native code??
         _currentJob.setJobName(newJob)
    In the native code I tried to find the setJobID method but got a NoSuchMethodError. (which is what I expected)
    Thanks in advance.

    Hi,
    In your getAllJobs(), the JNI Equiv would be JNIEnv_ClassName_getAllJobs(JNIEnv** anEnv, jobject jAppRootobj)
    Since you are calling the AppRoot object's method, the jobj in the native method call will be jAppRootobj-AppRoot's instance.
    What you can do is
    Get the field id of _currentJob.
    Get the <jobject-value of currentJob> of JobElement i.e. currentJob.
    Then get the method ids of setJobID and setJobName.
    Call these non-static methods on <jobject-value of _currentJob> to set the values.
    I hope I made a try to help you. Please correct me if I am wrong.

  • How can i find (Debug - method) the flow of program in workflow at run time

    Hi All,
    I working in Workflow monitoring. When a workflow is set into error in SWPR , i need to analyse the error and report it. In many cases the error happens in the method of class / BOR. So i could not find out the what happens inside the method. I am doing this in an productive environment.i am not given to Run any METHOD or BOR or CLASS ? How can i make my workflow monitoring better to show exact error ?
    Thanks in advance !
    Richard A

    Dear Richard,
    You cannot debug a method by directly setting a break point as we do normally.....u can do this by
    just putting an infinite loop at the point where u want to set the debug point inside the method.
    Execute the workflow where this method is being used.
    Then go to SM50, here you will find your method which has gone into infinite loop.I debug mode change the value of the variable so that it can move ahead of the infinite loop.
    Now you can debug easily and find out where the problem lies.
    Do reply back in case of any query or even if yr problem is resolved.
    Regards,
    Geet

  • CL_HRRCF_TG_BL================CM004 line 33 - How to Find a method?

    Hi,
    My error log says 'The error occurred in program CL_HRRCF_TG_BL================CM004 line 33'
    and
    System Response
        The operation will be terminated.
        Termination takes place in:
        o   Main program: CL_HRRCF_TG_BL================CP
        o   Subroutine: CL_HRRCF_TG_BL================CM004
        o   Line in source code: 33
    What is the method for corresponding 'CM004'?
    How to find a method from this type syntax?
    ...Naddy

    Hello Naddy
    If you select DB table TMDIR with
    CLASSNAME = 'CL_HRRCF_TG_BL'
    you will find the following entry:
    CL_HRRCF_TG_BL                 00004      DELETE_TG
    To verify that this is indeed the method you are looking for you can use class CL_OO_CLASSNAME_SERVICE.
    Call its static method GET_ALL_METHOD_INCLUDES and you that the previous result is correct.
    Regards
      Uwe

  • How to find classtype and class for a material.

    Hi,
    How to find classtype and class for a material.
    which table contains this data.
    Thanks
    Kiran

    Hi Kiran,
    Check below sample code. Use this BAPI which will give all info about the class for the material.
      DATA:      l_objectkey_imp    TYPE bapi1003_key-object
                                         VALUE IS INITIAL.
      CONSTANTS: lc_objecttable_imp TYPE bapi1003_key-objecttable
                                         VALUE 'MARA',
                 lc_classtype_imp   TYPE bapi1003_key-classtype
                                         VALUE '001',
                 lc_freight_class   TYPE bapi1003_alloc_list-classnum
                                         VALUE 'FREIGHT_CLASS',
                 lc_e               TYPE bapiret2-type VALUE 'E',
                 lc_p(1)            TYPE c             VALUE 'P',
                 lc_m(1)            TYPE c             VALUE 'M'.
      SORT i_deliverydata BY vbeln posnr matnr.
      CLEAR wa_deliverydata.
      LOOP AT i_deliverydata INTO wa_deliverydata.
        REFRESH: i_alloclist[],
                 i_return[].
        CLEAR:   l_objectkey_imp.
        l_objectkey_imp = wa_deliverydata-matnr.
    *Get classes and characteristics
        CALL FUNCTION 'BAPI_OBJCL_GETCLASSES'
          EXPORTING
            objectkey_imp         = l_objectkey_imp
            objecttable_imp       = lc_objecttable_imp
            classtype_imp         = lc_classtype_imp
    *   READ_VALUATIONS       =
            keydate               = sy-datum
            language              = sy-langu
          TABLES
            alloclist             = i_alloclist
    *   ALLOCVALUESCHAR       =
    *   ALLOCVALUESCURR       =
    *   ALLOCVALUESNUM        =
            return                = i_return
    Thanks,
    Vinod.

  • Execute jar file: "could not find the main class" program will terminate

    Hey,
    I am new to Java. I have started to make a small java program which supposed to help me at my studies to lean the Dominic Memory System. I have used the latest version of Netbeans 5.5.1 to build my program in. I have two problems which I cannot figure out how to solve, please help me.
    The first problem is that the java script I have made works when I compile it in Netbeans, but when I create a Jar file it does not work. I receive a pop up message in windows ?could not find the main class program will terminate? when I execute the jar file.
    The second problem I have is that I need to compare the strings generated by the "numbers" and "TIP" and if the numbers is not identical the numbers in the ?Center? JPanel should be highlighted as red.
    If anyone would like to clean up the code I would be pleased. I have copied quite a lot from anyone because of my one lack of knowledge.
    * GoListener.java
    * Created on 12. september 2007, 21:48
    * To change this template, choose Tools | Template Manager
    * and open the template in the editor.
    package grandmaster;
    import java.awt.event.*;
    import javax.swing.*;
    import java.util.Vector;
    import java.util.StringTokenizer;
    import java.awt.Color;
    * @author Computer
    public class GoListener implements ActionListener {
    private JTextField viewer;
    private JTextField TIP;
    private JTextField freq;
    private JTextField max_num;
    private Vector numbers;
    public GoListener(JTextField j,JTextField k, JTextField m, JTextField f, Vector n) {
    freq = f;
    max_num = m;
    viewer = j;
    numbers = n;
    TIP = k;
    public void actionPerformed(ActionEvent e){
    int time = Integer.valueOf(max_num.getText());
    int f = Integer.valueOf(freq.getText());
    if (e.getActionCommand() == "GO") {
    for (int i = 0; i< time;++i) {
    int number=0;
    number = (int)Math.floor(100*Math.random());
    while(number>51){
    number = (int)Math.floor(100*Math.random());
    if(number<=9){
    viewer.setText(" "+"0" + String.valueOf(number) + " ");
    } else{
    viewer.setText(" " + String.valueOf(number) + " ");
    viewer.paintImmediately(viewer.getBounds());
    numbers.add(number);
    try {
    Thread.sleep(f*1000);
    } catch (Exception exp) {
    viewer.setText(" XX ");
    viewer.paintImmediately(viewer.getBounds());
    if (e.getActionCommand() == "VIEW") {
    try {
    //int numb = Integer.valueOf( TIP.getText() ).intValue();
    StringTokenizer tokenizer = new StringTokenizer(TIP.getText(), " ");
    String[] split = null;
    int tokenCount = tokenizer.countTokens();
    if (tokenCount > 0) {
    split = new String[tokenCount];
    for (int current = 0; current < tokenCount; current++) {
    split[current] = tokenizer.nextToken();
    viewer.setText(" " + String.valueOf(numbers) + " ");
    // k=numbers(1);
    /*while(c<i){
    String.valueOf(k).equals(split[1]);
    c++;
    TIP.setText(" " + split[2] + " ");
    } catch (Exception exp) {
    try {
    //string testit = numb.toString();
    //String str = "" + numb;
    //viewer.setText(str);
    //viewer.setText(numbers.toString());
    numbers.clear();
    } catch (Exception exp) {
    * Main.java
    * Created on 12. september 2007, 21:07
    * To change this template, choose Tools | Template Manager
    * and open the template in the editor.
    package grandmaster;
    import java.util.Vector;
    import javax.swing.*;
    import java.awt.event.*;
    import javax.swing.JButton;
    import java.awt.*;
    import grandmaster.GoListener;
    * @author Computer
    public class Main extends JFrame {
    private JTextField viewer;
    public JTextField TIP;
    // private TextInputPanel TIP;
    private Vector numbers;
    /** Creates a new instance of Main */
    public Main() {
    numbers = new Vector();
    JPanel p = new JPanel(new GridLayout(0,4));
    JButton go = new JButton();
    JButton view_num = new JButton();
    go.setText("Go!");
    go.setVisible(true);
    go.setActionCommand("GO");
    view_num.setText("VIEW");
    view_num.setVisible(true);
    view_num.setActionCommand("VIEW");
    JTextField max_num = new JTextField();
    max_num.setText("5");
    JTextField freq = new JTextField();
    freq.setText("1");
    viewer = new JTextField();
    viewer.setText("XX");
    TIP = new JTextField("");
    p.add(go);
    p.add(max_num);
    p.add(freq);
    p.add(view_num);
    getContentPane().add(p,BorderLayout.NORTH);
    getContentPane().add(viewer,BorderLayout.CENTER);
    getContentPane().add(TIP,BorderLayout.SOUTH);
    setSize(200,200);
    GoListener g = new GoListener(viewer,TIP,max_num, freq, numbers);
    go.addActionListener(g);
    view_num.addActionListener(g);
    * @param args the command line arguments
    public static void main(String[] args) {
    // TODO code application logic here
    Main window = new Main();
    window.setVisible(true);
    }

    NetBeans questions should be posted to the NB site. It has mailing lists and associated forums.
    This tutorial from the NB site addresses running programs outside of NB
    http://www.netbeans.org/kb/articles/javase-deploy.html
    When you compare objects, use ".equals()" and reserve == for comparing values.

Maybe you are looking for