cancel
Showing results for 
Search instead for 
Did you mean: 

Programmatically changing user preferences when creating an InfoView user in code

Former Member
0 Kudos

Post Author: rickp101

CA Forum: .NET

I am very new to BO (using Business Objects 11.5) so bear with me if I am not clear or seem to have no idea what I'm talking about.

As a .NET Developer I have been asked to work on a project that involves creating new BO users and logging them in from an ASP.NET application (in order to mimic a single sign in system from another piece of software). I have found most of the information I require for this in the .NET SDK. However there is one function the client would like that I have not been able to find a solution for, and that is to change the users document viewing preferences.

Within InfoView, if you go into user preferences, under the General tab there is the following option:

For each document, show me ...

descriptionownerdateinstance countactions and description (if selected) initially not hidden

I think by default all of the boxes are checked however the client only wants the description showing for each user when they are set up. Is this something that can be modified within the code when the user is created or is each user going to have to change this themselves manually once logged in?

Any help will be much appreciated.

Richard

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Post Author: Ted Ueda

CA Forum: .NET

The InfoView settings aren't documented, unfortunately, but with sufficient trial-and-error, you'd be able to determine the correct values.

The settings are stored in the SI_DATA property 'desktopsettings' for a User object - you can have a look by logging onto 'Query Builder', accessible from the admin launchpad, and entering a query of the form: "Select SI_ID, SI_NAME, SI_DATA From CI_SYSTEMOBJECTS Where SI_KIND='User' And SI_NAME='<username here>'".

You'd see that, if you've specified the properties manually in InfoView (the property is not there by default) that it consists of '&'-separated key=value entries.

You'd retrieve the value via Enterprise .NET SDK call User.GetProfileString("desktopsettings"), and set new values via User.SetProfileString("desktopsettings", <new string value here>).

The specific values you're interested in are booleans dv0=1, dv1=1, dv2=1, dv3=1, and dv4=1.

Sincerely,

Ted Ueda

Answers (1)

Answers (1)

Former Member
0 Kudos

Post Author: rickp101

CA Forum: .NET

Spot on

Thanks a lot for that Ted, exactly what I was after.