Create object activity - group object creation failed

Nov 16, 2015 at 1:02 PM
Edited Nov 16, 2015 at 1:04 PM
Hi, I've succesfully installed the workflow activity and created the following workflow in order to create group objects using the workflow. My source object in FIM is a custom object from named Location.

Initial values:
DG-[//Target/CompanyCode][//Target/LocationCode]-[//Target/City],displayName
All employees Location [//Target/CompanyCode][//Target/LocationCode]-[//Target/City],description
DG-[//Target/CompanyCode][//Target/LocationCode]-[//Target/City]@domain.com,Email
DG-[//Target/CompanyCode][//Target/LocationCode]-[//Target/City],MailNickname
GLOBAL,domain
true,MembershipLocked
None,MembershipAddWorkflow
Global,Scope
Distribution,Type
Existence lookup filter:
/Group[DisplayName = 'DG-[//Target/CompanyCode][//Target/LocationCode]-[//Target/City]']
New object type:
Group
As soon as I Trigger the workflow I get the following warning in the Eventlog.
Microsoft.ResourceManagement.WorkflowDataExchangeException: Microsoft.ResourceManagement.WebServices.Exceptions.InvalidRepresentationException: ResourceTypeViolatesSchema
   at Microsoft.ResourceManagement.ActionProcessor.ActionDispatcher.ValidateObjectAttributes[T](RequestType request, Guid objectIdentifier, String objectTypeName, IEnumerable`1 parameters, OperationType operationType)
   at Microsoft.ResourceManagement.ActionProcessor.ActionDispatcher.ValidateInputRequestCreate(RequestType request)
   at Microsoft.ResourceManagement.ActionProcessor.ActionDispatcher.ProcessInputRequest(RequestType request)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.ExecuteAction(RequestType request)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.ExecuteAction[ResponseBodyType](RequestType request)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.DispatchRequest[ResponseBodyType](RequestType request, Guid requestIdentifier, Object redispatchSingleInstanceKey, Boolean isRedispatch)
   at Microsoft.ResourceManagement.WebServices.RequestDispatcher.DispatchRequest[ResponseBodyType](RequestType request)
   at Microsoft.ResourceManagement.Workflow.Hosting.RequestWorkItemProcessor.DispatchRequest[TResponseType](RequestType request, Boolean applyAuthorizationPolicy)
   at Microsoft.ResourceManagement.Workflow.Hosting.RequestWorkItemProcessor.ProcessCreateWorkItem(CreateRequestWorkItem createWorkItem)
   at Microsoft.ResourceManagement.Workflow.Hosting.RequestWorkItemProcessor.ProcessWorkItem(WorkItem workItem)
   at Microsoft.ResourceManagement.Workflow.Activities.CreateResourceActivity.ProcessRequestResponse(Object sender, QueueEventArgs e)
   at System.Workflow.ComponentModel.ActivityExecutorDelegateInfo`1.ActivityExecutorDelegateOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime)
   at System.Workflow.Runtime.Scheduler.Run()
Any idea what I'm missing? My request to create the Group is in the status "Denied".
Thanks
Chris
Coordinator
Nov 16, 2015 at 1:35 PM
You may want to build some Workflow parameters for your constants and use [//Workflow/TrueValue] and similar. Not sure that will work as specified right now with the constants.
Nov 16, 2015 at 2:13 PM
Thanks for your reply.
If I look at the detailed content of the denied request all values are correctly calculated. The concatenation of the attributes seems to work.
Nov 17, 2015 at 10:53 AM
The problem was caused by case sensitivity of the attributes.

After I changed displayName to DisplayName and description to Description it was working.

Has anyone ever tried to set the Filter attribute during object creation (for criteria based membership)?

My Filter should look like this

<Filter xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Dialect="http://schemas.microsoft.com/2006/11/XPathFilterDialect" xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration">/Person[(CompanyCode = '1000') and (LocationCode = '0001')]</Filter>
As soon as I add the Filter attribute using a workflow parameter (FunctionEvaluator) with the filter I receive an error creating the group.

System.Xml: System.InvalidOperationException: There is an error in XML document (1, 1). ---> System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1.

I guess this is caused by the filter value which is converted to HTML. e.g. < is changed to < and so on.

Has anyone ever tried this? Otherwise the question would be: How can I configure my group to have criteria based membership ?

Thanks

Chris