Jdev3.2,BC4J, ERROR STACK OVER FLOW

HI
I created a BC4J project based on 10 tables. when testing the module an error stack overflow is thrown when trying to open some views. these same views are accessed successfully when the BC4J project is created whith less tables or with only these tables.
can some one help me to avoid such error
every advice is appreciated.
Ghassen
null

I encountered a stack overflow when trying to access a CLOB data type.
I removed that rowset definition and the problem went away.
JDBC is the work around.

Similar Messages

  • Asking too much and getting a "stack over flow error"

    I’m having AS3 create 12 random var (play1, play2, etc) and then I ask it to average the 12 vars (numbers) until I get a specific average number. When I run this in AS2 I get the “script time error, keep running?” question. I tell it to keep running and eventually AS2 finds the right set of 12 numbers to equal a specific average number. In AS3 I get a “stack over flow error”. I know that all my AS3 swf needs is just more time to find it.
    Any ideas for a fix?

    // set AvgLenght if it is undefined
    if (!AvgLenght) {
        var AvgLenght:Number = 4.5;
        ShowAvgLenght.text = String(AvgLenght);
    // build play lengths//
    var Hteamplay1:int = Math.random() * 5;
    var Hteamplay2:int = Math.random() * 5;
    var Hteamplay3:int = Math.random() * 5;
    var Hteamplay4:int = Math.random() * 5;
    var Hteamplay5:int = Math.random() * 10;
    var Hteamplay6:int = Math.random() * 10;
    var Hteamplay7:int = Math.random() * 10;
    var Hteamplay8:int = Math.random() * 10;
    var Hteamplay9:int = Math.random() * 20;
    var Hteamplay10:int = Math.random() * 20;
    var Hteamplay11:int = Math.random() * 50;
    var Hteamplay12:int = Math.random() * 100;
    trace("12 play sets", Hteamplay1, Hteamplay2, Hteamplay3, Hteamplay4, Hteamplay5, Hteamplay6, Hteamplay7, Hteamplay8, Hteamplay9, Hteamplay10, Hteamplay11, Hteamplay12);
    var playsum:Number = (Hteamplay1 + Hteamplay2 + Hteamplay3 + Hteamplay4 + Hteamplay5 + Hteamplay6 + Hteamplay7 + Hteamplay8 + Hteamplay9 + Hteamplay10 + Hteamplay11 + Hteamplay12);
    var PlaySets:Number = playsum / 12;
    trace ("Average of all plays:", PlaySets)
    if (PlaySets >= AvgLenght && PlaySets <= AvgLenght + .1) {
        gotoAndStop("Equals target avg");
        ShowAvgLenght.text = String(AvgLenght);
    } else
    nextFrame();
    // The next frame "goes to and plays this frame
    // ShowAvgLenght.text = String(AvgLenght);
    trace("AvgLenght:", AvgLenght);
    the code work with higher "AvgLenght",a lower "AvgLenght" takes longer and I get the below error:
    output:
    12 play sets 2 2 2 1 0 3 0 7 16 16 25 17
    Average of all plays: 7.583333333333333
    AvgLenght: 2
    tried: 3489
    12 play sets 0 4 4 0 3 4 1 2 19 9 10 30
    Average of all plays: 7.166666666666667
    AvgLenght: 2
    Error: Error #1023: Stack overflow occurred.
    tried: 3490
    Error: Error #1023: Stack overflow occurred.
    Error: Error #1023: Stack overflow occurred.

  • Arg, stack over flow...

    I'm working on a equation parser (using recursion).
    I'm getting a stack over flow error on the first recursive call by making with parameters consiting of only:
    1) 1 TreeNode containing a very short string
    2) 1 ArrayList containing only 1 element at that time.
    Now I'm confused about how stack overflow works, doesn't it only happen when you try to use too much memory. (ie a recursion that goes too deep)
    So can someone tell me why this is causing a stack overflow and clear up for me what really behind stack overflow errors in general? thanks

    Now I'm confused about how stack overflow works,
    doesn't it only happen when you try to use too much
    memory. (ie a recursion that goes too deep)Yes.
    So can someone tell me why this is causing a stack
    overflow Not easy without the code.
    What are the termination conditions for the recursive method with the given inputs?
    Pete

  • Purchase Order error - Money Over flow error

    Hi,
    Our customer wants to create Purchase order for item that has Lenght, Width, Height dimentions (not defined in item master used directly in PO).
    Width - 2500mm
    Length - 2500mm
    Height - 550mm
    the quantity in PO is to be in Kilogram (KG) as the rate is Rs per KG. So when we put quantity as 9890 KG there is error
    " Money Over flow, cannot display all digits"
    Looking in more details , we found that there is volume field at row level in PO which system calculates,
    volume = Length * width * height, (for 1 item) but when we add quantty system does
    volume = (Length * width * height) * Quantity, the resulting value is more then 20 characters, inluding the commas.
    We think this is reason for error,,,any one else faced similar situation and has solution for it.
    can we stop system from calulating Volume or the way it calculates volume?
    Please advice
    Thanks,
    - Abhijit.

    Thanks Gordon,
    Your reply helped me solve the problem, there is a VOlume unit field at row level on PO, changed the UoM there to "cm" instead of "mm" earlier/default. Now we can add the document.
    Thanks.
    - Abhijit.

  • DIG_Change_Message_Config error 6 over flow

    I run into a problem when i develop in VB5, when i use DIG_Change_Message_Config function and use windows API handle, it show me error 6 over flow, anyone how to solve this problem.

    hi,
    overflow is a VB error. It may be that the handle that is being returned by the method, is causing the overflow..for example, if the handle returns a 32 bit long, and your variable is a short, then you may get this error...
    What version of NI-DAQ and what card are you using ?
    These knowledgebase links may help you...
    (1) http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/dc44689717e9040586256c8e0071922c?OpenDocument
    and (2)
    http://sine.ni.com/apps/we/niepd_web_display.DISPLAY_EPD4?p_guid=B45EACE3DF1756A4E034080020E74861&p_node=DZ52319&p_submitted=N&p_rank=&p_answer=&p_source=External
    Nandan Dharwadker
    Staff Software Engineer
    Measurement Studio Hardware Team

  • Stack over flow error

    hi all,
    we had an outage , when I checked the logs there was a java.lang.stackoverflow error, and the weblogic server shut down, is this possisible ? for a stack overflow error to pull down a server, we had to restart the server , and now it works fine, please throw some light.
    Thanks
    Pradeep

        public class Main extends JPanel
            private PanelA a = new PanelA();
            private PanelB b = new PanelB();
            Main()
                a.setPanelB(b);
                b.setPanelA(a);
        public class PanelA extends JPanel
            private PanelB b;
            void setPanelB(PanelB b)
                this.b = b;
        public class PanelB extends JPanel
            void setPanelA(PanelA a)
                this.a = a;
            private PanelA a;

  • TopLink, ADF 11g, RemoteSession and Stack Over Flow

    Hi,
    I am using TopLink and ADF 11g. From managed bean I can invoke Toplink Remote Session. After commit transaction on Remote Unit Of Work I get next exception:
    11.8.2009 14:52:47 oracle.adfinternal.view.faces.config.rich.RegistrationConfigurator handleError
    SEVERE: Server Exception during PPR, #1
    javax.el.ELException: java.lang.StackOverflowError
         at com.sun.el.parser.AstValue.invoke(AstValue.java:161)
         at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
         at oracle.adf.controller.internal.util.ELInterfaceImpl.invokeMethod(ELInterfaceImpl.java:138)
         at oracle.adfinternal.controller.activity.MethodCallActivityLogic.execute(MethodCallActivityLogic.java:142)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:876)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:752)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.routeFromActivity(ControlFlowEngine.java:526)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.performControlFlow(ControlFlowEngine.java:142)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleAdfcNavigation(NavigationHandlerImpl.java:110)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:79)
         at org.apache.myfaces.trinidadinternal.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:43)
         at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
         at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
         at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:145)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:787)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:280)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3588)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: java.lang.StackOverflowError
         at oracle.toplink.internal.sessions.UnitOfWorkImpl.getParent(UnitOfWorkImpl.java:2488)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
         at oracle.toplink.internal.remote.RemoteUnitOfWork.getDescriptor(RemoteUnitOfWork.java:254)
    Where can be problem? When I use DatabaseSession, all work correctly.
    Edited by: user480864 on 11.8.2009 6:20

    Hi Chris,
    thanks for your response. I was take next fragment of source code for Server session, Client session and Remote session.
    On server side:
    Acquire Server Session:
    private synchronized void createServerSession(boolean setEventListener){
    serverSession = null;
    if (toplinkProjekt == null) return;
    Server serverSess = toplinkProjekt.createServerSession();
    if (setEventListener) {
    SessionEventListener eventListener = new SessionEventListener("ToplinkProjectManager.createServerSession", true, ESessionType.ServerSession);
    serverSess.getEventManager().addListener(eventListener);
    serverSess.setLogLevel(DefaultSessionLog.ALL);
    serverSess.login();
    serverSession = serverSess;
    Acquire client session:
    public RMIRemoteSessionController getRemoteSessionController(String firma) {
    RMIRemoteSessionController rmirsController = null;
    try {
    ClientSession clientSession = getClientSession(firma);
    if (clientSession != null) {
    try {
    rmirsController = new RMIRemoteSessionControllerDispatcher(clientSession);
    } catch (RemoteException e) {
    e.printStackTrace();
    } else {
    System.out.println("\n" + userIdentifikator + "\nzamietnuty pristup.\n\n");
    } catch (Exception e){
    e.printStackTrace();
    System.out.println("\n\n\n" + userIdentifikator + " dostal RMI controller: " + rmirsController+ "\n\n\n\n\n");
    return rmirsController;
    private ClientSession getClientSession(String firma) {
    if (AccessControl.canAccess(firma, userIdentifikator)) {
    return DBConnectionManager.getClientSession(firma, userIdentifikator);
    } else {
    return null;
    Methods getClientSession and getRemoteSessionController are in Statefull EJB T3ConnectionManagerSessionEJBBean and getRemoteSessionController is published accross the Remote interface.
    Remote site:
    private static Context getInitialContext() throws NamingException {
    Hashtable env = new Hashtable();
    env.put( Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory" );
    env.put(Context.PROVIDER_URL, "t3://192.168.1.107:7101");
    return new InitialContext( env );
    private static RemoteSession createRemoteSession(String firma){
    T3ConnectionManagerEJBBeanRemote t3Connection = null;
    try {
    final Context context = getInitialContext();
    t3Connection = (T3ConnectionManagerEJBBeanRemote)context.lookup("T3ConnectionManagerSessionEJBBean#sk.egroup.toplink.sessions.t3connection.T3ConnectionManagerEJBBeanRemote");
    } catch (Exception e) {
    System.out.println("Lookup error - " + e.toString());
    return null;
    if (t3Connection == null) return null;
    RMIRemoteSessionController controller = null;
    try {
    controller = t3Connection.getRemoteSessionController(firma);
    } catch (Exception e) {
    e.printStackTrace();
    return null;
    if (controller != null) {
    RMIConnection rmiConnection = new RMIConnection(controller);
    RemoteSession session = (RemoteSession)rmiConnection.createRemoteSession();
    SessionEventListener eventListener = new SessionEventListener("FIRMA = " + firma, true, ESessionType.RemoteSession);
    session.getEventManager().addListener(eventListener);
    session.setLogLevel(DefaultSessionLog.ALL);
    return (RemoteSession) session;
    } else {
    System.out.println("Nepodarilo sa ziskat remote session.");
    return null;
    Best Regards,
    Jozef

  • Stack over flow

    hi i was doing example on singleton pattern then i modified programme i am facing error help me out i am giving the programme
    public class Singleton {
         Singleton singleton = new Singleton();
         /** A private Constructor prevents any other class from instantiating. */
         public Singleton() {
         /** Static 'instance' method */
         public Singleton getInstance() {
         return new Singleton();
         // other methods protected by singleton-ness would be here...
         /** A simple demo method */
         public String demoMethod() {
         return "demo";
    public class SingletonPattern {
         public static void main(String[] args) {
         //Singleton s1 = Singleton.getInstance();
              Singleton s1 = new Singleton();
         System.out.println("Calling a method of a Singleton: " + s1.demoMethod());
         //Singleton s2 = Singleton.getInstance();
         Singleton s2 = new Singleton();
         System.out.println("Calling a method of a Singleton: " + s2.demoMethod());
         boolean b1 = (s1 == s2);
         System.out.println("Object instance s1 and s2 are the same object: " + b1);
    i am getting following exception
    Exception in thread "main" java.lang.StackOverflowError
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
         at singleton.Singleton.<init>(Singleton.java:4)
    error is in line      Singleton singleton = new Singleton();
    Edited by: vinaybasavanal on Jun 25, 2008 3:49 AM
    Edited by: vinaybasavanal on Jun 25, 2008 3:51 AM

    your STATIC getInstance() method has to return a STATIC instance of your singleton.
    private static YourSingleton ys = null;
    public static YourSingleton getInstance(){
      if(ys==null){
        ys = new YourSingleton();
      return ys;
    }Remember that the singleton constructor has to be private

  • Planning cube Key figure over flow error

    Hi Experts,
    I am getting the following  Key figure errors in Planning cube while running the Planning sequences.
    1.Over flow occurred when calculating KF
    KF details : Data type: DEC-Counter or amount filed  with comma and sign.
    2.ORA-01455: converting column overflows integer data type
    Data type : INT4- 4byte integer,Integer number with sign.
    The number s are growing in cube and it is giving overflow error .We are compressing the cubes once in a week.we are using these KF's in two cubes.Please help me to resolve the issue.
    Regards
    Prasad
    Edited by: PRASAD on Feb 1, 2009 9:39 AM

    Hi Prasad,
             Check here.........
    https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3131393536373226
    https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=460652
    Thanks,
    Vijay.

  • Working with the Portal Error Stack in PL/SQL

    Hi,
    In brief, this is a question about the persistence of errors on the stack, as they appear to disappear without warning. Any help would be appreciated, if you'd like background, read on.
    I'm writing PL/SQL web applications and as ever one of the required tasks is user validation.
    I have a form on a page which submits directly to a stored procedure. If the validation within the proc is ok, the value(s) get inserted into a DB table and the user gets directed to another Portal page. If there is a user input error then the code reloads the original page (via redirect) with the necessary errors displayed.
    I used to use the Session storage to hold any error messages and then check to see if any errors existed at the point of page redirection, and this worked fine.
    Now that I figure that I should do the job properly and use Portals' error stack, everything falls over!
    It would seem that between moving from one page to another any values held in the stack are lost, yet I know they are definitely getting put there in the first place as I can view them, as long as I don't redirect the Portal page.
    Any ideas??
    Thanks in advance.
    Dan

    1.) Create a hidden item on your page.
    2.) In your Page Rendering PL/SQL Process add logic which assigns 'EDIT' or 'NO_EDIT' to the hidden item.
    3.) Create a "Message" HTML region which conditionally displays based of the value of your hidden item being 'NO_EDIT'.
    4.) Make your edit field conditionally Read Only based on the value of your hidden item being 'NO_EDIT'.
    There may be an easier way but I got this to work
    Mike

  • Use of Error Stacks when loading to a DSO

    Hi all,
    Hope you can help with the below.
    I am loading from a flat file datasource to a DSO.
    I do not want to use the DTP option 'No futher processing without master data' to identify master data errors as this causes the load to fail should an error be encountered.
    I want to use the error stack and need the errors in both the transactional data AND master data to be moved to the error stack so the load to the DSO can continue, and errors be corrected later.
    When I load the file which contains transactional and master data the only error that is sent to the error stack is for the transactional data - a 'data field' set to overwrite in the mapping.
    However all Key Fields are master data and the errors are not being reported as well, they are flowing through to the DSO and only being reported when we try to activate the DSO.
    So how can I get master data (Key Field) errors to also be moved to the error stack ?
    Many thanks.

    I think its not possible.
    Check this doc http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10c6c05c-89c4-2c10-89bd-fc5ce1d124e2?quicklink=index&overridelayout=true
    It defines a way to handle these records.

  • Page Area over flow problem

    Hi,
    When I am executing The Bapi in Ecc6.0 its goes to Short dump.
    Short Dump error is:page area over flow in abap/4 memory.
    This is very Urgent please suggest me how to overcome this short dump.
    regards,
    babu

    hi
    https://forums.sdn.sap.com
    abapcode.blogspot.com
    ABAP/4 programs can take a very long time to execute, and can make other processes have to wait before executing. Here are some tips to speed up your programs and reduce the load your programs put on the system:
    Use the GET RUN TIME command to help evaluate performance. It's hard to know whether that optimization technique REALLY helps unless you test it out. Using this tool can help you know what is effective, under what kinds of conditions. The GET RUN TIME has problems under multiple CPUs, so you should use it to test small pieces of your program, rather than the whole program.
    Generally, try to reduce I/O first, then memory, then CPU activity. I/O operations that read/write to hard disk are always the most expensive operations. Memory, if not controlled, may have to be written to swap space on the hard disk, which therefore increases your I/O read/writes to disk. CPU activity can be reduced by careful program design, and by using commands such as SUM (SQL) and COLLECT (ABAP/4).
    Avoid 'SELECT *', especially in tables that have a lot of fields. Use SELECT A B C INTO instead, so that fields are only read if they are used. This can make a very big difference.
    Field-groups can be useful for multi-level sorting and displaying. However, they write their data to the system's paging space, rather than to memory (internal tables use memory). For this reason, field-groups are only appropriate for processing large lists (e.g. over 50,000 records). If you have large lists, you should work with the systems administrator to decide the maximum amount of RAM your program should use, and from that, calculate how much space your lists will use. Then you can decide whether to write the data to memory or swap space. See the Fieldgroups ABAP example.
    Use as many table keys as possible in the WHERE part of your select statements.
    Whenever possible, design the program to access a relatively constant number of records (for instance, if you only access the transactions for one month, then there probably will be a reasonable range, like 1200-1800, for the number of transactions inputted within that month). Then use a SELECT A B C INTO TABLE ITAB statement.
    Get a good idea of how many records you will be accessing. Log into your productive system, and use SE80 -> Dictionary Objects (press Edit), enter the table name you want to see, and press Display. Go To Utilities -> Table Contents to query the table contents and see the number of records. This is extremely useful in optimizing a program's memory allocation.
    Try to make the user interface such that the program gradually unfolds more information to the user, rather than giving a huge list of information all at once to the user.
    Declare your internal tables using OCCURS NUM_RECS, where NUM_RECS is the number of records you expect to be accessing. If the number of records exceeds NUM_RECS, the data will be kept in swap space (not memory).
    Use SELECT A B C INTO TABLE ITAB whenever possible. This will read all of the records into the itab in one operation, rather than repeated operations that result from a SELECT A B C INTO ITAB... ENDSELECT statement. Make sure that ITAB is declared with OCCURS NUM_RECS, where NUM_RECS is the number of records you expect to access.
    If the number of records you are reading is constantly growing, you may be able to break it into chunks of relatively constant size. For instance, if you have to read all records from 1991 to present, you can break it into quarters, and read all records one quarter at a time. This will reduce I/O operations. Test extensively with GET RUN TIME when using this method.
    Know how to use the 'collect' command. It can be very efficient.
    Use the SELECT SINGLE command whenever possible.
    Many tables contain totals fields (such as monthly expense totals). Use these avoid wasting resources by calculating a total that has already been calculated and stored.
    verify if it can give an idea to the question.

  • Measument point - Counter - Backwards - Over flow limit value ?

    Hi ,
       I 'm trying to use measurement point, the requirement is i need to start from 20000 hours and  go on decreasing the life of the part and when i reach 1000 hours i need the system to tell me so. i'm not able to update the upper and lower limits in reverse, neither i'm knowing what to put for over flow counter reading. Please help.
    Regards,
    Vivek

    HI Experts,
    I am looking for information relating to setting up backward counters to schedule Maintenance Plans. When I try to create a Maintenance Plan linked to a Backward Counter, I receive the error "Only counters that run forwards can be entered - Error IP124" . What am I doing wrong?  How can I use backwards counters with maintenance plans?
    We have several clocks that count down the hours til the next major or minor pm is due. The technician manually records the time from these clocks. Worst case is that we can subtract the counter time from a constant if we have to, but I'd like to have the technician enter in the clock time directly with out any manipulation needed.
    Thanks in advance,
    Please open a thread for your specific issue
    -Paul (moderator)
    Edited by: Paul Meehan on Oct 24, 2011 2:06 PM

  • Error while comitting a transaction in oSB. The following is the error stack

    Error while comitting a transaction in OSB. The following is the error stack
    <Apr 20, 2015 12:00:15 AM MDT> <Error> <EJB> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-1AE41F1CAE45F2B146FD(296700848),Status=Rolled back. [Reason=Unknown],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=2,seconds left=120,XAServerResourceInfo[WLStore_SOA_PRDKS_DOMAIN_FileStore_SOA_MS2]=(ServerResourceInfo[WLStore_SOA_PRDKS_DOMAIN_FileStore_SOA_MS2]=(state=new,assigned=none),xar=null,re-Registered = false),XAServerResourceInfo[WLStore_OSB_PRDKS_DOMAIN_FileStore_auto_1]=(ServerResourceInfo[WLStore_OSB_PRDKS_DOMAIN_FileStore_auto_1]=(state=rolledback,assigned=OSB_MS1),xar=WLStore_OSB_PRDKS_DOMAIN_FileStore_auto_11603460297,re-Registered = false),XAServerResourceInfo[weblogic.jdbc.jta.DataSource]=(ServerResourceInfo[weblogic.jdbc.jta.DataSource]=(state=ended,assigned=none),xar=CMSDS,re-Registered = false),SCInfo[OSB_PRDKS_DOMAIN+OSB_MS1]=(state=rolledback),SCInfo[SOA_PRDKS_DOMAIN+SOA_MS2]=(state=pre-prepared),properties=({}),local properties=({weblogic.jdbc.jta.CMSDS=[ No XAConnection is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=OSB_MS1+soaprd-vip-osb-ms1.cos.is.keysight.com:8001+OSB_PRDKS_DOMAIN+t3+, XAResources={eis/wls/Queue, WEDB_EVEREST_OSB_PRDKS_DOMAIN, XREFDS_OSB_PRDKS_DOMAIN, eis/activemq/Queue, CustomSchemaDS_OSB_PRDKS_DOMAIN, MobileApps_CIA_DS1_OSB_PRDKS_DOMAIN, eis/tibjmsDirect/Queue, eis/jbossmq/Queue, eis/Apps/Apps, MobileApps_AOS_MDS_OSB_PRDKS_DOMAIN, MobileApps_AOS_DRDS_OSB_PRDKS_DOMAIN, WSATGatewayRM_OSB_MS1_OSB_PRDKS_DOMAIN, eis/webspheremq/Queue, eis/AQ/aqSample, SBLPROD_OSB_PRDKS_DOMAIN, wlsbjmsrpDataSource_OSB_PRDKS_DOMAIN, eis/aqjms/Queue, CMSDS_OSB_PRDKS_DOMAIN, WLStore_OSB_PRDKS_DOMAIN_WseeFileStore_auto_1, FAP_OSB_PRDKS_DOMAIN, eis/sunmq/Queue, eis/pramati/Queue, FMWAPPDS_OSB_PRDKS_DOMAIN, weblogic.jdbc.jta.DataSource, GSDC_OSB_PRDKS_DOMAIN, eis/tibjms/Topic, eis/fioranomq/Topic, WLStore_OSB_PRDKS_DOMAIN_FileStore_MS1, PresidioOracleAppsDS_OSB_PRDKS_DOMAIN, GSDCDS_OSB_PRDKS_DOMAIN, eis/aqjms/Topic, CustOutDS_OSB_PRDKS_DOMAIN, OFMW/Logging/BAM, MobileAppsDS_OSB_PRDKS_DOMAIN, FIDDS_OSB_PRDKS_DOMAIN, WLStore_OSB_PRDKS_DOMAIN__WLS_OSB_MS1, HRMSDS_OSB_PRDKS_DOMAIN, WEDB_OSB_PRDKS_DOMAIN, OracleAppsDS_OSB_PRDKS_DOMAIN, eis/wls/Topic, eis/tibjms/Queue, eis/tibjmsDirect/Topic, IntrastatDS_OSB_PRDKS_DOMAIN, MobileApps_AOS_COSDS_OSB_PRDKS_DOMAIN, MobileApps_CIA_DS2_OSB_PRDKS_DOMAIN, EVEREST_WEDB_OSB_PRDKS_DOMAIN, WLStore_OSB_PRDKS_DOMAIN_FileStore_auto_1, Everest_OSB_PRDKS_DOMAIN},NonXAResources={})],CoordinatorURL=SOA_MS2+soaprd-vip-soa-ms2.cos.is.keysight.com:8002+SOA_PRDKS_DOMAIN+t3+): javax.transaction.SystemException: Lost connection to server while commit was in progress, ignoring because initiating server is not coordinating server. Remote Exception received=weblogic.rjvm.PeerGoneException: ; nested exception is:
            java.rmi.UnmarshalException: Incoming message header or abbreviation processing failed ; nested exception is:
            java.io.InvalidClassException: oracle.jdbc.xa.OracleXAException; local class incompatible: stream classdesc serialVersionUID = -2542408691177300269, local class serialVersionUID = -4551795881821760665
            at weblogic.transaction.internal.TransactionImpl.commit(TransactionImpl.java:376)
            at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:237)
            at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:224)
            at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:552)
            at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:423)
            at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:325)
            at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
            at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
            at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
            at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
            at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
            at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
            at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
            at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

    Hi,
    Have you tried Cancelling the release before adding the version?
    Select the active version of the IDOC Segment and cancel its release first. Only then you will be able to add a version.
    Please let me know if it worked!
    Vijay

  • Error Stack in Expert Routine, Infos about Object Log

    Hi all,
    currently I try to find some information about using the error stack in combination with an expert routine. So far I know that I have to use the Object Log, which is already in place in my code for monitor messages.
    LOOP AT itab_input INTO wa_input.
    IF sy-subrc <> 0.
            CLEAR msg.
            msg-msgid = 'MY_CLASS'.
            msg-msgty = 'E'.
            msg-msgno = '002'.
            msg-msgv1 = v1.
            msg-msgv2 = v2.
            msg-msgv3 = v3.
            APPEND msg TO t_msg.
            " ??? Write wa_input to error stack???
            CONTINUE.
          ENDIF.
    ENDLOOP.
    Does somebody know how I could append wa_input to the error stack? Or does somebody have a good documentation about Object log?
    Thanks a lot!
    Nita

    Good Morning,
    thanks a lot for your input. I tried to implement this function, but I do not know where I could get the Segment Id from.
    Do you know what i_use_crosstab is used for? I think i_with_message should be set to 'X' if I want to write wa_input-record it to the error stack.
    CALL METHOD log->verify_record
              EXPORTING
                i_use_crosstab  = ''
                i_segid         = lv_segid
                i_record        = wa_input-record
                i_with_message  = 'X'
              RECEIVING
                r_skip          = lv_skip
              EXCEPTIONS
                too_many_errors = 1
                not_in_crosstab = 2
                OTHERS          = 3.
    From semantic point of view the coding should do following:
    - To avoid a second loop in my expert routine it should only check the current src record. If this is wrong, which I already determine in my coding, it should write the record in the error stack. If it is correct, it should check whether there are already records with the same semantic key in the error stack and if yes, add it also to it.
    - I assume that I have to delete this record manually from my src. package than.
    Cheers
    Nita

Maybe you are looking for