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 - Richard Freggi

Pages: [1] 2 3 ... 33
1
General Board / Re: Elements and Associations are moving on their own...
« on: October 10, 2024, 01:57:57 am »
Use lock diagram menu (right click on the diagram)

2
Bugs and Issues / Re: Transfer from QEA to EAP fails
« on: September 03, 2024, 07:18:29 pm »
Looks like a wise suggestion from the Sparx gods.  Isn't MS access going to be discontinued?  (And the word will be a better place for it...)


3
Does UML support relationships between (different) relationships?
Not explicitly, but several of the relationships (eg. Dependency) have ends defined by types that include a number of relationships.

That doesn't necessarily mean that it's expected. LiteralNull is also a specialization of Element, so you could also have a dependency on a particular literal null. I don't think that's a reasonable interpretation of the intention of the specification.

Surprisingly I can draw a trace relationship from a relationship to itself in SparxEA. Is this intended?
I don't see a constraint on the specification that disallows it. You could argue that it's not expected by the authors of the spec, but I don't know how end users are using it. If you don't think it makes sense, don't use it.

I vaguely remember that in UML a relationship is a class and as such it can have its own associations to other classes.  In EA I can draw an association between a class and an association (eg intersection entity in a ERD diagram).  Am I remembering it wrong?

4
This one still hurts me bad:
Quote
In the current Office MDG it's impossible to set primary/Foreign key constraint on import of classifiers of type <<table>>.  This is a pity because the MDG allows us to reverse engineer any database using the DBMS object metadata.  My suggestion is:
3. Add capability to assign primary key constraint to any column to the classifier import profile (keep in mind composite keys)
4. Add capability to assign primary and foreign key constraint to any column to the connector detail profile (keep in mind composite foreign keys and primary key that include a FK)

PKs don't register as stereotype in reverse engineered tables, this seems like an oversight... such a basic but important feature....

5
General Board / Re: Get all elements of hierarchy
« on: August 10, 2024, 02:51:05 pm »
You can't use recursive queries in EA searches, or Repository.SQLQuery
They need the query to start with Select

You can cheat EA with internal query syntax, like below:
Code: [Select]
SELECT q.* FROM (
  <any_query_not_starting_with_select_keyword>
) q;

It works on PostgreSQL repository, and I'm pretty sure, this syntax (or similar) is possible in many other SQL engines.

I know I tried this a few years ago and couldn't get it to work for searches in SQL Server. I never really bothered anymore once the #Branch# macro became available.

Geert

Tried it in EA 16.1 on local SQLite project: EA crashed... too bad...

6
General Board / Re: Get all elements of hierarchy
« on: August 06, 2024, 01:28:16 am »
What's wrong with recursive, I find it easier and safer.
You can get all package GUIDs then from there get all elements within that package

Code: [Select]
WITH RECURSIVE pkgbranch (eaguid, pkgid, pkgname, parentid, lvl) AS
(SELECT p.ea_guid, Package_ID, p.Name, p.Parent_ID, 1
FROM t_package p
WHERE p.ea_guid = '{xxxx}'
UNION ALL
SELECT p.ea_guid, p.Package_ID, p.Name, p.Parent_ID, pb.lvl+1
FROM t_package p
JOIN pkgbranch pb ON pb.pkgid = p.Parent_ID)

SELECT * FROM pkgbranch;

7
General Board / Re: Where are Foreign Keys Stored in the Database?
« on: June 30, 2024, 01:32:47 am »
This is what I use for my queries, seems to work for me

Code: [Select]
CASE WHEN t_attribute.IsOrdered = 1 THEN 'Y' ELSE '' END,--PK
CASE WHEN t_attribute.IsCollection= 1 THEN 'Y' ELSE '' END,--FK
CASE WHEN t_attribute.AllowDuplicates = 1 THEN 'Y' ELSE '' END,-- NN; Weird but correct
CASE WHEN t_attribute.AllowDuplicates = 1 or t_attribute.IsStatic = 1 THEN 'Y' ELSE '' END,--Unique NEED TO ADD OTHER UNIQUE FROM CONSTRAINTS

What FK references what PK is stored in t_connector table and its tags I think

8
Uml Process / Re: Modeling Calls between operations
« on: June 18, 2024, 09:33:03 pm »
In UML you can't show operation messages (I think this is what you call 'calls') in a class diagram.
And messages are not constraints so they can;t be represented by associations.
Sparx EA supports UML, you must be proficient in UML to use EA.  Good place to start: http://www.uml-diagrams.org/

9
If your EA model is generated by reverse engineering a database, the mapping is automatic only if the metadata is captured during the reverse engineering process.  Most databases don't provide this kind of metadata, so you would need to add it manually after reverse engineering.  I remember EA has a column to column dependency connector, I forget what it is but it can be done manually and you would need to write a custom query to generate the column to column dependency matrix.

10
General Board / Re: Scripting SQLLite Repos with Powershell
« on: March 28, 2024, 02:07:14 pm »
sqlite.org has an excellent introduction to CLI scripting.  You download the SQLite CLI and call it via your terminal, command prompt or whatever.  It works really well.

11
General Board / Re: Finding messages that are not methods
« on: October 23, 2023, 12:39:59 am »
Hmm if you are using UML sequence or collaboration diagrams for your application architecture you should be able to use messages (that require methods in the receiving class) and signals (that don't require methods).  This would make replacing, tracking and reporting really easy.

12
When I did the trials I did not notice any major benefits in Corporate - for example the database builder thing is something I can do better myself I thought.  What benefits do you see in Corporate version?  Genuinely interested to know.

13
*sad noises* thanks Geert but professional does not have DB builder I think...

14
Hello, EA 16 professional, *.qea project on my PC.  I'm reverse engineering a SQL Server database; the ODBC connection worked fine.  However I need to query the database system views to extract the DDL of views and procedures and view/procedure attributes (it was not retrieved with the reverse engineering).  I've done this before using DBeaver, but I don't have JDBC connection to this database.  Does EA have a SQL terminal window that I can open and run my queries on a non-project database?  Can the results be exported as csv.  I really don't want to install SSM or Azure studio.  Thanks!

15
It seems to me that you are describing a dependency between database objects.  Something that would be implemented via a trigger (eg if field x in table 1 is equal to a, then field y in table 2 must be equal to b).
Dependencies are used to model this kind of constraint (and also to model the source objects queried by views).
Hi Richard, are you referring to what Geert is discussing or my original thesis?

In our case, they are conceptually associations and work fine between all other types of items.  It's just when we try to create the same semantics between DB Tables, EA gets in the way...

Paolo

Was referring to OP

Pages: [1] 2 3 ... 33