I am trying to bulk update an attribute that is being sharded between the Non Employee profile and the Assignment profile. The non Employee profile value needs to be pushed to the assignment profile for a user. I have been able to successfully create a update workflow that takes the value from the Non-Employee Profile and populates it on the Assignment. When I try to rebuild this workflow in Batch it runs successfully but no records are being updated.
I have tried to run the working workflow based on profile selection where the Assignment is Active, and the value is null. I am not sure what I am missing here based on everything I have read this should work the same as the update workflow. Any ideas what I may have missed?
I’m sure its just the UI cutting it off, but want to ensure that the “Non-Employee” value for “What Profile” in your Set Attribute Values action in the Batch workflow is the same attribute in your Update workflow. I’ve accidentally labeled things with the same name in the past, and that has burned me in scenarios like this.
Secondly, Your Batch workflow has the “create a new request for each profile selected” set to “no”. So, this would be making a single request that will update all select profiles with a value… I’m wondering if there is a potential issue here where the workflow is unable to pull the value due to there being multiple profiles selected… (Will be testing that out)
I would suggest setting that to “Yes” and seeing if the updates go through. At the very least, you should be able to see the workflow even on the Profiles’ history, even if the attribute was not set to any value
You certainly can re-use attributes across profile types - but if that “SailPoint Username” value is not a single value for all profiles, you will want to use individual sessions for this batch to ensure you are pulling the correct value from the “parent” profiles (whatever profile is stored in NonEmployee for Engagement).
The batch workflow does not have the same “profiles” context when using a separate request for each Profile vs using the one request for all profiles. It will be unable to find the specified Profile (NonEmployee for Engagement) and pull a value from it. If you use separate requests for each Profile, it should work as expected.
Well… This one has really stumped me. As long as that “Non-Employee for Engagement” attribute has a Profile stored in it - and that Profile has a value for “SailPoint Username”, this should be working…
Does “SailPoint Username” have a Validation on it, like “unique”? Wonder if we have a bug with that silently failing if the value has been used somewhere else already… It looks like you are using the same attribute (“SailPoint Username”) for both the Non-Employee and the Assignment Profile. If that has the unique validation turned on, the workflow should be throwing an error because you are trying to set the same value on the same attribute in two different profiles. But, your workflow activity shows it was “Completed” without error, so either that validation is not turned on or we are failing silently (bug)…
Please confirm the above. In my current testing, an error is being thrown as expected (but I might be testing the wrong thing depending on your answer ):
I created a new attribute to work around the issue. I am wondering in cases like this if there would be a way to flag the attribute on the assignment to be a reference to the attribute on the non employee profile. So this way when the user is selected in the non employee for assignment it pulls and auto populates the value. The thought would be that it is not a new value/attribute but rather a shared attribute between profiles.