API documentation for Visio Modeling Engine modeleng.dll?

V

Vlad Sushkov

Hello,

I am wondering if there is any officially published API reference for Visio
Modeling Engine modeleng.dll?
In particular, how to list all the entities in the Visio model?

Any tips would be appreciated.

Thanks much.
Vladimir
 
V

Vlad Sushkov

I see couple problems with that:

1. Save As XML saves only "displayable" tags but does not save indexes for
example,
so it does not keep the whole object semantics as it is represented in
the Visio model.
2. Not sure that XML stores the relationships between the entities...

Vlad
 
V

Vlad Sushkov

J

JuneTheSecond

V

Vlad Sushkov

A little excercise will show my point:

1. In Visio .NET for Enterprise Architects create a simple database model
that only has a single table called Customer. The table has few columns
(names do not matter) and one index.
Let's assume the table has the following columns:

customer_id LONG
name VARCHAR(50)
is_preferred CHAR(1)

2. Go to the Database Properties grid, select Indexes. Add a new index
named test_idx on the column customer.name.

3. Save the Visio drawing as a .vdx (XML) drawing.

4. Rename the .vdx file into .xml.

5. Open the xml file in Internet Explorer (or in XML Spy if you wish).

6. Search for the string "test_idx" (with no quotes) within the XML file.
Since the index is a part of the model it should be also in the XML
file.
However the search does not return any results.

Vlad
 
J

JuneTheSecond

If it were not in xml file, it might not had been written in the Visio drawing.
 
V

Vlad Sushkov

Hello John,

Yes I recently found that reference too. Looks like some interfaces are not
available from VB
(I am getting Automation error pop-up: "Automation Error. Library is not
registered")..
Anyway it seems to be a good starting point, I am fiddling with it...

Thanks much.
Vladimir
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top