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

Pages: [1] 2
General Board / Element name on default iamge
« on: March 16, 2018, 07:09:04 pm »

I was requested to use an image as background image for a certain type of element. We have not made a custom MDG and can therefore (?) not add a background through shape script. I added the image by right clicking: Appearance: Set Default Image.

The problem is that I now only can place the name under the element, or hide it. Can I somehow still have the name in the same place in the element, just on top of the background image?

I tried to do some googling but didn't find anything.

I guess the problem also is that this has to be done to all element "instances" of this type. I guess I might be able to script it..

I know I have played around with editing shape scripts through: UML Types, but I cant find any elements from ArchiMate there? I do see two ArchiMate relations: ArchiMate3::ArchiMate_Association and ArchiMate3::ArchiMate_Composition, but no elements.

Thank you!

Automation Interface, Add-Ins and Tools / EA Element class .Elements
« on: March 08, 2018, 02:00:57 am »

I am building a rather complex document spanning down four levels and collecting various neighbouring elements.

I have run into a problem, which I first thought might be a bug, but probably is some error in the code.

I start the documentation with a diagram with elements. For each element I get child elements with the built in sections: package>element>child elements>, and then continue with a custom script.

Quote from: enterprise architect user guide: EA Element Class


Notes: Read only

Returns a collection of child elements (sub-elements) attached to this element as seen in the tree view.

Collection Class

I had no problem continuing the document documenting relevant neighbours and further child elements. However, we added a child diagram which caused problems and I don't understand why. According to the documentation elem.Elements should only collect child elements, not all childs like child diagrams.

The strange thing also is that some elements which have child diagrams have correct documentation, but one element with child diagram only generates correctly if the child diagram is removed.

Snippet of the code which cause error SOMETIMES when there is a child diagram:
Code: [Select]
element = Repository.GetElementByID( objectID );
childElems = element.Elements;
for ( i = 0; i < childElems.Count; i++ )
currentElement = childElems.GetAt( i );
relatedRoles = getNeighbour( currentElement.ElementID, "stereotype", "ArchiMate_BusinessRole" );
if ( relatedRoles.length == 0 )

I think the problem is that childElems sometimes include a child diagram. Is that even possible??

Any help where to start debugging is appreciated! Perhaps it is enough to add
Code: [Select]
if ( childElems.Count == 0 )
? But I doubt that is the problem since there are child elements..


I'm creating some documentation and usually find elements via scripting, not SQL, which I know, is not the best idea. I've run into some problems sorting an array in JScript, I don't know what really..

Therefore I thought I might try to create a SQL query instead and of course ran in to problems due to my lack of experience..

I want a search where I collect all neighours of a certain stereotype.

My first thought was some kind of JOIN of t_object.stereotype = #<Search Term># and t_connector.End(or Start)_ObjectID=#OBJECTID#. I will have the ObjectID through the script. I'm guessing I somehow have to use xref also?

SELECT obj.ea_guid AS CLASSGUID, obj.Object_Type AS CLASSTYPE, obj.Name AS Name, obj.Note as Description
FROM t_object obj JOIN t_connector con..?
WHERE obj.Stereotype LIKE '#WC#<Search Term>#WC#' AND..?

All help appreciated!


As topic.

If I ask for element Notes, and nothing is added. What is the return?


I use JScript.

Is it the same result for all note? Diagram etc.


I import 500 elements from an excel. My feeling it is reaaally slow.. about 1 hour or more.

Does it depend on my import profile or is this just the way it is? Can I some how optimize and speed up the import?


edit: working on a SQL repository through VPN connection

Automation Interface, Add-Ins and Tools / Move element as child element
« on: February 27, 2018, 02:26:45 am »

I have imported a massive excel and want to move elements to be child elements.

The setup is like this:

Name of elem:

x y kap zzz

where x = int, y = int and zzz = a string.

I have created a script which, not most effectively, selects the y kap, and then finds all x y kap. Now i want to move these x elements to be a child of the y kap element.

I could probably find the correct elements to move with SQL which I know is more efficient. That is something I should invest more time mastering!

However.. how do I move elements to be child elements? I found EAEelement.TreePos, but I doubt that is what I'm looking for. Should I use something in the EARepository class?

Thank you!

General Board / Model projects/meetings w ArchiMate
« on: February 21, 2018, 01:33:38 am »

We are modelling with ArchiMate 3 and, right now, focus on the business/organizational layer. We will in a later stage reach the application/technology layers.

I was asked to include meetings in our model. I was told to model the meetings to be able to trace participants, meeting protocols, decisions etc. It got me thinking what element to use.

My first idea was Business Event, but a Business Event is instantaneous: it does not have duration (according the the ArchiMate specification).

The Business Process could be used. It accesses Business Objects, i.e. meeting protocols etc, and can have Business Roles/Actors assigned to it.

What about Business Interaction?

Is there any other element I don't think about? We have Implementation Events and Work Packages in other parts of our model.

I also thought about how I should model these meetings...

Should I do a generic model, like Meeting A always has output of Report A, and create instances for actual meetings/reports or only create instances? E.g Meeting 18-02-20 have output Report 18-02-20, with participants Business Actor A/B/C.

Perhaps there is another option in EA without elements, in project management?

I have my doubts about meetings...

Any thoughts?



I have worked quite a bit with document generation and know the basics of templates, fragments, custom scripts, document scripts etc.

When I create a document generator I usually use a simple SQL search as basis, either GUID/ID or name (if I'm sure there is no duplicates). However, I was thinking, when I set up a document generator for let's say, requirement specification. I want to use that document generator for different IT-system/applications, e.g. make instances.

Should I use the doc gen I created and just change the SQL search values? Should I duplicate the doc gen? Should I connect one more Document Artifact? Is there any best practice, or how do you guys do this?



General Board / Help w Microsoft SQL Server
« on: February 19, 2018, 11:19:42 pm »

We are about to transfer our local model to an SQL Server and my colleague have set up a Microsoft SQL Server.

I have no experience working on "that side" and have problems connecting to the server.

I have downloaded the EASchema_1220_SQLServer.sql and executed it on a new databse. I don't see any new tables or anything though. Is it permissions in Microsoft SQL struggling? I executed through SSMS.

Is this the reason I can't connect? The script has to be run correctly berfore connecting? How can I make sure the script is executed?

I am not sure what questions I should ask you guys to solve this, please guide me!



Automation Interface, Add-Ins and Tools / Script to fetch requirement?
« on: January 29, 2018, 07:25:20 pm »

This is more of a method question, perhaps the thread should be moved.

I have high level requirements, or capabilities, which is related to requirements. Depending of requirement level, 1, 2 or 3, the requirement have different requirement components.


High-level/capability: The application should have authorization control

Requirement: User should have an unique identity
Req component (depending on level): Everyone should have unique identity, an identity may not be re-used

Depending on how this requirement is leveled, different req components apply. Let's say level 1 corresponds to "Everyone should have unique identity" and level 2 is both of the req components.

Each high-level req/cap has several req, each req has several req comp.

My question is about the best approach to model this.

Should each of the requirement levels be an object? I.e. "User should have an unique identity LEVEL 1", "User should have an unique identity LEVEL 2", etc. Then it is easy to just collect corresponding req comp.

Or create instance of "User should have an unique identity" and set a tagged value of the level? But then I need a script or something to collect the correct req comp since the req comp depends on the chosen level of the req.

I would also like to for each req comp, relate it to an interpretation. So I guess all the req comp's needs to be instances and related an interpretation element, otherwise we can't know how the req comp was interpretated for a speficic project.

How do you see this? Model with elements and script, or instances? Would love some input!



I use a document script to send elements to the document generator. In my template I have Child Elements ticked.

However no child elements are reported. I tried to send the child elements to the report through the document script as well but it just report it as regular elements, not as child elements to the element in focus.

Any idea what's going on?



I have generated a report which traces to a document artifact.

Can I use this document artifact as a appendix in another generated report? Can I somehow make this document artifact a linked document to a package? That would make it really easy.

Thank you!

Automation Interface, Add-Ins and Tools / Element Usage list through API
« on: October 04, 2017, 07:46:18 pm »

I am creating some documentation/reports via script fragments. I would like to show specific diagrams. My first idea was to iterate through the element usage list (ctrl+u) and send diagrams to the report based on the name of the diagram.

However I didn't find anything like ctrl+u in the API, and didn't find it googling/searching the forum either. Does anyone know a method to create a collection with the diagrams like ctrl+u?

Is there a better approach to select specific diagrams?

Thank you!


I have a fragment in my document generator which finds element of interest with a SQL query. When I print the element's note the hyperlink is printed as a string instead as a hyperlink:

Code: [Select]
<a href="$element://{3D79297A-4128-4fdd-9070-3BA328E674F0}"><font color="#0000ff"><u>My element of interest</u></font></a>
This is no problem when inserting the note with the pre-built sections. Can I convert this html-string to an actual hyperlink in my documentation?

Thank you!


I have an output to show connections to/from the current selected element as follows:

Code: [Select]
package >
HEADING 1 {Pkg.Name}
element >
HEADING 2 {Element.Name}

connector >
source >
element >
< element
< source
target >
element >
< element
< target
< connector
< element
< package

However, I would like to show it in a table:
Source #1Connection #1Target #1

The problem is though that the information is in different section-contents (or whatever it is called, i.e. connector >, source >). I can't get all the information in the table. Is there a way around this?

Second question:
Is there a way to include the shapescript of elements/stereotypes? I found insert image and similar, but since the shapescript is embedded with the element/stereotype I thought it would be easy to show the image/shapescript. I do not find anything. Someone knows something about this?


Pages: [1] 2