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

Pages: 1 2 3 [4] 5 6 ... 37
General Board / Set Page size in a Documentation Template
« on: August 25, 2016, 07:16:48 pm »

This is a basic question and I should know the answer, but what I try does not appear to work.

Question : How do you set the page size for a Documentation template to be A3?

I have tried Using the Document Ribbon / Edit / File / Printer Setup, but the document still prints A4.

Cannot find anywhere else to set the page size for the Template.

Using EA version 13 beta



General Board / Re: Distribute MDG Technology via Cloud Services?
« on: August 19, 2016, 06:30:42 pm »
Using Project (Repository) options you can specify which set of MDGs must be loaded into EA so that the repository will open.

This feature maybe a way to load you MDG conditionally.

Try this:

Connect to your cloud repository and set the list of MDGs (including your custom MDG) and then disconnect. (In EA version 13 this the Configure Ribbon / Model / Options

Start EA and configure the MDGs to exclude your custom MDGs



Bugs and Issues / EA Version 13 - GetMenuItem IsChecked issue
« on: August 18, 2016, 07:55:35 pm »
Hi All

I have an extension that uses the IsChecked option for its menu.

In previous versions of EA, the IsChecked option when set to true rendered the menu with a tick mark, however this does not appear to work in EA version 13.

Regardless of the setting of IsChecked (within the method GetMenuItem) the extension is always rendered with no tick marks.

Anyone else noticed this?



General Board / Re: Show/Hide SysML Diagram Frame
« on: July 28, 2016, 05:51:25 pm »
Well the SysML diagram does appear in the diagram that you are constructing in the following circumstances

  • Creating an Internal Block Diagram from a Block
    Creating a Parametric Diagram from a Block
    Creating an Activity Diagram from an Activity

In all these cases right-click the element, select New Child Diagram and the select Internal Block Diagram, Parametric Diagram or Activity Diagram from the list

Any Ports, or Activity Parameters will appear on the border of this frame as per the specification of SysML.

I have found that, this diagram must remain as a direct child of its parent, otherwise this frame will disappear and be replaced with its element.

I realise this is different situation to what you are describing in your post, but you may find this information useful.



Yes, open the diagram properties (double-click on the diagram background)
Select Element from the left hand side
Uncheck the checkbox named Attributes
Uncheck the checkbox named Operations

Close the dialog

You should now be left with just the classes




I have just tried a small experiment

I created an MDG with nothing other than a toolbox.

I then added a toolbox page, and then added two elements by:

Added two Built-in Type elements, where I selected Activity from the list of stereotypes

I then overwrote the entries so that

Alias = My own text
Stereotype = BPMN2.0::Activity (BPMN2.0::Gateway, etc)

Upon exiting, check that the attributes in the Toolbox page look as follows:

+ BPMN2.0::Activity=Activity

I then generated the MDG in the usual manner

Upon testing (I assume you have the MDG for BPMN 2.0 checked), I simply created a new BPMN Process Diagram, and changed to my toolbox, whereupon both my elements appeared and both where able to be added to the diagram and exhibited the standard BPMN 2.0 behaviour

Hope this makes sense

Send me a PM if you would like my MDG eap file



Hi All,

The following is the code I used within my EA Extension EA SafeDelete

        private bool isStructuralElement(EA.Repository repository, EA.Element contextElement)
            // Get the object type
            switch (contextElement.Type)
                case "Port":
                    return true;
                case "ActionPin":
                    return true;
                case "ProvidedInterface":
                    return true;
                case "RequiredInterface":
                    return true;
                case "ActivityParameter":
                    return true;
                case "ExpansionNode":
                    return true;
                case "ObjectNode":
                    return true;
                case "Part":
                    return isNotReferencePart(repository, contextElement);
                    return false;

        private bool isNotReferencePart(EA.Repository repository, EA.Element contextElement)

            // To find this out, we need to extract and examine the Description field in the
            // contextElement's corresponding entry in the t_xref table

            String tXrefDescription = null;

            string sqlSearch = "SELECT t_xref.Description AS [Description]" +
                               "FROM t_object, t_xref " +
                               "WHERE t_object.ea_guid = '" + contextElement.ElementGUID + "'" +
                               "AND   t_object.ea_guid = t_xref.Client";

            string queryResult = string.Empty;
            queryResult = repository.SQLQuery(sqlSearch);

            XmlDocument requirement = new XmlDocument();

            // Examine the result
            XmlNode description = requirement.SelectSingleNode("//Row/Description");
            if (description != null)
                tXrefDescription = description.InnerText;

                // Now, the fun begins, we need to
                // First extract the parts of description (delimited by ;)
                // Extract the value that tells us if the element is a reference Part

                String[] descriptionParts = tXrefDescription.Split(new char[] { ';' });

                // We need the eighth part (index 7)
                // This has the format @VALU=n @ENDVALU
                // So we can just test for a contains of 0 for not a reference part

                return descriptionParts[7].Contains('0');
            return true;

This appears to work for me, don't think I missed any Structural Elements (embedded elements).



Thanks Roy, that's helped a lot.


Bugs and Issues / Re: EA Version 13 Beta - EA-GetMenuItems issue
« on: July 08, 2016, 05:38:44 pm »
Thanks Simon, that's good to know


Bugs and Issues / EA Version 13 Beta - EA-GetMenuItems issue
« on: July 08, 2016, 01:01:51 am »
Here's a good one for you EA guys.

I have two EA Extensions which when used with EA version 13 Beta, are placed on the Extend ribbon. One extension works just fine, the other threw a null pointer exception and caused EA to crash when the extension was selected on its ribbon entry.

The exception was being thrown in the event EA_GetMenuItems.

Upon some investigation I discovered what the problem was. It was due to the value in the parameter menuLocation

When the extension was clicked on its ribbon, the value returned in menuLocation is Diagram ... :-[ and of course as there is no repository open let alone any diagram, its not surprising I get a null pointer!

Surely, when selecting an Extension from the Ribbon, I would expect the menuLocation to be MainMenu (or even a new value Ribbon), but Diagram? No way.

Worked around it now, but thought you like to know in case the same problem occurs in your extensions in EA version 13.



General Board / SysML Simulation OpenModelica and EA version 13 Beta
« on: July 07, 2016, 08:55:24 pm »
Hi All

Am trying out the new SysML simulation in EA version 13 Beta and am using the section entitled Creating a Parametric Model in EA version 13 User Guide as an aid.

The first basic example went well, but I am stuck on the second example which is using Connected Constraint Properties.

I have modelled all the Constraint Blocks, Block and Parametric Diagrams, but the guide states:

Provide values (arg_a = 2, arg_b = 3, arg_c = 4, arg_d = 5) in a data set

This data set is then selected in the Configure SysML Simulation dialog


What kind of element is used for the Data Set? I cannot find any such element anywhere on any toolbox.

Am using SysML 1.4 MDG



General Board / Re: Setting up SVN
« on: June 16, 2016, 06:57:02 am »
when accessing svn outside EA, for example creating a working file area using Tortoise, are you requested for authentication?

If yes, then enter the credentials and ensure they are remembered

As far as I know EA works with cached authentication.

Last time I received an error message similar to this, authentication was the problem

EA has sent a command to SVN
SVN replies with an authentication request
EA does not prompt you for the authentication and simply times out

Try setting up another folder as the working file area using Tortoise
Right click the folder
Select TortoiseSVN
Select Import

Hope this helps.

General Board / Re: Deleting of Notes not possible
« on: June 15, 2016, 06:14:43 pm »
I too have seen this strange behaviour (usually with versions prior to version 12)

One way to remove the note from the Use Case diagram is:

Right click the Note and select Lock Element (which actually unlocks it)
With the Note selected, press Ctrl + Delete

That should do the trick!


General Board / Re: Migrating from SysML1.3 to 1.4
« on: May 20, 2016, 02:07:31 am »
Ah as a follow up I have just checked by running the script, results in an error:

Can not find either the source profile 'SysML1.3' or the destination profile 'SysML1.4'.   
Please make sure the profiles are checked at 'Settings -> MDG Technologies' and then RESTART EA.   
The supported migration map is as follows:   
        |'Archimate' ==> 'Archimate2'   
        |'SysML1.1' ==> 'SysML1.2'   
        |'SysML1.2' ==> 'SysML1.3'   
        |'BPMN' ==> 'BPMN1.1'   
        |'BPMN' ==> 'BPMN1.1::BPEL'   
        |'UPDM' ==> 'UPDM2'   
        |'BPMN1.1' ==> 'BPMN2.0'   

Despite the scripts name, migration form SysML 1.3 -> SysML1.4 does not appear to be supported.

Over to the Sparxians!!



General Board / Re: Migrating from SysML1.3 to 1.4
« on: May 20, 2016, 01:59:30 am »
There is a Migration script for migration from SysML 1.3 to SysML 1.4, supplied by Sparx

Just open the scripting window and run the script, haven't tried it myself but I would assume that you will need both SysML 1.3 and SysML 1.4 MDGs activated.

Best of luck



Pages: 1 2 3 [4] 5 6 ... 37