Can anyone tell me how to generate a report showing which users have access to which universes? Right now I am printing to .csv file from supervisor then running a query against that file (type = 2). Unfortunately it only gives the universe file name and not the name of the universe. Surely there is an easy way to do this?
I just wondering if you have created a universe using the repository tables. Then you can report on this universe in any number of ways. It’s all there I am sure. There must be dozens of posts about the repository.
On the BO CD, in the Freeware directory, you’ll find the Manager0.unv file. That would be a great place to start. It’s built for an Oracle repository, so if you are using Oracle, all you have to do is connect it to your repository and start building reports. Otherwise, you may need to make a few modifications.
ok, thanks.
I have used the mangerO universe before. However I have not found working with that particular universe either intuitive or simple. Which IMHO is the purpose of a hidden semantic layer query tool like BO. For example where are the users in this universe?
Maybe I’ll get to work on it before this somewhat rare (in my world) request crops up again.
Thanks again.
Well, the ManagerO universe is designed around the universe domain. You’ll need to add whatever else you need to it. The BO CD also includes documentation on all the tables and columns in the repository. It’s in the freeware section.
There is another universe available, I think from Dave’s Website, that may contain what you need. Look through the library there. It’s a great resource.
The user is not part of the universe domain, so that table (OBJ_M_ACTOR) is not part of the structure.
The challenge in answering this question is to find out which universes a universe has access to, either directly (by linking) or indirectly (by inheritance). The direct part is easy, the indirect part is a bit tougher. There’s a universe that is available on the KX that uses unions to roll up some of this information. We’re also working on something similar that we can post on our site.
If you want to try something on your own, look for OBJ_M_ACTOR for the user and group definitions, OBJ_M_UNIVERSE for the universe name and whatnot (but not the classes and objects, those are in the UNV* tables), and look at OBM_M_RESLINK for the links between the resources (universes, in this case) and the user, and finally the OBJ_M_ACTORLINK table to get the link from the resource to the user (or group).
Is this query rt?? But it shows that Root Group has acces to all the uiverses though it does not. If you want to remove ROOT group add
m_actor_n_id <> 1 condition to the query
select a.m_actor_n_id,a.m_actor_c_name,u.m_uni_n_id,u.m_uni_c_filename
from obj_m_actor a, obj_m_universes u, obj_m_reslink rl, obj_m_actorlink al
WHERE
a.m_actor_n_id=al.m_actl_n_actorid
and al.m_actl_n_id = rl.m_res_n_actlinkid
and rl.m_res_n_resid = u.m_uni_n_id
and m_actor_N_type=1
and m_res_n_status=1;
Seems like we beat this dead horse periodically My favorite easy way is to do a file/print from Supervisor and choose print in table format. Use the resulting .csv files to create a report.
There is a PL/SQL script on the Integra Solutions, Inc. site which will display the users that have access to a given universe. Go to http://www.islink.com/isi_library_downloads_BO_supervisor.htm#WHOSQL and select "Who Gets What? - SQL to Scan the Repository (Oracle Only).