Queue Reference Based issued

Hi all..could anyone tell me how i should fix the problem that i am struck here? I try to implemented an queue on my own. but i change sth in that queue.. i try not to use isEmpty() to keep track of the element in my queue..(it work fine if i use isEmpty()....) instead of using size() to keep track if it is an empty stack...but i got a little bit problem here..it call the exception automatically..and i am not expecting this result
=========================
javac QueueTest.java
Exit code: 0
java QueueTestThe queue is empty
0 1 2 3 4 5 6 7 8
EmptyQueueException on peek:queue empty <<- error occur here.ithould not appear.
Exit code: 0=====================
expected result
=========================
javac QueueTest.java
Exit code: 0
java QueueTestThe queue is empty
0 1 2 3 4 5 6 7 8
Exit code: 0=====================
my code is as following
QueueTest
public class QueueTest
     public static void main(String[] args)
          QueueReferenceBased aQueue = new QueueReferenceBased();
          if(aQueue.size() == 0)
          //if(aQueue.isEmpty())
               System.out.println("The queue is empty");
          for(int i=0; i < 9; i++)
               aQueue.enqueue(new Integer(i));
          try
             //while (!aQueue.isEmpty())     
             //while(aQueue.size() != 0)
             while(aQueue.size() != 0)
                  System.out.print(aQueue.peek() + " ");
                  //System.out.print(aQueue.size() );
                  aQueue.dequeue();
            // System.out.print(aQueue.size() );
          //aQueue.peek();
          catch( EmptyQueueException eqe)
               System.out.println("\n" + eqe.getMessage());
}===
QueueReferenceBased
// File: QueueReferenceBased.java
// Author: Chi Lun To (Ivan To)
// Created on: June 5, 2007
public class QueueReferenceBased implements QueueInterface
  private Node lastNode;
  private int numberOfItems = 0;
  public QueueReferenceBased()
      lastNode = null;  
  // queue operations:
  public boolean isEmpty()
    return lastNode == null;
  public int size()
       return numberOfItems;
  public void enqueue(Object newItem)
  { // insert the new node
    Node newNode = new Node(newItem);           
   // if (isEmpty())
    if(lastNode == null)
  // if(size()==0)
           // insertion into empty queue
          newNode.setNext(newNode);
    else {
          // insertion into nonempty queue
          newNode.setNext(lastNode.getNext());
           lastNode.setNext(newNode);
    lastNode = newNode;  // new node is at back
      numberOfItems++;
  public Object dequeue() throws EmptyQueueException
      // if(!isEmpty())
//if (!(size() == 0))
if(lastNode != null)
           // queue is not empty; remove front
           Node firstNode = lastNode.getNext();
           if (firstNode == lastNode)             // special case?
                    lastNode = null;                  // yes, one node in queue
          else
                    lastNode.setNext(firstNode.getNext());
                    numberOfItems--;
          return firstNode.getItem();
    else {
          throw new EmptyQueueException("EmptyQueueException on dequeue:" + "queue empty");
  }  // end dequeue
  public Object peek() throws EmptyQueueException
      if(lastNode != null)
      //if (size() != -1)
      // queue is not empty; retrieve front
      Node firstNode = lastNode.getNext();
      return firstNode.getItem();
    else {
      throw new EmptyQueueException("EmptyQueueException on peek:"+ "queue empty");
} // end QueueReferenceBased===
the code u could omit ..but just for better unstanding ..thx
node
public class Node {
  private Object item;
  private Node next;
  public Node(Object newItem) {
    item = newItem;
    next = null;
  } // end constructor
  public Node(Object newItem, Node nextNode) {
    item = newItem;
    next = nextNode;
  } // end constructor
  public void setItem(Object newItem) {
    item = newItem;
  } // end setItem
  public Object getItem() {
    return item;
  } // end getItem
  public void setNext(Node nextNode) {
    next = nextNode;
  } // end setNext
  public Node getNext() {
    return next;
  } // end getNext
} // end class Node====
QueueInterface
public interface QueueInterface
  //public boolean isEmpty() ;
  public int size();
  // Description: Determines the number of elements in a queue.
  //                    In other words, the length of a queue.
  // Precondition: None.
  // Postcondition: Returns the number of elements that are
  //                        currently in the queue.
  // Throws: None.
  public void enqueue(Object newElement);
  // Description: Adds an element at the back of a queue.
  // Precondition: None.
  // Postcondition: If the operation was successful,
  //                        newElement is at the back of the queue.
  // Throws: None.
public Object dequeue() throws EmptyQueueException;
  // Description: Retrieves and removes the front of a queue.
  // Precondition: Queue is not empty.
  // Postcondition: If the queue is not empty, the element
  //                       that was added to the queue earliest
  //                       is returned and the element is removed.
  //                       If the queue is empty, the operation
  //                       is impossible and QueueException is thrown.
  // Throws: EmptyQueueException when the queue is empty.
  public Object peek() throws EmptyQueueException;
  // Description: Retrieves the element at the front of a queue.
  // Precondition: Queue is not empty.
  // Postcondition: If the queue is not empty, the element
  //                        that was added to the queue earliest
  //                        is returned. If the queue is empty, the
  //                        operation is impossible and QueueException
  //                        is thrown.
  // Throws: EmptyQueueException when the queue is empty.
}  // end QueueInterface=====
public class EmptyQueueException extends Exception
     //Parameterized constructor
     public EmptyQueueException( String s )
          super( s ); //inherits the existing functionality of the Exception class.
}

i try not to use isEmpty() to keep track of the
element in my queue..(it work fine if i use
isEmpty()....) instead of using size() to keep track
if it is an empty stack... and this is a complete red herring. isEmpty() just returns size() == 0. The two are completely equivalent and there is no possibility that one worked when the other didn't.

Similar Messages

  • Opening/Closing Queue Reference By Name

    I'm curious if opening and closing a queue reference to put information onto the queue, using the queue name -> obtain queue -> enqueue -> release queue(Non Force) is problematic.  I thought i saw a thread a long time ago that opening/closing a reference to a queue over and over could lead to a memory leak, even if the original queue never was released.  Obviously, i'm ignoring the general pass the wire(by value) correct labview way. 
    Instead of opening/closing using the queue name i could also wrap the queue reference in a FG after originally creating it and work on the reference that way. Ignoring the "right way to do it" are there still downsides, other than programing correctly, to open/closing queue reference's in this fashion such as memory leaks.

    PaulG. wrote:
    I have never heard of any unwanted consequences of repeatedly opening and closing any reference. The trick is to make sure a reference gets closed when no longer needed. I don't see any reason not to implement queues the ways you describe. I've done all three and haven't had any issues that I know of. If opening and closing a queue reference repeatedly caused a memory leak that would be considered a bug.
    I have to disagree here. A couple of years ago I was using a DAQmx Write with "autostart" option set to TRUE in a loop (ca. 100ms timing) to constantly make sure, that in application standby my Digital Outputs kept the values they ought to have. This reproducibly caused a blue screen on Windows after 6 hours of the program running in standby. As it turned out, LabVIEW was using a new reference to the task for every call of the Write, because with autostart set to TRUE it had to create the task beforehand and close it afterwards. After the mentioned peroiod of time, LabVIEW ran out of reference numbers, as the support explained to me.
    Of course, even LabVIEW Help says to avoid using autostart=TRUE with DAQmx VIs in a loop, but only because of the overhead the repeated Create and Clear is consuming. Naturally, I have learned that the hard way now.
    So - Create the reference once, use that same reference all the time (FG is fine, I think - I use this method for obtaining my logfile reference all over the place!) and close it only, when you don't really need it anymore.

  • Queue Reference on a DVR?

    Hi All,
    I am trying to track down a bug in my code to no avail (so far). I wanted to check if my problem is caused by a 'feature' in LabVIEW while I continue to tear (whats left of) my hair out.....
    Here is what I'm doing:
    I create my 'communication queues' in my toplevel vi. These are unnamed. My toplevel vi is a queue-based state machine. I'm using OO by reference. Therefore the place where I've stored my reference is Object>DVR>Cluster>queue reference.
    Using the toplevel.vi I kick off a user interface. I do this by using Static VI reference>SetVal to pass the object/DVR value to the UI and then >Run (wait til done false) to start the UI.
    And here's the problem: when put an element on the toplevel state-machine queue using the UI its not received by the toplevel state machine. 
    Here's what I've looked at to try and find out what the problem is
    The element is placed in the queue with no errors
    The references are valid
    One this I did notice is that when I probed the reference hex numbers they are different - my understanding was creating a new queue reference by name would give two different references to the same queue in memory (and so they have to be closed). But in my case I only create one reference to the queue, put it in my DVR and remove it as needed.......so what are the values different?
    I've used this same architecture already in this project but in this case I didn't put the queue references on the DVR - instead I opened new references by name whenever I communicated between modules. This worked fine......but I'd prefer not to restrucutre my code if I can avoid it!
    If anyone can offer suggestions that I can check or indeed if this is a 'feature' which has come up before I'd appreciate any comments,
    Thanks,
    Dave
    Solved!
    Go to Solution.

    Hi All,
    Please disregard the comments about the reference hex numbers being different - I built a very simple test program to make sure performance was correct and found that it was. In my test code both reference numbers are identical as should be expected! Its a common/garden bug causing my problem not a LabVIEW 'feature'......just gotta find the bugspray now!
    Dave

  • When do VI and queue references become invalid?

    Hi all,
    I have a fairly complicated problem, so please bear with me.
    1)  I have a reentrant SubVI (let's call it VI "Assign") that has an input cluster of (VI ref, queue ref) (let's call the cluster type "Refs").  If the VI ref is invalid (first execution), the VI ref and queue ref are assigned values and are passed on as an output cluster of same type.  (The VI does other things too, but for simplicity only this is important.)
    2)  The VI that calls VI "Assign" (let's call it VI "Store") is not reentrant and has a local variable of type "Refs" that is wired to the input and output of VI "Assign".  This VI effectively stores the references.  The references returned by VI "Assign" are always valid right after the call, but after the problem condition described below, they are invalid at the start of all calls before they are passed to VI "Assign".
    3)  VI "Store" is called by multiple non-reentrant VIs, so the local variables of VI "Assign" retain their values (Has been tested and verified to retain their values).  The VI causing the problem in this case is a template VI of which multiple copies are launched (let's call it VI "Template").
    The problem is that the moment an instance of VI "Template" is closed, the queue reference becomes invalid, although the actual variant value of the reference remains the same.  The VI ref can become invalid or not, depending on small changes, but is always reproducible.  I assume there must be some similarity between VI and queue refs.  After spending some time researching, the Labview help states for the Open VI Ref component "If you do not close this reference, it closes automatically after the top-level VI associated with this function executes."  In this case I assumed it means that the moment the reentrant VI "Assign" finishes, the references will get cleared ??  So I made a non-reentrant VI (let's call it VI "NR Assign") that only assigns values to the references and VI "Assign" now calls this VI (It effectively does what I described VI "Assign" does).  I keep this VI alive by using it in a VI which never terminates and since it never terminates, the references should never become invalid.  Anyone still following?  This didn't solve the problem though.  If I reproduce the same scenario using only one instance of the template VI, it works just fine.  Furthermore, the VI and queue references are never closed, to aid analysis of the problem.  Can anyone shine some light on what happens when a template VI terminates?  Could this be the problem?
    Unfortunately I cannot include the code.
    Thank you whoever is able to make sense of this.
    Christie

    Christie wrote:
    Hi all,
    I have a fairly complicated problem, so please bear with me.
    1)  I have a reentrant SubVI (let's call it VI "Assign") that has an input cluster of (VI ref, queue ref) (let's call the cluster type "Refs").  If the VI ref is invalid (first execution), the VI ref and queue ref are assigned values and are passed on as an output cluster of same type.  (The VI does other things too, but for simplicity only this is important.)
    2)  The VI that calls VI "Assign" (let's call it VI "Store") is not reentrant and has a local variable of type "Refs" that is wired to the input and output of VI "Assign".  This VI effectively stores the references.  The references returned by VI "Assign" are always valid right after the call, but after the problem condition described below, they are invalid at the start of all calls before they are passed to VI "Assign".
    3)  VI "Store" is called by multiple non-reentrant VIs, so the local variables of VI "Assign" retain their values (Has been tested and verified to retain their values).  The VI causing the problem in this case is a template VI of which multiple copies are launched (let's call it VI "Template").
    The problem is that the moment an instance of VI "Template" is closed, the queue reference becomes invalid, although the actual variant value of the reference remains the same.  The VI ref can become invalid or not, depending on small changes, but is always reproducible.  I assume there must be some similarity between VI and queue refs.  After spending some time researching, the Labview help states for the Open VI Ref component "If you do not close this reference, it closes automatically after the top-level VI associated with this function executes."  In this case I assumed it means that the moment the reentrant VI "Assign" finishes, the references will get cleared ??  So I made a non-reentrant VI (let's call it VI "NR Assign") that only assigns values to the references and VI "Assign" now calls this VI (It effectively does what I described VI "Assign" does).  I keep this VI alive by using it in a VI which never terminates and since it never terminates, the references should never become invalid.  Anyone still following?  This didn't solve the problem though.  If I reproduce the same scenario using only one instance of the template VI, it works just fine.  Furthermore, the VI and queue references are never closed, to aid analysis of the problem.  Can anyone shine some light on what happens when a template VI terminates?  Could this be the problem?
    Unfortunately I cannot include the code.
    Thank you whoever is able to make sense of this.
    Christie
    All LabVIEW refnums do get deallocated automatically when the top-level VI in whose hierarchy the refnum was created goes idle (stops executing). You will have to make sure that the creation of a refnum is done inside a VI hierarchy that stays running for the entire time you want to use that refnum.
    Rolf Kalbermatter
    Message Edited by rolfk on 06-27-2007 11:52 AM
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Mini-Nugge​t Creating Typedef'd queue references

    Transfering typedef'd data using queues used to be tedious if the typedef changed and the transfering queue reference is passed between VI's using controls. The tedious part was updating all of the controls for the queue ref since they would not be linked to the typedef of the data the queues transfers. This Nugget exaplains how to create a queue ref that is tied to a type definition.
    1) Drop an obtain Queue
    2) Create, drop, and wire a typedef of the data that will be transfered by the queue.
    3) pop-up on obtain Que output and select "Create Control"
    4) Find created control and pop-up to select Advanced >>> Customize
    5) In control editor use the control palette >>> "Select a Control ..." and browse to the typedef from step #2
    Note:
    A) The typed must be dropped on the pink boxes
    B) The marching ants around the queue ref control confirms you are dropping in the correct location.
    6) Save the queue ref control as a type def.
    If you look at your hiearchy you will see that the typedef'd queue ref is using the type def from step #2.
    I hope this helps!
    Ben
    * This works in LV 8.6 but not in LV 7.1. I am not sure in which version the feature was introduced.
    Message Edited by Ben on 11-11-2008 02:21 PM
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Solved!
    Go to Solution.
    Attachments:
    Drop_Obtain_Que.JPG ‏19 KB
    Drop_n_Wire_Typedef.JPG ‏21 KB
    Drop_TypeDef_in_Control.JPG ‏41 KB

    That sounds about right.  I started doing this about LabVIEW 7.0 when I started using single-element queues for reference objects.  I always used the "create control, customize, save" method for creating the strict typedef reference, since it did not update correctly by itself in 7.0.  There were a lot of changes made in 8.0, some of which resulted in some fairly nasty crashes and hangs on type propagation (always modify your cluster with nothing else open in 8.0).  These were fixed in 8.2.  At this point, type propagation seemed to work OK.  However, I have been through a lot of versions of LabVIEW and have learned never to trust my memory on things like this.  Try it.  If it works, you are good .
    This account is no longer active. Contact ShadesOfGray for current posts and information.

  • Common reference based on Item Combination

    Hi,
    I had a scenario where i need to create a unique reference based on Item and org combination.
    Eg:
    Item Org Common
    Item1 A1 001
    Item2 A2 002
    Basesd on Item and Org Combination i need to generate a common reference value. Can some one help me out how to get this.
    Thanks.

    Hi,
    user11186474 wrote:
    Hi Frank,
    The data i will be having is for ever item and org combination i need to create a common reference value.
    For Eg:
    I have ItemA in Ai org for this item and org combination in need to create item a item and org combination..similarly for itemB and A2 org i need to create one more common reference.. this goes on for every item and org combination.
    The output of my table will look like this
    Item Org Reference
    ItemA A1 0001
    ItemB B1 002
    For Every Item and org combination i need to generate a unique reference value.In the above i need to generate a common reference value.So what's wriong with the query I posted earleir?
    If you want leading 0's so that the derived column always has 3 digits, then use TO_CHAR.
    if you want the output to sometimes have 4 digits (like '0001') and sometimes 3 digits (like '002') then use CASE.

  • Calculating reference based sum in variety of tables

    Hello there.
    Can anybody tell me if there is a way to calculate reference based sum in variety of tables?
    For example - I've got a sheet with some tables in it. There are header row and header column in each table. Each header column contains various items and the column next to it contains numeric value for theese items. Some items are repeating throughout the different tables.
    So, I'd like to make a master table that would contain the total value of each repetitive item without using table identifier in the formulas, because the number of tables will vary. Maybe there are some wildcards for this type of cases?

    _Go to "Provide Numbers Feedback" in the "Numbers" menu_, describe what you wish.
    Then, cross your fingers, and wait _at least_ for iWork'09
    Yvan KOENIG (from FRANCE mardi 12 août 2008 12:39:25)

  • Change to stack reference based

    Is this possible change to Stack Reference Based??
    If so , How to do it??
         private boolean solveHelper(int c, int r){
              if(r == n){
                   solved = true;
                   return true;
              if(c == n){
                   return false;
              if(hasNoConflicts(c, r)){
                   placePiece(c, r);
                   boolean done = solveHelper(0, r+1);
                   if(done) return true;
                   else{
                        removePiece(c, r);
                        return solveHelper(c+1, r);
              else{
                   return solveHelper(c+1, r);
         }

    Ya..it is homework...
    but we didn't taught how to unroll the recursive to
    Stack, so that why i'm came up and ask!!!
    So i'm beg you show me how?!You haven't been taught that?
    The texts that you have do not cover it?
    The teacher did not cover it?
    And yet you have been assigned that homework?
    Is part of the assignment supposed to be you doing your own research to find the methodology?
    If the answer to the last is "no", then I suggest you drop the class and file a formal complaint with the adminstration.

  • Queue / Support package issue

    Hi everyone!
    Can someone give me direction on resolving the following issue?
    Ssytem: SAP ECC 6.0
    I first updated the Kernel from level 58 to 83. eveything went fine from what I can see.
    Then I have been importing a queue to implement some Support Packages. the import has now stopped with the following errors:
    I am not too sure what it all means and where to go from there.
    Thank you for any explanations or suggestions
    Regards
    Corinne
    1 ETP199X######################################
    1 ETP152 TESTIMPORT
    1 ETP101 transport order     : "SAPK-60007INISOIL"
    1 ETP102 system              : "QAS"
    1 ETP108 tp path             : "tp"
    1 ETP109 version and release : "370.00.09" "700"
    2EETW165 Function "OIUREP_GET_RECENT_ROYHIST (OIUREP_ROY_HISTORY|05)" does not fit into the existing function group "(OIUREP_ROY_REPORTING|09)".
    2 ETW167 Please transport the whole function group.
    2EETW165 Function "OIUREP_GET_RECENT_VOLHIST (OIUREP_ROY_HISTORY|06)" does not fit into the existing function group "(OIUREP_ROY_REPORTING|10)".
    2 ETW167 Please transport the whole function group.
    1 ETP152 TESTIMPORT
    1 ETP110 end date and time   : "20070213113558"
    1 ETP111 exit code           : "8"
    1 ETP199 ######################################

    Hi Ammey and others ,
    The queue import failed with the same error.
    I have found in note 822379 that this message can actually be ignored.
    SAPK-60006INISOIL - SAPK-60007INISOIL
               Symptom: If the Support Packages SAPK-60006INISOIL und SAPK-60007INISOIL are imported together in a queue, the TEST_IMPORT step returns an error for Support Package SAPK-60007INISOIL. The following error messages are displayed in the test import log:
    Function OIUREP_GET_RECENT_ROYHIST (OIUREP_ROY_HISTORY 05)
       does not fit into the existing function group.
       (OIUREP_ROY_REPORTING 09)
    Function OIUREP_GET_RECENT_VOLHIST (OIUREP_ROY_HISTORY 06)
       does not fit into the existing function group.
       (OIUREP_ROY_REPORTING 10)
               Solution: You can ignore this error by choosing 'Extras'-> 'Ignore test-import error'.  The error will not occur during the later import.
    based on your latest message (2.39 PM) suggesting to ignore "Warnings" I should be able to mark the queue now as "Ignore test-import errors" and bypass my original error. That was the only error of type 8 or above.
    Thank you
    Corinne

  • Identify the Queue Name Based on the Datasource

    Hi Experts,
    How do we find the Queue name ( say for 2LIS_03_BF) in LBWQ based on Datasource/Extractor (2LIS_03_BF).
    Thanks,
    Satya

    Hi,
    Thanks for your reply,
    I have a question based on the above reply that Queue Name is based on the Application or Datasource?
    Thanks,
    Satya
    Edited by: satya prasad on Mar 11, 2010 11:21 AM

  • Queue assignment based on Input

    Hi All,
    Is it possible to assign a particular queue based on the Input payload?
    Regards,
    Naresh

    Hi,
    Check these
    /people/sap.user72/blog/2005/12/12/how-to-prioritize-messages-in-xi
    /people/arulraja.ma/blog/2006/08/18/xi-reliable-messaging-150-eoio-in-abap-proxies
    Regards

  • WLS 7.0.4 - JMS connection Factory for RMI queues - server affinity issues help pls

    We are using WLS 7.0.4 - One of JMS connection factory setting in admin
    console we selected "Server Affinity" options.
    We see this messages appear in Weblogic log file,
    ####<Apr 24, 2006 1:56:53 AM EDT> <Error> <Cluster>
    <liberatenode4.dc2.adelphia.com> <node4_svr> <ExecuteThrea
    d: '4' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
    <000123> <Conflict start: You tried to bi
    nd an object under the name sbetrmi2 in the JNDI tree. The object you have
    bound from liberatenode2.dc2.adelp
    hia.com is non clusterable and you have tried to bind more than once from
    two or more servers. Such objects ca
    n only deployed from one server.>
    and then,
    ####<Apr 24, 2006 1:58:12 AM EDT> <Error> <Cluster>
    <liberatenode5.dc2.adelphia.com> <node5_svr> <ExecuteThrea
    d: '7' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
    <000125> <Conflict Resolved: sbetrmi2 for
    the object from liberatenode5.dc2.adelphia.com under the bind name sbetrmi2
    in the JNDI tree.>
    Should we use 'load balancing option' instead of 'server affinity' ?
    Any thuoghts?
    Thanks in adv.
    Vijay

    Test Reply
              <Vijay Kumar> wrote in message news:[email protected]..
              > <b>WLS 7.0.4 - JMS Connection Factory - Server Affinity - issues in log
              > file</b>
              >
              > We are using WLS 7.0.4 - One of JMS connection factory setting in admin
              > console we selected "Server Affinity" options.
              >
              > We see this messages appear in Weblogic log file,
              > ####<Apr 24, 2006 1:56:53 AM EDT> <Error> <Cluster>
              > <liberatenode4.dc2.adelphia.com> <node4_svr> <ExecuteThrea
              > d: '4' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
              > <000123> <Conflict start: You tried to bi
              > nd an object under the name sbetrmi2 in the JNDI tree. The object you have
              > bound from liberatenode2.dc2.adelp
              > hia.com is non clusterable and you have tried to bind more than once from
              > two or more servers. Such objects ca
              > n only deployed from one server.>
              >
              > and then,
              > ####<Apr 24, 2006 1:58:12 AM EDT> <Error> <Cluster>
              > <liberatenode5.dc2.adelphia.com> <node5_svr> <ExecuteThrea
              > d: '7' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
              > <000125> <Conflict Resolved: sbetrmi2 for
              > the object from liberatenode5.dc2.adelphia.com under the bind name
              > sbetrmi2 in the JNDI tree.>
              >
              >
              > Should we use 'load balancing option' instead of 'server affinity' ?
              >
              > Any thuoghts?
              >
              > Thanks in adv.
              > Vijay

  • Eveny Based issue in Process Chain.

    Dear Bw Experts,
    In our Project we need to trigger the process chian based on Event. The parent chian is located at one server and dependent chain is located at another server.
    I created event and added to the parent process chain at end  and trying to give the same event in dependent process chian start variant . But it's giving an error message as this event does not exist.
    Please let me know how we could achieve this task. I want to trigger dependent process chian automatically after the completion of parent proceess chain.
    Thanks for your help.
    Regards,
    Nag

    Hi Nagarjuna,
    The event needs to be created in the target system i.e. server where the dependent chain is located.
    It can then be used in the start variant of that dependent chain.
    The parent chain in the source system should have the ABAP program at the end which would raise this event in target system. The ABAP program should have the FM 'BP_RAISE_EVENT' which will raise the event in target system using the parameters defined in the variant (event, target system etc).
    Hope this helps.
    Regards.
    Nikhil

  • Handling Error queue and Resolving issues - Best practices

    This is related to Oracle 11g R2 streams replication.
    I have a table A in Source and Table B in destination. During the replication by Oracle streams, if there is an error at apply process, the LCR record will go to error queue table.
    Please share the best practices on the following:
    1. Maintaining error table operation,
    2. monitor the errors in such a way that other LCRs are not affected,
    3. Reapply the resolved LCRs from error queue back to Table B, and
    4. Retain the synchronization without degrading the performance of streams
    Please share some real time insight into the error queue handling mechanism.
    Appreciate your help in advance.

    This is related to Oracle 11g R2 streams replication.
    I have a table A in Source and Table B in destination. During the replication by Oracle streams, if there is an error at apply process, the LCR record will go to error queue table.
    Please share the best practices on the following:
    1. Maintaining error table operation,
    2. monitor the errors in such a way that other LCRs are not affected,
    3. Reapply the resolved LCRs from error queue back to Table B, and
    4. Retain the synchronization without degrading the performance of streams
    Please share some real time insight into the error queue handling mechanism.
    Appreciate your help in advance.

  • Endeca Reference application issue

    Hi,
    I am getting below message while deploying discover reference application.
    Found version 6.1 of the Endeca IAP installed in directory
    D:\Endeca\PlatformServices\6.1.3. If either the version or location are
    incorrect, type 'Q' to quit and adjust your ENDECA_ROOT environment variable.
    Press enter to continue with these settings.
    **Does any one know why this is coming??.**
    I have cross checked Endeca root directory and Platform service location. Both are same.
    Thanks.

    The new properties will have to be added to product-sku-output-config.xml, which went under /atg/commerce/search in 10.1.0 (the location might have changed in 10.1.1). Check the ATG Endeca Integration guide for exact steps.
    HTH,
    Pankaj.

Maybe you are looking for

  • Pl/sql block returning sql query.

    Hello, I am using oracle 10g apex 3.2 version. I am using the following return statement inside my report which is pl/sql block returning sql query. declare pid varchar2(100); begin return 'select patient_id_code from t_files_data_exp where patient_i

  • I am trying to link to page in my document from the table of contents.  How can this be done?

    I am trying to link to page in my document from the table of contents.  How can this be done?

  • Automated Material Variant Creation

    Is there an automated way to create material variants once a configuration is entered on a sales order, if one does not already exist? Take an example, I have configurable material ComputerA which is a laptop computer. Say there are two possible conf

  • Sound Blaster Live! 24-

    This is my first sound card. (Don't laugh) I am pretty PC knowlegable, but I'm not sure whats going on with this thing. Let me give you my specs first: AMD Athlon 600+ (.4 Ghz) Windows XP (Home) SP2 024 DDR (PC2700) RAM BFG 6200 (OC) 256 MB AGP So my

  • Sapscript Formatting

    Hi everyone. I am have this piece of code in SAPscript MAIN window editor: /:   IF &PAGE& = 1 /:   POSITION XORIGIN '0.2' CM /:   BOX WIDTH '77' CH HEIGHT '190'MM FRAME 10 TW /:   BOX WIDTH '77' CH HEIGHT '1.2'LN FRAME 20 TW /:   BOX XPOS '17' CH WID