Viele UML Elmente erlauben es, durch andere Elemente klassifiziert zu werden. Sie erhalten einen „Classifier“. Ein Object kann zum Beispiel einen Classifier “Bestellung” haben, d.h., das Objekt ist vom Typ “Bestellung”. Es ist also eine Instanz der Klasse “Bestellung”.
In Enterprise Architekt finden Sie leicht das Modell-Element für ein selektiertes Diagramm-Element:
In Enterprise Architekt finden Sie leicht das Modell-Element für ein selektiertes Diagramm-Element:
Der umgekehrte Weg ist auch einfach: Ein Element im Project Browser auswählen und im Kontextmenü Find in all Diagrams auswählen:
Im Fall eine CallOperationAction (eine Action, die eine Operation einer Klasse, etc. aufruft) funktioniert das Auffinden der Operation im Project Browser genau so einfach wie das Auffinden des Elements im Project Browser. Der umgekehrte Weg ist allerdings nicht out-of-the-box verfügbar.
Alle benötigten Informationen sind allerdings im EA Repository verfügbar.
Alle benötigten Informationen sind allerdings im EA Repository verfügbar.
Mithilfe einer SQL Model Search können z.B. alle Diagramme gefunden werden in denen eine CallOperationAction eine bestimmte Operation verwendet. Die benötigte SQL Abfrage sieht folgendermaßen aus:
SELECT t_diagram.Name
FROM t_diagramobjects, t_diagram
WHERE t_diagram.Diagram_ID = t_diagramobjects.Diagram_ID
AND t_diagramobjects.Object_ID IN (
SELECT t_object.Object_ID FROM t_object WHERE t_object.Classifier_guid = ‘{FC6DA523-5176-4139-98CB-3F18CC103AD1}‘
)
FROM t_diagramobjects, t_diagram
WHERE t_diagram.Diagram_ID = t_diagramobjects.Diagram_ID
AND t_diagramobjects.Object_ID IN (
SELECT t_object.Object_ID FROM t_object WHERE t_object.Classifier_guid = ‘{FC6DA523-5176-4139-98CB-3F18CC103AD1}‘
)
Das Ergebnis ist eine Liste im Model Search View.
Komfortabler kann die Suche eingebettet in ein Model Script ausgeführt werden. Dazu muss lediglich eine neue Gruppe im Scripting View angelegt werden. Als Groupe Type muss Broject Browser gewählt werden, dann kann das Script bequem aus dem Project Browser aufgerufen werden.
Für unser Beispiel ist eine Operation im Project Browser zu selektieren. Im Script wird nun die GUID der Operation ermittelt und in die oben angeführte SQL Abfrage (orangefarbener Teil) eingefügt. Das Ergebnis der Abfrage kann nun im Output Tab ausgegeben werden, oder eben als Liste im Model Search View.
Weiterführende Links: Suchen und finden 2