Book a Demo

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

Pages: [1] 2
1
General Board / Executable Statemachine using Ports
« on: April 29, 2020, 11:40:18 pm »
Hello,

anyone knows if it is possible to simualte an executable statmachine with port?
To be clear i used the Example "Simulation with Deferred Event" as reference.
Instead of connecting the classes directly, the classes should be connected via ports.
I can enable these ports inside the "executable statemachine" artifact.
But when I press CTRL+L on the connector between these ports no pop-up is opening.

Any suggestions or do I need to use the normal connector form property to property instead?

Thanks for ur time and I hope someone has investigated this already  :)

2
Bugs and Issues / Compartment Visibility of Ports is bugged
« on: April 09, 2020, 06:17:54 pm »
Hello,

when I open an diagram, in EA 14.1, for the first time and the "flowPort" is unticked in the "compartment visibility" everything is fine the "Ports" aren't visible.
But when I open another diagram and switch back to the first diagram the "Ports" are shown.
This behaviour often makes my diagrams a mess.

Any suggestions?
Is this behaviour true for EA 15? or could an upgrade be a solution?

Greetings,

Nikolas

3
General Board / Relationship Matrix - Line Break
« on: March 10, 2020, 07:09:21 pm »
Hey there,

I am using the relationship matrix of ea version 14.1.
The names of my elements are often very long.
Is there a way for line breaks in the relationship matrix?

Greetings,

Nikolas

4
Automation Interface, Add-Ins and Tools / Re: Visual Bacis Arrays In EA
« on: October 25, 2018, 10:57:41 pm »
Ty for ur quick reply =)

Seems I fall into the trap of using the . operator :D

5
Automation Interface, Add-Ins and Tools / Re: Visual Bacis Arrays In EA
« on: October 25, 2018, 10:39:35 pm »
Hi,

I am trying to understand how to use Arrays with VB in EA.
Standard Array's should work without an issue in vbs, but they are not all that flexible.

I often use a .Net ArrayList instead.

Code: [Select]
dim myArrayList
set myArrayList = CreateObject( "System.Collections.ArrayList" )

Adding, removing and sorting then suddenly becomes a lot easier, and you don't have to worry about redim-ing.

Geert

I am not sure what to insert in the AddNew function as Type when I just want to stre some Strings

Code: [Select]
sub test
dim myArrayList
set myArrayList = CreateObject( "System.Collections.ArrayList" )
myArrayList.AddNew("name","Type?")
MsgBox myArrayList.GetAt(0)
end sub

Do I just miss the right Type or is the AddNew Method the wrong Method?

   

6
General Board / Re: Scripting: Addnew Type List
« on: October 12, 2018, 11:06:20 pm »
I just looked again at https://sparxsystems.com/enterprise_architect_user_guide/13.5/automation/element2.html

And found the type list I searched for:
(Strangly I often tried Action and Sequence and it hadn't worked, but now it does ... I am confused but happy, because it works now :D)

Action
Activity
ActivityPartition
ActivityRegion
Actor
Artifact
Association
Boundary
Change
Class
Collaboration
Component
Constraint
Decision
DeploymentSpecification
DiagramFrame
EmbeddedElement
Entity
EntryPoint
Event
ExceptionHandler
ExitPoint
ExpansionNode
ExpansionRegion
Feature
GUIElement
InteractionFragment
InteractionOccurrence
InteractionState
Interface
InterruptibleActivityRegion
Issue
Node
Note
Object
Package
Parameter
Part
Port
ProvidedInterface
Report
RequiredInterface
Requirement
Screen
Sequence
State
StateNode
Synchronization
Text
TimeLine
UMLDiagram
UseCase

7
General Board / Re: Scripting: Addnew Type List
« on: October 12, 2018, 10:41:16 pm »
Thanks for your suggestions.
I think the problem is that as u mentioned the elements dont have Stereotypes.

Do I need to create something without a Type and then add the tag sequence?
And to do this how could i create an Element without a type?

set newThing = newPackage.Elements.AddNew("ABC", "")

Just leaving it blank doesnt work.

Greetings
Nikolas

8
General Board / Scripting: Addnew Type List
« on: October 05, 2018, 06:13:43 pm »
Hello,

my goal is to write visual basic scripts in EA with the technology SysML 1.4.
I managed to create different diagrams like Block Diagram or Activity Diagram with the following syntax:

dim newBlockD as EA.Diagram
set newBlockD = newPackage.Diagrams.AddNew("ABCD", "SysML1.4::Activity")
newBlockD.Update

And managed to create a Block with this syntax:

dim newThing as EA.Element
set newThing = newPackage.Elements.AddNew("ABC", "SysML1.4::Block")
newThing.Update

The problem now is i dont find out how actions or sequences are created.
I though it has to be somethin like  SysML1.4::Action and SysML1.4::Sequence.
But this doesn't work.

Is there a list or table which lists all the types?
Or do I need to guess what is the keyword?



http://www.sparxsystems.com/enterprise_architect_user_guide/13.5/automation/reference.html

9
General Board / Re: Executable StateMachine Artifact Macro List?
« on: August 29, 2018, 06:28:06 pm »
I found the Solution to Hand over my Parameter information.
In the Locals table the Parameter of an Signal is shown as "signalAttributeValue".

10
General Board / Executable StateMachine Artifact Macro List?
« on: August 17, 2018, 08:24:19 pm »
Hi,

is there any table of macros for the executable statemachine?

I know:

%BROADCAST_EVENT("EventName")%
%SEND_EVENT("EventName", CONTEXT_REF(ConnectorName))%

I search for the right macro to send Parameter information from one state machine to another.
I think it works with Signal with attributes.

But I dont know how to use the parameter of the signal in the state machine.

Something like: SignalName.SignalParameter

Greetings,

Niko

11
Hmm. Doesn't work for me. Well, I was just curious. Probably another dark edge in EA.

q.

I think the soultion is you need to have an Association between the two Blocks in the Statemachine and an Connector in the Exectuable Statemachine Artifact.
Only then the Shortcut "Ctrl+L" is working.

And here is my next Question:

How to use this communication between actors and blocks?
The Problem I see is that I cant draw an Association between actors and blocks and this is required I think.
Is the only way to create a Block instead of an Actor element?

Greetings,

Niko

12
This shortcut works on Connectors between Properties inside Executable Statemachine Artifacts

This is the standard:

"Once a connector exists between two properties, you can map it back to the
Association it represents in the Class model. To do this, select the connector and
use the keyboard shortcut Ctrl+L. The 'Choose an Association' dialog displays, which allows the generated StateMachine to send signals to the instance filling the
role specified in the relationship during execution."

This is copied from(Page 6):
https://www.sparxsystems.com/resources/user-guides/14.0/simulation/executable-state-machines.pdf

And this works fine for me =)

Greetings,

Niko

13
General Board / Re: Simulation and Executable State Machines
« on: August 02, 2018, 07:20:10 pm »
I dont find the exact location in the documentation, but I know that in the executable statmachine only the signal trigger is working. But maybe someone else knows a workaround?

Greetings,

Niko

14
I found a solution  :)

I just draw the Connector in the diagram, but the association needs to have a specific direction.

This can be modelled by clicking on the Connector, then pressing "Ctrl+L" and choose the direction in the window which is showing up.

Then the code is showing up:

this.Client.server = this.Server;

15
Hi,

my goal is to understand how to create executable state machines which are interacting with each other.
There is an example in the EAExample.eap which i try to understand.

Its called "Interactive Simulation with Deferred Event".

So my Issue is now, that I created an "executable statemachine artifact" have draged down there the two propertys client and server. Then I have drawn a connector between these two propertys.

The expexted result from generating the SimulationManager.js of the example is the following:

function SimulationManager()
{
   this.base = new ContextManager(this, "SimulationManager");
   this.m_pCommand = "";
   this.m_commands = [];
   this.activeStates = [];
   this.activeStateCount=0;
   this.client = new TestClient(this, "client");
   this.base.lstContext.push(this.client.base);
   this.server = new TransactionServer(this, "server");
   this.base.lstContext.push(this.server.base);
   //setup instance associations
this.client.server = this.server;

};

but this.client.server = this.server; is missing in my SimulationManager.js

So I think, I need to change the connector behaviour or something like this. But I dont find a difference between my connector and the example connector.
Does anyone know how exactly this code is generated?
What action do I need to do while modeling?

Pages: [1] 2