BusinessObjects Board

simple list of universe objects and definitions

I’m trying to generate a simple list of all the objects in my universe (preferably with class and sub-class names as well) with the SQL definition of each. Any ideas? I don’t think there’s an easy way to do this out of designer, but could I find it in the repository database? (I know in designer I can get a detail description of each object, but that’s a little too much information…)

Thanks,
Jenn


Listserv Archives (BOB member since 2002-06-25)

The CDs have a “managero.unv” universe for the repository. It’s for Oracle.

If you use Sybase, I can share my universe and SQL with you.

Karen S. George


Listserv Archives (BOB member since 2002-06-25)

In a message dated Tue, 11 Dec 2001 3:25:58 PM Eastern Standard Time, “Fisher, Jennifer” Jennifer_Fisher@DFCI.HARVARD.EDU writes:

I’m trying to generate a simple list of all the objects in my universe (preferably with class and sub-class names as well) with the SQL definition

You can write SQL by hand, or you can use Designer to set up a universe based on the repository tables. What you are asking for is fairly easy to do. You will need to reference the following tables:

UNV_UNIVERSE
UNV_CLASS
UNV_OBJECT
UNV_OBJECT_DATA

The first table gets you the name of the universe and the universe ID which you will need to join. The UNV_CLASS table, as you would expect, contains the class name, description, and order it appears in the universe. It also contains the parent class if it is a subclass.

The UNV_OBJECT table contains the universe ID and class ID for a key. It also has the object name, its position in the class, and whether it is visible or hidden.

The UNV_OBJECT_DATA contains the actual description (for OBJ_DATATYPE = ‘H’) and SQL code (OBJ_DATATYPE = ‘S’). It also contains where clause and formatting information… the formatting in formation is coded.

There is good documentation on the repository tables on the BusObj cdrom. It’s in the /freeware directory.

Regards,
Dave Rathbun
Integra Solutions
www.islink.com


Listserv Archives (BOB member since 2002-06-25)

The options for printing are such that you can just print out the object names in each class just seemingly what you require. In Designer module go to Tools then Options then select the print tab. Just tick the List Componenents > Objects de-select all others and this will do what you want.

<----------------------------------------------------------------------- -->
Paul Baird
Rabobank International
tel. : (+44) (0) 20 7809 3408
email : bairdp@rabo-bank.com
<----------------------------------------------------------------------- -->


Listserv Archives (BOB member since 2002-06-25)

I don’t see a parent Class In the UNV_CLASS table. Am I missing something. I am creating report with Class, Subclass, Object Name and Object SQL (Select and Where). But in the classes column, I get all classes and Subclasses in one column. How do I distinguish between them. Any Ideas?

I am using 5.1.6 on SQL Server 2000.


BO_User (BOB member since 2002-10-02)

You need to link from the UNV_CLASS table (using CLS_BASECLASSID) to an alias of the UNV_CLASS table (CLASS_ID) to get the parent class. It gets really fun with sub-sub-sub-classes.

I was going to oh-so-helpfully include my SQL (which is for SYBASE so maybe it’s not so helpful), but my network connection just went down and I can’t get to any of my files! :reallymad:


KSG :us: (BOB member since 2002-07-17)

KSG - Whenever you get chance, can you please post the SQL or send it to me via email. It will make life easier for me.

I do not have sub sub sub classes, but I do have Sub Sub classes

Thanks


BO_User (BOB member since 2002-10-02)

This is Sybase, not MS SQL, so your outer joins may be different

SELECT
  bus_obj.dbo.UNV_OBJECT.OBJ_NAME,
  bus_obj.dbo.UNV_OBJECT_DATA.OBJ_DATAVALUE,
  bus_obj.dbo.UNV_CLASS.CLS_NAME,
  UNV_CLASS2.CLS_NAME,
  UNV_CLASS3.CLS_NAME,
  UNV_CLASS4.CLS_NAME
FROM
  bus_obj.dbo.UNV_OBJECT,
  bus_obj.dbo.UNV_OBJECT_DATA,
  bus_obj.dbo.UNV_CLASS,
  bus_obj.dbo.UNV_CLASS  UNV_CLASS2,
  bus_obj.dbo.UNV_CLASS  UNV_CLASS3,
  bus_obj.dbo.UNV_CLASS  UNV_CLASS4,
  bus_obj.dbo.UNV_UNIVERSE
WHERE
  ( bus_obj.dbo.UNV_CLASS.CLASS_ID=bus_obj.dbo.UNV_OBJECT.CLASS_ID and bus_obj.dbo.UNV_CLASS.UNIVERSE_ID=bus_obj.dbo.UNV_OBJECT.UNIVERSE_ID  )
  AND  ( bus_obj.dbo.UNV_OBJECT.OBJECT_ID=bus_obj.dbo.UNV_OBJECT_DATA.OBJECT_ID and bus_obj.dbo.UNV_OBJECT.UNIVERSE_ID=bus_obj.dbo.UNV_OBJECT_DATA.UNIVERSE_ID  )
  AND  ( bus_obj.dbo.UNV_CLASS.UNIVERSE_ID*=UNV_CLASS2.UNIVERSE_ID and bus_obj.dbo.UNV_CLASS.CLS_BASECLASSID*=UNV_CLASS2.CLASS_ID  )
  AND  ( UNV_CLASS2.UNIVERSE_ID*=UNV_CLASS3.UNIVERSE_ID and UNV_CLASS2.CLS_BASECLASSID*=UNV_CLASS3.CLASS_ID  )
  AND  ( UNV_CLASS3.UNIVERSE_ID*=UNV_CLASS4.UNIVERSE_ID and UNV_CLASS3.CLS_BASECLASSID*=UNV_CLASS4.CLASS_ID  )
  AND  ( bus_obj.dbo.UNV_CLASS.UNIVERSE_ID=bus_obj.dbo.UNV_UNIVERSE.UNIVERSE_ID  )

KSG :us: (BOB member since 2002-07-17)

Worked perfect. Thanks :smiley:


BO_User (BOB member since 2002-10-02)