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

Pages: [1] 2
I'm trying to use the EA_OnNotifyContextItemModified addin event inside a model addin (i.e. in Javascript), but am having issues with the GUID parameter.  The script engine isn't recognising it as a string.  Is this a bug or am I missing something?  In the reception definion for the signal it's defined to be a string so I can't see what I could possibly be doing wrong.

For example, I can't even get the following simple line of code (in EA_OnNotifyContextItemModified) to work:

Code: [Select]

This returns an error in the Addin Script Output window as follows:

Code: [Select]
Invocation error in: addin.EA_OnNotifyContextItemModified
 239:    Session.Output(GUID);
 240:                 [!!!! Parameter 13531608 type mismatch]

Variations such as GUID.valueOf() and GUID.toString() don't work either (they just return "[object Object]" instead).

Thanks in advance.

Bugs and Issues / Model Addin Using MySQL
« on: April 16, 2021, 05:36:25 pm »
I'm trying to get a Model (Javascript) Addin to work but for some reason EA refuses to enable the Addin when the model is hosted on a MySQL repository.  It consistently remains at "Disabled" in the Manage Addins window, even if you reset it.  When the model is hosted in a EAP file the addin will show as Optional by default.  Has anyone else come across this and if so did you find a workaround?

I'm using EA 15.1, build 1528.

Thanks in advance,

Given the major uplift to the reviewing capability in 15.2, disappointed to see that you still cannot copy/paste review comments or edit them once posted.  Anyone that uses this feature in anger will know how frustrating it is to post a review comment only to then find you need to change something (and either have to retype the whole comment again, or follow-up with another comment correcting the first - neither far from ideal).

Bugs and Issues / EA15.1 - Freeze visible corrupts Sequence Diagrams
« on: February 06, 2020, 09:45:24 pm »
We have just discovered a major flaw with the new Freeze Visible (connectors) option introduced in EA v15.1.  If you set this option on sequence diagrams you will find that valid sequence messages drawn on the diagram disappear the next time you open the diagram. 

Thankfully it can be reversed by unticking Freeze Visible and reloading the diagram again.  Of course this option isn't really designed for sequence diagrams (the problem is seeks to address only occurs on other diagram types), so shouldn't really be available to set.

We'll raise a bug report to Sparx shortly.  This is reproduceable in the example model BTW.

The EA User Guide says that when importing requirements from a DOORS module it is possible to import any attachments that may exist on any of the objects - specifically through the following import dialog:


However when I attempt to import I don't see this dialog (a different one is shown) and there seems to be no option elsewhere to ask for attachments to be imported.  Has anyone faced similar issues, and if so how did you overcome them?

I'm using version 2.2 of the MDG Link for DOORS (which is the latest I believe) and EA build 1309 (Ultimate edition).


In our design model we have sequence diagrams showing components receiving sequence messages.  The components do not have operations themselves, but implement interfaces defined within our model.  I want to write an EA query which returns the interfaces and the operations on those interfaces that are invoked by each sequence message on each sequence diagram.  However I don't know which table/attribute in the EA internal data model holds this information.

For example:

ComponentA implements Interface1 which specifies Op1, Op2 and Op3.  I have a sequence diagram which includes a message from another component invoking Op2 on ComponentA.  From my query I can see that the t_connector table contains an entry for this sequence with the name "Op2()", but I can't see how to navigate from there to find Interface1 and Op1 (i.e. which table/attribute holds the information).

I would expect it to be in t_connector, but nothing in that table seems to record the classifier and operation that is the target of the sequence message.  I know that EA holds this information because when I double click on the message in the diagram and select the message pull-down I can see the fully qualified name selected in the list (i.e. "Interface1::Op2").

Does anyone know?


Suggestions and Requests / GANTT View Feature Requests
« on: October 20, 2016, 04:59:10 pm »
I have a few requests on the Gantt view, which looks to be very powerful.

1) Every time you open a package in Gantt view it is collapsed.  If this is your entire "plan" then you have to click all of the sub-packages and other elements to see the resources allocated, progress etc.  I can understand why it might be better to start off with it collapsed, but can we have an "Expand Branch" like command on the context menu please, so that you can expand from a selected level in the Gantt view all the way down through its children?

2) Column selection - I often don't want to see the status of items in the Gantt view so I'd like to hide this column to recover some screen real-estate, but there appears to be no way to do it.

3) Middle-mouse click and drag to move the view around, like on all other diagrams.  At the moment you have to grab the scroll bars or use your mouse's scroll wheel (but will only operate one of the scroll bars of course).

Many thanks.

I'm not sure whether this is a feature request or a bug (probably half-way between - which is why I've raised it here), but one missing feature of EA's sequence diagram modelling seems to be how it exposes the operations of an object being modelled on the diagram.

For example, if I send a message from component A to component B, and I've defined a bunch of private and public operations for component B, shouldn't EA only show me the public operations on the message dialog pull-down?  In the latest build it doesn't - it shows both public and private operations which seems wrong (and also makes the job harder if you're using private operations to model internal behaviour/functionality).

In the case of a self-message, I can see that this behaviour is reasonable, but IMO it isn't for messages that arrive from other objects on the sequence diagram because you wouldn't expect them to have visibility of the object's private methods.

Is there any chance of Sparx fixing this in a future release? (having an option to enable/disable this behaviour would be ideal).


Suggestions and Requests / Requirements/responsibilities inheritance
« on: February 17, 2005, 06:54:32 am »
It would be extremely useful if EA supported the ability to inherit or copy/transfer requirement traces from parent to child elements in a composite component hierarchy, therefore allowing requirements to be allocated to high level components, and then transferred or copied to lower level components as the system decomposition proceeds.

This is probably best explained with a (simplified) example of what I'd like to acheive...

(1) Let's say the system requirements are already specified for the system (our role is not requirements elaboration - that's already been done to some extent by the client).

(2) A high level system decomposition exists, possibly created by us, but possibly by the client (as part of the presentation of system requirements)

(3) The requirements are imported into EA (e.g. using automation) as external requirement elements and the high level decomposition is modelled (say using a component model).

(4) As a first pass the requirements are traced (using Realisation links) to the top level components.  This results in the applicable requirements appearing as external requirements  in the properties of each top level component (in the "Require" tab).  So far so good.  In my imaginary system, each component is then assigned to a designer who must then decompose/elaborite it further and assign the requirements to lower level components as necessary, therefore providing our first full trace to the system decomposition.

(5) Designer "A" does this for component 1, creating sub-components 1a, 1b, 1c etc.  He then wants to replicate selected requirement traces for component 1 to it's sub-components, dependant of course on each component's responsibilities in the new system.  

For example, the requirement might be "The system shall displayed all logged events" which is traced at the top level to the "Monitoring & Control Subsystem".  In elaborating the M&C Subsystem, the designer has defined an "Event Log Display" which naturally would realise this requirement, so he transfers that trace to the lower level Event Log Display component.  In fact, ideally the trace should be replicated, because the subsystem above still has overall responsibility for meeting this requirement (and it may be useful to retain the subsystem level trace).

So it would be useful if EA supported full or selective inheritance (copy) of traces of requirements from a higher level component to it's sub-components.  I'm thinking of something perhaps triggered from the properities window of each child component (either a new dialog, or the ability to "show parent requirements" in the Require tab and functions to selectively import them).

Knowing EA there's no doubt some way to do this already, but I haven't found it yet.


Suggestions and Requests / Configuration Control Improvements
« on: February 19, 2004, 05:39:28 am »
Recently I've been evaluating the configuration control facilities of EA, using the trial version of the PushOK CVS bridge.  It all seems to work OK, but there are issues when it comes to configuration controlling very large models.

Every time you want to configure a package for inclusion in configuration control, you must supply an XML filename for it (after ticking the "Version Control" checkbox in the Package Control Options dialog).  Not an issue for one or two packages, but this becomes a bind if converting a large model (with many packages) for inclusion in configuration control.  To be really useful in this context, I want to be able to configuration control individual packages, not just the top level ones.

The default is for all XML files entered into config control to be stored in the same place (folder if you will) within the CC repository.  This becomes a problem if you want to configuration control individual packages across various areas of a large model.  For example, if I want to put a package "System Alerts" into CC, the obvious filename to assign would be "SystemAlerts.xml".  However, the "System Alerts" package may appear in various different places throughout the model (requirements model, analysis model, design model etc), and in each case is a valid package that you may want to individually control in the CC repository.  If I use the same naming convention for these other cases, I will get name clashes when I enter them into config control.

However, I've noticed that in the Package Control Options dialog you can assign a relative path to the XML filename.  So for example, in my requirements model I could use "Requirements\SystemAlerts.xml" for the system alerts package in the requirements area of the model, and "Design\SystemAlerts.xml" for the design package.  This results in EA/PushOK placing the XML files into the two sub-directories you've specified within CVS (you don't need to create them beforehand - it seems to happen automatically), thus avoiding name clashes.

So, my suggested improvements are that:
  • EA should automatically assign an XML filename based on the package name when the "Version Control" check-box is ticked in the Package Control Options dialog.
  • Optionally, EA should assign a relative path before the XML filename that reflects the package's position within the package hierarchy in the model. So if the package hierarchy is "MyModel\Requirements\System Alerts", then the XML filename assigned by default would be "MyModel\Requirements\SystemAlerts.xml".
This be would be a big usability improvement for me, and certainly helps when dealing with large models.  Ideally it should be possible to switch on/off both features in the Options dialog.


General Board / Does EA support BPEL Variables?
« on: September 19, 2010, 03:25:07 am »
I'm considering using BPMN and BPEL to model the business processes for a upcoming project (with a view to using the BPEL generation features of EA), but couldn't find any way in EA's implementation to process variables (e.g. per the example at the end of this page from the Apache ODE documentation:

I've been able to attach properties to tasks within a process, but then found no way to assign or transfer them.  For example, when creating BPMN assignments the properties dialog only allows selection of web service messages as a valid source/destination and there is no "variable" assignment type, so it appears as if this part of the BPEL spec is not supported by EA.  Can anyone confirm?

Thanks in advance for any/all replies.


General Board / Stereotype on constraints in UML Profile
« on: December 03, 2006, 04:40:10 am »
I'm not sure whether I'm doing something wrong or whether this is bug, but here goes...

Basically I want to create a stereotyped constraint that shows an alternative image to the default "note-like" format used for constraints.

So I've created a stereotype "timingConstraint" that is associated with a ShapeScript which draws an hour-glass.   When this stereotype is applied to constraints it all works perfectly - I get an hour glass instead of the default note-like constraint.

However, I now want to include this stereotype in a UML profile, so I created it in a profile package as follows:
  • stereotype class "timingConstraint" with an _image attribute containing the ShapeScript (i.e. using the undocumented mechanism for including a ShapeScript in a UML Profile, as detailed in other posts on this forum)
  • a metaclass "Constraint" which the stereotype class extends
This all seems to work OK - the profile generates and I can import it into my model and show the stereotype constraint in the toolbox.  However, when I drag the stereotyped constraint onto the diagram two things go wrong:
  • It gets displayed in note format rather than using the stereotyped ShapeScript
  • Editing the resulting constraint gives me a Notes dialog rather than the normal Constraint dialog. In fact the icon created in the toolbox by this profile seems to create note elements rather than constraint elements.
Investigating further, I discovered that on import the profile actually creates two stereotypes rather than the single one I intended:
  • A first "timingConstraint" stereotype with a base class of "note".
  • A second "timingConstraint" stereotype with a bass class of "constraint". (Edit: and it includes the ShapeScript created within the original profile).
So it seems as if the profile is either getting generated incorrectly, or imported incorrectly (or I'm doing something wrong).

Any clues anyone?


General Board / New RTF Document Generator for Virtual Documents?
« on: September 20, 2005, 10:12:58 am »
The build 770 release notes include the following line:

Added support for Model Document and Single-element document generation using the revised RTF Generator.

I interpret this to mean that the new RTF generator can now be used when generating Model Document/Virtual Document elements.

However, I can't for the life of me find out how to do it.  Whenever I try to generate a virtual document element it just gives me the legacy RTF generator dialog.  There's no button to switch to the new generator, and there seems to be no option to set either.

Can anyone help?


General Board / Custom User Tools in EA v3.51
« on: February 17, 2003, 10:28:26 am »
Hello all,

The release notes for EA v3.51 suggest that custom tools added into the Tools menu can be passed the name of the current element, package or diagram as a parameter - I quote..

"User tools menu. Allows addition of custom user tools - supports additional paramters for current diagram, element and package"

Does anyone know how to do this?  I can't find any details in the help file - i.e. how do you tell EA to pass the name of the current package/element/diagram as a parameter when launching a custom user tool?

Many Thanks.

General Board / Use case as classifier
« on: January 16, 2003, 06:26:17 am »
Hello all,

Previous versions of EA allowed you to select a use case as a classifier, but for some reason this has stopped working - I now only see classes in the list of available classifiers.  Is this a bug (I'm using EA Build 589 - this was definitely a feature of earlier versions) ?

Specifically, you used to be able to draw a boundary onto a diagram and then set the boundary's classifier to be a use case (e.g. to show how the use case maps onto a business process).

Any help/hints much appreciated.


Pages: [1] 2