Book a Demo

Author Topic: Visio import: Element text invisible  (Read 13801 times)

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
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.

Bill


Nizam

  • Prolab Moderator
  • EA User
  • *
  • Posts: 320
  • Karma: +15/-2
  • Model Sharing - Simplified
    • View Profile
    • Professional Model Collaboration
Re: Visio import: Element text invisible
« Reply #1 on: July 10, 2018, 10:19:40 am »
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)
Whats your Visio version? can you try saving the file in the older format (.vsd) and importing again.

(From the post i infer that your Visio diagrams uses the generic shapes stencil (rather than UML or BPMN, etc.)  Visio import works better if one of the standard stencils is used.)


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
EA stores Stereotype information in multiple tables (t_xref has the FQ Streotype details), best to use scripts to iterate and clear the stereotypeex field of the objects.

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #2 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.name, o.object_type, x.name, x.type, x.description from t_object o, t_xref x where x.client = o.ea_guid and o.package_id = 305 order by o.name

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

What other tables are involved?

Thanks.

Bill

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #3 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:

BCol=13758696;LCol=16777215;DUID=04ED5C6D;

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

Bill

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #4 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.

Bill

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: Visio import: Element text invisible
« Reply #5 on: July 11, 2018, 06:24:29 am »
To post an image place it on a public server and use the reference.

q.

Nizam

  • Prolab Moderator
  • EA User
  • *
  • Posts: 320
  • Karma: +15/-2
  • Model Sharing - Simplified
    • View Profile
    • Professional Model Collaboration
Re: Visio import: Element text invisible
« Reply #6 on: July 11, 2018, 07:40:22 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.

Bill

I'd again suggest trying using a script to modifying a few elements, and see if that helps. There are items in StyleEx field, PData, XRef, object properties  and many other places that EA could use to infer appearance

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #7 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?

Bill

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: Visio import: Element text invisible
« Reply #8 on: July 11, 2018, 10:42:26 pm »
We have his YABB here since 2003 (with one update ever since). There are a couple of options YABB seems to  hide. E.g. starting polls has been enabled two times (in 15 years) but was turned off latest one week after (accidentally?) enabling it. So, don't ask me what Sparx is doing there. It's very consistent with other strange thinking that seems to dominate down under in the outback of Sparx' premises (just kidding; but not too much).

q.

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8098
  • Karma: +118/-20
    • View Profile
Re: Visio import: Element text invisible
« Reply #9 on: July 12, 2018, 09:58:18 am »
We have his YABB here since 2003 (with one update ever since). There are a couple of options YABB seems to  hide.
We stopped using YABB quite some time ago. The forum is SMF (Simple Machine Forum)

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: Visio import: Element text invisible
« Reply #10 on: July 12, 2018, 05:35:45 pm »
Uh. Still looked like the old YABB so I was just assuming this being a newer version.

q.

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #11 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?

Thanks.

Bill

Nizam

  • Prolab Moderator
  • EA User
  • *
  • Posts: 320
  • Karma: +15/-2
  • Model Sharing - Simplified
    • View Profile
    • Professional Model Collaboration
Re: Visio import: Element text invisible
« Reply #12 on: July 19, 2018, 12:57:02 pm »
I tested again, and my visio imports brings in connectors, are you able to share an excerpt of your actual Visio.

bholtzman

  • EA User
  • **
  • Posts: 93
  • Karma: +2/-0
    • View Profile
Re: Visio import: Element text invisible
« Reply #13 on: July 20, 2018, 04:39:15 am »
Sure:
https://apex.oracle.com/pls/apex/f?p=50230

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

Bill

Nizam

  • Prolab Moderator
  • EA User
  • *
  • Posts: 320
  • Karma: +15/-2
  • Model Sharing - Simplified
    • View Profile
    • Professional Model Collaboration
Re: Visio import: Element text invisible
« Reply #14 on: July 20, 2018, 02:27:16 pm »
Seems to work okay for me.
My systems spec
EA 13
Visio 2016
EA Visio MDG Link 2.0.1.2

IMported Image
https://pasteboard.co/Hvhh243.png

I chose 'Activity' when EA prompted for default conversion.

PS - I have to drag and drop objects to a diagram to create this diagram.