BPM 11g  ids:getUsersInAppRole  function

Hello,
I'm working on BPM 11g, and I'm trying to use the getUsersInAppRole function but it returns multiple nodes since there are more than one user in the role, then while trying to assign it to a XML list of strings it throws an exception. I think I should use a transformation to achieve the assignment, but what do I use as a source element since it is the result of a function and I don't know what type it returns?
thanks

Hi Josué,
Let me preface this by saying I'm not especially proud of this solution. It's a workaround to a bug (at least I think it is a bug) in 11.1.1.5.
Here are the steps I did. Let me know if one or more of these do not make sense.
1. Before entering the subprocess, I populate a 'parts' variable (a component variable that is a Types.Participants) from my method call (know you're using 'getUsersInAppRole' - I'm using a different method that returns this type). This stores the array of userObject (a Types.UserObjects type component).
2. Create the subprocess using the 'MultiInstance' loop characteristic and uncheck the 'Is Sequential' checkbox. For the subprocess's Loop Cardiality I used the XPath Expression
count(bpmn:getDataObject('parts')/ns:userObject)In the Completion Condition box, check the Use Expression checkbox and enter the XPath Expression
bpmn:getActivityInstanceAttribute('subprocess0', 'loopCounter')  <= count(bpmn:getDataObject('parts')/ns:userObject)3. In the Arguments Definition tab, the incoming needs to be (in my case anyway) a variable of the type 'Types.UserObjects'. This means that you're passing in the whole array of users instead of a single userObject. The reason I had to do this is because when you click the arguments 'Use Associations' checkbox and edit it and click the Expression Builder icon, the loopCounter is not present in the list of available variables (the loopCounter variable is used by the subprocess to keep track of the loop count that you're currently on). Because it is not in the list, you cannot just pass in the single UserObject.
4. You can work around this problem by retrieving it using a Script activity (or using the incoming associations to any activity) and setting a 'part' variable (a variable of the type Types.UserObject) to
parts.userObject[loopCounter]It's odd that you can get the loopCounter variable everywhere inside the subprocess activity you need it except for inside the incoming Arguments Definition tab.
Hope this helps,
Dan

Similar Messages

  • BPM 11g Process Administrator functions: Where are they now??

    Good morning,
    I've got some decent ALBPM6.0.5 experience, and now I've just started in a new project that uses BPM 11g. I've attended to an Oracle "Hands On" so I know 11g is VERY different from 10g/ALBPM.
    My main problem is that I cannot find anywhere where are Roles and Users managed in the server. From where do I administer Roles, Users, Groups, Organizational Units. All that used to be in the Process Administrator. How is that done now? I swear I've gone through all the documentation at http://download.oracle.com/docs/cd/E14571_01/soa.htm and still found nothing :(
    Also, is now using an LDAP mandatory? Or can something like ALBPM Directory still be used??
    Thanks in advance.

    User/Role management is now done through the workspace itself. You must login as an administrative user (like weblogic) and you will see an Admin link in the upper right of the workspace.
    Authentication and user lookup is now handled directly by Weblogic - so you setup authentication Providers in the WLS security realm through the admin console.
    By default Weblogic is configured to use an internal LDAP that stores local users (this is where the "weblogic" user itself is defined).
    General steps are provided here:
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10226/hwf_config.htm#BHCJGBFJ
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/secmanage/atn.html#wp1198953
    Edited by: Mike Rokitka on Jul 2, 2010 11:17 AM

  • Which Function Should i use for static values for a an array[] in BPM 11g.

    Hi Experts,
    Please throw some light on this..
    I've a requirement which is bugging me..
    How do i assign a static value to a array in BPM11g in script activity. What exactly function do i need to use to assign a Static value for an Array []
    I been doing like taking the business object as a Array thats fine. But how can i set a static value in BPM 11g.
    Iam using BPM 11.1.1.6 version..
    Regards,
    Pavan

    Hi Pavan,
    Here's one approach, but it assumes you're comfortable with XSDs and XML.
    Know this is light on detail, but without knowing what your array looks like it's the best I can do. Here's what you'd do from a high level:
    1. Create an XSD that defines the structure of your array.
    2. Create the XML that represents the static item you want to add to the array.
    3. Create a process variable based on the XSD that defined the array.
    4. Add a Script activity.
    5. Open the "Implementation" tab -> click "Data Associations".
    6. On the right, expand the folder under your process -> drag the XML icon in the upper right corner on the array variable -> paste your XML into the XML literal panel.
    Hope this gets you going,
    Dan

  • BPM 11g - FYI task to send a copy to each member of a group

    In BPM 11g I am trying to send an FYI task to each member of a group. They should each get their own copy of the task so that it does not get removed from their inbox when the first person dismisses it.
    I was not successful in getting multiple copies of the task using FYI type even when multiple users were defined in the participant list. So, I changed the participant type to parallel. This was successful in sending mulitiple copies when I defined a participant list of hard coded users, but the process stopped and waited until at least one of the users dismissed it (so the FYI only behavior changed, but I can get around that with a parallel process flow).
    Still using parallel participant type, I have been trying to change from my hard coded list of users to a security group of users. If I set assignment to the group, only one task is created for the group. So, I have been trying to assign to users and use the expression ids:getUsersInGroup('LoanAnalyticGroup') to get the users in this group. I have tried several approaches to this expression but can't get it to work.
    Has anyone else successfully implemented sending tasks to all members of a group in 11g? Any advice?

    Hi all,
    We are also facing same issue.
    The function ids:getUsersInGroup doesnt return value.
    Even i imported identityservice.xsd and is_config .xsd and created variable using the *"users"* element of identityservice.xsd schema and assigned the value to this variable.
    But Audit always says
    *"XPath query string returns multiple nodes.*
    *According to BPEL4WS spec 1.1 section 14.3, The assign activity part and query should not return multipe nodes.*
    *Please check the BPEL source at line number "72" and verify the part and xpath query "*
    Help me to resolve this issue.

  • How to get the assignees for a specific role in process in BPM 11g

    Hi, Gurus,
    I am using BPM 11g. I am trying to retrieve all the assignees for a a specific role in process. It will be a parameter for a business rule to do further routing rule. But it seems there is no way to get the information. I found that there are Identity Service Functions in Human Task Assignment. But Identity Service Functions are not listed in Business Rule Activity, neither listed in other activities except Human Task Assignment. I cannot get the assignees in my process.
    Is there any way to get all the assignees for a role? I also tried to retrieve the assignees out engine with Worklist API, but it cannot get either. Actually we can get all the assignees information in automatic activity in OBPM 10g. Maybe I am still not familiar with 11g. Any advice is appreciated.
    FYI:
    My scenario:
    Suppose we have a role named ApprovalTeam. In this role, there will be several different department manager (BPM User) added in the role through Workspace. At run time, a request (With department info) with go through the approval by ApprovalTeam. A Business Rule Activity with decide which department manager will approve this request. Different department request will be dispatched dedicate managers, not all the managers in the role. I have an external JavaBean to get the department information from LDAP. To do the routing, I also need know all the department managers (BPM User) in the ApprovalTeam role. Then I can compare which department manager is matched with the request and assign the task to him.
    Thanks a lot,
    James
    Edited by: James Piao on May 31, 2010 6:25 PM

    or this?
    SQL> select text from ALL_VIEWS
      2  where VIEW_NAME
      3  ='EMP_VIEW';
    TEXT
    SELECT empno,ename FROM EMP
    WHERE empno=10

  • BPM 11g Process Hierarchy?

    Hi,
    In the BPA Suite I can define a process hierachy by assigning a BPMN process diagram to a function like a subprocess.
    (How) can I do this in the BPM Suite 11g?

    I believe you have to use the Send/Receive tasks now in order to call a reusable subprocess in BPM 11g. This requires the sub process to be message based where as the Call activity allowed non message based processes.

  • BPM 11G comments and file attachments issue on human tasks

    Hi all,
    We have used JDeveloper 11G and SOA suite 11G + BPM (with PS1,PS2) to create and deploy a simple BPM process. The process consists of two swim-lanes ( Business Analyst and Snr Executive). The BA swim-lane has a human task which which initiates the process and the second swim-lane (SE) has a voting task. Both forms were auto generated.
    ------ Process steps ----
    step 1. The initiator of the process( Business analyst) submits a document and adds comments on the form. (1st swim lane)
    step 2. The task is received by the Snr Executive group and they need to accept or reject the document.
    step 3. If any of the Snr Execs rejects the document, the process flow goes back to the Business analyst(the requester or initiator) for review.
    (the voting group is able to share comments and the file attachments).
    step 4. The business analyst receives a task on her list. This task list should have the comments made by the Snr Execs who rejected the document. ---This is where we are having a problem. The business Analyst, receives the task, but the document and comments are not updated. This still shows the original document and comments, she sent when initiating the process.
    We have opened a SR with My Oracle support and it was suggested we apply a hot fix 9958661, which was done (see output below). Unfortunately this did not solve the problem.
    Questions:
    1. Is the default behavior of BPM 11G ?
    2. How can we change this behavior to do what we want ?
    ---------------------------------------opatch update output -----------------------------------------------------------
    ApplySession adding interim patch '9958661' to inventory
    Verifying the update...
    Inventory check OK: Patch ID 9958661 is registered in Oracle Home inventory with proper meta-data.
    Files check OK: Files from Patch ID 9958661 are present in Oracle Home.
    The local system has been patched and can be restarted
    I any suggestions would be welcome.
    Thanks
    Mocheche

    Ok, this is what i did:
    - I have a Process Data Object called CustomComments with just 1 attribute called comments.
    - I have added that object to my user screens (adf page)
    - Changed its columns att to 65 and rows to 8 (i chose that layout)
    - Used a tableLayout to add an icon next to this text area to allow the user to add comments:
    <af:commandImageLink shortDesc="addCommentImage" id="addCommentImage" partialSubmit="true" icon="/hw_images/new_ena.png">
         <af:clientListener method="myFunction" type="click"/>
         <af:clientAttribute name="attributeName" value="attributeValue"/>
    </af:commandImageLink>
    I use that clientAttribute to send the logged user to the javascipt.
    - I added this after the af:document on top of the page to make the customComments readonly to the user (you need to do it here because if you set it in the properties the element is not updated later), so the user has to use the button i put to add comments:
    <f:facet name="metaContainer">
         <f:facet name="metaContainer">
         <af:resource type="javascript">
              function readOnly(){
                   var comms = document.getElementById("it1::content");
                   comms.setAttribute("readOnly","true")
         </af:resource>
    </f:facet>
    <af:clientListener method="readOnly" type="load"/>
    - Somewhere i added the javascript the commandLink calls:
    <trh:script id="myScripts">
         function addComment(evt){
              var commentArea = document.getElementById("it1::content");
    var user = evt.getSource().getProperty("user");
    var comm = prompt("Please enter your comment: ","");
              if (comm != null) {
                   if (comm != ""){
                        if (commentArea.value !=""){commentArea.value = commentArea.value + "\n"}
                        commentArea.value = commentArea.value + "user.value" + " : " + comm;
    </trh:script>
    After all this, you have an object that carries the comments from one screen (UI project) to another and is updated each time.
    I know it may not be the perfect solution and that it could be improved a lot, but so far it does what i need so i use it.
    If there is anything i wasnt clear enough, please let me know. Hope this helps.

  • "Call Activity" task not available in Jdeveloper BPM 11G Beta2 ?

    Hi,
    The "Call Activity" task is no longer available in Jdeveloper component palette (as of 11.1.1.3.PS2_GENERIC_100302.2020.5629)
    But this task is still available in BPM Composer (BPM 11G Beta 2 same delivery as Jdeveloper).
    We are currently in the modelizaion phase of a Business Process and for the flexibility , lisibilty it's really important for us to use this feature.
    Could you provide us a patch or a new version of Jdeveloper where this issue is fixed ?
    Thanks.

    The Call Activity was removed because this feature is not ready to be released as part of R1. It will return soon! It should also be removed from Process Composer.
    In the meantime, the functionality is nearly the same if you use a separate process and call it using the Service activity.
    Heidi.

  • BPM 11g ADF BC Web Service

    I've created, tested and successfully deployed an ADF BC Web Service to the SOA server using JDeveloper 11.1.1.7.  Using the BPM 11g Process Composer tool, how do I access the deployed ADF BC Web Service?  I would like to use the named view criteria of the ADF BC Web Service to populate a Process Composer web form.  The add new service function of the BPM Business Catalog is not accepting the JDeveloper generated WSDL file. 

    That's the end goal, but I haven't gotten that far.  I'm using the 11.1.1.7 versions of ADF JDeveloper and the BPM suite.  I'm attempting to consume an ADF BC web service from my BPM process using the Composer tool, but I first need to figure out how to publish/register the ADF BC web service with the BPM so that I can reference the ADF BC web service in the implementation of the BPM Service Task as a Service Call.  I thought I could register the ADF BC web service with the BPM using the BPM business catalog but when I attempt to add a new service and give it the WSDL generated from JDeveloper I get this error:
    BPM-71536: BCModelsService.wsdl has a dependency to BCModelsService.xsd that cannot be resolved.

  • BPM 11g API

    Has anyone been able to find documentation on the BPM 11g API? I thought there was a Java-based API available so I can integrate a Java-based web app into my BPM project. Anyone found a link for it?
    Thanks,
    Mark

    Since the activies of process in BPM11g is implemented by Human Task component, we can control the task with Workflow Service API.
    http://download.oracle.com/docs/cd/E15523_01/apirefs.1111/e10660/toc.htm
    However, this is not a real BPM API. Some process scale function is not exposed.
    Hope oracle will release something like PAPI soon.

  • Rules of thumb for sizing an Oracle BPM 11g deployment

    Anyone out there have some rules of thumb they are using to size out an environment for Oracle BPM 11g? I know processing power can vary widely for process complexity and amount of data floating around. Still, I get asked questions like how much processing power do I need for this solution? I have a current client looking at 2500+ potential human workflow users with 1000 concurrent at peak load. Short of running some performance test myself and extrapolating numbers I am at a loss. Hoping some others can chime in with some thoughts.

    an update... my rule of thumb for 50 users has proven to be a bit high. Looks to be 30-40 per core when you split out the BPMN engine from other computing intensive processes such as the ESB. Without splitting up overall SOA/BPM functionality over multiple servers concurrent user counts of various technology really takes a hit.

  • Question on BPM 11g Workflow Services

    Hi,
    There was no out of the box support feature which would enable the end users ( agents ) to fetch a work item one at a time from some queue . This allocation/fetch would be done on the basis of some algorithm ( SLA, Priority etc ) . We developed this custom feature through the APIs provided in BPM 10g - Process API ( aka PAPI ). Now we have to port this custom feature to Oracle BPM 11g and there is no equivalent support for PAPI available in BPM 11g . There is another API - workflow services , but we are not sure if it will support the same feature as we are struggling to get Oracle BPM 11g installed. Request you to kindly help us in identifying if the same functionality can be achieved in BPM 11g.
    Regards,
    CC

    Hi Chandu,
    Were you able to close the same? If yes, please help me also...

  • Send Mail in BPM 11g

    Hi.
    I´m using BPM 11g and i want to send mail to different roles.
    Someone knows how to implement a service to send mail..?

    Human tasks in 11g have some out of the box capabilities for notifications (email being one of the transport mechanisms). For details refer to the documentation:
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10224/bp_hwfmodel.htm#BABICIAH
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10224/bp_designtf.htm#CHDJBIDE
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10226/ns_config.htm#BABJFFAF
    If the out of the box capabilities don't do what you need, then you can use the User Messaging Service API or javax.mail API to implement your custom functionality.
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10224/partpage_vii.htm#BCIHAJJI

  • Failed to create instances after migrating BPM 11g to another server

    Did a BPM 11g migration, we need to delete the original schema, then import using impdp, we met error after starting SOA-Server1 (Please find soa.out log attached )
    The directly error is:
    ORABPEL-10513 Cannot get application roles from application identified by "{0}". An error occured while getting application roles from application identified by "OracleBPMProcessRolesApp". The underlying APIs threw an exception.
    <May 5, 2011 10:25:00 AM CST> <Error> <oracle.soa.b2b.transport> <BEA-000000> <AQDequeuer_ReadMessage: A database exception occurred: java.sql.SQLException: ORA-25226: dequeue failed, queue DEV_SOAINFRA.IP_OUT_QUEUE is not enabled for dequeue
    Anybody can give some suggestions please?
    Thanks for help.
    Regards,
    Katherine

    After Rechecking the log of soa_server, the error disappears now:
    "<Error> <oracle.soa.b2b.transport> <BEA-000000> <AQDequeuer_ReadMessage: A database exception occurred: java.sql.SQLException: ORA-25226: dequeue failed, queue DEV_SOAINFRA.IP_OUT_QUEUE is not enabled for dequeue"
    However,
    background server is still reporting: "<Warning> <oracle.integration.platform.blocks.event.saq> <SOA-31013> <Error handling message (rolling back).
    java.sql.SQLException: ORA-06575: Package or function EDN_DEQUEUE_OAOO_DELIVERY is in an invalid state
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:74)
    at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:135)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:210)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:473)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:423)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1095)
    at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:201)
    at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1036)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1379)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3568)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3739)
    at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:8150)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1535)
    at weblogic.jdbc.wrapper.PreparedStatement.execute(PreparedStatement.java:99)
    at oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus.readOAOODelivery(SAQBusinessEventBus.java:1302)
    at
    oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus.handleSingleOAOODelivery(SAQBusinessEventBus.java:750)
    at oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus.handleQueueEvents(SAQBusinessEventBus.java:669)
    at oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus.access$000(SAQBusinessEventBus.java:71)
    at oracle.integration.platform.blocks.event.saq.SAQBusinessEventBus$1.run(SAQBusinessEventBus.java:319)
    at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:105)
    at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)
    at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)"
    Thanks for further help!
    Regards,
    Katherine

  • Availability based routing in Oracle BPM 11g

    Hi
    Does Oracle BPM 11g support availability based routing enabling equal distribution of work? If so can someone guide me on how to do it?
    Regards
    Venkat

    Also see this http://docs.oracle.com/cd/E15586_01/integration.1111/e10224/bp_worklist.htm#CHDBBIIC
    Group rules do the following actions:
    Assign to member via—You can specify a criterion to determine which member of the group gets the assignment. This dynamic assignment criterion can include round-robin assignment, assignment to the least busy group member, or assignment to the most productive group member. You can also add your custom functions for allocating tasks to users in a group.

Maybe you are looking for

  • Preview monitor suddenly stopped working and disappeared

    In the middle of my edit, clips refused to play and my separate external preview monitor blinked back to the desktop. Now, even after a restart, importing into a new project, reconnecting and disconnecting equipment, I can't get the second monitor op

  • CFolder and Adobe Interactive Forms-reply ASAP

    Hi we have a new requirement where there needs to be integration of cFolder with Adobe Interactive Forms. I would like to know: How cFolders integrate with Adobe IF? Concept behind combining these two technologies. Does cFolder integrate with Java Ad

  • How to display subtab pages

    Hi to everyone, No doubt this house is full of geniuses. Problem i have in my application is I have a main tab canvas which has two tab pages 1. Main 2. Details on detail page i want to display multiple subtab pages. What I want to achieve is when I

  • H8-1240ef - installing Windows 7 on a ssd drive

    Hi, I have a HPE h8-1240ef with a 1 TB SATA III drive. I would like to add a 64 GBytes SSD SATAIII Drive in order to install Windows 7 on it , to increase performances. Since we do not have a "Windows 7 installation CD" with the HP machine, I do not

  • Firefox cannot download any Flash content using Mac OS Lion

    I am running Mac OS Lion (10.7) and FF 4.01 and 5 (on another Mac). I have both Flash & Video Download and Flash Video Downloader - neither works. It downloads a file showing nothing by gibberish (code).