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 ... 23
1
In v16.1 the new default file format is .qea.

Unfortunately, when using the API to automate project transfer, it doesn't work if you specify a .qea target file.
It works fine when specifying a .eapx target file.


Steps to Reproduce:
Execute code

Code: [Select]
dim transferCompleted
transferCompleted = projectInterface.ProjectTransfer(eapString, "C:\temp\export.qea", logfilePath)

with a valid connectionstrign in eapString, and a valid path to the logfile in logfilePath

Reported

Geert

2
Bugs and Issues / Document generation broken in v16.1
« on: November 03, 2022, 12:32:03 am »
When evaluating version 16.1 I generated a document based upon a fairly complex virtual document.
When comparing these documents, I noticed a couple of differences

- Heading levels are sometimes lost: e.g. Titles under 4.2.10 Traceability have lost their style, where they should have style Heading 4. Weirdly enough this didn't happen to the titles under 4.1.10
- Headings levels are suddenly way too high. e.g. Title 4.5 Bill is an Advance is has Heading Level 2, where it should have Heading Level 4 (as in the 15.2 example)
- SQL search based content is not generated. E.g. The Rules sections in the 16.1 document are all empty, although the search is present int he model and returns elements.

I've included the sample documents generated in the two different versions in my bug report to Sparx

Looks like where stuck at 15.2 for a while longer.

Geert

3
Details:
Sometimes the lowerbound and upperbound columns in t_attribute are left NULL.
The default multiplicity for an attribute is [1..1]
In the schema composer, you can restrict the multiplicity of an attribute, but only to be more strict. I can change a [0..*] into a [0..1], but I'm not allowed to change a [1..1] into a [1..*].
Unless, the lowerbound and upperbound values are NULL. In that case the schema composer allows me to set any type of restriction.
An XMI import/export updates the NULL values to '1'


Steps to Reproduce:
- Create a new schema
- Drag an element into the schema that has an attribute where the lowerbound and upperbound columns are NULL
- Select the option to restrict the attribute
- Notice that you are allowed to change the multiplicity to [1..*] (which is not allowed when the lowerbound and upperbound values are set to '1')

Tested on v16.1

Reported

Geert

4
General Board / Slow performance on Azure SQL
« on: August 25, 2022, 11:04:32 pm »
We are thinking about moving our EA database from an SQL Server instance on a VM in Azure, to a proper Azure SQL Database.

I managed to get it working using the latest version of the OLEDB driver for SQL Server, but compared to the existing setup, this is terribly slow.
Every click needs just a bit of waiting, and loading a larger diagrams takes a couple of seconds (whereas in the original setup it felt like the diagram loads instantly)
Our EA client is also installed on a VM in Azure.

Moving to Azure SQL would mean a serious cut in the costs, but I can't do it if it means the performance is that much worse.

Does anyone have any experience using Azure SQL as backend for Enterprise Architect?
How did it perform?
Any tips and tricks to make this work a bit faster?

Geert

5
Details:
I have a version controlled package containing source, target and association class.
The package is checked-in, so it should be read-only.
But I can delete the association class from a diagram that is in another (writable) package.


Steps to Reproduce:
- Create a version controlled package
- Add two classes and an association class between them
- Check the package in
- Put the two classes on a diagram that is not read-only
- Try to delete the association class (from the connector)
- Notice that EA doesn't stop you from deleting the association class.

Reported

Geert

6
Details:
Schema's in the schema composer can be stored in artifact elements.
When that artifact element is in a version controlled package that is checked-in, the artifact is supposed to be read-only. Unfortunately EA doesn't stop you from changing the (read-only) schema.


Steps to Reproduce:
- Create a version controlled package
- Create a new schema and save it on an artifact in the version controlled package
- Check-in the version controlled package
- Open the schema in the schema composer
- Change the schema in the schema composer, and notice that EA doesn't stop you.

Reported

Geert

7
Details:
If I have an element in a checked in package (so the element should be read-only) I can still delete tagged value using a script.
If the element is read-only, EA should prevent any change to it's tagged values.


Steps to Reproduce:
- Create a package that is controlled by version control
- Add an element with tagged values to the version controlled package
- Check the version controlled package in
- Delete the tagged values using a script
- Notice that EA doesn't stop you from deleting tagged values even though the owning element should be read-only.

Reported

Geert

8
General Board / SQLite is way faster than SQL Server
« on: June 16, 2022, 05:35:33 pm »
I've been doing some performance tuning on one of my add-ins (EA Message Composer) and I noticed that a model in SQLite is a lot faster than a model in SQL Server (running on my local machine)

For one testcase I have a process that takes somewhere between 250 and 300 seconds in SQL Server, and only 100 seconds in SQLite.

Other things like applying user locks on a big part of the model also seem to be much much faster.

Anyone seeing the same results? Any ideas of what I could do to speed up my SQL Server?
Because of this, having a central database such as SQL Server comes with a serious performance penalty, making it a lot less attractive.

Geert

9
Bugs and Issues / Documentation is not updated for SQLite database
« on: June 16, 2022, 05:25:44 pm »
In the documentation the fact that SQLite is now also an option as database is not reflected.
There are a few places where this is missing. One of them is: https://sparxsystems.com/enterprise_architect_user_guide/16.0/the_application_desktop/creating_filters.html

Reported

Geert

10
Since v16, when a package contains both packages and diagrams, the packages are ordered above the diagrams in the project browser.
This means that, if I open some of my subpackages, the diagram that corresponds to my packages level, becomes further and further away from my package.
See example here: https://imgur.com/a/kOnWpVX
Diagrams should be on top of the rest of the content in the project browser

Reported

With these kind of things I really wonder sometimes who decided to change it this way and what could have been their reasons. ???

Geert

11
Details:
When building a schema in the schema you can select an association and it will automatically add the target of the association to the schema.
When however the association has an association class, this association class is not automatically added to the schema.
The user has to search for the association class in the model and drag it to the schema composer manually, if he is even aware there is an association class to be considered in the first place.


Steps to Reproduce:
- Create a model with an association class
- Drag the source of the association into a schema in the schema composer
- Select the association in the schema composer
- Notice that the target of the association is automatically added to the schema
- Notice that the association class is not automatically added to the schema.

Reported

Geert

12
When adding a new technology to a strict model based perspective set, nothing in that new technology is selected by default.
You have to manually select all the elements, diagrams etc... before they can be used.

The default should be that everything is selected, so you can uncheck what you don't need.

Reported

Geert

13
I've been using the <<redefines>> mechanism for a while now to add tagged values to existing ArchiMate 3 stereotypes without interupting the users too much.
Everything looks the same on the surface, but my redefined stereotype is being used instead of the standard ArchiMate stereotype.

This works just fine for elements. Today I got a request to add a tagged value to a number of ArchiMate relations, so I did exactly the same.

I added my redefined stereotypes to the profile and expected it to work; but it didn't.
https://imgur.com/a/Amiv75f


When adding an ArchiMate_Serving relation for example, I get a vanilla ArchiMate_Serving, and not my redefined one.

When comparing the resulting UML profile XML I can't see any differences between the element redefine, and the connector redefine.
the one for ArchiMate_Serving that doesn't work:
Code: [Select]
<Stereotype name="ArchiMate_Serving" notes="" bgcolor="-1" fontcolor="-1" bordercolor="-1" borderwidth="-1" hideicon="0" generalizes="ArchiMate3::ArchiMate_Serving" baseStereotypes="ArchiMate3::ArchiMate_Serving" redefines="ArchiMate3::ArchiMate_Serving">
<TaggedValues>
<Tag name="Lifecycle" type="enumeration" description="" unit="" values="TBD,Planned,Phase In,Live,Phase Out,End of Life" default="TBD"/>
</TaggedValues>
</Stereotype>
The one for ArchiMate Node that does work:

Code: [Select]
<Stereotype name="ArchiMate_Node" notes="" bgcolor="12648384" fontcolor="-1" bordercolor="-1" borderwidth="1" hideicon="0" generalizes="ArchiMate3::ArchiMate_Node" baseStereotypes="ArchiMate3::ArchiMate_Node" redefines="ArchiMate3::ArchiMate_Node">
<TaggedValues>
<Tag name="Lifecycle" type="enumeration" description="" unit="" values="TBD,Planned,Phase In,Live,Phase Out,End of Life" default="TBD"/>
</TaggedValues>
</Stereotype>

Has anyone successfully redefined a connector stereotype before? Any secret magical sauce I'm missing?

Geert

14
I was trying to figure out if a SchemaType element was redefined, so I took to the documentation hoping to find a helpful clue.
https://sparxsystems.com/enterprise_architect_user_guide/15.2/automation/sc_schematypeclass.html
Unfortunately there is no "IsRedefined" property, but there is an operation called GetFacet that accepts a parameter of type BSTR with the name name

The documentation says:

Quote
Returns the value of the named facet. 'Root', for example' returns a value indicating whether a type is a root element

Using it to figure out if this element is a root seems a bit pointless since we do have a poperty IsRoot, but I'm wondering what other "Facets" I can use it for.

I have a lot of questions when reading the documentation:
- Can it be used to figure out if an element is redefined?
- What are the other facets we can use it for?
- What is a BSTR? Is that just another name for a string? (that's what Visual Studio tells me anyway)
- What will the "value indicating whether...." be? The string "True", or "true", or "1" or "yes"

Does anyone have more experience with this GetFacet operation?

@Sparx: please update the documentation to actually say something useful

Geert

15
Details:
We us a model based perspective to limit the number of diagrams people see.
This seems to work just fine, until we use the "restrict" button on the perpective to further restrict the possible diagrams. When we actually uncheck any of the diagrams, certain diagrams such as the requirements diagram are no longer available.
This might be related to the built-in technologies as you cannot select those diagrams when restricting.


Steps to Reproduce:
- Create a perspective with BPMN 2.0, Core Extenstions, EA Requirements
- Select this new perspective in EA
- use Add Diagram and notice that you can choose the Requirements diagram from the Extended header
- Go back to the perspectives window and set it to strict.
- Click on the "Restrict" button and uncheck any of the BPMN diagrams
- Save the perspective
- Try to add a diagram and notice that the Requirements diagram is no longer available.

Reported.

This has been noticed on both v15.2 as v16

Geert

Pages: [1] 2 3 ... 23