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 - Geert Bellekens

Pages: [1] 2 3 ... 15
I would like an option in the export reference data to select only certain scripts for export.
EA only has an option to export ALL the scripts (including a bunch of temp debug stuff that should never be exported anyway) and that is costing me a lot of time (and thus my customers a lot of money)

Each time I update a script in DEV that needs to be promoted to TEST/PROD
- Export all scripts
- Open the resulting xml file
- Copy paste the script parts I need to a new file (not forgetting the groups if not yet existing on the target model)
- Remove all scripts in the file with only those I copied

That could be so much easier if I could just select the scripts I want to export.

(bonus points if the export feature would automatically detect !INCLUDES and export those as well)


Found an annoying problem today.
I have a template that basically looks like this:

Code: [Select]
package >
diagram >
element >
< element
This should not be if the diagram is excluded
< diagram
< package

This works find and reports all diagrams.
Then I decided that I only wanted this report for a particular type of diagram.
So I configured the exclude filter on the template and excluded all but my own type of diagram: MyDiagramType.

Now when I run the report I get only the images and names of the diagrams of type MyDiagramType, so far so good.

But the text: This should not be if the diagram is excluded still appears for each diagram in the package, regardless of the diagram type.

Problem found in v 12.1 but still a an issue in v 14.0.1421


Setting the flow direction to horizontal on a (horizontal) BPMN diagram completely messes up the layout (and model)

All Pools and lanes get reduced in size making the Activities fall out of them (they also get moved out of the pool/lanes in the project browser)

Manipulating a (correct) diagram made in a previous version with the flow direction set also results in the same mess.

The only way to use BPMN diagram in v14 is to set the flow direction to None.


Bugs and Issues / What's the deal with the «enum» stereotype?
« on: March 27, 2018, 04:29:05 pm »
For a while now I've noticed something strange.
On some models, when I add a value to an enumeration, this new value automatically gets the stereotype «enum»

On other models the stereotype is not there.

Does anyone know where this stereotype is coming from, and why I have this on some models an not on others?


Bugs and Issues / GetLatest/Check-out removes tagged value references
« on: March 22, 2018, 08:44:58 pm »
We recently added version control to one of our model in order to share it in a controlled fashion with other models.

The source model is a BPMN model that uses a lot of tagged value references (i.e. MessageRef)
After a user had checked out a package containing messages that were referenced by MessageRef tagged values, those tagged values where emptied, effectively loosing the reference to the message object.
Doing a getlatest on the process package re-instates the tagged value.
This is of course a SERIOUS issue as it slowly destroys our model.
I tried playing with the settings, but nothing seemed to work.

Steps to Reproduce:

  ProcessB with messageFlow containing tagged value MessageRef referencing MessageA

- Version control both packageA as PackageB and check-in both packages.
- Do a getLatest on packageA
- Notice that the messageRef tagged value has been cleared.

Reported and hoping for a quick solution as this is destroying our BPMN model


General Board / EA v14 beta - The new Features window is awkward!
« on: March 08, 2018, 06:32:29 pm »
I was just trying to create some operations, but the old popup dialog to edit operations and attributes has been replaced by a docked window called "Features".
Problem is that you can only edit part of the operation here (only list view part of the old dialog is here) the other properties you have to edit in the docked properties window.

Aside from the fact that you now don't have an explicit save anymore (as you had with the modal dialog) it is really awkward to have to use two different docked windows to achieve a single thing.

I hope there's a way to revert back to the old style (or at least make editing operations less awkward)


When a class has two associations with the same association name, only one of them will show up in the schema composer.

Steps to Reproduce:
- Create class A, B and C
- Add an association from A to B with name "test"
- Add an association from A to C with name "test"
- Create a new schema composer schema
- drag class A into the schema
- notice that only one (random) association with name "test" will show up with no warning at all.
- remove the names from the associations
- notice that now both associations are visible in the schema composer



Bugs and Issues / v14 BETA: Docked windows tabs icons missing
« on: March 07, 2018, 09:09:23 pm »
Before v14, if you docked several windows on the same location there were helpful icons on the tabs to indicate which window to select.
These icons are gone in v14, making it harder to identify the correct tab.


General Board / EA v14 beta - Where are the release notes?
« on: March 07, 2018, 06:01:10 pm »
The long awaited version 14 beta is finally been released, but unfortunately I can't find the release notes.

Yes sure there is a marketing page, but that is not the same as actual release notes that list each and every change.


I have the following situation
Package A
  - Class A
Package B
 Diagram B -> contains Class A

Both Package A and Package B are version controlled separately and checked in separately
Now I
- check out Package B
- remove Class A from my Diagram B
- save Diagram B
- check in Package B

Then I get a dialog saying that there are possibly missing cross references with an entry saying Diagram Contents with a count of 1 By default the checkbox is checked.
Since I have no means to figure out which diagram contents EA is talking about, the safe thing seems to be to accept the default setting and click OK.

Nothing weird happens, so I'm happy... that is until (might be months later) I do a checkout of Package B
Suddenly I notice that class A is back on my diagram B, although I removed it previously.
I think that is a clear bug.
I can imagine having safeguards for situation where I would be editing package B in a model that doesn't contain Package A, but in this case it the diagram object is part of Package B, so whether or not it is deleted has nothing to do with external references.


Bugs and Issues / RefGUIDList tagged value not saved
« on: January 04, 2018, 07:39:54 pm »
If you select another entity in a RefGUIDList tagged value with the same name as the previous entity then the new value is not saved.

Steps to Reproduce:
Create RefGUIDList tagged value that references attributes like this
Add this tagged value to an attribute.
Select an attribute with name "A"
Select something else
Now select the same attribute again and select a different attribute with name "A"
Select something else
Go back to the attribute with the tagged value
Notice that the tagged value still references the first attribute with name "A"



Bugs and Issues / Exclude filter does not exclude initial state node
« on: December 19, 2017, 07:48:53 pm »
When you set the exclude filter to exclude everything except for StateMachine and Activity then you still get entries for Initial Statenode entities.
Only after setting the element filter to ObjectType oneOf 'StateMachine','Activity' did it filter out the Initial nodes.


-- Reported --

Bugs and Issues / How to delete a style in version 13+?
« on: December 07, 2017, 07:48:28 pm »
Since version 13 I don't seem to be able to delete styles anymore.
In version 12 there was a delete button on the "Edit Stylesheet" dialog, but in version 13 that button is no longer there.
(I now open the stylesheet in v12 in order to delete a style)

Anyone know if this has been moved to another location, or is that just an oversight?


Very often when writing scripts I have to do something with a selection of elements in the selected package or or nested packages.
Because iterating all elements of all packages recursively is very slow, I usually try to get the elements I need using an SQL query.

Now when using SQL searches you can use the macro #Branch# to get all package ID's of the currently selected package and all nested packages. Because that macro can't be used in scripting I'm making the package ID string myself. This works ok, but it is not super fast. In the model I was using it on this function alone took about 4 minutes (of the 11 minutes of the whole script)
Does anyone have an idea for a more efficient implementation?
I guess I could bypass the API completely and rely only on database queries to get the ID's of all the packages.

Code: [Select]
'get the package id string of the given package tree
function getPackageTreeIDString(package)
'initialize at "0"
getPackageTreeIDString = "0"
dim packageTree
dim currentPackage as EA.Package
if not package is nothing then
'get the whole tree of the selected package
set packageTree = getPackageTree(package)
' get the id string of the tree
getPackageTreeIDString = makePackageIDString(packageTree)
end if
end function

'returns an ArrayList of the given package and all its subpackages recursively
function getPackageTree(package)
dim packageList
set packageList = CreateObject("System.Collections.ArrayList")
addPackagesToList package, packageList
set getPackageTree = packageList
end function

'add the given package and all subPackges to the list (recursively
function addPackagesToList(package, packageList)
dim subPackage as EA.Package
'add the package itself
packageList.Add package
'add subpackages
for each subPackage in package.Packages
addPackagesToList subPackage, packageList
end function

'make an id string out of the package ID of the given packages
function makePackageIDString(packages)
dim package as EA.Package
dim idString
idString = ""
dim addComma
addComma = false
for each package in packages
if addComma then
idString = idString & ","
addComma = true
end if
idString = idString & package.PackageID
'if there are no packages then we return "0"
if idString = "" then
idString = "0"
end if
'return idString
makePackageIDString = idString
end function


Bugs and Issues / attribute order messed up
« on: November 16, 2017, 07:12:04 pm »
When deleting attributes the positions of the attributes are not recalculated. This results in inconsistent behavior when adding attributes and changing their order.

This is a serious problem for anyone doing any type of code generation (xml, DDL)

Current workaround is to move the new attribute all the way to the first position and then back. This triggers a recalculation of the position for all attributes.

Steps to Reproduce:
- turn off alphabetic ordering for attributes
- Create class with following attributes
Pos name
----------- ----
0 z
1 q
2 n
3 h
4 a

- Delete "n" and "h" I'm and notice the missing pos 2 and 3

Pos name
----------- ----
0 z
1 q
4 a

- Add "m" to the end and save
- Notice that m has gotten pos 3 and is therefore placed between q and m instead of at the end.

Pos name
----------- ----
0 z
1 q
4 a
3 m

Pages: [1] 2 3 ... 15