Papi WS Notifcation using Correlation

Hi,
is there any way to notify a process instance via Papi WS using correlations in just one call? I saw that there is an operation for sending a notification, but it seems to accept only the instance id. Of course, I can make beforehand a call to getInstanceByCorrelation to find out the instance id and then pass it to the notification operation, but is there a kind of combined operation to do that?
Thanks a lot and regards
Matthias

Hello,
I have the same problem. My process has a Notification Wait exposed as a Web Service, but into the WSDL the method I would use to notify the process is described like this:
<xsd:element name="notify">
<xsd:complexType>
<xsd:sequence>
<xsd:element type="xsd:string" name="sessionId"/>
<xsd:element type="xsd:string" name="instanceId"/>
<xsd:element type="xsd:long" name="codeArg"/>
<xsd:element type="xsd:string" name="valueArg"/>
<xsd:element type="xsd:boolean" name="esitoArg"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
codeArg and valueArg are the arguments I used to create a Correlation with the process instance
esitoArg is an argument that my process would get from an external caller
I know that I can get the sessionId using the startSession method
but, considering that I'm using correlation, why does ALBPM ask for the instanceId ???
Any help will be much appreciated.

Similar Messages

  • Top n Analysis using correlated subquery

    Please explain this query. It is doing top n analysis using correlated subquery. I need explaination of execution of this query.
    Select distinct a.sal
    From emp a
    where 1=(select count ( distinct b.sal) from emp b
         where a.sal <=b.sal)
    Thanks in advance

    Try breaking the query down and rewriting it in order to follow the logic;
    SQL> --
    SQL> -- Start by getting each salary from emp along with a count of all salaries in emp
    SQL> --
    SQL> select   a.sal,
            (select count (distinct b.sal) from scott.emp b ) count_sal
    from scott.emp a
    order by 1 desc
           SAL  COUNT_SAL
          5000         12
          3000         12
          3000         12
          2975         12
          2850         12
          2450         12
          1600         12
          1500         12
          1300         12
          1250         12
          1250         12
          1100         12
           950         12
           800         12
    14 rows selected.
    SQL> --
    SQL> --Add a condition to the count for only salaries below or equal to the current salarySQL> --
    SQL> select   a.sal,
            (select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) rank_sal
    from scott.emp a
    order by 1 desc
           SAL   RANK_SAL
          5000          1
          3000          2
          3000          2
          2975          3
          2850          4
          2450          5
          1600          6
          1500          7
          1300          8
          1250          9
          1250          9
          1100         10
           950         11
           800         12
    14 rows selected.
    SQL> --
    SQL> -- Add a condition to only pick the nth highest salary
    SQL> --
    SQL> select    a.sal,
             (select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) rank_sal
    from scott.emp a
    where (select count (distinct b.sal) from scott.emp b where a.sal <=b.sal) = 4
           SAL   RANK_SAL
          2850          4
    1 row selected.Hope this helps.

  • I'd like to select print paper size with using AxAcroPDFLib method depend on user

    I'd like to select print paper size with using AxAcroPDFLib method depend on user
    request. Is it possible? in AxAcroPDFLib?
    Is there any method to select print paper size in the C# programming.
    Or if you know another method, please introduce how to use.
    Thank you for your cooperation always.

    I am pretty sure that you can only do this from JavaScript or from C/C++ APIs.

  • Correlation Problem: unable to Use Correlation and Activate correlation

    Hello,
    i have created correlation name in correlation list and assigned involved messages and assigned proper field in correlaton in properties .i am able to view my correlation name in the properties of both receive steps ,but when i assign it to use correlation and move cursor to activate correlation .value in use correlation is not holding the value and holding space ,the same is happening to activate correlation field.
    I am using PI 7.1.
    Please let me know if you have really overcome this issue.
    Regards,
    Vishal K
    Edited by: vishal kharat on Aug 3, 2011 6:15 PM

    it seems there is no way.
    See note 1797073
    Is there someone with a better solution?

  • Using correlation with asynch RFC - Please Help!

    Hi !
    We have this scenario:
    1) receive asynch messageA
    2) transform messageA to messageB
    3) send ASYNCH RFC messageB
    4) receive RFC messageC
    5) switch condition based on messageC
    5-ok branch) send messageA
    5-err branch) throw exception
    We have only 3 containers, they are all abstract interfaces: messageA, messageB and messageC.
    We need to correlate steps 3) and 4), to match the returning messageC with the corresponding sent messageB.
    Is it ok to complete "Activate Correlation" in Send step 3) and only "Use Correlation" in Receive step 4), both with the same "name" ??
    how do we correlate different message types? (messageB <> messageC) do we need to use a container to correlate?
    Thanks !
    Matias

    Matias,
    You are right..u need to activate correlation step 3 and use it in step 4.
    Correlation between diff msg types happens this way..
    when you define a correlation...u've to defien the fields of the correlation, and the participating msg interfaces and how each msg interface populates/reads the correlation fields
    eg.
    Correlation Name: MatchPO
    Definition:
    PO_Number XSD simple Type xsd:string
    Participating Interfaces:
    MI_Purchase_Order
    MI_Sales_Order
    PO_Number = MI_Purchase_Order/Header/PONUM
    PO_Number = MI_Sales_Order/Header/Sales/PONR
    to define the correlation...u need to switch to correlation editor from process view in Integration Process editor
    hope it is clear now..
    praveen

  • Using Correlation in Initiator Task

    Hi All,
    I have a Manual BPM Process. At anypoint and time, to gain access to existing instance I'm using Event Sub-Process inside the same BPM Process.
    To hook up with the right instance I'm using Correlation in Event Sub-Process. It's start node activity uses the correlation property.
    Now the problem is, where do I initiate the correlation property, since the process is kicked of by the initiator. If I initiate correlation in the Human Task I'm receiving Correlation Violation Exception.
    Please share your thoughts.
    Two Cents,
    Karthick

    Hi,
    I had faced the same problem earlier also. The solution is very simple. You have to create another correlation with same properties  as the first one but with a different name. Now you will definitely be able to select the correlation.Select any one of the 2 correlations as they are doing the same tasks.
    Hope it helps you buddy!!!!
    Thanks
    Biswajit

  • Using correlation names :new and :old in ODBC

    Does anyone know how to use correlation names :new and :old through an ODBC connection?
    EG:
    CREATE TRIGGER Print_Cust_changes
    BEFORE INSERT ON CUST_tab
    FOR EACH ROW
    BEGIN
    dbms_output.put('Adding: ' || :new.custid);
    END;
    When I try to do that using ODBC, I get this error:
    Server Msg: 24344, State: HY000, [Oracle][ODBC][Ora]
    Trigger, procedure or function created with PL/SQL compilation error(s).
    And if I try and Insert I get:
    Server Msg: 4098, State: HY000, [Oracle][ODBC][Ora]
    ORA-04098: trigger 'BCL.PRINT_CUST_CHANGES' is invalid and failed re-validation
    The same code works perfectly in SQL*Plus.

    The plot thickens...
    I just tried this code:
    CREATE OR REPLACE TRIGGER Print_Cust_changes
    BEFORE INSERT ON CUST_tab
    FOR EACH ROW
    BEGIN
    INSERT INTO CUST_LOG VALUES('X');
    END;
    And received the same error:
    Server Msg: 24344, State: HY000, [Oracle][ODBC][Ora]
    Trigger, procedure or function created with PL/SQL compilation error(s).
    Again, using the same code (Cut & Paste) in SQL*Plus, it works without any problems.
    The ODBC function being used is: SQLExecuteDirect(), ODBC driver is SQLORA32.dll v9.02.00.00
    CREATE TABLE, VIEW, INDEX etc, all work fine, but not a trigger. If I read the code back from ALL_TRIGGERS after using SQL*Plus or the console application to create the trigger, it is exactly the same code...

  • Recieve Step -Use Correlation and Activate Correlation

    Hi,
    In Integration process-recieve step , Can any one Please explain what does the properties USE CORRELATION and ACTIVATE CORRELATION mean and where these should be defined?
    Many Thanks,
    Sharath

    These are if you are going to be receiving many message into the same IP.
    By default an IP is created everytime a new message is received. If you don't want this to be the case you can specify a correlation which says that if message A contains 123 and if message B contains 123 in a sepcific field then they belong in the same IP.
    you define these where you define your containers you just have to toggle between the two modes.

  • Can we put time on receive activity using correlation sets ?

    I am using correlation sets for po process using ponumber.
    In our process we send po message out and then wait(receive) for the response.
    The receive activity will go into dehydration while waiting
    for the response with the ponumber.
    Is there any way to put a time on this receive activity so that we
    can continue with the flow after certain time.
    I was able to terminate the whole process by putting alarm
    around the receive, but I want the process to just stop the
    receive activity and continue with rest of the process.

    Hi,
    By substituting receive with pick/onMessage/onAlarm, you should be able to implement the behavior you are looking for.
    -Edwin

  • How to use Correlation

    Hi experts,
    I'm working on file to file scenario using BPM.
    i have 2 input files
    1st file structure   Name Salary Id
    2nd file structure  Id
    i want to get the output from the first file if the Ids from both files are matching
    how can i do this using correlation?
    Is it necessary to use a container operation if i use correlation?
    Thanks
    Sreedivia

    Hi
    To check whether ur bpm is correct or not.
    Go to the transaction sxi_cache and select intergration process node in the left column and in the right side all the integartion processes will be displayed.
    select ur integration process and check whether th IP code is 0 or 99 if it is 0 thenthe BPM u have created is correct else there is some error in BPM.
    if the code is 0 in sxi_cache then just go to the sxmb_moni transaction select ur message and click on PE a new screen will be opened select the button graphical worlfolw in the menu in the upper part of the window.
    u will able to see the complete workflow of the BPM .
    if u still face the problem please reply me back.
    Thanks
    Rinku

  • Error while using correlation ID

    Hi I am getting the following error when my host is trying to reply using the correlation ID. The error say it cant find the instance with instance key dbde176c78edd4fd:59c59d4e:12393555045:-7fc4. But when i search in BPEL console with the instance key I am able to get the instance. How to solve this error kindly help.
    Thank you
    09/09/07 12:56:48 0 - ORABPEL-02152
    Instance not found in datasource.
    The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
    Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
    <2009-09-07 12:56:48,928> <WARN> <default.collaxa.cube> <BaseCubeSessionBean::logWarning> Error while invoking bean "finder": [com.collaxa.cube.engine.core.InstanceNotFoundException: Instance not found in datasource.
    The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
    Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
    ORABPEL-02152
    Instance not found in datasource.
    The process domain was unable to fetch the instance with key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" from the datasource.
    Please check that the instance key "dbde176c78edd4fd:59c59d4e:12393555045:-7fc4" refers to a valid instance that has been started and not removed from the process domain.
         at com.collaxa.cube.engine.data.AdminFinder.lookupInstanceByConversationId(AdminFinder.java:306)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.collaxa.cube.engine.data.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:58)
         at $Proxy1.lookupInstanceByConversationId(Unknown Source)
         at com.collaxa.cube.ejb.impl.FinderBean.lookupInstanceByConversationId(FinderBean.java:205)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:693)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxNotSupportedInterceptor.invoke(TxNotSupportedInterceptor.java:43)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at FinderBean_RemoteProxy_4bin6i8.lookupInstanceByConversationId(Unknown Source)
         at com.oracle.bpel.client.Locator.lookupInstance(Locator.java:448)
         at displayInstance.jspService(_displayInstance.java:123)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:400)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:414)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:623)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:259)
         at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:51)
         at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:193)
         at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:284)
         at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:198)
         at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:230)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.security.jazn.oc4j.JAZNFilter$1.run(JAZNFilter.java:400)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:414)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)

    Server issue problem got resolved

  • HT4356 How do I get the photo paper to print using an app from my iPad?

    Has anyone had difficulties using an airprinter. I have been using a crafting app with photos. I selected my HP airprinter
    To print the project. The first 3 times it worked correctly. Now when I try to print it will not use the photo paper.
    It will print out on regular paper.
    Any suggestions?
    Thank you.

    Has anyone had difficulties using an airprinter. I have been using a crafting app with photos. I selected my HP airprinter
    To print the project. The first 3 times it worked correctly. Now when I try to print it will not use the photo paper.
    It will print out on regular paper.
    Any suggestions?
    Thank you.

  • Correlation in bpm - Difference between activating and using correlation

    Hi
       I would like to know the difference between between activating a correaltion and using a correlation in a step.

    Correlation is used when you have multiple recieve steps in the BPM to differentiate each file.
    Consider your recive step is executed and the BPM is active waiting for the other file to comne in.
    Before the next file comes in , if another BPM is activated becuase your recived recive1 message. Now, when the next message comes in , how does XI know which BPM instance is to be used.
    Correlation is used in these cases. to corelate the messages.,
    some people name their Correlation as correlation in IP. So it means using the correlation 'correlation'.
    its like me creating a message interface by the name 'messageinterface' so finally i am using the message interface messageinterface !!!
    Check this weblog ..
    /people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
    to understand it refer -
    /people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
    Also Ref checklist on when it is needed -
    http://help.sap.com/saphelp_nw04/helpdata/en/6d/94364296f1b26be10000000a155106/content.htm
    Thanks !!

  • New paper published on using Groovy in JDeveloper 11g.

    If you are looking to use Groovy expressions in ADF Business Components but finding the current developer guides less than helpful, I've pulled together some typical use cases into a new white paper
    http://www.oracle.com/technology/products/jdev/11/how-tos/groovy/introduction_to_groovy.pdf
    Please let me know if you have any corrections/questions/feedback/
    Thanks
    Grant

    Thanks Grant for this paper.
    I was wondering what could be the next level of integration of groovy besides ADF BC inside ADF apps.
    As I have no real experience with Groovy at this time, would it be realistic to write groovy classes either in the model or the view/controller layer ?
    The idea is to benefit from Groovy powerful aspects as a dynamic and very concise language. Such groovy classes would be used to extend ADF framework classes for example.
    Does that makes sense to you and do you see any oppurtunities of such an integration ?
    Thanks,
    Seb.

  • Print in A4 size paper through AS3 using Flash CS5

    Hi all,
    Is any idea to print a job in A4 paper size by defult through AS3 using Flash CS5?

    Hi Shakeel,
    I am already having customised page format .
    It works fine when I choose Standard Device type EPLQ550
          But EPLQ550 is probably not supporting Arabic text.   It Gives ########
    Thats why I changed to Standard Device type ARSWIN
        Now Arabic text looks ok..... but Printer is not getting initialised after the first check. it skps.
    Pl suggest
    Thanks
    SK

Maybe you are looking for