Friday, June 28, 2019

Keep it together – Modularization with EB GUIDE

Sabrina Kerzel and Michael Körner

Have you ever used a very long prefix to allocate datapool items or events to a specific topic, or are you working in a development team that is co-located and works in parallel?
Do you see yourself? But how to prevent gratuitous long names and in the meanwhile achieve good teamwork and create stunning HMIs while working with EB GUIDE?

We’re glad to announce the first step towards an advanced modularization within EB GUIDE!

You’re now able to split your model into smaller pieces that help you organize it and work together simultaneously on different parts of your model – we call those pieces namespaces.

Namespaces
Namespaces

 

Using namespaces

To work with namespaces, you first have to open the namespaces component. This component is not included in the default layout. Just add it where it suits you best.

Every new project has one root namespace with the name of your project. You can still work without namespaces, just as you are used to if you don’t need them.

You can add as subnamespaces as you need, rearrange and nest them.

Create subnamespaces
Create subnamespaces

 

How to proceed organizing my model?

Simply select the datapool items or events you want to be part of a specific namespace and move them with drag&drop into the desired namespace or use the context menu. To make the creation even more convenient for you, we are introducing the multiple selection of datapool items and events.

Organize the project by moving elements into another namespace
Organize the project by moving elements into another namespace

 

We also wanted to enable you to focus just on the parts of the project you are working on. The new view of the datapool and events components allows you to select the elements’ namespace of your interest.

New view of datapool and events components
New view of datapool and events components

 

But of course, we don’t hinder you to keep control of all elements, for example, filter over all elements to find a specific one if you don’t know its namespace.

Namespace filter
Namespace filter

 

If you don´t filter the selected namespace, the table of datapool items or events is extended by a column for namespace. This way you get an overview in what namespaces the items or events are used.

Datapool component with namespace column
Datapool component with namespace column

 

Persistence

All the events and datapool items are saved in events.gdata or datapool.gdata, that is saved in root of your project folder.

But as soon as you move your datapool items or events to another namespace, this also is reflected in folder hierarchy of the saved project. This means that every namespace has its one events.gdata and datapool.gdata.

This way several modelers can work on different namespaces and do not interfere each other.

Folder hierarchy of the saved project
Folder hierarchy of the saved project

 

Namespaces in scripts & trigger lists

Namespaces are also reflected in scripts and trigger lists. If you want to reference a datapool item, the fully qualified path is used in the script.
This ensures the uniqueness of every datapool item and event.

Conditional script with trigger, using a datapool item of a subnamespace
Conditional script with trigger, using a datapool item of a subnamespace

 
 

Start modeling now!

As always, the following resources have been updated and are now available:

Download the Community edition of EB GUIDE.

Read through our updated Release Notes.

Download updated user documentation.

Access updated tutorials here.

Download updated feature demo, examples and custom widgets.

Sign up for one of our EB GUIDE trainings now.