Multiple approvals for approval workflow in MOSS

Hi All,
I have to develop a workflow in MOSS.
My requirement is as follows:-
Site Owner uploads a word document in document library and triggers the approval workflow.
It will send an email to say about 10 people asking them to edit and approve the document.
Current status of document is "In Progress".
Even if out of 10, 8 people edit and approve the document, status of document should be in "In Progress".
Only after all 10 people edit and approve the document status of document should be "Complete" and send an email to site owner that the document is approved by all the people.
Please let me know how to accomplish this task.
Your help is highly appreciated.
Thanks & regards,
Manish

Hi.
You can create a WF like this:
Regards,
Bubu
http://zsvipullo.blogspot.it
Please mark my answer if it helped you, I would greatly appreciate it.

Similar Messages

  • New Screen Flow entry for Approval Workflow

    Hi,
    Can anyone please help me with this? I have a requirement where I need to provide a link on a JSPDynpage to the default approval workflow screen for any KM folder. We already have links to standard permissions and subscription screens which can be called via a url which looks something like this:
    http://<host>:<port>/irj/servlet/prt/portal/prteventname/HtmlbEvent/prtroot/com.sap.km.cm.command?Uri=/documents/Public%20Documents/Test%20Folder&isp=permissions
    For this we had created a new entry under Screen Flow (System Configuration->KM->CM Configuration->User Interfaces->Mapping->Screen Flow) and provided the java class for the Permissions screenflow. When I try the same for approval workflow however it does not work. In short, when I create a new Screen Flow Entry e.g. "approval" and specify the Java class for approval screenflow (com.sapportals.wcm.rendering.screenflow.cm.ApprovalScreenflow) and then use the URL
    http://<host>:<port>/irj/servlet/prt/portal/prteventname/HtmlbEvent/prtroot/com.sap.km.cm.command?Uri=/documents/Public%20Documents/Test%20Folder&isp=approval
    it does not work. Does anybody know why approval workflow works differently and how I can remedy the situation? Any help would be appreciated.
    Thanks,
    Shibendra

    Hi,
    The Custom Dialog Task No. you have to assign.
    1) Go to std. Workflow note all the Std. Task Maintain in SWFVISU, Note all the Parameters
    2) Similarly for the Respective Custom Task, Assign the Same for your Custom Workflow.
    Regards,
    Surjith

  • Multiple Levels of Approval Workflow in SPD

    Hi-
    I'm building a workflow that has multiple levels of approval behind it.  I know how to set up the multiple levels of approval, but sometimes this workflow needs to have 2 approvals and sometimes it needs to have 3 approvals.  I'm hoping to pull
    the info in from a SP List, but am not sure to do with the different number of approvals needed.  Does anyone have any suggestions?
    Thanks a lot!

    Yes you can create a column in SP List containing the Approver names. This should be a People/Group field or Single line of text can also work.
    In your SPD workflow you can track the status of the previous Approver and based on this you may allow the workflow to move to next or stop it. Assuming that you will create a Status column having two values - "Approve" and "Reject".
    If Approver selects "Approve" then workflow proceeds for next approval or else the workflow stops or if Approver chooses "Reject" then you may create a new task for the previous Approver and send him an email - Just a suggestion if you
    have back and forth approval system.
    If it is a simple sequential approval then can go for out-of-the-box Approval Workflow available. If there is some level of conditions then SPD workflow is an option.

  • Multiple Approvals for an interactive activity

    I have an interactive activity in my workflow. To proceed from this activity i need multiple approvals from different users/participants. The number of users/participants providing approvals are collected dynamically.All the users/participants are in the same role (Approver).
    Also, the participant who approves the activity should not again see the pending item in his inbox but the other users should still be able to see it. For instance, if there are 3 approvals needed of user1,user2 and user3, and user1 approves then the item should now be visible as pending only for user2 and user3.
    Appreciate any help regarding this.

    Hi Dan,
    Thanks for your reply. I did try using the update() method but m still getting the same exception. Below please find the code snippet that i am using. Would be great if you help if me recognize the mistake:-
         private DirectorySession createFDISession() throws AuthenticationException, ProtocolNotSupportedException{
              DirectorySession directorysession = null;
              this.configuration = configure();
              String directoryId = "";
              String fdiPreset = "";
              directoryId = configuration.getProperty(ProcessService.DIRECTORY_ID);
              fdiPreset = configuration.getProperty("FUEGO_FDI_PRESET");
              DirectoryPassport directoryPassport = DirectoryPassport.createWithIDAndPreset(directoryId, fdiPreset);
              directoryPassport.fillPassport();
              directorysession = Directory.startSession(directoryPassport);
              return directorysession;
    public void addUserInFDI(UserVO userVO, List<String> roleMap) throws AuthenticationException, ProtocolNotSupportedException, DirectoryException
              DirectorySession directorysession = null;
              if (userVO != null && userVO.getUserId() != null && !userVO.getUserId().trim().equals(""))
    // create directory session
                   directorysession = this.createFDISession();
                   List<RoleAssignment> roleAssignmentList = new ArrayList<RoleAssignment>();
                   try {
                        for(String role:roleMap)
                        roleAssignmentList.add(getRoleFromString(directorysession, role, "", ""));
                        String organizationUnit = configuration.getProperty("ORGANIZATION_UNIT");
                        String newUserPwd = configuration.getProperty("FUEGO_FDI_NEW_USER_PASSWORD");
                        DirOrganizationalUnit orgUnit = DirOrganizationalUnit.fetch(directorysession,organizationUnit);
                        DirHumanParticipant user = DirHumanParticipant.create(directorysession, userVO.getUserId(), userVO.getFirstName(), userVO.getLastName(),
                                  userVO.getFirstName(), userVO.getEmail(), userVO.getPhone(), "",
                                  newUserPwd, orgUnit,(RoleAssignment[]) roleAssignmentList.toArray(new RoleAssignment[roleAssignmentList.size()]), true);
                        //calling the update function on the created user
    user.update();
                        System.out.println("permission : "+user.getPermissions());
                   finally
                        directorysession.disconnect();
              } else {
                   log.info( "Invalid user's information : " + userVO);
         private RoleAssignment getRoleFromString(DirectorySession directorysession, String roleParamStr, String roleStr, String parameterStr) throws DirectoryException
              RoleAssignment roleAssignment = null;
              roleStr = "";
              parameterStr = "";
              if(roleParamStr.indexOf("||") < 0)
                   roleStr = roleParamStr.trim();
              else
                   ArrayList<String> roleParamList = getArrayList(roleParamStr, "||");
                   if(roleParamList != null)
                        roleStr = roleParamList.size() > 0 ? roleParamList.get(0).trim() : "";
                        parameterStr = roleParamList.size() > 1 ? roleParamList.get(1).trim() : "";
              DirOrganizationalRole dirOrganizationalRole = DirOrganizationalRole.fetch(directorysession, roleStr);
              if (dirOrganizationalRole.isParametric())
                   if (parameterStr == null || parameterStr.equals(""))
                   roleAssignment = new RoleAssignment(dirOrganizationalRole.getId(), parameterStr, 127, 0);
                   roleStr = roleAssignment.role;
                   parameterStr = roleAssignment.parametricValue;
              else
                   roleAssignment = new RoleAssignment(dirOrganizationalRole.getId(), 95, 0);
                   roleStr = roleAssignment.role;
                   parameterStr = null;
              return roleAssignment;
         public ArrayList<String> getArrayList(String inputStr, String delim) {
              ArrayList<String> returnStr = new ArrayList<String>();
              if (inputStr!=null)
                   StringTokenizer strTokens = new StringTokenizer(inputStr, delim);
                   while (strTokens.hasMoreTokens()) {
                        returnStr.add(strTokens.nextToken().trim());
              return returnStr;
         }

  • Change in Work item Text for Approval Workflow WS14000133

    Hi,
    I need to change the work item text for Shopping Cart Approval Workflow WS14000133.
    I have created an Attribute in Business Object BUS2121 and called the same attribute in work item text.
    In PFTC -> Redefine Work item text - > and i have defined the work item text as well called the attribute from the container.
    what  the problem over here is - when I am passing the attribute in the work item text in the task, I am unable to see the work item text with the Dynamic Attribute but I am able to see the work item alone (not with the Dynamic attribut)
    But when i debug the workflow from SWI1 then i can see the dynamic attribute in the Container of the workflow but nt in the approver's inbox in portal..
    Can you please tell me - that why is this a strange behaviour that i can see the Dynamic attributed created initially in the workflow container of the Business Object but nt in the Approvers inbox either in Backend nor in the front end...
    Thanks,

    Hi,
    Maybe this SAP note/KBA will help :
    1470761 - How to change the text of the SRM approval links in inbox or UWL
    Kind regards,
    Siobhan

  • Multiple Approvals for a process

    Hi Experts,
    I have a scenario where I need to get approvals from 3 differnet users. Also the users are not same all the time. I have to choose them dynamically.If all the three approves my request then I have to continue with further processing other wise I have to go to step 1.
    Is this achievable in Guided Procedures? If yes please brief me how can I do that.
    Please suggest.
    Thank You,
    Suresh

    Hi Suresh
    /people/dipankar.saha3/blog/2007/05/31/how-to-create-dynamic-approval-process-using-conditional-loop-block-in-guided-procedure
    Check this blog.
    Regards
    Navneet

  • Approval workflow with multiple approvers in sharepoint

    Hi All,
    I have created a sequential workflow using visual studio 2012 for sharepoint 2013.
    I have multiple approvers for approving a document. I am able to create individual tasks for each approver by code
    my problem here is tasks should be created based upon the hierarchy, i.e. the second task will be created only when first task is approved.
    All my approvers are dynamic so I did this development in visual studio. Please give me some idea how to proceed for my problem.
    Sarath Sannadi Sharepoint Dev at Saksoft

    Hi sarath,
    Thanks for the sharing.
    Regards,
    Rebecca Tu
    TechNet Community Support

  • Approval Workflow - What is Task Process

    I want to understand this Action in SharePoint 2010 workflow
    Start Task process on Current Item with these users
    What is the Task process? how do you define it?
    Thanks so much!
    Mayank

    http://office.microsoft.com/en-001/sharepoint-designer-help/use-the-task-process-editor-for-approval-workflows-HA101863538.aspx
    https://www.nothingbutsharepoint.com/sites/eusp/Pages/SharePoint-Designer-Workflow-2010-Task-Actions.aspx
    If you want someone to perform some action then you assign a task to them. like approvals, reviews or simply some information.
    Regards, Kapil ***Please mark answer as Helpful or Answered after consideration***

  • Restrict editing/deleting item when approval workflow is in progress

    I have a list for contributors to submit documents and activate an approval workflow. The requirement is to restrict all users from editing and deleting the document once the workflow is activated. After the workflow is completed, if the document
    is approved, all users also should not be able to edit/delete the item; if the document is rejected, users should regain the permission to edit/delete the item.
    I had no problem with restricting edit/delete permission after the document is approved by adding a Declare Record action after the content approval status is set to approved in SPD.
    However, the workflow was not able to complete when I added a Declare Record action in the "When the Task Process Starts" step and an Undeclare Record action in the very beginning of the "When the task process completes" step to restrict users from editing/deleting
    the item when the workflow is in progress.
    After I activated the workflow and approved the item, the Workflow status shows Approved but the Approval status still shows Pending. In addition, the "Approval Workflow Task is complete" (shown in the following image) is missing in the workflow history,
    which seems to me that the workflow task is never completed.
    Please advise me the proper way to restrict users from editing/deleting the document while the workflow is in progress. Thank you.

    then use SPD to customize the task process to lock them out upon starting and give them rights again upon rejection.
    http://office.microsoft.com/en-us/sharepoint-designer-help/use-the-task-process-editor-for-approval-workflows-HA101863538.aspx
    Please mark my response as an answer if appropriate.
    Learn.SharePoint.com
    Hi
    How was this resolved in the end. I to want to disable editing of document whilst workflow in progress. In SPD how is this achieved?
    Thanks

  • Using CAF GP for Approving MDM Record Request.

    I am going to use CAF GP for approval workflow.
    I need to understand how to approvve the record using Java API. I know it needs to be moved from checked out stage to Checked in stage. But how do we do that from Java APIs.
    I am using SP4 for now, but need the information for SP6 too.
    ~Nitin

    If you look at your process description:
    Requestor - Submit a request - store in MDM in checked out mode.
    [Create a webdynpro callable object implementing IGPWebDynproCO|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e3f07a7a-0601-0010-ebbd-b9cfb445b814]
    Have it use the checkout(new)recordCommand (this works similar as the checkincommand I described above)
    Have validation at MDM to take care of all the required parameters/fields.
    Approver - Approves > Change the record to check in
    Use checkin as described above
    Rejects > Delete the record.
    For Reject you probably do not wantto delete the record but use the rollback command.
    [Here some more info on how to create a GP with Webdynpro COs|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e0957cb6-5103-2a10-6d9d-a0a4d68c8bf1]
    This should get you started. You'll run into more questions though

  • Send an email to previous approver after rejection in OOB Approval workflow

    Hi all,
    I have created OOB Approval workflow with two approvers.
    If first approver rejects then i want it to send an email to the requester. 
    If second approver rejects then i want it to send an email to the first approver as well as requester?
    Is there any way to acheive this? 
    And same should happened when document is approved
    Also how to identify that the first approver has completed their task? 

    Hi Trupti,
    you can do that using SharePoint designer workflows:
    you can do that by putting the actions in the complete condition so you check who approved it and based on that you do the actions of sending email so it will be if conditions and where to put that in here
    http://bobbyspworld.com/2013/02/08/5-step-to-enhance-sharepoint-2010-approval-workflow/
    https://support.office.com/en-gb/article/Use-the-task-process-editor-for-approval-workflows-8680b4a4-36b1-441c-b070-e515976078aa
    <section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
    Completion conditions for the task process
    When you click the completion conditions, you’re taken to a full-page workflow editor where you can add or change the completion conditions that for the task process. Specifically, these actions
    will run every time an individual task is completed. You can customize the logic here using the workflow commands in SharePoint Designer, like conditions, actions, and else-if statements. You can also add task behavior actions, like the Set Content Approval
    Status and End Task Process.
     Top
    of Page
    </section><section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
    Behavior of a single task
    From the summary page, if you change the behavior of a single task, you’re taken to another full-screen workflow editor where you see the individual task events, such as when it’s assigned, pending,
    expires, and so on. Specifically, there are five events:
    Before a task is assigned: These actions run before every individual task is created.
    When a task is pending: These actions run after every individual task has been created.
    When a task expires: These actions run every time an individual task is incomplete after its due date.
    When a task is deleted: These actions run every time an individual task is deleted before it’s completed.
    When a task completes: These actions run every time an individual task is complete.
    You can add any of the available conditions and actions, and you can add several more task behavior actions this time, like append, delegate, escalate, and reassign. You can even add task notification
    emails and wait for changes in a task process item. The available task behavior actions change depending on the event you’ve selected.
    </section>
    Kind Regards,
    John Naguib
    Technical Consultant/Architect
    MCITP, MCPD, MCTS, MCT, TOGAF 9 Foundation
    Please remember to mark your question as answered if this solves your problem

  • Workflow SharePoint 2010 -Approval workflow for multiple users

    Want to create a 2010 SharePoint server workflow which will allow me to send email once item is added > Start approval process > if approved then mark workflow status as approved and then send email to reviewer 2 and again start the process of approving
    > and approved then again mark status to approved and send email to reviewer 3 and mark status to approved if approved by reviewer 2 and end the workflow.Also, if the item is not approved by any user, then it should directly log a comment and go to end
    of the workflow.
    I had started as something like :
    Send Email to rev1
    Start approval process for current item with rev1
    if approval status is approved
    set workflow status to approved
    send email to rev2 and so on...everything works but when rev1 rejects the item, then workflow does not go to end of the workflow. One difficult thing is we don't have go to a step option like in 2013 workflows.
    I don't know how to move on as when I try to execute the logic, all three approval process(for 3 reviewers) run even if item is rejected .....Please help

    Check these links
    https://slingeronline.wordpress.com/2013/02/27/setting-cancel-on-first-rejection-on-an-spd-workflow/
    http://sharepointduffbert.com/2014/06/17/getting-an-spd-approval-workflow-to-cancel-on-rejection-or-change/
    https://social.msdn.microsoft.com/Forums/office/en-US/c212e5d7-f7bf-4f17-be16-374e02652dbb/reject-stop-workflow-not-working?forum=sharepointcustomizationprevious
    https://social.msdn.microsoft.com/Forums/sharepoint/en-US/a2d0a259-f8ca-48cf-b9ab-0c9387329502/sharepoint-designer-workflow-how-to-jump-back-to-previous-workflow-step?forum=sharepointcustomizationprevious
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Approval Workflow for multiple Entitlements

    Hi Experts,
    I want to create an approval Workflow such that, When a user requests for a role the request should go to the User's manager.
    The Role has an access policy with with 5 Resource Objects, and each RO has 5 entitlements. and after the manager approves the request should go to entitlement owner.
    The No of resources binded with access policy and entitlements in each RO wont be fixed.
    How can we handle this situation.?
    One approval policy on Assign Role Request with so many approval tasks decided at run time, at that many callbacks. Is it possible even?
    Thanks
    Sjit

    Check these links
    https://slingeronline.wordpress.com/2013/02/27/setting-cancel-on-first-rejection-on-an-spd-workflow/
    http://sharepointduffbert.com/2014/06/17/getting-an-spd-approval-workflow-to-cancel-on-rejection-or-change/
    https://social.msdn.microsoft.com/Forums/office/en-US/c212e5d7-f7bf-4f17-be16-374e02652dbb/reject-stop-workflow-not-working?forum=sharepointcustomizationprevious
    https://social.msdn.microsoft.com/Forums/sharepoint/en-US/a2d0a259-f8ca-48cf-b9ab-0c9387329502/sharepoint-designer-workflow-how-to-jump-back-to-previous-workflow-step?forum=sharepointcustomizationprevious
    Please 'propose as answer' if it helped you, also 'vote helpful' if you like this reply.

  • Container element for Count in Parallel Approval Workflow

    Hi Gurus,
    We are using ECC 6.0 and I have this below requirement. Please share your thoughts on how we can achieve this.
    We are using a User decision step in parallel workflow to generate and send individual work items to multiple approvers. that is, we generate multiple work items and send to individual approvers for the same step in the workflow and get the combined result (Approve or Reject) to proceed further. I understand that individual result for each work item is stored in container element '_RESULT' (0001 for Approve, 0002 for Reject) and combined result of all the sub-work items is stored in '_WI_RESULT' (0001 for Approve, 0002 for Reject). Also, we can see the index # of work items generated for the same step (node) from container element ''_WF_PARFOREACH_INDEX'.
    My requirement is to set work item to COMPLETED status after we obtain a certain # of APPROVE (_RESULT = 0001) decision. Let's say, after 2 of the approvers say Ápproved', then I'd like to close all the other relevant work items and set the Combined result '_WI_RESULT'to APPROVE and Complete the relevant work item. I was wondering if there is a container element that holds the (count) # of work items generated in individual work item container so that I can keep reading this value to see how many decisions have been made. That is, for example, If there are 3 parallel work items generated and 1st user said Äpproved',  is there a way to know out of a total of 3 approvals (to get the combined result '_WI_RESULT'), one is completed and 2 approval decisions are still pending. I'm trying to use step-level Pgm Exit (After_execution Method) to read this container element for # of approvals done and if the combined result '_WI_RESULT'is '0001'(Approve), i'll try to end other work items. One way of doing is to have a custom table to capture this and keep reading this table after each decision. But, I don't want to have all this customization and I believe there should be a way the SAP is storing somewhere this # of completed or Pending approval work items that got originated from a single step/node. One way of doing could be, after each decision, read the dependent work items (having same node # and Parent Work item etc.,) and get the other relevant work items and read their status etc., But I think this is a lengthy process and may be there is an easier way, perhaps some container element that holds this information.
    Please let me know if you need any clarification on my requirement and share your thoughts on how I can achieve easily.
    Appreciate and thank you in advance for your help.
    Regards,
    Venu

    Hi Karri,
    Thank you for your reply. I was actually doing the same with having an APR_COUNT and passing that for each of individual work items and bind it back to task--> wflow container. And keep checking this counter in wf container.
    Once, we obtain certain # of approvals, then I guess I'll have to complete or cancel the other work items.
    I was thinking may be there is some container element already exists that keep track of this, I guess not .
    Thanks for your input
    Regards,
    Venu

  • OIM 11g - Approval workflows for disabled user accounts

    Hi,
    We have a scenario wherein a user will be created in OIM with a future start date resulting in a Disabled Untill Start Date user status. Once the user is created, we should let anyone submit a New Hire form for the user and the submitted form needs to be approved by the Manager. Once the Manager approves the form, the target accounts should get created with disabled status. These accounts should get enabled on the start date.
    As submission of New Hire Form is not a straightforward process, we came up with the following design.
    A dummy resource object corresponding to the New Hire Form will be created and can be requested for a newly hired person by anyone who has OIM access. An approval workflow will be configured for the New Hire Form Resource object and provisioning of target accounts will be based on Manager's approval for this resource object.
    However the challenge that we see with this design is, it wasn't possible to place a request for New Hire Form dummy resource object for a disabled user. But the requirement is to complete the New Hire Form submission process befor the user becomes active.
    How can these workflows be invoked for a disbaled user? Is there any other way to implement this requirement?
    Any kind of help/guidance is greatly appreciated.
    Thanks and Regards
    Deepa

    911709 wrote:
    If I create a dummy resource, called "Group Membership" for example, and use this to show the groups that are available in AD, how can I have the request be routed to different approvers? For example, group cn=HR Users,cn=Users,dc=company,dc=com needs to be routed to HR for approval. Group cn=IT,cn=Users,dc=company,dc=com needs to be routed to IT for approval. How can I change the approvers dynamically?
    Re: Spawning multiple approval tasks in parallel in OIM11g SOA Composite
    You can have dynamic task assignment in BPEL; where you defne a variable in the task assignment and update the variable with the approver group name before triggering the task assignment task. Check BPEL docs for same.
    If every group needs a different approver, and there are 5000 groups, can I make 5000 resources and use the built-in routing of approvals? Or, use the dummy resource approach and handle the management of the approvals in some other way.Just make one resource with one field attached to it which takes in the group name and handle approval in SOA by reading a lookup which has AD group to Approval Group mapping.
    >
    Thank you.-Bikash
    Edited by: Bikash Bagaria on Feb 18, 2012 1:00 AM

Maybe you are looking for