Wednesday, May 22, 2013

Content Approval Workflow to Actually Approve Content.

Content approval workflows on lists, out of the box, do not approve content. In this withholding  they are not unlike your parents, who never approved of anything you did directly, offering instead only cautious, private approvals that were in no way publicly visible, much less unconditional.

Rather than offering your craved public visibility and faith, the Approval Workflow, set on any given list, adds a new approval column to that list item. It is a conditional approval, like unto your sister's return to the house after that one Thanksgiving fight. Conditional, becolumned approvals can be useful if you need to have the items approved, yet private: Sharepoint does not offer a basic library setting to keep approved documents invisible to the wider masses after each document has been approved, preferring once again to set intricate account-based permissions. Sadly, when you generally go forth to approve a thing, it can be understood that people should be able to see that thing, which: not actually how the Approval workflow works. For Reasons, which are good, mainly within the bizarre, vaguely abusive, yet internally-consistent hierarchy of MS Office.

So! Content Approval Workflows: A backwards patch to fix weird privacy issues. Here is how to set a content approval workflow to actually approve and make visible the content you thought you were approving.
  1. Open Sharepoint Designer
  2. Go to the Workflows for your site.
  3. Click "Create new list workflow."
  4. Name your workflow.
  5. Edit your workflow, adding "Start content approval process on..."
  6. Click your new, underlined Approval action.
  7. Click "Change the behaviour of a Single Task"
  8. Find the step "When A Task Completes."
  9. In the If statement for Current Task:Outcome equals Approved, add a step.
  10. Set content approval status to "Approved."
Fun Bonus Project:
You could, in theory, make a copy of the main out-of-the-box Approval workflow, rename it "Actually Approves Things For Public Use Workflow" and then add this line in, at which point this would become a reusable tip. The article below details the intricacies of that; I have not yet had a server able to copy my default Approval workflow for editing, and therefore enjoy the opportunity to hone my skills doing it by hand every time.

3 comments:

  1. I was all day looking for this blog. Thanks a lot.

    ReplyDelete
  2. This works for a single stage approval, but not if you have multiple approval stages. In that scenario, the first stage approver ends up setting the items content approval status to "approved", even though another party needs to approve the item.

    ReplyDelete
    Replies
    1. Thanks for the pointer! We never had multi-approval stages, so I missed that.

      Delete