cancel
Showing results for 
Search instead for 
Did you mean: 

Change Custom Access Level on a personal folder

Former Member
0 Kudos

Hi All,

This is about Business Objects XI 3.x

I'm looking for a solution to change the security settings on a personal folder.

Within 3.x it isn't possible to "overide" the user settings on a personal folder with the use of an usergroup.

So what I'm looking for is a way to overide the user settings Access level (by default this is Full Controll) with a custom Access level so I can take away some privilige on the personal folder.

Is there a Java script allready be developed by some one that I can use?

Thanks in advance.

Cheers,

Jan

Accepted Solutions (0)

Answers (1)

Answers (1)

aasavaribhave
Advisor
Advisor
0 Kudos

Hi Jan,

You can use the following code snippet:

// folders is IInfoObjexts collection that contains the personal folders.

folders = oInfoStore.query(query);

if (folders.size() > 0)

// query for the user for whom you want to set custom access role over the personal folder.

{

query = "select * from ci_systemobjects where si_name ='" + testUser + "' and si_kind ='user'";

users = oInfoStore.query(query);

// set the custom role.

folder = (IInfoObject) folders.get(0);

user = (IInfoObject) users.get(0);

IExplicitPrincipals explicitPrincipals = folder.getSecurityInfo2().newExplicitPrincipals();

IExplicitPrincipal explicitPrincipal = explicitPrincipals.add(user.getID());

// customRoleID is SI_ID of te custom role. You can retrieve custom role just as you retrieve any other

//info objet. You can use the query like : select * from ci_systemobjects where si_name='custom role

//name' and si_kind='customrole'

IExplicitRole explicitRole = explicitPrincipal.getRoles().add(customRoleID);

oInfoStore.commit(folders);

I hope this helps.

Thanks

Aasavari }

Former Member
0 Kudos

Hi Aasavari,

this puts me really in the right direction.

I will try to use this with a script from Ted Ulea which he has put on the development site.

This script creates a folder within a favorite folder and then change the access levels of the everyone group.

But to be honest I'm not a developer so perhaps I will have to ask you help.

Thanks very much,

Jan