Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - bholtzman

Pages: 1 [2] 3 4
It's probably setting EAElement.TreePos in the order you need it.


Thanks. I should have been clearer. It's not just the sequence of the elements that we want to process. We want to actually tailor the schema output to include reference to some information in tagged values. Is that the kind of thing you'd build an MDG for? I could also see doing it through some Access VBA but this would exist outside of EA - the Access file would link to the EA tables and then do lots of data manipulation on its own. I think you know what I mean since you encouraged me to use Access this way!


Hi Geert,
Can you elaborate on item (3)? Are you referring to post-processing within EA or something external? Is there any ability to modify and customize the generation of xsd's from within EA? Is there a way to somehow integrate scripts within EA to different EA export features?

We're trying to replace an existing post-processing tool with a method that is internal to EA.



We have solved this (for different customers) in different ways:

- 1) only use attributes and no associations (limits some constructs such as anonymous choices)

- 2 ) use an add-in I wrote: EA Message Composer to select the message as a subset. The add-in takes care of the alphabetic order.

- 3) write a post-processing tool/script to order the resulting xsd's alphabetically.


General Board / Re: Visio import: Element text invisible
« on: July 26, 2018, 11:55:33 pm »
Thanks for your help. I emailed Sparx to let them know the results of my beta testing of EA 14.  :)

General Board / Re: Visio import: Element text invisible
« on: July 25, 2018, 12:20:13 am »
OK, I reinstalled EA 13.5, but I put it in this folder:
C:\Program Files (x86)\Sparx Systems\EA13

Looks like I needed to put it in a higher level folder as I no longer seem to have EA14.

So I am running 13.5 now, which isn't a bad thing because my .eapx files could not read by my colleagues running EA 13 and I could not export in .eap format. I had to reinstall the Visio importer (the "import" link was grayed out) and now have two separate Visio extensions in the ribbon, but it does work. Now when I import the Visio file, I do get the connectors! So there is clearly an issue with EA 14 and the Visio MDG. Also, the Activities import with the stereotype Box. Nizam I assume you saw the same thing.


General Board / Re: Visio import: Element text invisible
« on: July 21, 2018, 05:22:32 am »
Nizam, I should add that when I run this query in the EA SQL Scratch Pad:
select * from t_connector

There are no results.


General Board / Re: Visio import: Element text invisible
« on: July 21, 2018, 05:12:57 am »
 I am using:

EA 14 (Build 1421)
Visio Standard 2016
EA Visio MDG Link

I also chose 'Activity' but the same thing happened for other options.

What's this about dragging and dropping objects? I get a diagram generated as shown in the slides here (same link as before):

I don't do any dragging and dropping. I appreciate your help with this greatly.


General Board / Re: Visio import: Element text invisible
« on: July 20, 2018, 04:39:15 am »

Thanks very much. Hope it's not something ridiculously stupid on my part...


General Board / Re: Visio import: Element text invisible
« on: July 19, 2018, 04:53:45 am »
OK, so I observed the following properties in an object I had imported from Visio and then changed the stereotype from "rectangle" to "function" through the EA properties dialog:

Stereotype: function
StereotypeEx: function
Type: Activity (this is the value I get when I run a script to show me selectedElement.Type, but what appears in the properties dialog window is "Function")
MetaType: Function

This object appears as a box with the stereotype <<function>> above the name of the object.

So I then used a script to update a different object that was imported from Visio to the same values and the result is an object that does not display a stereotype but instead shows me the little function symbol, fx, in the upper right corner. What's the difference?

The Visio importer still isn't generating connectors. Is that something I need to control through UML Types?



General Board / Re: Visio import: Element text invisible
« on: July 11, 2018, 10:31:51 pm »
Thanks, Nizam. I will review the scripting materials and see if I can get that to work.

qwerty, yes I could put images on another server but clearly it's a configurable option on this platform. I don't get why they don't turn it on especially given how useful screen shots are. A security issue?


General Board / Re: Visio import: Element text invisible
« on: July 11, 2018, 05:47:40 am »
OK, here's some more information. I set a baseline then, using EA, I clicked on one element and deleted the stereotype of "rectangle" by backspacing the text and then clicking out of the field in the Element Properties window.

Now I ran a Baseline Compare. I wish I could post an image here but cannot. Well, the comparison said three items had changed:
- The value of stereotype in the element went from "rectangle" to null. (No surprise there)
- There was a tagged value with Name "fill" that was false in the baseline. This tagged value was deleted.
- There was a tagged value with Name "nameVisible" that was also false in the baseline. This tagged value had also been deleted.

Knowing this, I executed SQL to do make the exact same changes to another element. The result in the appearance of the diagram was no change. The stereotype for the element I tried to change using SQL still said "rectangle", so clearly the field t_object.stereotype is not the authority for this property. Where is this data hidden?

Quite a puzzle.


General Board / Re: Visio import: Element text invisible
« on: July 10, 2018, 11:05:05 pm »
To add to the above, I searched every number column of the entire database for a reference to the Object_ID of the element whose style I am trying to use as a templete. I only found one, in the field Object_ID in t_diagramobjects. The field ObjectStyle contained some parameters that seem to affect the appearance of the object:


However, tinkering with these only enabled me to change the border color and not to change the font color, background color or style.


General Board / Re: Visio import: Element text invisible
« on: July 10, 2018, 10:24:23 pm »
Thanks, Nizam. The import tool actually will only import the Visio 2003-2010 (.vsd) format so I had already been using that. I presume I could try and work this from the Visio side but I didn't create the diagram and am not an experienced Visio user. So I think my best approach is to figure out how to work it inside the EA database.

I composed a query to join t_object and t_xref:
select, o.object_type,, x.type, x.description from t_object o, t_xref x where x.client = o.ea_guid and o.package_id = 305 order by

But the object I modified via EA did not appear in the result set.

What other tables are involved?



General Board / Visio import: Element text invisible
« on: July 10, 2018, 07:42:00 am »
Hi all,
I am trying to import some Visio diagrams into an instance of EA on Amazon Web Services which uses a MySQL database. I used the MDG Link for Microsoft Visio within EA 14 (Build 1421). I opened my diagram to find a number of issues:
1. default style is hand drawn mode
2. there don't seem to be any connectors
3. the text inside each item is not visible

Item 1 is easily addressed.

For item 2, I did some checking inside the database as I have SQL access. I ran this query (after identifying package_id 305 as the import):
select * from t_connector where start_object_id in (select object_id from t_object where package_id = 305) or end_object_id in (select object_id from t_object where package_id = 305)

The result set was null, so I concluded that no connectors were created.

For item 3, I found that each element was of type Rectangle and stereotype rectangle. I found that if I null the stereotype, the Element Name text suddenly appears. I attempted to make the change using an SQL update to a different element:
update t_object set stereotype = null where object_id = 9717

But this did not make the Element Name text visible.

I searched all through the t_ tables in the database but could not figure out where the data is stored that makes the text visible. When you change the stereotype of an element to null using EA, where does that change appear in the database other than in the stereotype column of t_object? I noticed that once you do that the Element Type in the Element Properties window changes to Class.

I ran SQL to select all from t_object to fetch only the two elements of interest, the one I whose stereotype I changed to null using EA and the one whose stereotype I changed to null using SQL. I could not detect any difference.

Any thoughts or insights? Thank you.


General Board / Re: Insert tagged value from MS Access
« on: September 08, 2017, 10:15:15 pm »
That's awesome. In the course of trying to evaluate this, as I mentioned I built some code to look for a matching guid in any table. In so doing, I am realizing the value of the guid. If you have metadata that can apply to individual rows in a variety of tables in your database, the guid gives you a single "primary key" to use to look up those rows. I understand that better now that I have code that can search all of your tables for a specific value in a specific field. If anyone is interested, below is my VB code.


Private Function findGUID(guid As String)
'this loops through all EA tables in the database to find a specific guid, displaying a message box to identify the table where it was found,
'along with the 1st field in that table and the value of the field for that guid

Dim db As DAO.Database
Dim tdf As DAO.TableDef
Set db = CurrentDb
Dim fld As DAO.Field, sql As String, rst As Recordset, i As Single, FirstField As String

For Each tdf In db.TableDefs
i = 0
    If ( Like "t_*") Then
            For Each fld In tdf.Fields
            If i = 0 Then
            FirstField =
            i = 1
            End If
            If = "ea_guid" Then
                sql = "select " & FirstField & " as FF from " & & " where " & & " = " & Chr(34) & guid & Chr(34) & ";"
                Set rst = CurrentDb.OpenRecordset(sql)
                If rst.RecordCount > 0 Then
                MsgBox ( & "." & FirstField & ": " & rst!FF)
                End If
            End If
    End If
Set fld = Nothing

MsgBox ("Done")

End Function

General Board / Re: Insert tagged value from MS Access
« on: September 08, 2017, 01:30:46 am »
Hi qwerty,
I did have success in creating completely random guids and inserting them into the ea_guid field in t_attributetags along with the user-specified fields - ElementID (ID field from t_attribute), Property and Value. The data thus entered using MS Access then appeared perfectly in the EA model. I was also able to manipulate the same data from either EA or Access, updating and deleting. The only thing is I now get two errors when I close the Properties dialog box in EA. See attached. I get the Microsoft Cursor Engine error first, and then the Recordset error. But the mechanics of EA and the Access app still work properly. (I don't seem to be able to upload images of the errors to this site.)

I ran some code to see if an EA-generated ea_guid from t_attributetags appeared anywhere else in the database, at least in any table visible to me in MS Access. There was none. So I feel like your assumption that this ea_guid value is basically random and serves no core purpose is valid.

What are your thoughts? Thanks.

**Update** The errors were due to incorrect selection of ODBC driver options so disregard them! The method seems to actually work!


PS We use EA 13.5.1351 Corporate and are accessing a MySQL database on Amazon Web Services.

Pages: 1 [2] 3 4