BusinessObjects Board

Document a universe using Excel and the Designer SDK

I considered including that feature in the utility, but came to the same conclusion as Dave. It just didn’t make sense to me. Most users of the information would immediately put in a filter to look at one universe at a time. That said, if you wanted to document all universes stored locally, you could adapt the “recursion” technique shown in this utility, and apply it to *.unv files.


Dwayne Hoffpauir :us: (BOB member since 2002-09-19)

I too had difficulty in getting this to work for BOXI 3.1 on Vista, but thanks to Margarita’s tips I got it working with:

  1. Developer i.e local admin rights on Vista
  2. Setting the Designer.exe to run as Administrator
  3. Turned off User Account Control
    (FWIW I didn’t need to do the last step involving a config file.)
    Thanks to Dwayne & Margarita

rodlangham :uk: (BOB member since 2004-04-13)

Thanks for this great tool Dwayne! :+1:

I was wondering if there is a way to get the connection information, such as Connection Name, Database, and User, using your macro.

Please let me know.

Thanks!


rbrito :ecuador: (BOB member since 2007-09-06)

Sure, give these a try:

DesApp.Connections(Univ.Connection).Name
DesApp.Connections(Univ.Connection).DatabaseEngine
DesApp.Connections(Univ.Connection).DatabaseSource
DesApp.Connections(Univ.Connection).UserName

Dwayne Hoffpauir :us: (BOB member since 2002-09-19)

Dwaine, this is an absolutely fantastic utility - ive been using it for quite a while now and its saved me significant abouts of time.

I have been trying to modify some of the code slightly with limited success. I basically want to change the Table Name(s) column on the Objects tab, so that rather than a list of the distinct tables used in each object, it displays a distinct list of the table names & column names… (ie - tbale1.column1, table 1.column2, table2.column1 etc)

We have a number of complicated objects in one of our Universes with multiple table/column references (decodes/case etc).

The code is:

For Each Tbl In Obj.Tables
Rng(RowNum, 7) = Rng(RowNum, 7) & Tbl.Name & ", "
Next Tbl
'… but remove the trailing comma
If Obj.Tables.Count > 0 Then
Rng(RowNum, 7) = Left(Rng(RowNum, 7), Len(Rng(RowNum, 7)) - 2)
End If

I have tried modifying it, including ‘Dim Col As Designer.Column’ at the start - but I keep getting compiler/compatability error’s.

Do you think this is possible, and (if so), would you be able to point me in the right direction please??


mrsnow (BOB member since 2006-11-16)

The only way I can think of is to parse through the .Select property (the SQL) for the object … nasty.


Dwayne Hoffpauir :us: (BOB member since 2002-09-19)

is there anyway to get the unqiue object ID of any of the measurements/dimensions?


AuguC (BOB member since 2009-11-20)

Please see this post back on page 3 of the topic. :slight_smile:


Dave Rathbun :us: (BOB member since 2002-06-06)

thanks dave ! got it


AuguC (BOB member since 2009-11-20)

is it possible to do this using a Java application?


AuguC (BOB member since 2009-11-20)

Moderator Note: Ghost72, Please do not cross-post. It leads to fragmented discussions and is against our forum rules. Continue here. Thanks for your cooperation.


Jansi :india: (BOB member since 2008-05-12)

Sorry abt that


AuguC (BOB member since 2009-11-20)

I get an “automation error” (try to translate message box fom german) :(.
It looks like counter overflow, something about -2147417851 (max. integer in VBA?)

The macro just fills the corresponding excel pages with full list of tables, columns, joins, contextes. And conditions too. But the list of obects is not complete, some classes are missing. It seems that the macro interrupted somewhere in the loop for getting objects properties.

Any idea how to workaround this? Maybe the universe is not ok? What happens if some object doesn’t have a valid definition, i.e. wrong table name in select? Could it lead to such error?

I’ve got this error with Excel 2002 and 2003. WebI is 3.1, local installation of Designer and SDK is v12.


fel (BOB member since 2008-10-21)

Hi, i’m getting the error:

vbaproject - 430: class does not support automation or does not support expected interface

any ideas


smiths5 (BOB member since 2009-12-07)

Hi, Welcome to B:bob:B!

At the top of this page there are several search links, one of which is “search this topic.” I used that to come up with a number of prior posts that already discuss your question, including this one that might help. Thanks.


Dave Rathbun :us: (BOB member since 2002-06-06)

Hi,
I have universe with more than 3500 objects & somewhere with simliar subcalss names.
With this macro, we are getting details like
Class Name|Object Name|Type| Description etc.
But can we get the details like
Parent Class Name|Class Name|Object Name|Type|Description etc. in Objects tab & what modification is required for that.

Thanks,
Nilesh


patneel :india: (BOB member since 2006-11-02)

go to ListObjects function

try using this to get the Parent Folder

i.e
Rng(RowNum, 1) = Cls.RootClass.Name
Rng(RowNum, 2) = Cls.Name
Rng(RowNum, 3) = Obj.Name
Rng(RowNum, 4) = Obj.Type
Rng(RowNum, 5) = Obj.Description

Note: It might throw an error if your class is already at the top level

good luck.


AuguC (BOB member since 2009-11-20)

Hi,

I have modified the macro as below but giving me error as “Designer 91-Can not get mother class”.

Note-

I have included the Parent Class column in the xls sheet & removed the “Type” column as i don’t require that information

For Each Cls In Clss
For Each Obj In Cls.Objects
RowNum = RowNum + 1
Rng(RowNum, 1) = Cls.Name
Rng(RowNum, 2) = Cls.RootClass.Name
Rng(RowNum, 3) = Obj.Name
Rng(RowNum, 4) = Obj.Description

Pls share your any ideas.

Thanks,
Nilesh


patneel :india: (BOB member since 2006-11-02)

Hi

as i mentioned. when your in the tope level class, there is no parent class for that object.

you have to do a guard . something like this

                    try
                    {
                        parentName = aClass.RootClass.Name;
                    }
                    catch
                    {
                        parentName = "";
                    }

This is in c#


AuguC (BOB member since 2009-11-20)

I am getting a “Buffer overrun detected” error. I am using the XIr2.xls version. The error occurs after the tool allows me to sign on to designer and select a universe. Can someone help me please?


Roncadet (BOB member since 2008-10-22)