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.

Topics - michielper

Pages: [1] 2 3 4
Although in models and diagrams there is a distinction between Aggregation and Composition, this seems to be lost when accessing the model in a script where both types of connectors get the same EA.Connector.Type: "Aggregation". This seems weird, or am I missing something?

Although the two relationship types have similarities, the differences can be very significant and essential in a model. So, how can I find the difference when accessing the model from a script?

Regards, Michiel

In Linked Documents, there is an option to insert a "Data Field". It allows filling out a Field Name and Field Data. It is however unclear to me how to put this to use. Can I e.g. associate data with a specific Field Name in a script so that all corresponding data fields in a Linked Document show this data? That would be very useful.

I would be very grateful for an explanation of the proper use of the Data Field option in Linked Documents.

Regards, Michiel

How do I get project or report data like Title, Project name etc. in a Linked Document? This is easy in a Template document but strangely enough not possible in the same way in a Linked Document.

Any suggestions? Thanks in advance!


When I generate a report via a script (DocumentGenerator), how do I get page numbers, headers and footers in the generated report?

Thanks for any tips!

Automation Interface, Add-Ins and Tools / load script from file?
« on: August 28, 2020, 07:42:58 pm »
In the EA script editor, one can rather easily save a script to a file. However, there seems to be no similar way to load a script from a file (other than copy/paste). Am I missing something? Is there a way to load a script from a file? This is certainly a much needed feature for anyone writing non-trivial scripts.

I am working on a (complex) VBScript to generate a (complex) report from a (complex) model.....

We have the requirement to add page-number references in certain tables. Is this possible? Can I insert some sort of reference that will then automagically be translated into a page number when the report is finalized (like apparently is being done for the Table of Contents)?

If no, I might try to use Hyperlinks instead of page numbers. There is a method docGenerator.InsertHyperlink but I don't know how to insert a BOOKMARK to refer to in the hyperlink. The documentation says

InsertHyperlink (string Name, string URL)
Notes: Inserts a hyperlink at the current location. If you use a URL with the  #BOOKMARKNAME syntax, the hyperlink will link to another part of the document.

but it is not clear to me what the refered bookmark should look like.

Thanks for any help.

I have to create a number of different reports where it would (I think) be necessary to use nested fragments. The reason is that I first have to filter elements based on their inheritance relationship and then have to print various elements related to the selected ones.
Such nested fragments (with custom queries) are not very easy to maintain so I wondered if a product like EADOCX would make life much easier here. Is EADOCX primarily concerned with making the report look good or can it also help with these kinds of complex selections?

Regards, Michiel

Automation Interface, Add-Ins and Tools / Plugin to edit pictures
« on: May 15, 2020, 07:10:24 pm »
I am looking for a way to let a user edit a picture (not a diagram!) in EA with an external editor. A sort of plug-in. Is this possible?

Thanks for any tips and tricks!


I have been experimenting and running into propblems with simulations in SysML and UML State and Activity models with the goal of using such simulation for strengthening the faith in dynamic models.

The models I want to use are semi-complex. They consist of subsystems such as signaling lights, movable bridges, sensors, etc. And there is a central system that must control the actuators and receive data from the sensors. This is clearly a multithreaded environment.

I have tried to model this with State Diagrams using the existing Petrinet-like semantics where a Join will only "fire" when all its input states are active. In this way you can create a model where each action consists of entering a "command" state by the central control parallel with entering a "wait" state. The appropriate subsystem waits until the "command" state (that for this purpose is repeated (linked) on the subsystem diagram) enables one of its Joins (Transitions in Petrinet language) and consumes the Command state. After finishing its work in its own thread, it enters a "Confirmation" state that is consumed by the Control thread so that it leaves the Wait state..... Etcetera. The different state machines are started each in their own thread from a Startup state machine in whose diagram I have linked the various Entry elements.
The whole model is not extremely simple but no rocket science either.

This works a bit but not well enough to be useful. I run into all sorts of strange problems. Inexplainable repetitions in the simulation log, inexplainable paths taken, halting of the simulation for no apparent reasons, etc. This also seems to depend on the way in which you organise the model with packages, nested elements, state machines etc. But I have not found a good way to make this work.

I have tried the same idea using Activity Charts but that gives different but similar problems that are also difficult to reproduce exactly.... I have the impression that the semantics of the Fork/Join element is not completely clear (at least to me...).

Of course, I have also tried to use Javascript to set global variables instead of communicating through shared States or Actions. However this leads to models that are very difficult to debug and maintain. And also to multithreading problems similar to those mentioned above.

So, my question is, are there other EA users who have tried similar simulations with multithreaded models and what is their experience and advice?

Regards, Michiel

I have read that it is possible to create COM objects with Javascript in a simulation (e.g. of a State Machine). And it should even be possible to communicate between an EA simulation and another application or system, using these COM objects. However, the documentation on this is not sufficient to understand how to do this.

So, my question is: How do I create and use a COM object to communicate via a serial port (USB) from a simulation?

General Board / pro cloud server versus EA Editions
« on: April 22, 2020, 12:13:32 am »
There are two comparison tables on the EA website:
containing a long list of detailed functionalities
containing a list of hosting features

It is unclear to me what the relationship is. Specifically, what are the functionalities of the Procloud editions? Or can I choose any of the EA editions in combination with the Procloud editions??

General Board / Send output of simulation to serial port or another program
« on: February 28, 2020, 07:53:56 pm »
Is it possible to send the output of a simulation (execution of state model or activity model or BPMN model etc.) to a serial port so that it can be used in another program on another computer?
Or, as an alternative, could the output of an execution be sent to another program on the same computer, perhaps via stdout/stdin or so?

My idea is to link Sparx EA to Blender 3D..... that should be fun!

Thanks for any suggestions!

It looks like Sparx EA 14.1 does not support an Archimate Flow relationship between application components! Of course, you can "manually force" the relationship by getting the relationship from the toolbox, but it is not in the Quick Link where it should be! The Archimate 3 standard definitely allows flows between application components!

This looks like a serious bug and hampers my work! I need to create Archimate Exchange files from my model and "forced" flow relations are missing from this file!!

Is there a solution for this problem?

General Board / How to retrieve the name of the last modifier
« on: August 15, 2019, 05:56:50 pm »
Elements and diagrams contain the name of the Author, set to the user at creation time. But the name of the person who did the last modification to an element or diagram is not so easy to find. Is this information permanently lost or is there some way to retrieve it? As a related question, I would also like to know who created or modified a connector.
I am using Sparx EA version 13 with a shared SQL Server database.

When I export my Archimate 2 model using Sparx EA version 13, FLOW relations are NOT exported and do not appear in the generated XML file! All other relations are present. This of course is a serious bug and hampering my work.

Has this been resolved in a newer version?

Pages: [1] 2 3 4