cancel
Showing results for 
Search instead for 
Did you mean: 
Workflow Hero

How to know if a user is on a Sharepoint Group?

Many people posted this question and sometime ago there were some external post that dissapeared. So now it will keep safe in this post.

Create workflow variable varUserGroupXML type=Multiple Lines of Text

Create workflow variable varUserGroupNames type=Collection

Create workflow variable varIsInGroup type=Yes/No

To make it easy to reuse, create an Action Set action, and label it "Is user in group?"

Put the following within that Action Set.

Call Web Service action. Configure it as follows:

     URL: Web_URL/_vti_bin/UserGroup.asmx. Supply necessary Username/PW credentials.

  • Web Method: GetGroupCollectionFromUser
  • Editor Mode: SOAP builder
  • userLoginName(string): Initiator
  • Web Service Output: Specify elements "../m:GetGroupCollectionFromUserResult" > varUserGroupXML

Use the Run Now to verify things work. Query XML action. Configure as follows:

  • XML Source: XML
  • XML: {WorkflowVariable:varUserGroupXML}
  • Output 1: Process using: XPath.
    /defaultNS:GetGroupCollectionFromUser/defaultNS/Groups/DefaultNS:Group/@Name
  • Return Results as: text
  • store result in : varUserGroupNames

Collection Operation action. Configure as follows:

  • Target collection: varUserGroupNames
  • Exists: checked
  • Value: Value (selected from dropdown menu) - (the group name you are interested in) typed in text input
  • Store result in: varIsInGroup

Now, the value of varIsInGroup will be a yes/no.

You could probably make this cleaner by putting the group name to search for in a workflow variable as well.

Labels: (2)
Tags (1)
Reply
3 Replies
Workflow Hero

Re: How to know if a user is on a Sharepoint Group?

Just a small Typo in this Document.

The Output 1: Process using: XPath. should be

/defaultNS:GetGroupCollectionFromUser/defaultNS:Groups/defaultNS:Group/@Name

0 Kudos
Reply
Workflow Hero

Re: How to know if a user is on a Sharepoint Group?

I followed the steps here but got the following error:

6/22/2017 10:14 AM Workflow Comment Failed to invoke web service. Error returned from server:

<soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>soapSmiley Frustratederver</faultcode><faultstring>Exception of type 'Microsoft.SharePoint.SoapServer.SoapServerException' was thrown.

What is the issue?

Thanks!

Mel

0 Kudos
Reply
Workflow Hero

Re: How to know if a user is on a Sharepoint Group?

If you want to test the Query XML in the Workflow designer, use the full XPath string:

/soap:Envelope/soap:Body/defaultNS:GetGroupCollectionFromUserResponse/defaultNS:GetGroupCollectionFromUserResult/defaultNS:GetGroupCollectionFromUser/defaultNS:Groups/defaultNS:Group/@Name

0 Kudos
Reply