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 - Guillaume

Pages: 1 2 3 [4] 5 6 ... 42
I take that the diagram focus is still not supported via the API?


Is it possible to let a user assign keyboard shortcuts (e.g. F1, Maj+F1...) with an installed add-in menu/feature?


Uml Process / Re: data format in component with tracability
« on: February 28, 2018, 02:17:37 am »
Interfaces don't support attributes/data - they are intended to define the "contract" i.e. services to be provided or used by each component hence you should only define operations.
You can try using information flows between Components ; this feature lets you select one or several UML classs from a "data model" that goes from a component to another.


The attribute is probably associated via the "Link to element feature". To find this attribute, you need to look at the StyleEx value of the connector (best is to query the t_connector table).

I'll submit a feature request to Sparx.

No, my intent is to trigger the script when running the "Synchronize Structural Elements" from a SysML Internal Block Diagram.
This feature creates new SysML parts elements according to the BDD definition i.e. Blocks associated via a composite or aggregation link to the main Block (e.g. our system).

So I have a feeling that despite the Sync Struct. Element creates elements in the model, it does not broadcast the OnPostNewElement event (only the OnPreNew).

Hi Arshad,

Thank you for your reply. I missed the return value from Sparx API doc.
Please note that I'm using ea-matic.

To see the caught events, I started adding the following to the ea-matic function. I tried to return true in the PreNewElement but that didn't work (I also tried with Set EA_OnPreNewElement = true).

function EA_OnPostNewElement(Info)
   Repository.WriteOutput "Script", now() & " EA_OnPostNewElement " ,0   
end function

function EA_OnPostNewDiagramObject(Info)
   Repository.WriteOutput "Script", now() & " EA_OnPostNewDiagramObject  " ,0   
end function

function EA_OnPreNewDiagramObject(Info)
   Repository.WriteOutput "Script", now() & " EA_OnPreNewDiagramObject  "  ,0   
end function

function EA_OnPreNewElement(Info)
   Repository.WriteOutput "Script", now() & " EA_OnPreNewElement  " ,0   
   EA_OnPreNewElement = true
end function

That's not available with the EA_OnPreNewElement event (since the element is not created at this stage), hence my issue of not being able to catch OnPostNewElement or OnPostNewDiagramObject.


I'm trying to apply auto updates on a SysML IBD diagram when running the Synchronize Structural Elements, where EA creates new parts according to the BDD definition.
The only broadcast event I catch is EA_OnPreNewElement. However I need the Element ID to update via the OnPostNewElement or OnPostNewDiagramObject event.

Any reason why I'm not getting these events?

General Board / Re: Cannot import UML patterns on a MySQL DB
« on: January 31, 2018, 09:21:04 pm »
As a follow up, I found a way round via a script:
- the user selects the folder and provides the XML file name
- the script gets the content, and reads the pattern name, notes, version, and category
- the script runs an insert query in the t_umlpattern table

I also had to change a column type to longtext in MySQL on the t_umlpattern table (alter table...).

General Board / Cannot import UML patterns on a MySQL DB
« on: January 31, 2018, 07:18:39 pm »

I'm getting the following error when I try to import a UML pattern: "Failed to import Pattern '...'.  Pattern too large for database field."
I found a thread here matching this issue on MySQL EA projects:,26367.msg206158/topicseen.html#msg206158

Unfortunately even removing the image does not sort the issue as the XML file remains to large (140 kB).

Is there a way round to resolve this with the current build?


I have a very large EA project running on a centralised DB. I need to run EA 13's batch to create diagrams cache (images of each diagram are created in the DB).
Unfortunately EA eventually crashes after 5 mins.

Is there a way to run this batch update via an API call in an attempt to handle in a better manner the high volume of data to process?

General Board / Re: Unlock a Block element
« on: January 19, 2018, 08:36:10 am »
You can lock elements even when the security is not enabled.
Having the locked Block displayed on a diagram, a right click will show "Lock Element" - if the padlock is highlighted it means that the element is locked so you simply need to click on this option (Lock Element).

Uml Process / Re: [sysML1.4] How to type a connector with EA
« on: January 18, 2018, 03:59:29 am »
Having created the association block (K-Matrix on your BDD -> association between Gateway & Radar), I tried to set the connector type in the IBD between the corresponding parts.
A right click on the IBD connector between the parts > Advanced > Set Connector Type lets me choose the matching connector on the BDD. If you name that connector, it will no longer appear as anynomous - but this is not what you wanted i.e. it should display the name of the association block.
So my understanding is that Sparx only implemented a link between the BDD & IBD connectors based on the BDD connector name. I think the SysML association block is simply not implemented in EA.

Sounds like a SysML feature request.

A workaround would involve using Geert ea-Matic to set the connector's name when an association block is created (I tried it and it works).

Pages: 1 2 3 [4] 5 6 ... 42