I have a process that builds out a resource management OBS and then XOG's it in.
Part of the OBS assigns OBS level security to managers like this:
<unit code="B66486" name="B66486 -DOE, JOHN">
<associatedObject objectCode="A71847" objectType="resource" />
<associatedObject objectCode="A71960" objectType="resource" />
<associatedObject objectCode="A71976" objectType="resource" />
<associatedObject objectCode="A72170" objectType="resource" />
<associatedObject objectCode="A72200" objectType="resource" />
<associatedObject objectCode="B80116" objectType="resource" />
<associatedObject objectCode="B83727" objectType="resource" />
<associatedObject objectCode="C48939" objectType="resource" />
<Security>
<UserSecurity rightCode="ResourceApproveTime" rightMode="OBS_UNIT_AND_CHILDREN" userName="B66486" />
<UserSecurity rightCode="ResourceEditCalendar" rightMode="OBS_UNIT_AND_CHILDREN" userName="B66486" />
<UserSecurity rightCode="ResourceHardBook" rightMode="OBS_UNIT_AND_CHILDREN" userName="B66486" />
<UserSecurity rightCode="ResourceEnterTime" rightMode="OBS_UNIT_AND_CHILDREN" userName="B66486" />
</Security>
</unit>
And this generally works. The user JOHN DOE gets OBS unit and descendant rights to the B66486 - DOE, JOHN node.
Now, we want to add a right so that the user can have full edit rights over the resource. So, I added the following node to the Security section:
<UserSecurity rightCode="ResourceEditFull" rightMode="OBS_UNIT_AND_CHILDREN" userName="B66486" />
But when I re--run the XOG, the Resource Edit right does NOT get applied to the resource.
Now, I do have the complete="true" option set in the obs element:
<obs description="Resource Manager OBS" code="BBT_RESMGR_OBS" name="Resource Management" isSecurity="true" complete="true">
When I run it, the XOG stats show that 317 resources were updated with 0 failures, but the processing time is way too fast - like 1 second, whereas if the OBS has to be built from scratch, it takes about 4 minutes.
So what else am I missing here?
I'd like the OBS structure to be completely rebuilt so that it catches all of the changes when it runs.