BO meta-model

In a message dated 99-03-09 10:40:20 EST, you write:

Has anyone figured out the relationship between Documents and Universes;

I am looking at the BO meta-model (I reverse-engineered the physical shema
with ERwin)
I figured out many relationships but of course I am missing a lot too.

Unfortunately, there isn’t one. Seriously.

When you store a document in the repository, it is stored as chunks of binary
data. Nothing in the repository is designed to show a link between a document
and a universe! In fact, this would be more difficult than a straight join,
since a single document can have one or more universes involved. Also, a
universe can be used one or more times! (Meaning that a document could have 4
data providers, made up of 2 universes, one of which is used in 3 different
data providers and the other used only once.)

Just curious: what are you trying to find out by looking for this link?

There may be a way to do what you are looking for via the scripting language.
Something along the lines of:

find a document
loop
find a data provider

 loop
      find source for data provider, log to file
      find next data provider
 until no more data providers in this document

 find next document

until no more documents

Regards,
Dave Rathbun
Integra Solutions
www.islink.com


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

In a message dated 99-03-09 14:32:48 EST, you write:

My intention is to build a repository with BO meta data;
Designers, Power Users and some Managers around here have been asking me
questions like “where does this Report point to? what Universe(s)?”.

Regarding your suggestion, where do I look for these Data Providers of a
Document?
Are you referring to BO tables? could you be more specific?

You have to look in the document itself. You cannot perform this task using
the repository tables. The script idea that I posted earlier assumes that you
have a set of BusObj documents available, say in the UserDocs directory, and
that the script would loop through the available documents one at a time…

  1. Open the document

  2. For each document:
    Look at each data provider in the document
    If the data provider is a Universe, obtain the universe name
    Log to a text file at some specified place
    Get the next data provider (until no more)

  3. Get the next document (until no more)

I would envision that the text file could contain the document name, the data
provider name, and the universe name. That text file could then - using tools
that you may have available - be loaded into a pseudo-repository table. By
that I mean a table that is contained in the same database as the rest of the
repository tables. In that way you could write queries using the universe name
as a potential join clause.

You could also, if you had the inclination, build a list of objects used in
each data provider. Given the object name and universe name you can build a
“where used” type of analysis report. In other words, if I delete this object,
where is it used? Will it affect any of my users?

At the time, I don’t have time to write / debug this script, but I imagine
that some of the scripting gurus on the list might want to take a stab at it.
Or - perhaps - write up an abstract? It’s not too soon to start planning for
the conference in sunny San Diego…

Again, you cannot perform this task using the repository tables. The document
must be available for the client software to open (ie on a file system
somewhere).

I understand your requirements; they are fairly common requests. At this time,
BusObj does not provide a direct mechanism to do what you are asking. As far
as I am aware, anyway.

Regards,
Dave Rathbun
Integra Solutions
www.islink.com


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