Getting User Id which Approved Human Task

Hello,
how can I get User which approved Human Task in BPM Workspace. My Task is assigned to role but I need to know which one user approved form and have moved it to next stage of my process.
Thanks

Hi any one can help my scenario I am new to BPM/SOA,
I want to use this Xpath function for getting the previous task approver.{ hwf:getPreviousTaskApprover(bpmn:getDataObject('taskID'))}
Let me know what exactly taskID is ?
Can you please provide exact syntax and with any examples.
Thanks & regards,
Raju.

Similar Messages

  • How can I get a list of Initiator Human Tasks available to a user.

    Hi, every one.
    I am new to SOA suite and I am now working on BPM 11g.
    I want get a list of Initiator Human Task available to a specific user as the Workspace does.
    How can I achieve this by the Workflow Service API?
    Thank you.

    There is a community example that lays out what I think you want to do. You can find it here:
    http://decibel.ni.com/content/docs/DOC-9523
    I hope that helps!
    National Instruments
    Applications Engineer

  • Error authentication user in WCS about Human Tasks

    Hi All,
    We developed a BPM workflow and 4 human task(HT) in ADF and using WCS for accessing the tasks of the human workflow.
    We are working using the virtual machine soabpm-vm 11.1.1.6 ps5, downloaded by the Oracle Web Site.
    I created a space in WCS, based on the BPM-Workspace templace present in the WCS.
    I was able to execute the process and the HT without any problem.
    I am adding security to all the 4 HT following the indication about ADF security, using the ADF wizard in jdeveloper.(see Oracle WebCenter 11g Handbook chapter 18, page 421)
    After implementing the following choices:
    1)ADF Authentication and Authorization
    2)HTTP Client Authentication
    3)No Automatict Grants
    4)Either for WebPAge, Either for taskflow i have enabled the view privileges for viewing the page or executing the task flow.
    5) I linked the valid-users with a groups in my realm(AdmiServer)
    I tested all the security implemented with BPM worspace application (https://hostname:7002/bpm/workspace)  and it is working correctly.
    If i test it within webCenterSpace the HT are not working. When i click on the HT i got the following error:
    Error 401  Unauthorized
    The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials, then the 401 response indicates that authorization has been refused for those credentials. If the 401 response contains the same challenge as the prior response, and the user agent has already attempted authentication at least once, then the user SHOULD be presented the entity that was given in the response, since that entity MAY include relevant diagnostic information. HTTP access authentication is explained in section 11.
    This is what is happening:
    I  logged in into WebCenterSpace with the user credentials (Username pwd). I am correctly authorized and identified.
    I later click on the HT and the user is not propagate as the logs say that anonymous user try to access to the HT.
    Why there is this different behavior between WCS and BPM worspace application?
    Can i have same indication about what to do in order to get the HT working in the WCS?
    Regards Piero

    Hi Praveen,
    To fix this issue, you need to change the Identity of your website's Application Pool to use the
    NetworkService account (or the less secure LocalSystem account).  By default, IIS7 seems to set the Application Pools Identity to 'ApplicationPoolIdentity' instead of NetworkService or LocalSystem.
    Here's a step-by-step guide for determining your websites Application Pool, then changing its Process Model Idenitty in IIS7:
    1.Open Internet Information Services (IIS) Manger.
    2.In the Connections sidebar, drill down into Default Web Site and click on your website.
    3.Now in the Actions sidebar (on right side), click on Advance Settings... In the popup box, under General you will see your Application Pool listed for your website (in my case the app pool is: ASP.NET V4.0).
    4.Click Cancel...  If you choose, you can change the Application Pool here, but for the sake of this example we just wanted to find out what the website's App Pool was.
    Then change the app pool's (Process Model) Identity to 'NetworkService', the steps are showed as below:
    1.Open Internet Information Services (IIS) Manger.
    2.In the Connections sidebar, click on Application Pools.
    3.Now right-click on theApplication Pool that your website is using (in this case my site is using the ASP.NET v4.0 application pool), and select Advanced Settings... from the menu.
    4.In the Advanced Settings pop-up box, locate the Process Model -> Identity section and click on the Application Pool Identity.
    5.In the Application Pool Identity pop-up box, change the Built-in account to NetworkService (or if you want LocalSystem), then click OK, and click OK again to save your Advanced Settings changes.
    Hope this helps.
    Best Regards,
    Peja
    Please remember to click "Mark as Answer" on the post that helps you, and to click "Unmark as Answer" if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

  • Dynamic participant block in Human task flow

    Hi All,
    I am working on human task flow and got stopped on below use case.
    I have two participant block let say A and B. I want to assign participant A depends on flat inside task flow parameter. If Flag is Yes, then it should assign to A and on approval of A it should complete the task flow. But if Flag is NO, then it should first assign to B, on approval from B, it should again assign to A and after that it should complete the task flow.
    I tried to use dynamic role assignment but there i am not able to define above use case. Dynamic rule is saying you can assign A or B depends on some rule(task flow parameter) but my requirement is little different.
    If Flag is Yes,
    - assign to A -> on approval -> complete the task flow.
    If Flag is No
    - Assign to B -> on approval from B -> assign to A -> on approval from A -> complete the task flow.
    I want to build this logic inside single human task flow.
    Please help.
    -Sunil

    Hi Zaloa,
    Can you pls try this.This should work.
    1. Go to Edit Task Definition page and add a Parameter of type string(default).
    2. Now come to the human task dialog( the one you get on double clicking the human task activity) and add a value to the parametr you just added(string)using the search light .This value should be the variable containing the value of the asssigne which you want to add dynamically.
    3.Now again go to the Edit Task Definition page and select the Assignment policy and select the expression path builder.
    4. You should be able to see the parameter you just added under task:payload. select this . now your assigne is dynamically added.
    Pls let me know if you need further details. Hope this helps.
    Thnks
    Message was edited by:
    soaUser

  • Problem in setting dynamic expiration duration from Human Task

    Hi,
    I have a BPEL process, in which the Human task expiration has to be set dynamically..
    In the , I have set the expiration duration with this :-
    <copy>
    <from expression="xp20:format-dateTime(xp20:current-dateTime(),'PT1M')"/>
    <to variable="initiateTaskInput" part="payload"
    query="/taskservice:initiateTask/task:task/task:systemAttributes/task:expirationDuration"/>
    </copy>
    Do not get confused with 'PT1M' .. I want the duration to be 1 minute... Had I used 'PT1M' as a String and assign to the expirationDuration var, it would have caused an error... It needs to be fromatted as a Date..That's y i took this approach ... I am sure this is working fine as I have checked the payload of the task..
    It has a proper duration..
    <initiateTaskInput><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><initiateTask xmlns="http://xmlns.oracle.com/bpel/workflow/taskService">
    <task xmlns="http://xmlns.oracle.com/bpel/workflow/task">
    <systemAttributes>
    <expirationDuration>PT1M</expirationDuration>
    Now in the Human task definition(.task file), I have set the expiration duration with "By Expression" option in this way..
    <globalConfiguration>
    <owner>oc4jadmin</owner>
    <expirationDuration duration="/task:task/task:systemAttributes/task:expirationDuration"
    type="XPATH"/>
    </globalConfiguration>
    The problem is the task(at runtime) cannot evaluate the expirationDuration from the XPATH..
    I checked with the WF_TASK table in the orabpel schema ...
    When I use a static duration EXPIRATIONDURATION cloumn gets assigned properly (ie PT1M).. But when i take the XPATH approach, it translates to PT0S.
    Can someone look into this please ?
    Struggling with this for quite sometime...
    saptarishi

    If the Human Task shows status complete, then it's possible that there was an error in the output data association in the process. In EM do you see a fault on the output for the Human Task activity, or if PS4FP the process will go to suspended state if the data association fails.

  • Using Human tasks in a BPM process

    Hi
    I managed to deploy the VacationRequest sample which uses human task in a BPEL process.
    I want to implement the same human task in a BPM process. Are there any tutorials or stepswise guide for the Vacation Request sample using BPM process?
    Also, what are the main differences between a BPEL and a BPM process because most of the things that are done in BPEL can be done in an BPM process as well.
    Thanks

    I was able to implement the same using a BPM Process.
    For those of you, who may require the steps:
    1. Create a webservice based on the VacationRequest.xsd with VacationRequest as request and VacationResponse as CallBack
    2. Create a human task and task flow as described in the VacationRequest.pdf provided along with the sample.
    3. Create a BPMN process, associate the Start Event to the WebService Interface and map the request and response.
    Also associate the End Event to theWebService callback port.
    4. Deploy the process and taskflow.
    But I have a query here? Even in the sample given(using bpel process) how will the requestor know that the leave has been approved/rejected.
    what exactly is sent out as the response to the call back port. And, where can the requestor view the response?
    Regards

  • Complete Workflow after approving all tasks

    Hello everybody,
    I'm face to a big problem with approval workflow OOTB. In my case, when one user from approvers approve his task. The workflow must be completed and we we din't need to wait other approvment. So, I developed an event receiver on Tasks Workflow list and I
    checked the first approvment. After, that I approve all other tasks by code. The problem, the status of workflow is still equal to "In progress" despite the ending of all tasks ! It is strange.
    This my code in event receiver of the list :
    public override void ItemUpdated(SPItemEventProperties properties)
    base.ItemUpdated(properties);
    SPList list = properties.List;
    SPWeb web = properties.Web;
    SPList createDocument = DMSUtility.GetListByUrl(web, DMSConstants.LIST_CreateDocument);
    string workflowItemId = string.Empty;
    string taskStatus = string.Empty;
    string taskID = string.Empty;
    string taskworkflowStatus = string.Empty;
    SPSecurity.RunWithElevatedPrivileges(delegate()
    using (SPSite site = new SPSite(web.Site.ID))
    using (SPWeb webSecure = site.OpenWeb())
    if (list.RootFolder.Url.Equals((DMSConstants.LIST_CreateDocumentWorkflowTasks)))
    //Get Tasks item
    SPListItem itemTask = properties.ListItem;
    if (itemTask["WorkflowOutcome"] != null && itemTask["WorkflowItemId"] != null)
    workflowItemId = itemTask["WorkflowItemId"].ToString();
    taskStatus = itemTask["Status"].ToString();
    taskworkflowStatus = itemTask["WorkflowOutcome"].ToString();
    taskID = itemTask["ID"].ToString();
    if (taskworkflowStatus.Equals("Approved"))
    SPListItem item = createDocument.GetItemById(Convert.ToInt16(workflowItemId));
    // fetch workflow tasks
    SPWorkflowTaskCollection wfTasks = item.Tasks;
    int i=0;
    foreach (SPWorkflowTask task in wfTasks)
    // build a hashtable with the values to be changed to mark the task as complete
    if (task["ID"].ToString() != taskID && task["Status"].ToString()!="Completed")
    using (DisabledItemEventsScope scope = new DisabledItemEventsScope())
    task.Web.AllowUnsafeUpdates = true;
    task["Status"] = "Completed";
    task["WorkflowOutcome"] = "Approved";
    task[SPBuiltInFieldId.WorkflowVersion] = 1;
    task.SystemUpdate();
    Hashtable ht = new Hashtable();
    ht[SPBuiltInFieldId.Completed] = "TRUE";
    ht["Completed"] = "TRUE";
    ht[SPBuiltInFieldId.PercentComplete] = 1.0f;
    ht["PercentComplete"] = 1.0f;
    ht["Status"] = "Completed";
    ht[SPBuiltInFieldId.TaskStatus] = SPResource.GetString
    (new CultureInfo((int)task.Web.Language, false),
    Strings.WorkflowStatusCompleted, new object[0]);
    ht[SPBuiltInFieldId.WorkflowOutcome] = "Approved";
    ht["TaskStatus"] = "Approved";
    ht["FormData"] = SPWorkflowStatus.Completed;
    // alter the task using a trick to prevent task lock issue
    //AlterTask((task as SPListItem), ht, true, 5, 100);
    SPWorkflowTask.AlterTask((task as SPListItem), ht, true);
    while (!(bool)item.Tasks[i]["Completed"])
    Thread.Sleep(1000);
    task.Web.AllowUnsafeUpdates = false;
    task.Web.Update();
    i++;
    Do you have any idea ?
    Thanks.

    Hi,
    I have verified creating the simple approval workflow process.  Use the following two actions instead of setting workflow status to approved and stop the workflow.
    In this scenario, when one approver approves the task, others task is marked as cancel and his task will be marked as approved and list item will be marked as approved.
    And finally, one more thing, the approval process approvers must be in parallel
    Hope this will resolve your problem.
    Please mark as answered, if your problem resolved.

  • How to Java methods after submition of human task

    I want to implement java callbacks after completion of human task.
    My Requirement is : I want to save the process object in my separate table once user has submitted the human task.
    Can any 1 give me the example on that.
    Edited by: 964010 on Jan 9, 2013 2:21 AM

    Hi
    See below post for one approach. Anytime a Task is Submitted (means completed by clicking any Action buttons like Submit, Approve, Reject etc etc), the outcome in the method mentioned below is like OUTCOME_UPDATE. First add some print statements here, then later add your custom code.
    Re: Assign role, group to Human Task when initiated
    Thanks
    Ravi Jegga

  • Payload on Human Task and Task Form

    Hi all,
    I have implemented a simple BPM process on Oracle BPM 11g suite, that it calls a human task activity. The payload, for this activity, is a Data Object (related to external XSD) and it is editable via worklist. The user interface for this Human Task implementation is generated automatically through Auto-Generate actions without any customization.
    The application has been deployed successfully from JDev, but when I open the task by Workspace, I see all fields of payload in read-only mode, so I cannot edit nothing in the task form.
    Please let me know what could be the problem.
    Thanks,
    Paolo

    Are you using ps2 (11.1.1.3)? There was an issue where initiator human task activities that had parameters that were complex types needed to have the Data Object initialized via a script activity, or the fields could not be edited in the task from.
    There's an example of how to use the script in the SalesQuoteDemo. Basically you use the oraext:parseXML() function to create an initialized version of the Data Object and assign it to the Data Object in a script activity that's placed before the Initiator Human Activity. It can also be used to set defaults if needed. Here's a snippet of the expression from the SalesQuoteDemo.
    oraext:parseXML('<ns1:QuoteRequest xmlns:ns1="http://www.mycompany.com/ns/salesquote"><ns1:Summary>....</ns1:Summary<ns1:QuoteRequestStatus/></ns1:QuoteRequest>')

  • How to get the user logged at worklist (Adf Form - Human Task)

    Hi,
    I have an Adf Form Based on Human Task and and need to get the user logged at Worklist Application.
    Anyone know to make this ?
    Thanks.
    Victor Jabur

    Hi, thanks for your reply, but i discover a better way to make this:
    public String getLoggedUserWorklist(){
    String user = "";
    try{
    Map parameters=AdfFacesContext.getCurrentInstance().getPageFlowScope();
    IWorkflowServiceClient wfSvcClient = WorkflowService.getWorkflowServiceClient();
    ITaskQueryService queryService = wfSvcClient.getTaskQueryService();
    String contextId = (String)parameters.get("bpmWorklistContext");
    IWorkflowContext context = queryService.getWorkflowContext(contextId);
    user = context.getUser();
    }catch(Exception e){
    user = "";
    return user;
    }

  • OIM 11g, Get users from table and insert them into Approval Task

    Hi All,
    I have OIM 11.1.1.5.4 in Solaris 10 and I have an Oracle Table configured as Trusted Source.
    I am using Database_App_Tables_9.1.0.5.0 connector.
    I want Reconciliate new users from a Oracle Table as follow:
    1. I ran the scheduled job
    2. The new users reconciled Must get into an Approval Task before of insert them into USR Table.
    3. The Administrator User Approved o Rejected the new users.
    4. The new users that were approval Must insert them into USR Table.
    Is there any form of implement this?, Can you guide me please?.
    Thanks for your Help.

    Through your Schedule Task, generate "*Create User*" (Request Type) request and assign approval workflow for such requests.
    After completion of approval ONLY, users will get created into OIM 11g.

  • How to approve the request only for one time for human task in BPM Worklist

    Hi All,
    I'm having a requirement where i have made the hierarchy in the .task file where in created two users for which i need an approval in a hierarchical manner. But when i'm approving the request from worklist app for one user and the request is going sucessfully to the second user and if i approve it over there it once again coming to first user where i have approve it once again to get the request processed. how to get request processed only for one time when it is approved. Do we need to customize anything
    If you did it can anybody can share thoughts on this please. Your help is highly appreciated.
    I am not able to see the rejected request at all. where to see the rejected request.
    Regards,
    CH

    Hi,
    Following are the some important points you should understand about ESS Leave Request Workflow
    1. The Visualization ( how should it appear in UWL and what should happen when you click on a particular workitem) is defined in SWFVISU. Check for TS12300097. Generally, it invokes com.sap.xss.hr.lea.appl/LeaveRequestApprover Java WebDynpro application. Just check whether you are able to get the correct Leave Processing application called when you execute your workitem from UWL?
    2. In general it should have option to process the leave request either approve/reject. When the leave request gets approved/rejected the status of the Leave Request document gets changed ( in workflow it is &REQ.STATUS&
    3. There is a need to schedule a background job for program RPTARQPOST which will pick up all the documents in APPROVED status and creates an absence record for the same.
    4. Apart from schedule job as mentioned above, you also have to schedule a background job for program  RPTARQEMAIL, which is basically used to send e-mails for all the documents which are yet to be approved to correct manager.
    as you say , you can not see Approve/Reject options from UWL, it looks to me that correct javawebdynpro application is not being called for this task. Just check this !!
    Good Luck !!
    Regards
    Krishna Mohan

  • How to know which stage has been completed in Human task flow.

    Hi All,
    I have one human task flow where there is three participants. Participant A, B and C and all are in sequence.
    When User B approves the task, i need to do some business logic. when user B approves the task, it will be assigned to User C. I have defined call back events. There i can use task assigned condition to do my business logic.
    My question is that how i can get to know that Task assigned to user C. Because it is a call back event and will be triggered when it will be assigned to A or B. I have tried to user the function previousOutcomeUpdatedBy to check whether it previous user was B or not. but in my case it is coming as workflowsystem.
    instead of User B it is using workflowsystem
    User:workflowsystem; State:OUTCOME_UPDATED; Outcome:CONFIRM
    I am not aware, why workflow system is coming in picture.
    do any one idea, how to solve this use case.
    Regards,
    Sunil

    You can get the status from back end tables.
    Check in SOA INFRA tables. Below is the list of human work flow tables.
    WFTASK
    WFTASK_TL
    WFTASKHISTORY
    WFTASKHISTORY_TL
    WFCOMMENTS
    WFMESSAGEATTRIBUTE
    WFATTACHMENT
    WFASSIGNEE
    WFREVIEWER
    WFCOLLECTIONTARGET
    WFROUTINGSLIP
    WFNOTIFICATION
    WFNOTIFICATIONSTATUS
    BPELNOTIFICATION
    BPELNOTIFICATION_FILTERMSGS
    BPELNOTIFICATION_INVALADDRS
    WFTASKMETADATA
    WFATTRIBUTELABELMAP
    WFATTRIBUTELABELUSAGE
    WFUSERVACATION
    BPM_PRESENTATION
    BPM_PRESENTATION_GRANT
    WFUSERTASKVIEW
    WFUSERTASKVIEWGRANT
    WFUSERPREFERENCE
    BPM_USERAPPLICATIONDATA
    BPM_USERAPPLICATIONDATA_GRANT
    WFRULEDICTIONARY
    WFTASKDISPLAY
    WFTASKTIMER
    WFNOTIFICATIONMESSAGES
    WFTASKERROR
    WFHEADERPROPS
    WFCERTAUTHORITY
    WFCERTIFICATEREVOKED
    WFCERTIFICATE
    WFEVIDENCE
    WFTASKASSIGNMENTSTATISTIC
    WFTASKSEQUENCECHANGES
    WFTASKAGGREGATION
    WFAPPROVALGROUPS
    WFAPPROVALGROUPMEMBERS
    Thanks,
    Vijay

  • From User Task (10.1.2) to Human Task (10.1.3)

    Hi all,
    i have a simple BPEL process developed using jdeveloper 10.1.2 that contains a user task, an email notification must be sent to the assigned user,
    the process works perfectly in bpel pm 10.1.2,
    i migrated the process to jdeveloper 10.1.3 and deployed it to bpel 10.1.3,
    the deployment is successful, the task is assigned to the user but no email was sent to him,
    to investigate the problem i set the logging to debug and i've got a long list of logs,
    i chosed the following which seems interesting:
    <2007-01-04 16:23:08,171> <DEBUG> <test2.collaxa.cube.services> <PCException::<init>> Start of root element expected.
    oracle.xml.parser.v2.XMLParseException: Start of root element expected.
         at oracle.xml.parser.v2.XMLError.flushErrors1(XMLError.java:320)
         at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:341)
         at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:303)
         at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:205)
         at oracle.xml.jaxp.JXDocumentBuilder.parse(JXDocumentBuilder.java:155)
         at oracle.bpel.services.common.util.XMLUtil.parseDocument(XMLUtil.java:246)
         at oracle.tip.pc.services.notification.payload.GenericPayloadTypeFactory.createFacade(GenericPayloadTypeFactory.java:99)
         at oracle.tip.pc.services.notification.payload.GenericPayloadTypeFactory.createFacade(GenericPayloadTypeFactory.java:53)
         at oracle.tip.pc.services.hw.task.impl.TaskNotificationsForXPath.getEvaluatedMessage(TaskNotificationsForXPath.java:556)
         at oracle.tip.pc.services.hw.task.impl.TaskNotificationsForXPath.sendNotification(TaskNotificationsForXPath.java:214)
         at oracle.tip.pc.services.hw.task.impl.TaskNotificationsForXPath.sendNotificationForGenericMessage(TaskNotificationsForXPath.java:138)
         at oracle.tip.pc.services.hw.task.impl.TaskNotifications.notifyForTask(TaskNotifications.java:228)
         at oracle.tip.pc.services.hw.task.impl.TaskNotificationThread.run(TaskNotificationThread.java:141)
    <2007-01-04 16:23:08,171> <ERROR> <test2.collaxa.cube.services> <TaskNotificationsForXPath::sendNotification> Notification for task could not be processed.
    <2007-01-04 16:23:08,171> <ERROR> <test2.collaxa.cube.services> <TaskNotificationsForXPath::sendNotification> Notification for task 70011 could not be processed. This task is associated with the business process 04647F6D57124939BCCAF21E966A45EF, identified by testNotifUserTask1
    <2007-01-04 16:23:08,171> <ERROR> <test2.collaxa.cube.services> <TaskNotificationsForXPath::sendNotification> Check the error stack and fix the cause of the error. Contact oracle support if error is not fixable.
    <2007-01-04 16:23:08,171> <DEBUG> <test2.collaxa.cube.services> <TaskNotificationsForXPath::sendNotification> ORABPEL-10129
    <2007-01-04 16:23:08,171> <DEBUG> <test2.collaxa.cube.services> <TaskNotificationsForXPath::sendNotification>
    <2007-01-04 16:23:08,171> <DEBUG> <test2
    how can i fix this issue to get the migrated process works??
    thanks

    Hi Clemens,
    Thanks for your quick response. The Taskmanager and the Taskactionhandler are indeed not deployed so I will do that automatically.
    Still one question/remark left:
    You noticed that you still have to complete the tasks using the old worklist app. . So if i'm correct, you have to use the deprecated 10.1.2 worklist api or build-in worklist app. The 10.1.2 worklist app is not deployed in my 10.1.3 installation. However, 10.1.3 only contains the new worklist app. Is there also a way to deploy it manually?
    Writing this down it al looks a bit clumsy to me. Is it not a better option to invest some time in migrating all tasks scopes manually to 10.1.3, because as far as I can see the human tasks are causing the main issues concerning migration? After this you have a 10.1.3 compliant system. I wonder what your opinion is on this issue.
    Kind regards,
    Tom

  • Human Task : assign task to user at runtime based on some conditions

    HI ,
    I have a requirement that is, Assign task to users/ groups at runtime for approval based on material qty. please help me in design approach to achieve the same.
    thanks in advance.
    Guru

    Hi Guru
    You can achieve this with and without business rules. I am assuming you have a payload with element like "qty". In task details page or somehow, this gets filled. Now later on you can have like this:
    1. Without Business Rules:
    a) Lets assume you have human tasks like ApproverDefault, Approver100, Approver200, ApproverAll etc.
    b) After your first Task, add a XOR Gateway. Default path of XOR goes to ApproverDefault. Then you have like 3 more paths with Conditions like qty between 0 and 100 goes to Approver100. Qty between 100 and 200 goes to Approver200. Qty more than 200 goes to ApproverAll.
    Quantity
    No conditions (Default) -> ApproverDefault
    qty < 100 -> Approver100
    qty > 100 and qty < 200 -> Approver200
    qty > 300 -> ApproverAll.
    2. With Business Rules
    a) This needs some learning. Please do refer detailed online docs. I am just giving brief steps. Create extra fields of type Boolean in payload like AutoApproved, NeedApproval100, NeedApproval200, NeedApprovalAny etc. Have more meaningful names as per your requirement and human task though.
    b) You need to drag and drop Business Rules component and edit it in JDeveloper.
    c) First create a Bucket set with Range of Values for Qty field like -infinity to 0, 0 to 100, 100 to 200, 200 to infinity. You just enter rows like 0, 100, 200, and rest is taken care to add these Ranges.
    d) Now create Decision Rules. For each range, create a action and set the flag(s) appropriately.
    e) See hello world example for exact steps and full understanding.
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/obpm/11g/r1/firstProcess/firstprocess_obpm11g.htm
    Pros & Cons:
    a) Without Business Rules is very simple and straight forward. Quick and easy to develop and test. But if you want to control the range of values for qty, you need to modify the process and redeploy. Its kind of tight.
    b) Business Rules gives more flexible. You can change qty at run time, provided you use BPM Composer. But takes some learing and needs some debug if it fails like that.
    There are many differences and pros and cons. But above are the main ones.
    If you are a beginner, go with First Approach for now.
    Thanks
    Ravi Jegga

Maybe you are looking for

  • Keep getting the error message when trying to sign in to iMessage on Macbook Air

    Hi all, I keep getting this error message " could not sign into iMessage. This account is blocked from registering " .....how do i unblock it so i can use iMessage on my mac. plz Help !

  • Pink Song List and Dark Green Side bar on itunes 8

    I'm using itunes 8 and as soon as i downloaded and installed it, the song bar was hot pink instead of the normal white, and the sidebar was a dark green instead of the normal light grey. However, if you resize the borders, it goes back to the normal

  • How can I format my usb install drive?

    how can I format mymacbook air software install drive.?, the ones that came with the Macbook Air as the OS is now old I have no Use for the Drive and would like to use it as a stylish usb flash drive. the one I mean is here Is it actually possible to

  • IPhone and Sync

    I bought the iPhone5, and signed up with T-Mobile.  Just found out that it will not sync up with my Ford Edge.  What can I do?

  • Capturing from old camcorder...

    I've seen posts around this forum and others that people often use smaller consumer camcorders as miniDV "decks" as opposed to using their regular cameras, as it can wear down the tape heads. I have a project now where I was hoping to do the same thi