Sei sulla pagina 1di 570

Add-Ins Reference Help Page 1 of 570

Add-Ins Reference Help

Add-Ins Reference Help

The Tecnomatix Plant Simulation add-ins reference describes the objects of the add-in products and the settings they offer. You can add them to an open

simulation model by clicking Manage Class Library on the Home ribbon tab.
• ActiveX
• Inter-Process Communication Interfaces
• Database Interfaces
• GanttChart
• Genetic Algorithms
• Object Libraries
• Statistics Tools

For some of the add-ins you have to purchase a license to utilize them.

Also consult
What’s New
Using HTML Help
The Step-by-Step Help
The Reference Help
The 3D Viewer Reference Help

Copyright © 2016 Siemens Product Lifecycle Management Software Inc. All rights reserved.
This documentation is proprietary to Siemens Product Lifecycle Management Software Inc.
This document contains proprietary information and is protected by copyright. No part of this document may be reproduced, stored in a retrieval system,
translated, transcribed, or transmitted, in any form or by any means, without the prior explicit written consent of Siemens Product Lifecycle Management
Software Inc.
Information in this document is subject to change without notice.
12 May 2016

Add-Ins Reference Help

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 2 of 570

Add-Ins Reference Help > ActiveX

ActiveX

ActiveX is an object technology allowing you to activate objects (ActiveX controls or other COM objects) within a container application and to exchange data
with these objects using defined interfaces. You can use ActiveX to embed ActiveX controls or other COM objects into a Plant Simulation Frame or show
them in a window of its own. You can also access ActiveX controls or other COM objects via information flow.

ActiveX is part of the Plant Simulation Interface Package.

You can select from a wide variety of ActiveX controls or you can develop them yourself, provided you have the appropriate development tools, such as
Microsoft Visual C++, Microsoft Visual Basic, etc. Examples of ActiveX controls you daily use with MS Windows are the Internet Explorer or the Media
Player.
An ActiveX controls has to register itself with the operating system so that you can use it. The control may either register with the program regsvr32.exe or
with Tecnomatix Plant Simulation.
In the 32-bit version of Plant Simulation you can only use 32-bit ActiveX controls. In the 64-bit version of Plant Simulation you can only use 64-bit
ActiveX controls.

To add the ActiveX interface to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topics

Play a Video in Your Simulation Model Dialog Window of the Object ActiveX

Accessing Methods and Attributes Methods of the Object ActiveX

Converting Data Types Between Plant Simulation and ActiveX Attributes of the Object ActiveX

Add-Ins Reference Help > ActiveX

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 3 of 570

Dialog Window of the Object ActiveX

Double-click the icon of the object ActiveX, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.
The object ActiveX is the interface between Plant Simulation and the ActiveX controls. It allows you to embed ActiveX controls into an Plant Simulation
Frame. You can access methods and attributes of ActiveX controls using methods and attributes.

Related Topics

Name The Tools Menu

Label The Help Menu

Active Inheritance

Tab Attributes OK

Tab User-defined Attributes Cancel

The Navigate Menu Apply

The View Menu

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Name

Name
Enter a name of your choice for the object ActiveX or accept the name which Plant Simulation suggests.
You can enter a combination of letters, digits, and underscore (_) characters, for example MyActiveX, MyActiveX1, My_ActiveX_1. The name of an
object cannot start with a digit, i.e., you cannot enter 1ActiveX.

SimTalk:
Name

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Name

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Label

Label
Enter a label into the text box Label. The program then shows it in the title bar of the window when you activate the object ActiveX outside of the Frame.

SimTalk:
Label

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Label

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Active

Active
To activate the ActiveX control, select this. To deactivate it, clear the check box. You can only activate the ActiveX control after you entered the Class name
and the Callback method!
Instead, you can also right-click the ActiveX object in the Frame and select Enable on the context menu. To deactivate it, select Disable on the context
menu.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 4 of 570

SimTalk:
Active

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Active

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes

Tab Attributes
The tab Attributes provides the menu items Class name, License key, and Callback method.

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Class name

Class name
Enter the class name of the required ActiveX control. The command Tools > ActiveX Class Overview opens a table that shows all ActiveX controls, which
are installed on your computer.
You might, for example, enter excel.application, for Microsoft Excel, word.application, for Microsoft Word, or access.application for
Microsoft Access.

SimTalk:
ClassName

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Class name

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > License key

License key
If the ActiveX control requires a license key, enter it here. Normally you do not have to enter a license key.

SimTalk:
LicenseKey

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > License key

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Callback method

Callback method

Click and select a Method. The program calls this method, as soon as the ActiveX control triggers an event.
Instead, you can also right-click in the text box. Then, select Create Control on the context menu to create a control method, which is a user-defined attribute
of data type method of this object:
• Select Create Control. Plant Simulation then inserts self.CallbackMethod. Or
• Enter a meaningful name into the text box and select Create Control. Plant Simulation then inserts
self.Name_you_entered_for_the_control.
Enter the source code of this control into the Method that opens.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 5 of 570

• To delete this control, delete the user-defined attribute; deleting the name from the text box just deletes the name, but keeps the user-defined attribute.

To open the dialog of the object, whose name you entered into the text box, press the F2 key.

A callback method might look like this:

-- SimTalk 2.0 notation


param event: integer, a,b,c,d: any
if event=1
print MyActiveX.PercentDone
end

-- SimTalk 1.0 notation


(event:integer;a,b,c,d:any)
is
do
if(event=1) then
print MyActiveX.PercentDone;
end;
end;

SimTalk:
Callback

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Callback method

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Display in frame

Display in frame
To show the active ActiveX control in the Frame, into which you inserted object ActiveX, select this. The program then displays the icon of the ActiveX
control on top of the icon of the object.

On Off

You cannot scale or move the icon of ActiveX controls, which are activated in the Frame.

SimTalk:
InFrame

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab Attributes > Display in frame

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 6 of 570

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > Tab User-defined Attributes

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Navigate Menu

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu

The View Menu


The View menu provides the menu commands Refresh, Show Attributes and Methods, ActiveX Class Overview, and Type Info.

Related Topic
updateDialog

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu > ActiveX Class Overview

ActiveX Class Overview


To open a table displaying all ActiveX controls installed on your computer, select the menu command ActiveX Class Overview.
The column Class Name shows the name of the ActiveX class. Enter this name into the text box Class name of the ActiveX dialog.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 7 of 570

The columns Comment and Server contain additional information that Plant Simulation does not use.

Related Topic
overview

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu > ActiveX Class Overview

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu > Type Info

Type Info
To open a table, which displays all methods and attributes of the active ActiveX control, select the menu command Type Info. An ActiveX control does not
necessarily have to provide this interface documentation. If documentation is not available, the table will show the message Type info not supported.
Limited access to the attributes/methods is still possible though.
The column Attribute/Method shows a symbolic name of the attribute or of the method.
The column ID shows the internal number of the respective attribute/method. You can also use this number to call methods.
The column Comment shows the description of the attribute.
The column Type Info shows the type, i.e., if the control is an attribute or a method:
• METHOD: This is a method.
• PROPERTYPUT: This is an attribute that you can assign.
• PROPERTYGET: This is an attribute you can read out but cannot assign.
The column Parameters contains the kind and the number of the parameters of methods.
Instead, you can also right-click the ActiveX control in the Frame and select Type Info on the context menu.

Related Topic
typeInfo

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 8 of 570

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The View Menu > Type Info

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Tools Menu

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > ActiveX > Dialog Window of the Object ActiveX > The Help Menu

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes

Accessing Methods and Attributes

You can call the attributes and the methods of an activated ActiveX control just like you would call any attribute or method in Plant Simulation. If ActiveX and
Plant Simulation attributes and methods have the same name, the ActiveX attribute takes precedence.
Compare the following examples for the Media Player and for the Internet Explorer.

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes > Media Player

Media Player
The methods aboutBox and run and the attributes FileName and ShowPositionControls refer to a Media Player example of class “AMOVIE.ActiveMovie
Control.1.”

aboutBox

Syntax: <Path>.aboutBox

The method aboutBox opens the dialog Info of the control.

Example: MyActiveX.aboutBox;

FileName

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 9 of 570

Syntax: <Path>.FileName

The attribute FileName loads the file designated by the parameter of data type string.

Example: MyActiveX.FileName := "C:\users\yourname\shania.avi";

run

Syntax: <Path>.run

The method run starts playing the media file.

Example: MyActiveX.run;

ShowPositionControls

Syntax: <Path>.ShowPositionControls

The attribute ShowPositionControls sets if the position controls of the Media Player are displayed (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyActiveX.ShowPositionControls := false;

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes > Media Player

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes > Internet Explorer

Internet Explorer
The method goHome and the attribute LocationURL refer to an Internet Explorer example of class “Shell.Explorer.1”.

goHome

Syntax: <Path>.goHome(StartPage:<string>)

The method goHome opens the start page designated by the parameter of data type string in the Internet Explorer.

Example: MyActiveX.goHome("Siemens.com");

LocationURL

Syntax: <Path>.LocationURL

The method LocationURL returns the address of the currently active page in the Internet Explorer.

Example: print MyActiveX.LocationURL;

Add-Ins Reference Help > ActiveX > Accessing Methods and Attributes > Internet Explorer

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX

Converting Data Types Between Plant Simulation and ActiveX

The data types which Plant Simulation and ActiveX use are not identical. Data types are converted according to these tables. Passing parameters as
reference (VT_BYREF) is not supported.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 10 of 570

Converting Data from Plant Simulation to ActiveX

Data types are converted from ActiveX to Plant Simulation as follows:

Plant Simulation Data Type ActiveX Data Type

integer VT_I2

real VT_R8

length VT_R8

weight VT_R8

speed VT_R8

time VT_R8

boolean VT_BOOL

string VT_BSTR

All others VT_BSTR

Converting Data from ActiveX to Plant Simulation

Data types are converted from Plant Simulation to ActiveX as follows:

ActiveX Data Type Plant Simulation Data Type

VT_UI1, VT_BYREF|VT_UI1 integer

VT_I2, VT_BYREF|VT_I2 integer

VT_I4, VT_BYREF|VT_I4 integer

VT_R4, VT_BYREF|VT_R4 real

VT_R8, VT_BYREF|VT_R8 real

VT_BOOL, VT_BYREF|VT_BOOL boolean

VT_BSTR, VT_BYREF|VT_BSTR string

VT_ERROR string (error message in the Plant Simulation Debugger)

All others void

VT_I2, VT_BYREF|VT_I2 integer

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX > ActiveX Events

ActiveX Events
If an ActiveX control triggers an event, Plant Simulation starts the method that you entered into the text box Callback method. A parameter of data type
integer containing the event ID is passed to this method.
A callback method might look like this:

-- SimTalk 2.0 notation


param event: integer, a,b,c,d: any
if event=1
print MyActiveX.PercentDone
end

-- SimTalk 1.0 notation


(event:integer;a,b,c,d:any)
is
do
if(event=1) then
print MyActiveX.PercentDone;
end;
end;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 11 of 570

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX > ActiveX Events

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX > Persistence

Persistence
Some ActiveX controls can save their state to a file and restore that state when they are activated again, provided the ActiveX control has implemented the
IPersist interface. If this interface is not available, Plant Simulation saves the data to a temporary file and uses that file when the control is called again. As
soon as the model file is saved, the data is added to it.

Add-Ins Reference Help > ActiveX > Converting Data Types Between Plant Simulation and ActiveX > Persistence

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX

Methods of the Object ActiveX

The object ActiveX provides:


• The methods getParam, invoke, load, putParam, overview, registerControl, save, setWindowPosition, typeInfo, and unregisterControl.
• The Methods of All Objects.
To view all of the methods and attributes of the object ActiveX, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > getParam

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 12 of 570

getParam

Syntax: <Path>.getParam(Parameter:<any>, <any>, ...)

The method getParam returns the contents of a parameter of the ActiveX control.

Using the attribute/method ID in the call is slightly faster, as otherwise Plant Simulation has to find the ID of the name of the attribute or method first.

Parameter
The parameter Parameter of data type any designates the contents of the parameter.

Return Value
The return value has the data type any.

Example: print MyActiveX.getParam("FileName");


print MyActiveX.getParam(3); -- 3 is the ID of the attribute FileName

Related Topic
putParam

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > getParam

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > invoke

invoke

Syntax: <Path>.invoke(Method:<any>, <any>, ...)

The auxiliary method invoke calls a method if the type information of the ActiveX control is not available, preventing you from calling methods directly.

Parameters
• The parameter Method of data type any designates the name of the method or the ID of the method.
• All additional parameters of data type any are going to be passed to the method that is called.

Using the attribute/method ID in the call is slightly faster, as otherwise Plant Simulation has to find the ID of the name of the attribute or method first.

Return Value
The return value has the data type boolean.

Example: MyActiveX.invoke("Navigate","www.siemens.com");
MyActiveX.invoke(104,"www.siemens.com");

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > invoke

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > load

load

Syntax: <Path>.load(Filename:<string>)

The method load loads an ActiveX control from a file.

Parameter
The parameter FileName of data type string designates the name of the control.

Return Value
The return value has the data type boolean: true means that the control was loaded, false that it could not be loaded.

Example: MyActiveX.load("MyActiveX");

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 13 of 570

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > load

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > overview

overview

Syntax: <Path>.overview

The method overview returns the ActiveX Class Overview table that you can also open on the View menu.

Return Value
The return value has the data type list.

Example: print MyActiveX.overview;

Related Topic
ActiveX Class Overview

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > overview

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > putParam

putParam

Syntax: <Path>.putParam(Parameter:<any>, <any>, ...)

The method putParam sets the parameter, the name, or the ID of a parameter of an ActiveX control.

Using the attribute/method ID in the call is slightly faster, as otherwise Plant Simulation has to find the ID of the name of the attribute or method first.

Parameter
The parameter Parameter of data type any designates the contents of the parameter.

Return Value
The return value has the data type boolean.

Example: print MyActiveX.putParam("FileName","C:\temp\t.txt");


print MyActiveX.putParam(3,"C:\temp\t.txt"); -- 3 is the ID of the attribute FileName

Related Topic
getParam

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > putParam

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > registerControl

registerControl

Syntax: <Path>.registerControl(Name:<string>)

The method registerControl registers an ActiveX control with the operating system.

Parameter
The parameter Name of data type string designates the name of the control.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 14 of 570

Example: MyActiveX.registerControl("MyActiveX");

Related Topic
unregisterControl

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > registerControl

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > save

save

Syntax: <Path>.save(FileName:<string>)

The method save saves the data of a control to a file.

Parameter
The parameter FileName of data type string designates the name of the file to which you want to save the data.

Return Value
The return value has the data type boolean.

Example: MyActiveX.save("MyActiveX");

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > save

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > setWindowPosition

setWindowPosition

Syntax: <Path>.setWindowPosition(X:<integer>, Y:<integer>, Width:<integer>, Height:<integer>)

The method setWindowPosition sets the position at which Plant Simulation shows the window of the ActiveX control on screen.

Parameters
• The parameter X of data type integer designates the x-coordinate of the window.
• The parameter Y of data type integer designates the y-coordinate of the window.
• The parameter Width of data type integer designates the width of the window.
• The parameter Height of data type integer designates the height of the window.

Return Value
The return value has the data type boolean.

Example: MyActiveX.setWindowPosition(100,150,90,90);

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > setWindowPosition

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > typeInfo

typeInfo

Syntax: <Path>.typeIinfo

The method returns the Type Info table that you can also open on the View menu.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 15 of 570

Return Value
The return value has the data type list.

Example: print MyActiveX.typeInfo;

Related Topic
Type Info

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > typeInfo

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > unregisterControl

unregisterControl

Syntax: <Path>.unregisterControl(Name:<string>)

The method unregisterControl unregisters an ActiveX control with the operating system.

Parameter
The parameter Name of data type string designates the name of the control.

Return Value
The return value has the data type boolean.

Example: MyActiveX.unregisterControl("MyActiveX");

Related Topic
registerControl

Add-Ins Reference Help > ActiveX > Methods of the Object ActiveX > unregisterControl

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX

Attributes of the Object ActiveX

The object ActiveX provides:


• The attributes Active, Callback, ClassName, InFrame, and LicenseKey.
• The Attributes of All Objects.
To view all of the methods and attributes of the object ActiveX, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 16 of 570

assigning values to the corresponding attributes.


• To set the value of an attribute, you might, for example, type:

MyActiveX.CallBack := &MyActiveXMethod -- SimTalk 2.0 notation

MyActiveX.CallBack := ref(MyActiveXMethod) -- SimTalk 1.0 notation

• To get the value of an attribute, you might, for example, type:

print MyActiveX.CallBack
posit := SingleProc.cont.XPos

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > Active

Active

Syntax: <Path>.Active

The attribute Active activates the ActiveX control (true) or deactivates it (false). You can only activate the ActiveX control after you entered the Class
name/ClassName and the Callback method/Callback method!

Assignment Value
You can assign a value of data type boolean.

Example: MyActiveX.Active := true;

Related Topic
Active

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > Active

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > Callback

Callback

Syntax: <Path>.Callback

The attribute Callback sets the Callback method of the ActiveX object. The program calls this method, as soon as the ActiveX control triggers an event.

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


MyActiveX.CallBack := &MyActiveXMethod

Example: -- SimTalk 1.0 notation


MyActiveX.CallBack := ref(MyActiveXMethod);

Example: MyActiveX.CallBack := self.CallbackMethod;

A callback method in SimTalk 2.0 notation might look like this:

param event: integer, a,b,c,d: any


if event=1
print MyActiveX.PercentDone
end

A callback method in SimTalk 1.0 notation might look like this:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 17 of 570

(event:integer;a,b,c,d:any)
is
do
if(event=1) then
print MyActiveX.PercentDone;
end;
end;

Related Topic
Callback method

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > Callback

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > ClassName

ClassName

Syntax: <Path>.ClassName

The attribute ClassName sets the Class name of the ActiveX class.

Assignment Value
You can assign a value of data type string.

Example: MyActiveX.ClassName := "Image";

Related Topic
Class name

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > ClassName

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > InFrame

InFrame

Syntax: <Path>.InFrame

The attribute InFrame sets if the active ActiveX control will be displayed inside the Frame into which you inserted the ActiveX object is located (true) or not
(false).

On Off

Assignment Value
You can assign a value of data type boolean.

Example: MyActiveX.InFrame := true;

Related Topic
Display in frame

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 18 of 570

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > InFrame

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > LicenseKey

LicenseKey

Syntax: <Path>.LicenseKey

The attribute LicenseKey sets the License key of the ActiveX control.

Assignment Value
You can assign a value of data type string.

Example: MyActiveX.LicenseKey := "MyHighlyComplexTopSecretPassword123";

Related Topic
License key

Add-Ins Reference Help > ActiveX > Attributes of the Object ActiveX > LicenseKey

Add-Ins Reference Help > Database Interfaces

Database Interfaces

Tecnomatix Plant Simulation provides the database interfaces ODBC, Oracle11g, and SQLite.

To add them to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 19 of 570

Add-Ins Reference Help > Database Interfaces

Add-Ins Reference Help > Database Interfaces > ODBC

ODBC
The ODBC interface connects to any existing data source. To provide several database connections, duplicate the object ODBC in the Class Library as
often as you need to.
The advantage of the ODBC (Open Database Connectivity) interface over product-specific interfaces is that it allows you to access different data sources,
such as Microsoft Excel, dBase, and text files as well as Database Management Systems (DBMS) such as Oracle or Informix, as long as the corresponding
drivers are installed on your computer.
Plant Simulation and the data source communicate via the ODBC Driver Manager and the ODBC Database Driver.
Plant Simulation implements the ODBC interface employing so called ODBC calls. This interface allows you to establish a connection to any data source, for
which an ODBC driver is available, to define SQL run time statements and to send those to the data source.
Microsoft Windows provides the ODBC Driver Manager by default. It will load and manage the driver needed for specific tasks. The drivers form the ODBC
interface for the data source and are provided by Dynamic Link Libraries (DLLs). They are divided in Single Tier and Multiple Tier drivers.
• Single Tier drivers are intended for data sources that do not have an SQL interface, such as Microsoft Excel, dBase or text files. In this case, the driver
processes the ODBC calls and the SQL statements. The driver converts them into elementary file operations. Note that these drivers usually limit the SQL
statements offered. As a minimum they have to provide the minimum commands defined by ODBC.
• Multiple Tier drivers require a server that processes the SQL statements and is the interface to the data source. The driver processes ODBC calls and
forwards the SQL commands to the server. It is also possible to define DBMS specific calls. Other calls are modified by the driver to fit the syntax required
by DBMS. Multiple Tier drivers are intended for typical client/server architectures, such as Oracle, Informix or Sybase. The combination of application and
driver forms the client.
For the object ODBC you also need 64-bit drivers for ODBC in the 64-bit version of Plant Simulation. Starting with Microsoft Office 2010 Microsoft
provides 64-bit ODBC drivers for Access, Excel, etc.

If you are working on a 64-bit operating system, and if you want to configure a 32-bit ODBC data source, you need to start the 32-bit ODBC
administration tool, i.e., the odbcad32.exe. This tool is normally installed in C:\Windows\SysWOW64.

To add the ODBC interface to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 20 of 570

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topics

Setting the ODBC User Data Source Up Attributes of the ODBC Interface

ODBC Data Types Import Data from a Database

Dialog Window of the ODBC Interface Import Data from an ODBC Database

Methods of the ODBC Interface

Add-Ins Reference Help > Database Interfaces > ODBC

Add-Ins Reference Help > Database Interfaces > ODBC > Setting the ODBC User Data Source Up

Setting the ODBC User Data Source Up


Select Start > Control Panel > Administrative Tools > Data Sources (ODBC) to set up the user database. Click Add in the window Create New Data
Source. Pick the driver you need. Enter the settings for the data source in the window that opens.
If you are working on a 64-bit operating system, and if you want to configure a 32-bit ODBC data source, you need to start the 32-bit ODBC
administration tool, i.e., the odbcad32.exe. This tool is normally installed in C:\Windows\SysWOW64.

You do not necessarily have to set up a user data source. If you just want to access the data source via Plant Simulation, you can also temporarily establish
the connection with the data source with the method driverConnect. In this case you do not have to enter anything into the control panel or into the dialog of
the object ODBC in Plant Simulation.

Related Topic
Set the Data Source Up

Add-Ins Reference Help > Database Interfaces > ODBC > Setting the ODBC User Data Source Up

Add-Ins Reference Help > Database Interfaces > ODBC > ODBC Data Types

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 21 of 570

ODBC Data Types


The column DATA_TYPES of the table Data Types shows which of the ODBC data types the used driver actually supports.
For data, which you load into a Plant Simulation TableFile via a SELECT statement, the data type mapping in column 3 of the following table apply.
The mapping of the Informix data types to the data type of the table is as follows:

ODBC data type description Plant Simulation data type

CHAR(n) text with a fixed length of n (1 <= n <= 254) String

VARCHAR text with a variable length; the maximum length is n (1 <= n <= 254) String

LONG VARCHAR text with a variable length; the maximum length depends on the data source String

DECIMAL(p,s) fixed-point number with precision p and s decimals (1 <= p <= 15; 0 <= s <= p) Real (s>0 or p>0)
Integer (other)

NUMERIC(p,s) analog to DECIMAL Real (s>0 or p>0)


Integer (other)

INTEGER numeric value n (-2(31) <= n <= 2(31)-1) Integer

SMALLINT numeric value n (-32768 <= n <= 32767) Integer

REAL floating-point number; significant digits 7 Real

FLOAT floating-point number; significant digits 15 Real

DOUBLE PRECISION analog to FLOAT Real

BIT binary data (1-Bit) Boolean

TINYINT numeric value n (-128 <= n <= 127) Integer

BIGINT numeric value n String


(-2(63) <= n <= 2(63)-1)

BINARY(n) binary data with a fixed length of n (1 <= n <= 255) not defined

VARBINARY(n) binary data with a variable length; the maximum length is n (1 <= n <= 255) not defined

LONG VARBINARY binary data with a variable length; the maximum length depends on the data source not defined

DATE date Date

TIME time Time

TIMESTAMP date/time DateTime

Add-Ins Reference Help > Database Interfaces > ODBC > ODBC Data Types

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface

Dialog Window of the ODBC Interface


Double-click the icon of the object ODBC, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Name Save

Label Stop on errors

Inheritance Format Table

Database Message

Driver Logout

Data Source Login

Data Types OK

User name Cancel

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 22 of 570

Password Apply

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Database

Database
Select or enter the name of the data source (Data Source Name), which you assigned, when you created the user data source. If you would like to work
with the default server, you do not have to enter anything. The default server usually is the local server. The list shows all data sources which are available
on your computer network.

SimTalk:
DataBase

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Database

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Driver

Driver
To open the table Info Driver, click this. It shows information about the used driver.

Entry Description

Driver Name Name of the driver

Driver Version Version of the driver

Driver ODBC ODBC version which the driver supports


Version

ODBC Version ODBC version which the Driver Manager supports

API Conformance The API Conformance Levels define a fixed functionality which the driver can realize to meet a defined level. Possible values are
None, Level1, or Level2

SAG Conformance Shows if all functions, which are set by SAG (SQL Access Group), are supported by the driver. Possible values are SAG compliant
or Not SAG compliant.

SQL Conformance Shows the SQL grammar which the driver supports. Possible values are Minimum, Core, or Extended.

File Usage This row is of importance for Single-Tier-drivers only. It shows if the driver treats a file as a table or as a data base. Possible values
are Not supported, Table, or Qualifier.

Number Shows the maximum number of concurrently active connections. The value 0 stands for an unlimited number of connections.
Connections

Number Shows how many instructions can be active at the same time for this driver. The value 0 stands for an unlimited number of
Statements instructions.

infoDriver

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 23 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Driver

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Data Source

Data Source
To open the table Info Data Source, click this. It shows information about the used data source.

Entry Description

DBMS name Name of the DBMS (database management system)

DBMS Version of the DBMS


version

Server name Name of the server belonging to the data source

Database Name of the current database. This can also be a folder, for example for dBase, or a file, for example for Access.
name

Qualifier Shows if a qualifier (database name) stands at the start or at the end of a table name identifier. Possible values are Qualifier at the start or
location Qualifier at the end.

Qualifier Shows the qualifier separator.


separator

Qualifier Qualifier name of the DBMS developer, for example DATABASE for Access or Workbook for Excel.
name

Qualifier Lists the instruction groups in which a qualifier can be specified. Possible values are DML_STATEMENTS (all data manipulation
usage statements), PROCEDURE_INVOC (procedure invocation statement), TABLE_DEF (all instructions for defining tables), INDEX_DEF (all
instructions for defining indexes), or PRIVILEGE_DEF (all instructions for defining privileges).

SimTalk:
infoDataSource

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Data Source

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Data Types

Data Types
To open the table Info Data Types, click this. It shows information about the supported data types.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 24 of 570

The table shows the data types which the selected ODBC data source supports.

SimTalk:
infoDataTypes

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Data Types

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > User name

User name
Enter the User name and the Password if your data sources require them.

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > User name

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Password

Password
Enter the Password after you entered the User name if your data sources require them.

Save

Select this to save the Password in the model file in encrypted form.

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Password

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Stop on errors

Stop on errors
Select this to stop the execution of the active method and to show the SQL error in the Debugger. Clear the check box to continue executing the method.

SimTalk:
sqlError, ErrorStop

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 25 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Stop on errors

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Format Table

Format Table
Select Format table to automatically format the data table according to the requirements.
Clear the check box and select if the driver (Data Conversion by Driver) or Plant Simulation (Data Conversion by Plant Simulation) converts the data.
Select if the driver (Data Conversion by Driver) or the program (Data Conversion by Application) converts the data.

SimTalk:
ConvertingDataDriver
FormatTable

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Format Table

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Message

Message
The message window shows the message, which was returned for the last interaction with the database.

SimTalk:
sqlError

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Message

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Login

Login
To log on to the database, click this. After a successful Login, you can click the buttons Driver, Data Source, and Data Types to open tables containing
information about the current driver/data source connection.

SimTalk:
login

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Login

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Logout

Logout
Click Logout to log out of the database.

SimTalk:
logout

Add-Ins Reference Help > Database Interfaces > ODBC > Dialog Window of the ODBC Interface > Logout

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 26 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface

Methods of the ODBC Interface


Plant Simulation ODBC provides:
• The methods beginTrans, commitTrans, deleteRows, driverConnect, infoDataSource, infoDataTypes, infoDriver, insertTable, login, logout, readTable,
rollbackTrans, sql, sqlError, and updateTable.
• The Methods of the Material Flow Objects.
To view all of the methods and attributes of the ODBC, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > beginTrans

beginTrans

Syntax: <Path>.beginTrans

The method beginTrans starts a transaction.

Return Value
The return value has the data type integer.

Example: ODBC.beginTrans;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > beginTrans

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 27 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > commitTrans

commitTrans

Syntax: <Path>.commitTrans

The method commitTrans terminates the transaction and applies your changes.

Example: ODBC.commitTrans;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > commitTrans

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > deleteRows

deleteRows

Syntax: <Path>.deleteRows(SQLTable:<string>)

The method deleteRows deletes all rows from a database table.

Parameter
The parameter SQLTable of data type string designates the name of the database table.

Return Value
The return value has the data type boolean.

Example: .ODBC.deleteRows("Name_of_Table");

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > deleteRows

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > driverConnect

driverConnect

Syntax: <Path>.driverConnect(ConnectString:<string>)

The method driverConnect establishes a connection to a data source.


The syntax of the connect string depends on the type of the data source. In our example the connect string is called once for the MS-Access data source
and once for the MS Excel data source.

Return Value
The return value has the data type string.

Example: -- SimTalk 2.0 notation


var tab: table
var path, file: string
var tempdir, str: string
path := "C:\\temp"
file := "test.mdb"
tempdir := "C:\temp"
-- example 1: reading a table from of an access database
str := "DRIVER=Microsoft Access Driver(*.mdb);DBQ="+path+"\\"+file
str := str+";DefaultDir="+tempdir+";DriverId=281;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"
ODBC_mdb.driverconnect(str)
ODBC_mdb.sql( tab, "select * from dataTable;")
-- example 2: read data from an excel sheet.
-- remember the 'datafield' has to be defined in the excel sheet
file := "test.xls"
str := "Driver=Microsoft Excel Driver (*.xls);FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB="
str := str + path+ "\\" + file
str := str + ";DBQ="+ path + "\\" + file + ";"

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 28 of 570

ODBC_XLS.DriverConnect( str )
ODBC_xls.sql( tab, "select * from datafield;" )

Example: -- SimTalk 1.0 notation


is
tab : table;
path, file : string;
tempdir, str : string;
do
path := "C:\\temp";
file := "test.mdb";
tempdir := "C:\temp";
-- example 1: reading a table from of an access database
str := "DRIVER=Microsoft Access Driver(*.mdb);DBQ="+path+"\\"+file;
str := str+";DefaultDir="+tempdir+";DriverId=281;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;";
ODBC_mdb.driverconnect( str );
ODBC_mdb.sql( tab, "select * from dataTable;");
-- example 2: read data from an excel sheet.
-- remember the 'datafield' has to be defined in the excel sheet
file := "test.xls";
str := "Driver=Microsoft Excel Driver (*.xls);FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=";
str := str + path+ "\\" + file;
str := str + ";DBQ="+ path + "\\" + file + ";";
ODBC_XLS.DriverConnect( str );
ODBC_xls.sql( tab, "select * from datafield;" );
end;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > driverConnect

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDataSource

infoDataSource

Syntax: <Path>.infoDataSource

The method infoDataSource returns the table Data Source.

Entry Description

DBMS name Name of the DBMS (database management system)

DBMS Version of the DBMS


version

Server name Name of the server belonging to the data source

Database Name of the current database. This can also be a folder, for example for dBase, or a file, for example for Access.
name

Qualifier Shows if a qualifier (database name) stands at the start or at the end of a table name identifier. Possible values are Qualifier at the start or
location Qualifier at the end.

Qualifier Shows the qualifier separator.


separator

Qualifier Qualifier name of the DBMS developer, for example DATABASE for Access or Workbook for Excel.
name

Qualifier Lists the instruction groups in which a qualifier can be specified. Possible values are DML_STATEMENTS (all data manipulation
usage statements), PROCEDURE_INVOC (procedure invocation statement), TABLE_DEF (all instructions for defining tables), INDEX_DEF (all
instructions for defining indexes), or PRIVILEGE_DEF (all instructions for defining privileges).

Return Value
The return value has the data type table.

Example: TableVariable := ODBC.infoDataSource;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDataSource

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 29 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDataTypes

infoDataTypes

Syntax: <Path>.infoDataTypes

The method infoDataTypes returns the table Data Types.


The table shows the data types which the selected ODBC data source supports

Return Value
The return value has the data type table.

Example: TableVariable := ODBC.infoDataTypes;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDataTypes

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDriver

infoDriver

Syntax: <Path>.infoDriver

The method infoDriver returns the table Driver.

Entry Description

Driver Name Name of the driver

Driver Version Version of the driver

Driver ODBC ODBC version which the driver supports


Version

ODBC Version ODBC version which the Driver Manager supports

API Conformance The API Conformance Levels define a fixed functionality which the driver can realize to meet a defined level. Possible values are
None, Level1, or Level2

SAG Conformance Shows if all functions, which are set by SAG (SQL Access Group), are supported by the driver. Possible values are SAG compliant
or Not SAG compliant.

SQL Conformance Shows the SQL grammar which the driver supports. Possible values are Minimum, Core, or Extended.

File Usage This row is of importance for Single-Tier-drivers only. It shows if the driver treats a file as a table or as a data base. Possible values
are Not supported, Table, or Qualifier.

Number Shows the maximum number of concurrently active connections. The value 0 stands for an unlimited number of connections.
Connections

Number Shows how many instructions can be active at the same time for this driver. The value 0 stands for an unlimited number of
Statements instructions.

Return Value
The return value has the data type table.

Example: TableVariable := ODBC.infoDriver;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > infoDriver

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > insertTable

insertTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 30 of 570

Syntax: <Path>.insertTable(SourceData:<any>, SQLTable:<string>)

The method insertTable inserts a Plant Simulation table into the database table.

Parameters
• The parameter SourceData of data type any designates the Plant Simulation table.
• The parameter SQLTable of data type string designates the database table.

Return Value
The return value has the data type boolean.

Example: ODBC.insertTable(TableFile,"Name_of_Table");

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > insertTable

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > login

login

Syntax: <Path>.login(Database:<string>, UserName:<string>, Password:<string>)

The method login establishes a connection to a database.

Parameters
• The parameter Database of data type string designates the database.
• The parameter UserName of data type string designates the user name.
• The parameter Password of data type string designates the password.

Return Value
The return value has the data type boolean (true if the application was successful). The password which was passed is not saved in the model.

Example: ODBC.login("database","billJ","bj65mc");

Related Topics
Login
logout

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > login

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > logout

logout

Syntax: <Path>.logout

The method logout terminates the data base connection.

Example: ODBC.logout;

Related Topics
Logout
login

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > logout

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 31 of 570

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > readTable

readTable

Syntax: <Path>.readTable(Result:<table>, SQLTable:<string>)

The method readTable reads the contents of a table.

Parameters
• The parameter Result of data type any designates the name of the table.
• The parameter SQLTable of data type string designates the name of the ODBC table.

Return Value
The return value has the data type integer.

Example: .ODBC.readTable(myTable,"select * from def");

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > readTable

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > rollbackTrans

rollbackTrans

Syntax: <Path>.rollbackTrans

The method rollbackTrans terminates the transaction without applying your changes.

Example: ODBC.rollbackTrans;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > rollbackTrans

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > sql

sql

Syntax: <Path>.sql(Result:<table>, SQLString:<string>);


<Path>.sql(Result:<table>, SQLString:<string> [,SQLParameter:<any>, ...])

The method sql controls the actual communication with the data source. You can invoke this method within SimTalk, the information flow language of Plant
Simulation. It sends SQL statements to an ODBC driver.

Example: .ODBC.sql("delete from xyz");

If an SQL command returns a result, the first parameter in the method call must define a table that is to receive the data. The format of this table (number of
columns, column index, data type of the column) depends on the result of the SELECT query and is generated automatically. The list editor of Plant
Simulation shows the list immediately. The data in the list is available for further use in the simulation model.

Example: .ODBC.sql(table,"select * from xyz");

To increase the flexibility of the calls program variables can be included in the SQL command. The representation of program variables in the SQL
statement are determined by conversion specifications which begin with the percent sign %.
A conversion specification has this format:

%[<flags>][<field format>]<conversion signs>

The items of the conversion specification can accept these values:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 32 of 570

<flags>:
-: left bound representation of the program variable
+: display of the sign also if the program variable is positive
<field format>: <field length> .<decimal digits>
<conversion signs>:
s: string
d: integer
u: positive integer
o: octal
x: hexadecimal
f: floating point

If you do not want Plant Simulation to interpret the percentage sign % as a control character, enter two percentage signs %%. Each conversion specification
is assigned to one parameter, which follows the SQL command. In this example, the data base table xyz is accessed and entries from the column name are
passed to the SQL command and are put in the Plant Simulation table file dataInput.

Return Value
The return value has the data type integer.

Example: -- SimTalk 2.0 notation


var uid : integer
var type : string
uid := 1
type := "U"
.ODBC.sql(dataInput, "SELECT name FROM xyz WHERE\
uid = %d AND type = '%s'", uid, type)

Example: -- SimTalk 1.0 notation


is
uid : integer;
type : string;
do
uid := 1;
type := "U";
.ODBC.sql(dataInput, "SELECT name FROM xyz WHERE\
uid = %d AND type = '%s'", uid, type);
end;

In this example, data from Plant Simulation is written into a data base.

Example: -- SimTalk 2.0 notation


var uid : integer
var type : string
uid := 5
t ype := "Z"
.ODBC.sql("UPDATE xyz SET type = '%s' WHERE\
uid = %d", type, uid)

Example: -- SimTalk 1.0 notation


is
uid : integer;
type : string;
do
uid := 5;
t ype := "Z";
.ODBC.sql("UPDATE xyz SET type = '%s' WHERE\
uid = %d", type, uid);
end;

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > sql

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > sqlError

sqlError

Syntax: <Path>.sqlError(byref SQLState:<string>, byref ErrorCode:<integer>, byref ErrorMessage:<string>)

The method sqlError returns the SQL state, the error code, and the error message of the most recent SQL command.

Parameters
• The parameter SQLState of data type string designates the SQL state of the most recent SQL command.
• The parameter ErrorCode of data type integer designates its error code.
• The parameter ErrorMessage of data type string designates the error message.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 33 of 570

Example: ODBC.sqlError("SQL state",2,"SQL error message: ");

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > sqlError

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > updateTable

updateTable

Syntax: <Path>.updateTable(SourceData:<table>, SQLTable:<string>, RowNumber:<integer>)

The method updateTable updates the database table with the values from the Plant Simulation table.

Parameters
• The parameter SourceData of data type table designates the Plant Simulation table.
• The parameter SQLTable of data type string designates the database table.
• The parameter RowNumber of data type integer designates the primary index used to identify which rows of the tables match.

Plant Simulation table Database table

Return Value
The return value has the data type boolean.

Example: -- the contents of row 3 of the Plant Simulation table replaces the existing
-- contents of row 3 of the database table

ODBC.updateTable(TableFile,"Name_of_Table",3);

Add-Ins Reference Help > Database Interfaces > ODBC > Methods of the ODBC Interface > updateTable

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface

Attributes of the ODBC Interface


Plant Simulation ODBC provides:
• The attributes ConvertingDataDriver, DataBase, ErrorStop, FormatTable, and Transaction.
• The Attributes of All Objects.
To view all of the methods and attributes of the ODBC, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 34 of 570

• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

.ODBC.Transaction := false

• To get the value of an attribute, you might, for example, type:

print .ODBC.Transaction
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > ConvertingDataDriver

ConvertingDataDriver

Syntax: <Path>.ConvertingDataDriver

The attribute ConvertingDataDriver sets if the driver (true) converts the data or if Plant Simulation does that (false).
You can only do this if you entered false for the attribute FormatTable.

Assignment Value
You can assign a value of data type boolean.

Example: MyODBC.ConvertingDataDriver := true;

Related Topics
Format Table
FormatTable

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > ConvertingDataDriver

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > DataBase

DataBase

Syntax: <Path>.DataBase

The attribute DataBase designates the name of an ODBC server within the computer network. SQL*Net determines the format. If you would like to work
with the default server, you do not have to enter anything. The default server usually is the local server.

Assignment Value
You can assign a value of data type string.

Example: ODBC.Database := "ODBC";

Related Topic
Database

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > DataBase

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > ErrorStop

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 35 of 570

ErrorStop

Syntax: <Path>.ErrorStop

The attribute ErrorStop sets if Plant Simulation opens the Debugger when an SQL error occurs. When Stop on Errors/ErrorStop is active, Plant Simulation
stops the execution of the method and shows the error in the Debugger. When Stop on Errors/ErrorStop is not active, Plant Simulation does not stop the
execution of the method. The method sql returns the number of the error as an integer value enabling you can correct the source code.

Assignment Value
You can assign a value of data type boolean.

Example: .ODBC.ErrorStop := false;


print .ODBC.errorStop;

Related Topic
Stop on errors

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > ErrorStop

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > FormatTable

FormatTable

Syntax: <Path>.FormatTable

The attribute FormatTable sets if Plant Simulation automatically formats the data table according to the requirements (true) or not (false).
When you enter false, you can use the attribute ConvertingDataDriver to set if the driver (true) converts the data or if Plant Simulation does that (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyODBC.FormatTable := true;

Related Topics
Format Table
ConvertingDataDriver

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > FormatTable

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > Transaction

Transaction

Syntax: <Path>.Transaction

The attribute Transaction sets how transactions in the SQL call are treated. If Transaction is set to true, the executed SQL commands will not be terminated
automatically as a transaction. In this case it is supposed that the SQL statement is part of a complex transaction. Indicate the termination of the transaction
by an additional SQL call. If Transaction is set to false, every SQL statement will be completed as a transaction.

Assignment Value
You can assign a value of data type boolean.

Example: .ODBC.Transaction := false;

Add-Ins Reference Help > Database Interfaces > ODBC > Attributes of the ODBC Interface > Transaction

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 36 of 570

Add-Ins Reference Help > Database Interfaces > Oracle11g

Oracle11g
The object Oracle11g establishes a connection with an external Oracle database. The object Oracle11g may establish a connection to any Oracle database
server in the computer network that your local computer can access. You can establish a maximum of six simultaneous connections to different database
servers. Duplicate the object Oracle11g for each connection in the Class Library.
Tecnomatix Plant Simulation 13.0 supports Oracle Netclients Version 11g to access Oracle databases. Oracle Netclient 11g can also access Oracle
databases of Version 10.x or older.

If you use the Oracle SQL*Net Netclient, it has to be installed on the computer on which you are running Plant Simulation. Within the Oracle-Administration
you have to configure the Netclient, so that you can access the database that contains the data you want to use.

Consult the documentation that came with your Oracle database, when it shows error messages.

To add Oracle to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

Related Topics

Dialog Window of the Oracle11g Interface Import Data from a Database

Methods of the Oracle11g Interface Import Data from an Oracle Database

Attributes of the Oracle11g Interface

Add-Ins Reference Help > Database Interfaces > Oracle11g

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface

Dialog Window of the Oracle11g Interface


Double-click the icon of the object Oracle11g, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Name Message

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 37 of 570

Label Login

Database Logout

User Name OK

Password Cancel

Stop on errors Apply

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Database

Database
Select or enter the name of an Oracle server into the text box Database that may be reached over a computer network. Use the format defined in
SQL*Net. If you would like to work with the default server, you do not have to enter anything. The default server usually is the local server.

Related Topic
DataBase

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Database

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > User Name

User Name
Enter your User name. The database has to know this name. Note that the database administrator has to register the user with the database.

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > User Name

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Password

Password
Enter your Password.

Save

Select this to save the Password in the model file in encrypted form.

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Password

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Stop on errors

Stop on errors
To open the Debugger, when an SQL error occurs, select Stop on errors. To not open it, clear the check box. When Stop on errors is selected, Plant
Simulation stops the execution of the method and shows the error in the Debugger. When Stop on errors is cleared, Plant Simulation does not stop the
execution of the method. The method sql returns the number of the error as an integer value enabling you to correct the source code.

Related Topic

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 38 of 570

ErrorStop

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Stop on errors

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Message

Message
Plant Simulation shows the message returned for the last interaction with the database.

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Message

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Login

Login
Click Login to log on to the database server.

Related Topic
login

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Login

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Logout

Logout
Click Logout to log out of the database server.

Related Topic
logout

Add-Ins Reference Help > Database Interfaces > Oracle11g > Dialog Window of the Oracle11g Interface > Logout

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface

Methods of the Oracle11g Interface


Plant Simulation Oracle provides:
• The methods deleteRows, insertTable, login, logout, readTable, sql, and updateTable.
• The Methods of All Objects.
To view all of the methods and attributes of the object Oracle11g, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 39 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > deleteRows

deleteRows

Syntax: <Path>.deleteRows(SQLTable:<string>)

The method deleteRows deletes all rows from a database table.

Parameter
The parameter SQLTable of data type string designates the name of the database table.

Return Value
The return value has the data type boolean.

Example: MyOracle.deleteRows("Name_of_Database_Table");

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > deleteRows

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > insertTable

insertTable

Syntax: <Path>.insertTable(SourceTable:<table>, SQLTable:<string>)

The method insertTable inserts the designated Plant Simulation table into a database table.

Parameters
• The parameter SourceTable of data type table designates the Plant Simulation table.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 40 of 570

• The parameter SQLTable of data type string designates the database table.

Return Value
The return value has the data type boolean.

Example: MyOracle.insertTable(MyTableFile,"Name_of_Database_Table");

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > insertTable

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > login

login

Syntax: <Path>.login(Database:<string>, UserName:<string>, Password:<string>)

The method login logs you into the database.

Parameters
• The parameter Database of data type string designates the database.
• The parameter UserName of data type string designates the user name.
• The parameter Password of data type string designates the password. The password does not appear in the dialog window.

Return Value
The return value has the data type boolean.

Example: MyOracle.login("Our Company Database","SYSTEM","manager");

Related Topics
Login
logout

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > login

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > logout

logout

Syntax: <Path>.logout

The method logout logs you out of the database.

Example: MyOracle.logout;

Related Topics
Logout
login

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > logout

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > readTable

readTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 41 of 570

Syntax: <Path>.readTable(Result:<table>, SQLTable:<string>)

The method readTable reads the contents of a Plant Simulation table.

Parameters
• The parameter Result of data type table designates the name of the Plant Simulation table.
• The parameter SQLTable of data type string designates the name of the Oracle table.

Return Value
The return value has the data type integer.

Example: MyOracle(.myTable,"select * from abc");

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > readTable

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > sql

sql

Syntax: <Path>.sql(Result:<table>, SQLString:<string>)


<Path>.sql(Result:<table>, SQLString:<string> [,SQLParameter:<any>, ...])

The communication with the database is realized with the method sql, passing the SQL statements to the database server. Plant Simulation Oracle supports
all SQL commands. The sql call is passed as a parameter of data type string.
The program returns the resulting error code, i.e., the contents of sqlca.sqlcode. An example would be -955 for a create call for an already existing table.
The error message in the dialog window is ORA-00955: name is already used by an existing object.
If an SQL command returns result lines, the first parameter of the method call has to be a table to receive the result. The format of the table, i.e., the number
of columns, names of columns, data types of columns, depend on the result of the database query and are created automatically. Data from this list is then
available for further use in the simulation model or may be viewed in the table editor on screen.
To increase the flexibility of the call, program variables may be added to the SQL command. The position of the program variable in the SQL command is
marked by conversion signs and has this format:

%[<flags>][<field format>]<conversion signs>


-: left bound representation of the program variable
+: sign displayed if program variable is positive
<field format>: <field length>.[<decimal digits>]
<conversion signs>:
s: string
d: integer
u: positive integer
o: octal
x: hexadecimal
f: floating point

If you do not want Plant Simulation to interpret the percentage sign % as a control character, enter two percentage signs %%. Each conversion specification
is assigned one of the parameters that follow the SQL command in the method call.

Return Value
The return value has the data type integer.

Example: -- SimTalk 2.0 notation


MyOracle("delete from xyz")
MyOracle(.table1,"select * from xyz")
var uid : integer
var type : string
uid := 1
type := "U"
MyOracle.sql("select name from xyz where uid = %d \
AND type = '%s'", uid, type)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 42 of 570

Example: -- SimTalk 1.0 notation


MyOracle("delete from xyz");
MyOracle(.table1,"select * from xyz");
is
uid : integer;
type : string;
do
uid := 1;
type := "U";
MyOracle.sql("select name from xyz where uid = %d \
AND type = '%s'", uid, type);
end;

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > sql

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > updateTable

updateTable

Syntax: <Path>.updateTable(SourceData:<table>, SQLTable:<string>, RowNumber:<integer>)

The method updateTable updates a database table with the values from a Plant Simulation table.

Parameters
• The parameter SourceData of data type table designates the Plant Simulation table.
• The parameter SQLTable of data type string designates the database table.
• The parameter RowNumber of data type integer designates the primary index used to identify, which rows of the tables match.

Plant Simulation table Database table

Return Value
The return value has the data type boolean.

Example: -- the contents of row 3 of the Plant Simulation table replaces the existing
-- contents of row 3 of the database table
MyOracle.updateTable(MyTableFile,"Name_of_Database_Table",3);

Add-Ins Reference Help > Database Interfaces > Oracle11g > Methods of the Oracle11g Interface > updateTable

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface

Attributes of the Oracle11g Interface


Plant Simulation Oracle provides:
• The attributes DataBase and ErrorStop.
• The Attributes of All Objects.
To view all of the methods and attributes of the object Oracle11g, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 43 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyOracle.ErrorStop := false

• To get the value of an attribute, you might, for example, type:

print print oracle.ErrorStop


posit := SingleProc.cont.XPos

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface > DataBase

DataBase

Syntax: <Path>.Database

The attribute Database designates the name of an Oracle server within the computer network. SQL*Net determines the format. If you would like to work
with the default server, you do not have to enter anything. The default server usually is the local server.

Assignment Value
You can assign a value of data type string.

Example: print.MyOracle.Database := "Oracle";

Related Topic
Database

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface > DataBase

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface > ErrorStop

ErrorStop

Syntax: <Path>.ErrorStop

The attribute Error Stop sets if Plant Simulation opens the Debugger when an SQL error occurs. When Stop on Errors/ErrorStop is active, Plant Simulation
stops the execution of the method and shows the error in the Debugger. When Stop on Errors/ErrorStop is not active, Plant Simulation does not stop the
execution of the method. The method sql returns the number of the error as an integer value enabling you can correct the source code.

Assignment Value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 44 of 570

You can assign a value of data type boolean.

Example: MyOracle.ErrorStop := false;


print MyOracle.ErrorStop;

Related Topic
Stop on errors

Add-Ins Reference Help > Database Interfaces > Oracle11g > Attributes of the Oracle11g Interface > ErrorStop

Add-Ins Reference Help > Database Interfaces > SQLite

SQLite
The object SQLite connects to an SQL database. SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional
SQL database engine. For more information, consult http://www.sqlite.org. According to this web site SQLite is the most widely deployed SQL database
engine in the world. The source code for SQLite is in the public domain.
This database engine implements most of the SQL92 standard, meaning that you can use every book about SQL92 as a reference. There is also extensive
documentation available on the web site of SQLite. From the web site you also can download a small program, called sqlite.exe, to access the database
without using Plant Simulation.
This SQLite database engine is embedded in Plant Simulation. You can access it with the object SQLite.

To add SQLite to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

Related Topics

Dialog Window of the SQLite Interface Import Data from a Database

Methods of the SQLite Interface Exchange Data with an SQL Database

Attributes of the SQLite Interface

Add-Ins Reference Help > Database Interfaces > SQLite

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 45 of 570

Dialog Window of the SQLite Interface


Double-click the icon of the object SQLite, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Tab Attributes Label

The Navigate Menu Inheritance

The View Menu OK

The Tools Menu Cancel

The Help Menu Apply

Name

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes

Tab Attributes
The tab Attributes provides the text box File Name and the button Delete File.

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes > File Name

File Name
Enter the file name of the database from which you want to import data. Or enter the name of the database to which you want to export data. Plant
Simulation creates the file in the folder, in which you stored the simulation model. You computer will only show the file once the simulation model executes
SQL commands.

If you do not enter a file name for the database, Plant Simulation creates it in memory. This is the same as if you had entered :memory:.
The default setting :memory: means that the database will be stored in main memory instead of in a file on the hard disk. This greatly improves
performance and access speed. Be aware that all data will be lost when you close the simulation model or if Plant Simulation crashes!
Click the button and select a file in the dialog Open.

SimTalk:
FileName

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes > File Name

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes > Delete File

Delete File

To delete the database file, whose name is contained in the text box File name from the hard disk drive click this.
This only deletes the actual database file, but leaves the file name in the text box.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 46 of 570

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > Tab Attributes > Delete File

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Navigate Menu

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Related Topic
updateDialog

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The View Menu

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Tools Menu

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Database Interfaces > SQLite > Dialog Window of the SQLite Interface > The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 47 of 570

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface

Methods of the SQLite Interface


Plant Simulation SQLite provides:
• The methods bindString, bindInteger, bindReal, close, exec, finalize, getColumnCount, getColumnInteger, getColumnString, isOpen, loadFromFile, open,
prepare, resetStatement, saveToFile, sql, step, storeStatement, and useStatement.
• The Methods of All Objects.
To view all of the methods and attributes of the object SQLite, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > bindString, bindInteger, bindReal

bindString, bindInteger, bindReal

Syntax: <Path>.bindString(ArgumentIndex:<integer>, StringToBind:<string>)


<Path>.bindInteger(ArgumentIndex:<integer>, IntegerToBind:<integer>)
<Path>.bindReal(ArgumentIndex:<integer>, RealToBind:<real>)

The methods bindInteger, bindReal, and bindString bind the second parameter to the parameter in the current prepared SQL statement which has the
number of the first parameter of data type integer.
The method does not have a return value.

Example: MySQLite.prepare("INSERT INTO MUTrace (MUName, MUType, StartTime) VALUES (?1, ?2, ?3)");
MySQLite.bindString(1, obj_to_str(@));
MySQLite.bindString(2, @.name);
MySQLite.bindReal(3, EventController.simTime);
MySQLite.step;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 48 of 570

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > bindString, bindInteger, bindReal

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > close

close

Syntax: <Path>.close

The method close closes the database connection.


The method does not have a return value.

Example: MySQLite.close;

Related Topic
open

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > close

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > exec

exec

Syntax: <Path>.exec(SQLString:<string>)

The method exec executes an SQL command.

Parameter
The parameter SQLString of data type string designates the command. For the SQL syntax you can consult any book about SQL92 or you can check the
web site of SQLite: http://www.sqlite.org.
The method does not have a return value.

Example: MySQLite.exec("CREATE TABLE MUTrace (MUName TEXT PRIMARY KEY, MUType TEXT, StartTime REAL, EndTime
REAL)");

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > exec

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > finalize

finalize

Syntax: <Path>.finalize

The method finalize deletes a prepared statement.


The method does not have a return value.

Example: MySQLite.finalize;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > finalize

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnCount

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 49 of 570

getColumnCount

Syntax: <Path>.getColumnCount

The method getColumnCount returns the number of columns of the data which is returned by the last executed SQL statement.

Example: print MySQLite.getColumnCount;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnCount

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnInteger

getColumnInteger

Syntax: <Path>.getColumnInteger(ColumnIndex:<integer>)

The method getColumnInteger returns the contents of the specified column as an integer number.

Parameter
The parameter ColumnIndex of data type integer designates the column number.

Return Value
The return value has the data type integer.

Example: print MySQLite.getColumnInteger(0);

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnInteger

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnReal

getColumnReal

Syntax: <Path>.getColumnReal(ColumnIndex:<integer>)

The method getColumnReal returns the contents of the specified column as a real number.

Parameter
The parameter ColumnIndex of data type integer designates the column number.

Return Value
The return value has the data type real.

Example: print MySQLite.getColumnReal(0);

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnReal

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnString

getColumnString

Syntax: <Path>.getColumnString(ColumnIndex:<integer>)

The method getColumnString returns the contents of the specified column as a string.

Parameter

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 50 of 570

The parameter ColumnIndex of data type integer designates the column number.

Return Value
The return value has the data type string.

Example: -- SimTalk 2.0 notation


MySQLite.prepare("SELECT * FROM MUTrace")
while MySQLite.step
print MySQLite.getColumnString(0), " ", MySQLite.getColumnString(1), " ",
MySQLite.getColumnReal(2), " ", MySQLite.getColumnReal(3)
end

Example: -- SimTalk 1.0 notation


is
do
MySQLite.prepare("SELECT * FROM MUTrace");
while MySQLite.step loop
print MySQLite.getColumnString(0), " ", MySQLite.getColumnString(1), " ",
MySQLite.getColumnReal(2), " ", MySQLite.getColumnReal(3);
end;
end;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > getColumnString

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > isOpen

isOpen

Syntax: <Path>.isOpen

The read-only attribute isOpen returns if the database into which data is to be written or is to be imported from is open (true) at the moment or not open
(false).

Example: print MySQLite.isOpen;

Related Topic
open

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > isOpen

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > loadFromFile

loadFromFile

Syntax: <Path>.loadFromFile(Filename:<string>

The method loadFromFile loads an SQLite database, stored in a file, into an in-memory database.

Parameter
The parameter Filename of data type string designates the SQLite database.

Example: MySQLite.loadFromFile("MySQLDatabaseFile");

Related Topic
saveToFile

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > loadFromFile

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 51 of 570

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > open

open

Syntax: <Path>.open

The method open opens the database. You have to open the database before any SQL command can be executed.
The method does not have a return value.
To speed up database performance, you can execute the following commands after opening the database:

SQLite.exec("PRAGMA journal_mode = MEMORY");


SQLite.exec("PRAGMA locking_mode = EXCLUSIVE");
SQLite.exec("PRAGMA synchronous = OFF");

For more information, consult http://www.sqlite.org.

Example: MySQLite.open;

Related Topic
close

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > open

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > prepare

prepare

Syntax: <Path>.prepare(SQLString:<string>)

The method prepare prepares an SQL command for execution.

Parameter
The parameter SQLString of data type string designates the SQL command. You can insert parameters into this statement which can be replaced with
values using the method bindString, bindInteger, bindReal. The parameters have to start with a ? followed by a number.
The method does not have a return value.

Example: MySQLite.prepare("INSERT INTO MUTrace (MUName, MUType, StartTime) VALUES (?1, ?2, ?3)");
MySQLite.bindString(1, obj_to_str(@));
MySQLite.bindString(2, @.name);
MySQLite.bindReal(3, EventController.simTime);
MySQLite.step;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > prepare

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > resetStatement

resetStatement

Syntax: <Path>.resetStatement

The method resetStatement resets a prepared statement to its initial state, ready to be re-executed. Any SQL statement variables which had values bound
to them retain their values.
The method does not have a return value.

Example: MySQLite.resetStatement;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > resetStatement

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 52 of 570

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > saveToFile

saveToFile

Syntax: <Path>.saveToFile(Filename:<string>

The method saveToFile saves an in-memory database into an SQLite database file.

Parameter
The parameter Filename of data type string designates the SQLite database.

Example: MySQLite.saveToFile("MySQLDatabase");

Related Topic
loadFromFile

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > saveToFile

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > sql

sql

Syntax: <Path>.sql(Result:<table>, SQLString:<string>)


<Path>.sql(Result:<table>, SQLString:<string> [,SQLParameter:<any>, ...])

The method sql executes the provided SQL statement.

Example: .SQLite.sql("delete from xyz");

Parameters
If an SQL command returns a result, the first parameter in the method call must define a table that is to receive the data. The format of this table (number of
columns, column index, data type of the column) depends on the result of the SELECT query and is generated automatically.

Example: .SQLite.sql("delete from xyz");

In the SQL statement text, literals may be replaced by a parameter that matches one of following templates:
• ?
• ?NNN
• :VVV
• @VVV
• $VVV
You can use one of the functions bindString, bindInteger, bindReal to bind a value to this parameter.
In the templates above, NNN represents an integer literal, and VVV represents an alphanumeric identifier.
The leftmost SQL parameter has an index of 1. When the same named SQL parameter is used more than once, second and subsequent occurrences have
the same index as the first occurrence. The index for "?NNN" parameters is the value of NNN.

Example: -- SimTalk 2.0 notation


var uid: integer
var type: string
uid := 1
type := "U"
.SQLite.sql(dataInput, "SELECT name FROM xyz WHERE\
uid = ?1 AND type = ?2", uid, type)

Example: -- SimTalk 1.0 notation


is
uid : integer;
type : string;
do
uid := 1;
type := "U";
.SQLite.sql(dataInput, "SELECT name FROM xyz WHERE\

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 53 of 570

uid = ?1 AND type = ?2", uid, type);


end;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > sql

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > step

step

Syntax: <Path>.step

The method step executes the prepared statement.

Return Value
The return value has the data type boolean.
• True means that there are additional data sets which can be retrieved by further calls of the method step.
• True means that no further data is available.

Example: MySQLite.prepare("INSERT INTO MUTrace (MUName, MUType, StartTime) VALUES (?1, ?2, ?3)");
MySQLite.bindString(1, obj_to_str(@));
MySQLite.bindString(2, @.name);
MySQLite.bindReal(3, EventController.simTime);
MySQLite.step;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > step

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > storeStatement

storeStatement

Syntax: <Path>.storeStatement

The method storeStatement saves the current SQL expression, which has been prepared with the method prepare, for later re-use.

Return Value
The return value has the data type integer.
You can use the return value in the method useStatement to activate the saved SQL expression.

Example: SQLite.prepare("INSERT INTO BETrace (BEName, BEType, StartTime) VALUES (?1, ?2, ?3)");
SQLite.storeStatement();

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > storeStatement

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > useStatement

useStatement

Syntax: <Path>.useStatement(StatementNumber:<integer>)

The method useStatement activates the SQL expression, which you saved with the method storeStatement.

Parameter
The parameter StatementNumber of data type integer designates the number of the SQL expression.

Example: SQLite.useStatement(1);

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 54 of 570

SQLite.bindString(1, obj_to_str(@));
SQLite.bindString(2, @.name);
SQLite.bindReal(3, EventController.simTime);
SQLite.step;

Add-Ins Reference Help > Database Interfaces > SQLite > Methods of the SQLite Interface > useStatement

Add-Ins Reference Help > Database Interfaces > SQLite > Attributes of the SQLite Interface

Attributes of the SQLite Interface


Plant Simulation SQLite provides:
• The attribute FileName.
• The Attributes of All Objects.
To view all of the methods and attributes of the object SQLite, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MySQLite.FileName := "C:\users\johnE\myData.txt"

• To get the value of an attribute, you might, for example, type:

print print oracle.ErrorStop


posit := SingleProc.cont.XPos

Add-Ins Reference Help > Database Interfaces > SQLite > Attributes of the SQLite Interface

Add-Ins Reference Help > Database Interfaces > SQLite > Attributes of the SQLite Interface > FileName

FileName

Syntax: <Path>.FileName

The attribute FileName sets the file name of the database from which you want to import data. You can also enter the filename :memory:. It means that the
database is to be stored in main memory instead of in a file on the hard disk. This greatly improves performance and access speed. Be aware that all data
will be lost when you close the simulation model or if Plant Simulation crashes!

Assignment Value
You can assign a value of data type string.

Example: MySQLite.FileName := ":memory:";

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 55 of 570

Related Topic
File Name

Add-Ins Reference Help > Database Interfaces > SQLite > Attributes of the SQLite Interface > FileName

Add-Ins Reference Help > GanttChart

GanttChart

The GanttChart is a tool to visualize and modify process plans, such as operations within a production process. You can think of Gantt as the computerized
schedule board of the targeted system.
The Tecnomatix Plant Simulation object GanttChart is the interface between Plant Simulation proper and the add-in product Gantt. You can use Gantt to
visualize and to manually modify data supplied by the simulation run in Plant Simulation. You can then use the modified data as input data for the next
simulation run.
To add the GanttChart to the Class Library, click Manage Class Library > Basic Objects > UserInterface on the Home ribbon tab.

We also provide a GanttWizard. To add it to your simulation model, click Manage Class Library > Libraries > Wizard Gantt Diagram on the Home
ribbon tab.

Gantt is not part of your program package. You have to purchase it separately.

If you would like to work with two Gantt charts at the same time, Plant Simulation opens a second Gantt program.

The GanttChart and the GanttWizard do not use the standard Siemens PLM theme, but your Windows theme.

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topics
The Object GanttChart
The Application GanttChart

Add-Ins Reference Help > GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 56 of 570

The Object GanttChart

You can show a Gantt chart within Plant Simulation with the object GanttChart.
To add the GanttChart to the Class Library, click Manage Class Library > Basic Objects > UserInterface on the Home ribbon tab.

Related Topics

Display the Times for Picking-up and for Depositing Parts Attributes of the GanttChart

Dialog Window of the GanttChart Display Window of the GanttChart

Methods of the GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart

Dialog Window of the GanttChart


Double-click the icon of the GanttChart, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab User Interface in the Toolbox.

Related Topics

Show Chart Inheritance

Tab Data Name

Tab User-defined Attributes Label

The Navigate Menu OK

The View Menu Cancel

The Tools Menu Apply

The Help Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Show Chart

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 57 of 570

Show Chart
To start Gantt and to show the data, which the GanttChart collected in the display window, click this.

SimTalk:
Active

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Show Chart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data

Tab Data
Gantt imports the planning data and the settings for displaying them from table files:
• To open the table file containing the settings for displaying planning data, click Options. SimTalk: SettingsTable.
• To open the table file containing the planning data proper, click Data. SimTalk: DataTable.
• To start display data as a Gantt chart, select the check box Show Chart and click OK or Apply.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data > Options

Options
Gantt imports the settings for displaying the data it shows in the Gantt window from the table Options, when you started Gantt from the Plant Simulation
object GanttChart. Compare Importing the Options Table as a Text File.
Before you can enter data, click the toggle button Inheritance, so that it looks like this .

The example above defines the different layers:

Setting Parameter 1 Parameter 2 Parameter 3 Parameter 4 Parameter 5

$LAYER Layer number Color Pattern Height Offset

integer number between integer number between integer number between integer number between integer number between -500
1 and 255 1 and 255 1 and 7 0 and 500 percent and +500

A number of Keywords for Displaying the Gantt Bars define how Gantt shows the Gantt chart either as a whole or how it displays the individual bars.
The Options table has eight columns that are formatted correctly by default. A row in the table defines the display options for displaying a Gantt bar.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 58 of 570

The first column contains the setting, the following columns the associated parameters.

Related Topics
Display the Times for Picking-up and for Depositing Parts
Context Menu of Embedded Lists
SettingsTable

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data > Options

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data > Data

Data
Gantt imports the data it shows in the Gantt window from the table Data, when you started Gantt from the Plant Simulation object GanttChart. Compare
Importing the Data Table as a Text File. The table Data contains the plan data and the table Options contains the settings of the Gantt chart.

Before you can enter data, click the toggle button Inheritance, so that it looks like this .
The Data table has eight columns that are formatted correctly by default. A row in the table represents the date Gantt displays. The first column
contains the key, the following columns the associated parameters.

Related Topics
Display the Times for Picking-up and for Depositing Parts
Context Menu of Embedded Lists
DataTable

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab Data > Data

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab User-defined Attributes

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 59 of 570

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > Tab User-defined Attributes

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Navigate Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Related Topic
update

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The View Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 60 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Tools Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > GanttChart > The Object GanttChart > Dialog Window of the GanttChart > The Help Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart

Methods of the GanttChart


The object GanttChart provides:
• The methods copyBitmapToClipboard and update.
• The Methods of All Objects.
To view all of the methods and attributes of the object GanttChart, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart > copyBitmapToClipboard

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 61 of 570

copyBitmapToClipboard

Syntax: <Path>.copyBitmapToClipboard

The method copyBitmapToClipboard copies the contents of the GanttChart window designated by <Path> to the clipboard as a bitmap.
This only works if the display window of the GanttChart is open and when the data is completely shown.

Example: MyGanttChart.copyBitmapToClipboard;

Related Topic
Copy

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart > copyBitmapToClipboard

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart > update

update

Syntax: <Path>.update

The method update refreshes the displayed GanttChart window designated by <Path> with the current values.

Return Value
The return value has the data type boolean.

Example: MyGanttChart.update;

Add-Ins Reference Help > GanttChart > The Object GanttChart > Methods of the GanttChart > update

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart

Attributes of the GanttChart


The object GanttChart provides:
• The attributes Active, DataTable, and SettingsTable.
• The Attributes of All Objects.
To view all of the methods and attributes of the object GanttChart, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 62 of 570

• To set the value of an attribute, you might, for example, type:

GanttChart.Active := true

• To get the value of an attribute, you might, for example, type:

print MyGanttChart.DataTable
posit := SingleProc.cont.XPos

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > Active

Active

Syntax: <Path>.Active

The attribute Active activates (true) or deactivates (false) the display of the GanttChart.

Assignment Value
You can assign a value of data type boolean.

Example: MyGanttChart.Active := true;

Related Topic
Show Chart

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > Active

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > DataTable

DataTable

Syntax: <Path>.DataTable

The attribute DataTable sets the table containing data, which the GanttChart displays.

Assignment Value
You can assign a value of data type list.

Example: MyGanttChart.DataTable := myDataTable.copy;

Example: myDataTable.insertList(1,1,MyGanttChart.myDataTable);

Related Topic
Data table

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > DataTable

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > SettingsTable

SettingsTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 63 of 570

Syntax: <Path>.SettingsTable

The attribute SettingsTable sets the table containing the settings, with which the GanttChart is displayed.

Assignment Value
You can assign a value of data type list.

Example: MyGanttChart.SettingsTable := mySettingsTable.copy;

Example: mySettingsTable.insertList(1,1,MyGanttChart.mySettingsTable);

Related Topic
Options table

Add-Ins Reference Help > GanttChart > The Object GanttChart > Attributes of the GanttChart > SettingsTable

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart

Display Window of the GanttChart


Gantt can display data in different ways in the chart window, where you may also manipulate it.
The chart window shows the
• Legend
on the left hand side. It shows the description of the chart rows, a consecutive number and the name of the resource or order, according to the display
form you selected.
• Bar Chart
on the right hand side. It shows the Gantt bars. When you click a single bar, Gantt shows the information the bar represents. Use the scrollbars to select
the displayed area of the Gantt chart.
• Time Scale
located above the bar chart. When you select a different zoom factor, under Display > Zoom In/Zoom Out, Gantt also adjusts the scaling factor.

To zoom in an area of the Gantt chart, you can also drag a marquee over that area of the time scale.

You can change the display settings in this window by selecting View > Settings.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 64 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Manipulating Gantt Bars with the Mouse

Manipulating Gantt Bars with the Mouse


You can also manipulate the Gantt bars with the mouse. Click the left or the right mouse button and press the accelerator to execute the designated actions
in resource and order view:

To do this Press this mouse button and this Accelerator

Move the Gantt bar horizontally left, hold down and drag —

Make the Gantt bar change the row left, hold down and drag Ctrl+Shift

Select Gantt bars/groups (for grouping) left, click Shift

Display an order right, click —

Select an order (for grouping) right, click Ctrl+Shift

Change the length (duration) of a Gantt bar left, click the right border of Gantt bar Ctrl

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Manipulating Gantt Bars with the Mouse

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Changing a Gantt Bar

Changing a Gantt Bar


• To move a Gantt bar on the time scale, select it with the left mouse button and drag it to the new position.
• To change the length of a Gantt bar, select the right border with the left mouse button while holding the Ctrl key down, and drag the border to the new
position.
• To open the window Item, double-click the Gantt bar. Modify data here and change the assignment of the layers.
• To move a Gantt bar in resource view to another resource, click it with the left mouse button and drag it while holding the Shift key down. This allows you
to move a bar within rows and columns!

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Changing a Gantt Bar

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Showing Related Gantt Bars

Showing Related Gantt Bars


To invert all related bars of one resource/order, click the Gantt bar with the right mouse button.
• When you select resource view, Gantt inverts all bars related to the same order.
• When you select order view, Gantt inverts all Gantt bars related to the same resource.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Showing Related Gantt Bars

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item

Item
To display all pertinent data about a single Gantt bar and to open the dialog Item, double-click the Gantt bar. You can change some of the data in the dialog,
while you can only view others.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 65 of 570

Resource and Order No. show the identifiers of the resource and the order as the first column of the display window displays them. To change them,
open the data table (Data > Data) and enter a different identifier into the column Resource or Order.

Related Topics

Resource End

Order number Duration

Part Lot size

Operation Layer

Start

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Resource

Resource
The field Resource shows the identifier of the resource the first column of the display window displays them.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Resource

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Order number

Order number
The field Order No. show the identifier of the order as the first column of the display window displays them.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Order number

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Part

Part
The field Part shows the identifier of the part.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Part

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 66 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Operation

Operation
Enter the new operation name of the bar into the text box Operation.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Operation

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Start

Start
Modify the start time either by:
• Moving the Gantt bar, thus keeping the duration constant.
• Changing the length of the Gantt bar, thus prolonging the duration.
• When you select the radio button End, Gantt computes the Duration and the Lot size using the start time and the end time.
• When you select the radio button Duration or Lot size, Gantt computes the End time of the bar from the start time.
The Lot size is only active, when you specified a value greater than 0.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Start

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > End

End
Select the radio button End and then change the end time of the Gantt bar. Gantt automatically computes the Duration and the Lot size of the bar from the
Start time and the End time.
Click OK or Apply to display the new settings and recalculate the remaining two values.

The Lot size is only active, when you specified a value greater than 0.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > End

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Duration

Duration
Select the radio button Duration and then change the duration of the Gantt bar in Days and Hours. Gantt computes the lot size from the duration. This does
not change the ratio between lot size and duration.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 67 of 570

The Lot size is only active, when you specified a value greater than 0.

Then, Gantt computes the End time of the bar from the start time.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Duration

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Lot size

Lot size
Enter the lot size. First, Gantt computes the duration from the lot size. This does not change the ratio between lot size and duration.

The Lot size is only active, when you specified a value greater than 0.

Then, Gantt computes the End time of the bar from the start time and the duration.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Lot size

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Layer

Layer
Select the layer that is associated with a Gantt bar from the drop-down list Layer.

Related Topic
Layers

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Item > Layer

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Defining the Availability of a Resource

Defining the Availability of a Resource


You can assign an interval to a resource, when it will not be available for fulfill orders. Gantt differentiates between global non-work time intervals, which
apply to all resources, and local non-work time intervals. It shows global non-work time intervals as black bars above the time scale and as vertical gray bars
in the Gantt window. You cannot change them in the Gantt chart window.
To access the settings for a local non-work time, double-click a black bar. You can change the Start time and the Duration of a local non-work time interval.
When you change the start time and click OK or Apply, Gantt moves the non-work interval without changing the duration. Note that Gantt only sets the
value, whose radio button you selected and recalculates the other value anew.
To modify the settings for the local non-work times, you can also drag the Gantt bar in the chart window.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Defining the Availability of a Resource

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 68 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Connections

Connections
Gantt bars belonging together, for example for the same order, may be connected. Note that you cannot manipulate the connections in the Gantt window,
but only via the Data table in Plant Simulation or in the file the Gantt chart is based on, using the keyword $LINK.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Connections

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu

File Menu
The File menu provides these menu commands:

Open Print

Close Print Preview

Copy Print Setup

Export Recent Files

Update Exit

Save As

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Open

Open
The menu command Open opens an existing Gantt chart file.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Open

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Close

Close
The menu command Close closes the Gantt chart window.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Close

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Copy

Copy
The menu command Copy copies the entire chart to the clipboard. From here you can paste it into another application.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 69 of 570

The zoom factor (Zoom In, Zoom Out) you select in the chart window controls the size of the copied Gantt chart.

Related Topic
copyBitmapToClipboard

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Copy

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Export

Export
The menu command Export exports the Gantt chart as a graphics file to a location of your choice.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Export

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Update

Update
The menu command Update writes the contents of the Gantt chart, including all of its settings, back to the table files Options and Data of the object
GanttChart in Plant Simulation.

This menu command is only available when you started Gantt from Plant Simulation!

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Update

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Save As

Save As
The menu command Save As saves the data contained in the Gantt chart as a Gantt file to a location of your choice.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Save As

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print

Print
The menu command Print opens the Page Preview window, displaying the Gantt chart as it will look when you print it. You can select settings for the Page
Setup and for the Printer Setup and print it by clicking Print. You can also change to the Previous and Next preview and Close the preview window.

The zoom factor (Zoom In, Zoom Out) you select in the chart window controls the size of the copied Gantt chart.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 70 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print Preview

Print Preview
The menu command Print Preview opens the Page Preview window, displaying the Gantt chart as it will look when you print it.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print Preview

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print Setup

Print Setup
The menu command Print Setup opens the dialog Print Setup. Select a printer and settings for printing here.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Print Setup

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Recent Files

Recent Files
Gantt displays the four files you recently opened.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Recent Files

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Exit

Exit
The menu command Exit terminates Gantt.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > File Menu > Exit

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu

Edit Menu
The Edit menu provides these menu commands:

Cut Go To Line

Copy Go To End

Paste Insert Resource

Delete Insert Order

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 71 of 570

Select All Insert Item

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Cut

Cut
The menu command Cut cuts the selected Gantt bar to the Clipboard.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Cut

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Copy

Copy
The menu command Copy copies the selected Gantt bar to the Clipboard. Use the menu command Edit > Paste to insert the Gantt bar you copied to the
Clipboard to the same or to another Gantt chart.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Copy

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Paste

Paste
The menu command Paste pastes Gantt bars that you cut or copied to the Clipboard to the active Gantt chart.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Paste

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Delete

Delete
The menu command Delete deletes the selected Gantt bar.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Delete

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Select All

Select All
The menu command Select All selects all Gantt bars of the Gantt chart.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Select All

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 72 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Go To Line

Go To Line
The menu command Go To Line jumps to the line whose number you type into the dialog. Gantt only opens the dialog when your Gantt chart has a great
number of lines or when you dragged the Gantt window less than the number of lines it can display.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Go To Line

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Go To End

Go To End
The menu command Go To End jumps to the last line of the Gantt chart.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Go To End

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Resource

Insert Resource
The menu command Insert Resource adds a new resource. Enter the name of the resource into the dialog that opens.

You cannot change the name of that resource in Gantt at a later point in time!

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Resource

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Order

Insert Order
The menu command Insert Order adds a new order. Enter the name of the order into the dialog that opens.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Order

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Item

Insert Item
The menu command Insert Item adds a new item. Double-click the new item in the Gantt window, enter a name and select settings in the dialog Item.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Edit Menu > Insert Item

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 73 of 570

Project Menu
The Project menu provides these menu commands:
Settings
Plausibility Check

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings

Settings
The menu command Settings opens the dialog Project. It provides the tabs: Project Period, Plausibility, and Comment.

Select settings for displaying the Gantt chart under Display > Settings.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Project Period

Project Period
• Enter the date in which the project starts into the left text box and the time at which it starts into the right text box next to Start.
• Enter the date in which the project starts into the left text box and the time at which it ends into the right text box next to End.
To apply the new settings and display them in the time scale of the Gantt chart, click the Apply or OK buttons.
• Gantt then shows the Duration of the project below the text boxes.

Related Topics
$ENDDATE,
$STARTDATE

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Project Period

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Plausibility

Plausibility
To have Gantt perform a Plausibility Check:
• For overlapping resources, i.e., if two or more orders occupy one resource at the same time, select the check box Resources.
• For overlapping orders, i.e., if an order occupies more than one resource at the same time, select the check box Orders.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 74 of 570

• Each time you modify a Gantt bar, select the check box Automatic check. When you do not select it, Gantt only checks the plausibility, when you select
the menu command Plausibility Check.
When you started Gantt from Plant Simulation with the setting $PLAUSIBILITY_METHOD active and you also selected the check box Automatic check,
Gantt writes the Gantt chart, data and settings, back to the corresponding GanttChart object. Plant Simulation may then run a detailed plausibility check
executing a Plausibility method.

Related Topics
$PLAUSIBILITY_AUTO,
$PLAUSBILITY_METHOD,
$PLAUSIBILITY_ORD,
$PLAUSIBILITY_RES

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Plausibility

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Comment

Comment
You can enter any comment into the text box. Gantt shows this comment:
• On a printed copy of the Gantt chart
• On a copy of the chart you cut or copy to the clipboard.

Gantt does not display the comment in the display window of the Gantt chart itself!

Related Topic
$PROJECT_COMMENT

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Settings > Comment

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Plausibility Check

Plausibility Check
The menu command Plausibility Check runs a plausibility check on the Gantt bars and selects bars of resources/orders that overlap in the display window.

Related Topic
$PLAUSBILITY_METHOD

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Project Menu > Plausibility Check

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 75 of 570

View Menu
The View menu provides these menu commands:

Toolbar Zoom Out

Status Bar View All

Settings Resources

Layers Orders

Zoom In

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Toolbar

Toolbar

The menu command Toolbar hides or shows the toolbar .

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Toolbar

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Status Bar

Status Bar
The menu command Status Bar hides or shows the status bar.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Status Bar

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings

Settings
The menu command Settings opens the dialog Display Settings. It provides the tabs Diagram, Grid, and Time Mark.

Related Topic
Keywords for Displaying the Gantt Bars

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram

Diagram
You can set the Table width, and the Font size for the Legend of the Gantt chart and how Gantt shows the Text in bar on the tab Diagram.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 76 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Table width

Table width
• Enter the width (an integer between 0 and 10,000) of the column titled No. into the text box Numbering.
• Enter the width (an integer between 0 and 10,000) of the column titled Resource/Order into the text box Naming.

Related Topic
$TABLE_NAME_WIDTH,
$TABLE_NUM_WIDTH,

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Table width

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Font size

Font size
• Enter the font size (an integer between 0 and 50) of the columns No. and Resource/Order into the text box Table section.
• Enter the font size (an integer between 0 and 50) for the text on the bars into the text box Bars.

Gantt greeks text below 6 points.

Related Topic
$FONT_SIZE_BAR,
$FONT_SIZE_TABLE

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Font size

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Text in bar

Text in bar
• Select the check box Fit to size of bar to fit the label of the bar to the size of the bar.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 77 of 570

• Clear the check box to display the entire label of the bar in the Gantt chart.

Related Topic
$FIT_TEXT_INTO_BAR

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Diagram > Text in bar

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid

Grid
Select a setting for the vertical Grid of the Gantt chart and what it does Align to on the tab Grid.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid > Grid

Grid
Select one of the radio button to designate the unit of the vertical grid of the Gantt chart: Minutes, Hours, Days, Weeks, Months or Automatic. When you
select Automatic, Gantt automatically adjusts the grid to the zoom factor you selected under Zoom In, Zoom Out.

Related Topic
$GRID

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid > Grid

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid > Align to

Align to
Select what the starting point in time of the bars when you move them manually relates to: Seconds, Minutes, or Hours, Days. The starting point always is
an integer number of the selected unit. When, for example, you select Hours as the unit, all bars you manually move in the Gantt window will start at the full
hour.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 78 of 570

Gantt will not use the setting you selected for Align to, when you modify the starting point in time in the operation window of the Gantt bar.

Related Topic
$ALIGNMENT

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Grid > Align to

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Time Mark

Time Mark
Select how Gantt shows the time mark, i.e., a vertical line in the chart, helping you to get your bearings in the Gantt window on the tab Time Mark.
• To make the line move along according to the current system time, select the radio button Realtime.
• To insert a fixed line into the Gantt window, select the radio button Point in time, and enter the date into the left text box and the time into the right text
box.

Related Topic
$TIME_MARK

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Settings > Time Mark

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers

Layers
The menu command Layers opens the dialog Layer. Gantt assigns a layer to each and every Gantt bar. The Layer defines the looks of the Gantt bar, its
Color, Pattern, Height, and Offset within one row of the display window. To visualize connections in the chart, associate a Gantt bar to a certain layer.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Layer

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 79 of 570

Layer
Select the Gantt bar you want to modify and then the number of the associated Layer from the drop-down list. Gantt supports 255 layers.

Related Topic
$LAYER

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Layer

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Color

Color
Select a Color for the selected layer from the drop-down list. The GanttChart provides 16 predefined colors. You can define additional colors.

Related Topic
$COLOR

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Color

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Pattern

Pattern
Select a Pattern for the selected layer from the drop-down list.

Related Topic
$PATTERN

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 80 of 570

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Pattern

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Height

Height
To change the Height of the selected layer, enter a value between 0 and 500 into the text box.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Height

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Offset

Offset
To change the vertical Offset of the selected layer, enter a value between -500 and +500 into the text box.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Layers > Offset

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Zoom In

Zoom In
The menu command Zoom In > enlarges the display size by predefined factors of 1.5, 2, 5 and 10.

To zoom in an area of the Gantt chart, you can also drag a marquee over that area of the time scale.

Related Topic
$ZOOM

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Zoom In

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Zoom Out

Zoom Out
The menu command Zoom Out > reduces the display size by predefined factors of 1.5, 2, 5 and 10.

Related Topic
$ZOOM

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Zoom Out

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > View All

View All

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 81 of 570

The menu command View All adjusts the zoom factor, so that the entire Gantt chart fits the display area visible on screen.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > View All

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Resources

Resources
The menu command Resources shows the resources occupied by the different orders in the Gantt bar, depicting during which time a resource is occupied
by an order. Gantt shows the resources on the vertical axis and the orders on the horizontal axis.

Planning items of a joint order or a joint resource may overlap. This may have a negative effect on the clarity of the Gantt chart.

Related Topic
$PATTERN

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Resources

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Orders

Orders
The menu command Orders shows the orders that utilize the resources, depicting for example, the resources and their sequence and which position a
specific order occupies in a row. Gantt shows the orders on the vertical axis and the resources on the horizontal axis.

Planning items of a joint order or a joint resource may overlap. This may have a negative effect on the clarity of the Gantt chart.

Related Topic
$ORDER

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > View Menu > Orders

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu

Structure Menu
The Structure menu provides these menu commands:
Group
Ungroup
Ungroup All
Group Automatically

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Group

Group
The menu command Group groups two or more Gantt bars.
• To select the individual bars, hold the Shift key down, and click each of them with the left mouse button.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 82 of 570

• To select all Gantt bars that belong to the same order/resource with a single mouse click, hold the Ctrl and Shift keys down, and click with the right
mouse button on a bar.
• Move the selected group of Gantt bars in the Gantt chart as a single unit, instead as each one individually.
• You can also group grouped bars with other Gantt bars or groups.

You can group and ungroup the individual Gantt bars step by step. You can move a group of Gantt bars only as a whole.

Related Topic
$AUTOGROUP

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Group

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Ungroup

Ungroup
The menu command Ungroup ungroups a grouped block of Gantt bars.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Ungroup

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Ungroup All

Ungroup All
The menu command Ungroup All ungroups all groups in the Gantt chart.

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Ungroup All

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Group Automatically

Group Automatically
The menu command Group Automatically groups all Gantt bars located on a resource within an interval of another Gantt bar located on higher level.

Related Topic
$AUTOGROUP

Add-Ins Reference Help > GanttChart > The Object GanttChart > Display Window of the GanttChart > Structure Menu > Group Automatically

Add-Ins Reference Help > GanttChart > The Application GanttChart

The Application GanttChart

When you start Gantt as a standalone application, without a connection to Plant Simulation, it opens the Gantt window.
• To open a Gantt chart, select the menu command Open on the File menu. Or type <path to Plant Simulation>\Gantt.exe -f
C:\Temp\GanttData.gnt into a Prompt window.
Select the Gantt file you want to open in the dialog, and click OK. In addition Gantt loads any existing file with the same name with the extension.def that
contains information on how to display the data. Compare Importing the Options Table as a Text File.
• To exit the application Gantt, select the menu command Exit on the File menu. This saves and closes all open Gantt charts.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 83 of 570

Related Topics

Importing the Data Table as a Text File Project Menu

Importing the Options Table as a Text File View Menu

File Menu Structure Menu

Edit Menu

Add-Ins Reference Help > GanttChart > The Application GanttChart

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File

Importing the Data Table as a Text File


Gantt imports the data it shows in the Gantt window from a data input file, when you start Gantt as a standalone application. Compare Data.
The data table has to be an ASCII file. Each row of text in the ASCII-file defines a Gantt bar. Separate data in a row with a tab-stop. The text file may not
contain a user-defined index!
A plan data table might look like this:

A_saw product3_2_1 2006/11/22 02:00:00 2006/11/22 03:50:00 SAW-GER 2 2 0

A_kit product1_3_1 2006/11/22 03:00:00 2006/11/22 04:23:02 UP 3 3 0

A_ kit product2_4_1 2006/11/22 04:23:02 2006/11/22 04:28:02 UP 4 4 0

A_ kit 2006/11/22 07:00:00 2006/11/22 08:00:00 0 0

A_saw product3_2_2 2006/11/22 03:50:00 2006/11/22 04:40:00 SAW-GER 2 5 0

A_saw product3_2_3 2006/11/22 04:40:00 2006/11/22 05:30:00 SAW-GER 2 6 0

Related Topics
Data
Options
Defining a Gantt Bar

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar

Defining a Gantt Bar


A Gantt bar is defined by these parameters:

Resource text (string)

Order text (string)

Start time date_time (dateTime)

End time date_time (dateTime)

Operation text (string)

Part text (string)

Number of the layer integer number (integer)

Lot size floating point number (real)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 84 of 570

Related Topics

Resource/Order Layer

Start time/End time Lot size

Part/Operation

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Resource/Order

Resource/Order
The data Resource and Order assign the item to a common resource and a common order, which is unique in the Gantt chart.

Resource SAW_PLANT 10

ANL_12_34

Order Order No 1247

1237

12-spec

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Resource/Order

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Start time/End time

Start time/End time


The Start time and End time consist of a date and a time, separated by a space. You can enter the date format as day-month-year (ddmmyyyy) or year-
month-day (yyyymmdd).
• 10.03.2006 10:15:30 stands for March 10, 2006, 10 a.m., 15 minutes, 30 seconds.
• 2006/03/22 06:00:30 stands for March 22, 2006, 6 a.m., 0 minutes, 30 seconds.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Start time/End time

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Part/Operation

Part/Operation
The items Part and Operation do not affect the structure of the Gantt chart proper, they allow you to add a comment to the bar.
• You might assign the comment shaft to the bar Part.
• You might assign the comment welding 12 to the bar Operation.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Part/Operation

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Layer

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 85 of 570

Layer
The Layer assigns a graphic display to a bar. You can enter an integer between 1 and 255.
Layer 0 is reserved for non-available time intervals. When you select layer 0, you only have to enter the Resource, the Start time and the End time
into the file.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Layer

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Lot size

Lot size
You can, but you do not have to, also assign a Lot size. You can enter any positive real number.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Data Table as a Text File > Defining a Gantt Bar > Lot size

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File

Importing the Options Table as a Text File


Gantt imports the settings for displaying the data in the Gantt window from a settings table, when you start Gantt as a standalone application. This table has
the same name as the plan data file but with the extension .def. Compare Options.
Each row in the table contains a setting. The first column contains the keyword of the setting you are defining. All keywords begin with the prefix $,
followed by the parameters, separated by a tab stop. The number of parameters depends on the keyword and the setting it describes. The text file may
not contain a user-defined index!

An Options table might look like this:

$LAYER 1 1 1 100 0

$LAYER 2 2 4 100 0

$LAYER 3 3 1 100 0

$LAYER 4 4 1 100 0

$LAYER 5 5 1 100 0

$STARTDATE 11.21.2006 23:00:00

$ENDDATE 11.22.2006 14:00:00

Related Topic
Keywords for Displaying the Gantt Bars

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars

Keywords for Displaying the Gantt Bars


Gantt provides these keywords for controlling the display settings of the Gantt chart:

$ALIGNMENT $PATTERN

$AUTOGROUP $PLAUSIBILITY_AUTO

$COLOR $PLAUSBILITY_METHOD

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 86 of 570

$ENDDATE $PLAUSIBILITY_ORD

$FIT_TEXT_INTO_BAR $PLAUSIBILITY_RES

$FONT_SIZE_BAR $PROJECT_COMMENT

$FONT_SIZE_TABLE $RESOURCE

$GRID $SCROLLPOS

$LAYER $STARTDATE

$LINK $TABLE_NAME_WIDTH

$NOCHANGEVIEW $TABLE_NUM_WIDTH

$NONWORKINTERVAL $TABLE_TITLE1

$NOSAVE $TABLE_TITLE2

$NOSTANDALONE $TIME_MARK

$ORDER $ZOOM

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ALIGNMENT

$ALIGNMENT
The keyword $GRID defines the setting Grid, the keyword $ALIGNMENT the setting Align to.
For $GRID you can enter AUTO, MINUTE, HOUR, DAY, WEEK, MONTH.
For $ALIGNMENT you can enter SECOND, MINUTE, HOUR, DAY.

Example: $GRID AUTO


$GRID DAY
$ALIGNMENT MINUTES
$ALIGNMENT HOUR

Related Topic
Align to

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ALIGNMENT

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$AUTOGROUP

$AUTOGROUP
The keyword $AUTOGROUP automatically groups all items of a resource located within a higher level Gantt item.

Related Topic
Group Automatically

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$AUTOGROUP

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$COLOR

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 87 of 570

$COLOR
The keyword $COLOR assigns the RGB (red, green, blue) values of the corresponding color. The first number after the keyword is the number of the color,
followed by the RGB values. You can enter an integer number between 0 and 255.

Example: $COLOR 1 0 0 255


$COLOR 2 0 255 255
$COLOR 20 56 124 43
$COLOR 122 236 13 89

These settings apply to all Gantt charts that are open at the same time in Plant Simulation. Changing the first 16 colors may effect the display of the
items of the chart (TimeSequence, etc.).

1 white (255 255 255) 9 dark gray (128 128 128)

2 blue (0 0 255) 10 dark blue (0 0 128)

3 red (255 0 0) 11 dark red (128 0 0)

4 pink (255 0 255) 12 dark pink (128 0 128)

5 green (0 255 0) 13 dark green (0 128 0)

6 cyan (0 255 255) 14 dark cyan (0 128 128)

7 yellow (255 255 0) 15 brown (128 128 0)

8 black (0 0 0) 16 gray (192 192 192)

Related Topic
Color

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$COLOR

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ENDDATE

$ENDDATE
The keywords $STARTDATE and $ENDDATE, followed by a valid date and time, set the Start date and the End date of the entire Gantt chart. Gantt will not
display Gantt data located outside of this range. When the data file does not contain these keywords, Gantt uses the start and end date from the Gantt data
being imported.

Example: $STARTDATE 12.03.2006 06:00:00


$ENDDATE 2006/03/15 22:00:00

Related Topic
Project Period

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ENDDATE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FIT_TEXT_INTO_BAR

$FIT_TEXT_INTO_BAR
The keyword $FIT_TEXT_INTO_BAR defines the setting Text in Bar Fit to Size of Bar. Enter 1 (true) or 0 (false).

Example: $FIT_TEXT_INTO_BAR 1
$FIT_TEXT_INTO_BAR 0

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 88 of 570

Related Topic
Text in bar

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FIT_TEXT_INTO_BAR

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FONT_SIZE_BAR

$FONT_SIZE_BAR
The keyword $FONT_SIZE_TABLE defines the setting Font Size Table Section, the keyword $FONT_SIZE_BAR defines the setting Font Size Bars. You
can enter an integer between 0 and 50. Gantt greeks text below font size 6.

Example: $FONT_SIZE_TABLE 12
$FONT_SIZE_BAR 10

Related Topic
Font size

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FONT_SIZE_BAR

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FONT_SIZE_TABLE

$FONT_SIZE_TABLE
The keyword $FONT_SIZE_TABLE defines the setting Font Size Table Section, the keyword $FONT_SIZE_BAR defines the setting Font Size Bars. You
can enter an integer between 0 and 50. Gantt greeks text below font size 6.

Example: $FONT_SIZE_TABLE 12
$FONT_SIZE_BAR 10

Related Topic
Font size

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$FONT_SIZE_TABLE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars > $GRID

$GRID
The keyword $GRID defines the setting Grid, the keyword $ALIGNMENT the setting Align to.
For $GRID you can enter AUTO, MINUTE, HOUR, DAY, WEEK, MONTH.
For $ALIGNMENT you can enter SECOND, MINUTE, HOUR, DAY.

Example: $GRID AUTO


$GRID DAY
$ALIGNMENT MINUTES
$ALIGNMENT HOUR

Related Topic
Grid

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 89 of 570

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars > $GRID

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$LAYER

$LAYER
The keyword $LAYER sets how a layer looks. Enter for the

Parameter 1 Layer number an integer number between 1 and 255

Parameter 2 Color an integer number between 1 and 255

Parameter 3 Pattern an integer number between 1 and 7

Parameter 4 Height an integer number between 0 and 500

Parameter 5 Offset an integer number between -500 percent and +500

Related Topics

Layer Height

Color Offset

Pattern

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$LAYER

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars > $LINK

$LINK
The keyword $LINK is the only keyword that has to be contained in the Data table or the plan data table. It is used to display the connection between two
Gantt bars, making it easy to detect which bars belong together. Add the keyword $LINK to the line between the two Gantt bars you want to link. You can
set the color of the connection by the entering the layer number after the keyword.

RES_saw product3_2_1 2006/11/22 00:01:39.0000 2006/11/22 01:51:39.0000 SAW-GER 2 2 0

$LINK 16

RES_kit product3_2_1 2006/11/22 02:23:20.0000 2006/11/22 04:41:24.0000 ENTK-SCH 2 2 0

$LINK 16

RES_round product3_2_1 2006/11/22 04:41:24.0000 2006/11/22 06:45:25.0000 KV/NKV-ENT 2 2 0

$LINK 16

RES_notch_kv product3_2_1 2006/11/22 07:14:59.0000 2006/11/22 11:22:54.0000 NOTCH-KV 2 2 0

Related Topic
Connections

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 90 of 570

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars > $LINK

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOCHANGEVIEW

$NOCHANGEVIEW
The keyword $NOCHANGEVIEW prevents the user from changing to resource view.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOCHANGEVIEW

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NONWORKINTERVAL

$NONWORKINTERVAL
The keyword $NONWORKINTERVAL sets global non-work time intervals. The interval is valid for all resources and cannot be changed in the Gantt chart.

Example: $NONWORKINTERVAL 28.03.2006 12:00:00 28.03.2006 12:30:00


$NONWORKINTERVAL 2006/03/28 12:00:00 2006/03/28 12:30:00

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NONWORKINTERVAL

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOSAVE

$NOSAVE
The keyword $NOSAVE prevents saving data when closing the chart window.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOSAVE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOSTANDALONE

$NOSTANDALONE
The keyword $NOSTANDALONE in the data file closes the main window. In this mode you may only work with one chart window.

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$NOSTANDALONE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ORDER

$ORDER

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 91 of 570

The keyword $ORDER adds an empty order to the Gantt chart.

Example: $ORDER order_4711


$ORDER 911

Related Topic
Orders

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ORDER

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PATTERN

$PATTERN
The keyword $PATTERN sets the patterns available:

1 solid 5 diagonally down

2 vertical 6 cross (hatched)

3 horizontal 7 diagonally cross

4 diagonally up

Related Topic
Pattern

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PATTERN

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_AUTO

$PLAUSIBILITY_AUTO
The keyword $PLAUSIBILITY_RES defines the setting Resources, the keyword $PLAUSIBILITY_ORD the setting Order and the keyword
$PLAUSIBILITY_AUTO the setting Automatic Check. Enter 1 (active) or 0 (not active).

Example: $PLAUSIBILITY_RES 1
$PLAUSIBILITY_ORD 1
$PLAUSIBILITY_AUTO 0

Related Topic
Plausibility

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_AUTO

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSBILITY_METHOD

$PLAUSBILITY_METHOD
The keyword $PLAUSIBILITY_METHOD is only relevant when you started the Gantt chart from within Plant Simulation. During a user-initiated plausibility
check, Gantt writes the active Plan and Options data to the Plant Simulation object GanttChart. Then Plant Simulation calls the method Plausibility. You can

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 92 of 570

use this method to initiate a user specific check of user interactions.

Example: $PLAUSIBILITY_METHOD

Related Topic
Plausibility Check

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSBILITY_METHOD

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_ORD

$PLAUSIBILITY_ORD
The keyword $PLAUSIBILITY_RES defines the setting Resources, the keyword $PLAUSIBILITY_ORD the setting Order and the keyword
$PLAUSIBILITY_AUTO the setting Automatic Check. Enter 1 (active) or 0 (not active).

Example: $PLAUSIBILITY_RES 1
$PLAUSIBILITY_ORD 1
$PLAUSIBILITY_AUTO 0

Related Topic
Plausibility

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_ORD

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_RES

$PLAUSIBILITY_RES
The keyword $PLAUSIBILITY_RES defines the setting Resources, the keyword $PLAUSIBILITY_ORD the setting Order and the keyword
$PLAUSIBILITY_AUTO the setting Automatic Check. Enter 1 (active) or 0 (not active).

Example: $PLAUSIBILITY_RES 1
$PLAUSIBILITY_ORD 1
$PLAUSIBILITY_AUTO 0

Related Topic
Plausibility

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PLAUSIBILITY_RES

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PROJECT_COMMENT

$PROJECT_COMMENT
The keyword $PROJECT_COMMENT is identical with the setting Project > Settings > Comment. You can enter any text.

Example: $PROJECT_COMMENT Plant WE 300B

Related Topic
Comment

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 93 of 570

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$PROJECT_COMMENT

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$RESOURCE

$RESOURCE
The keyword $RESOURCE adds an empty resource to the Gantt chart.

Example: $RESOURCE station_XYZ


$RESOURCE drill

Related Topic
Resources

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$RESOURCE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$SCROLLPOS

$SCROLLPOS
The keyword $SCROLLPOS sets the start value for the visible area when opening the Gantt chart.

Example: $SCROLLPOS 11.22.2006 10:00:00


$SCROLLPOS 22.11.2006 10:00:00

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$SCROLLPOS

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$STARTDATE

$STARTDATE
The keywords $STARTDATE and $ENDDATE, followed by a valid date and time, set the Start date and the End date of the entire Gantt chart. Gantt will not
display Gantt data located outside of this range. When the data file does not contain these keywords, Gantt uses the start and end date from the Gantt data
being imported.

Example: $STARTDATE 12.03.2006 06:00:00


$ENDDATE 2006/03/15 22:00:00

Related Topic
Project Period

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$STARTDATE

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_NAME_WIDTH

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 94 of 570

$TABLE_NAME_WIDTH
The keyword $TABLE_NUM_WIDTH defines the setting Table Width Numbering, the keyword $TABLE_NAME_WIDTH the setting Table Width Naming. You
can enter any integer number between 0 and 10.000.

Example: $TABLE_NUM_WIDTH 350


$TABLE_NAME_WIDTH 4000

Related Topic
Table width

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_NAME_WIDTH

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_NUM_WIDTH

$TABLE_NUM_WIDTH
The keyword $TABLE_NUM_WIDTH defines the setting Table Width Numbering, the keyword $TABLE_NAME_WIDTH the setting Table Width Naming. You
can enter any integer number between 0 and 10.000.

Example: $TABLE_NUM_WIDTH 350


$TABLE_NAME_WIDTH 4000

Related Topic
Table width

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_NUM_WIDTH

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_TITLE1

$TABLE_TITLE1
The keyword $TABLE_TITLE1 sets the heading of the column Numbering, the keyword $TABLE_TITLE2 defines the heading of the column
Resources/Order.

Example: $TABLE_TITLE1 no.


$TABLE_TITLE2 station

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_TITLE1

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TABLE_TITLE2

$TABLE_TITLE2
The keyword $TABLE_TITLE1 sets the heading of the column Numbering, the keyword $TABLE_TITLE2 defines the heading of the column
Resources/Order.

Example: $TABLE_TITLE1 no.


$TABLE_TITLE2 station

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 95 of 570

$TABLE_TITLE2

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TIME_MARK

$TIME_MARK
The keyword $TIME_MARK defines the time mark: The setting AUTO stands for Realtime. Define the setting Point in Time using a value with date and
time.

Example: $TIME_MARK AUTO


$TIME_MARK 22.11.2006 07:00:00
$TIME_MARK 2006/11/22 07:00:00

Related Topic
Time Mark

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$TIME_MARK

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ZOOM

$ZOOM
The keyword $ZOOM defines the zoom factor the Gantt chart opens with. You can enter an integer value between 2 and 100,000.
When you enter a value less than 60, the Gantt chart shows hours and minutes on the time axis. If you want to show hours and days on the time axis, enter
a value between 60 and 3600. When you enter a value greater than 3600, the Gantt chart shows days and months.

Example: $ZOOM 240


$ZOOM 1000

Related Topics
Zoom In,
Zoom Out

Add-Ins Reference Help > GanttChart > The Application GanttChart > Importing the Options Table as a Text File > Keywords for Displaying the Gantt Bars >
$ZOOM

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface

GanttChart Online Interface


The Gantt online interface is based on the TCP/IP protocol, the most common network protocol, achieving a high level of portability. The TCP/IP protocol
also enables you to distribute several applications across a network and across different operating systems.
The TCP/IP protocol transfers commands and data in ASCII format.

Related Topics
Starting the GanttChart and Establishing a Connection
Transferring Command/Data Strings to GanttChart
Controlling GanttChart with Commands
Chart Commands
Writing Back Modified Chart Data

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 96 of 570

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Starting the GanttChart and Establishing a Connection

Starting the GanttChart and Establishing a Connection


A TCP/IP connection is described by a host address and a port number.
• The host address can either be a numeric TCP/IP address (such as 143.23.112.20) or a symbolic name (such as newton.company.com).
• The port number can be any unused number between 10000 and 30000. Refer to the services file to obtain a free port number.
To establish a connection, start Gantt with the parameter -p followed, by a valid port number (such as Gantt -p20000). After you started Gantt, the client
application can establish a connection using the address of the host where Gantt is executed and the specified port number.
If both the client application and Gantt are executed on the same host, you can use 127.0.0.1 as TCP/IP address.

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Starting the GanttChart and Establishing a Connection

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Transferring Command/Data Strings to GanttChart

Transferring Command/Data Strings to GanttChart


Gantt transfers data as ASCII strings. The strings must be terminated by \0. There are two types of commands:
• Synchronous commands: every command returns OK as soon as the command is processed.
• Asynchronous commands: the command is processed but no answer is returned. Usually, asynchronous mode is used because of better performance.

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Transferring Command/Data Strings to GanttChart

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Controlling GanttChart with Commands

Controlling GanttChart with Commands


You can control Gantt using these commands.

To do this Enter Mode

Open a new chart window named %s. This name is used in all subsequent calls to address this chart. A single Gantt CreateChart(% synchronous
process can display up to 10 chart windows simultaneously. s)

Close the chart named %s. CloseChart(% asynchronous


s)

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Controlling GanttChart with Commands

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Chart Commands

Chart Commands
Gantt accesses chart data using the command Chart(name).COMMAND(...). The expression name stands for a valid name of a chart. The
expression COMMAND is a command string supported by the chart.

To do this Enter Mode

Tell the chart who its client is, such as Plant Simulation. ClientName(%s) asynchronous

Start transmitting chart data and disables redrawing the chart window. StartChart() asynchronous

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 97 of 570

Add an item or setting to the chart. AddItem(%s) asynchronous

End transmitting the chart data and enables redrawing the chart window. EndChart() asynchronous

Delete all items in the chart, for example before transmitting new chart data. DeleteAll() asynchronous

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Chart Commands

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Writing Back Modified Chart Data

Writing Back Modified Chart Data


When you close the chart, you can write chart data back to the client application or not. Then Gantt sends these commands to the client application:

NAME;4; begins transmitting chart data of the chart named NAME.

NAME;2;NO;% transmits a single Gantt bar of the chart. NAME stands for the title of the chart, NO stands for the number of the item in the chart, %
s stands for the data of the Gantt bar. Gantt repeats this command for all items in the chart.

NAME;3;%s transmits a Gantt chart setting. NAME stands for the title of the chart, % stands for the data of the Gantt bar.

Add-Ins Reference Help > GanttChart > The Application GanttChart > GanttChart Online Interface > Writing Back Modified Chart Data

Add-Ins Reference Help > Genetic Algorithms

Genetic Algorithms

The add-in Genetic Algorithms provides these objects:

Genetic Algorithms provide optimization tools for solving complex sequential, allocation and selection tasks. Genetic Algorithms work along the same line as
the biological evolution does.
The great naturalist Charles Darwin found out that those individuals, who adapted best to their natural surroundings, procreate the best. Once an individual
acquires an advantageous characteristic, either by mutation or by cross-breeding, it may use these advantages and pass them on to its offspring. They, and
their descendants, will benefit from these selection advantages, so that over the generations all individuals of the corresponding species will acquire these
characteristics. Individuals without these advantages will have fewer offspring because of this selection disadvantage, so that the lack of an advantageous
characteristics will lead to their extinction.
Genetic Algorithms use these same principles. The most successful solutions are selected from a given initial set of proposed solutions and used for
creating new solutions. Then, better solutions are created over succeeding generations. If a proposed solution has a selection advantage and if it then is
used for creating new solutions depends on the so called fitness value that is produced by a simulation model.
You might, for example, have to optimize the loading sequence of orders for a production plant. A simulation model will provide you the with entire
processing time for each proposed loading sequence of orders. The evolution cycle will then produce successively better sequences that will process the
orders in as little a time as possible.
Major advantages of genetic algorithms are that they are task-independent and that they return good results. This is why genetic algorithms are ideally
suited in effectively supporting you in a variety of simulation-based optimization tasks.
You can apply Genetic Algorithms to solve a variety of problems without spending too much time for implementing, and for adapting, your simulation models.
How you can accomplish this is described under Optimize Models with Genetic Algorithms.
Instead of configuring your optimization tasks with the individual objects of the Genetic Algorithms, you can accomplish this much more comfortably
with the GAWizard.

To add the objects of the Genetic Algorithms to the Class Library, click Manage Class Library > Basic Objects > GA on the Home ribbon tab.
The Wizard for Genetic Algorithms (GAWizard) integrates genetic algorithms into an existing simulation model. You can use it for optimizations in which the
evaluation is based on a simulation run as well as for optimizations in which the evaluation is based on calculations in methods.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 98 of 570

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topics

GAWizard GASequence

Genetic Algorithms and Simulation GARangeAllocation

GAOptimization GASetAllocation

GASelection

Add-Ins Reference Help > Genetic Algorithms

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation

Genetic Algorithms and Simulation

Genetic Algorithms use an iterative process to generate solutions for an optimization task. The simulation model computes the fitness of the proposed
solutions. This fitness then determines if the solution under consideration is used for generating new solutions or not.
Initially, you will define an optimization task. Then, Genetic Algorithms and a Tecnomatix Plant Simulation model use an iterative process to generate new
and better solutions. After completing the optimization cycles, the optimal solution that was found, is ready to be used for further modeling.

Optimization as an iterative process

Related Topics
Optimization Tasks
Course of Optimization
Genetic Operators

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 99 of 570

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks

Optimization Tasks
You can use genetic algorithms to solve optimization tasks that are characterized by:
• Large solution spaces.
• Unknown characteristics of the solution space.
• Discontinuities within the solution space that do not allow for mathematical-numerical optimization of the task.
• Many soft restrictions for the solutions. Soft restrictions are restrictions that do not necessarily have to be kept, but lead to worse results.
The number of possible solutions depends on the type of optimization task and on the number of items contained in the defined set. The defined set
contains the items to be optimized.
As a rule optimization with genetic algorithms works well when the problem contains multiple peaks with similar fitness values. Then, the optimization
produces different solutions.

A flat plane with narrow peaks on the other hand leads to many solutions with equal fitness. The fitness does not direct the algorithm towards the peak, so
the genetic algorithm does not find a maximum.

Genetic Algorithms allow you to:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 100 of 570

• Define Sequence Tasks with the Object GASequence


• Define Selection Tasks with the Object GASelection
• Define Allocation Tasks with the Objects GARangeAllocation and GASetAllocation
The type of task determines, which genetic operators you can use, compare Genetic Operators.
You can randomly combine different types of basic tasks. These are managed by the object GAOptimization.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Sequence Tasks with the Object GASequence

Define Sequence Tasks with the Object GASequence


When solving sequence tasks, the relative sequence of order of the item of the definition set is important. Each item may only occur once in each solution.
A typical example of a sequence task is the Traveling Salesman Problem, for which you have to optimize the traveling route of a salesman through a defined
number of cities. The aim is as short a route as possible. In a production and manufacturing environment on the other hand, the main task is to arrive at a
high utilization rate by finding an optimized loading sequence of the orders to be processed. Genetic Algorithms provide the object GASequence to solve
these tasks.
You can define Position Restrictions (comparable to constraints for the items of a sequence task) for each item by entering the permitted positions for
each item into a list of integer values, which is managed by the object GASequence.
• Click into a cell of the column Define Sets on the tab Contents.
• Click the tab Attributes and select Integer from the drop-down list Data type.
• Enter integer numbers into the cells below Position Constraints that restrict the position.
Typical applications in the fields of production planning and production control for position restrictions are assigning production orders to groups of
machines, managing personnel or placing goods in a high bay warehouse.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Sequence Tasks with the Object GASequence

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Selection Tasks with the Object GASelection

Define Selection Tasks with the Object GASelection


When solving selection tasks the selection of a defined number of items from a defined set is to be optimized. Thus, the solution set is always less than the
definition set. Each item of the definition set may only occur once in the solution set. Genetic Algorithms provide the object GASelection to solve these tasks.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Selection Tasks with the Object GASelection

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Allocation Tasks with the Objects
GARangeAllocation and GASetAllocation

Define Allocation Tasks with the Objects GARangeAllocation and GASetAllocation


When solving allocation tasks items from another set (range) are allocated to the items of the definition set. Each item of the definition set is assigned an
item of the range, in which the items out of the range may be used once, several times or not at all. You can also define a range of its own for each item of
the definition set.
A typical allocation task would optimize the allocation of bundles to roll stands with the aim of minimizing the set-up times while considering the production
schedule.
Genetic Algorithms provide the object GASetAllocation to solve these tasks. If the range consists of numerical values within a defined interval, use the object
GARangeAllocation.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Optimization Tasks > Define Allocation Tasks with the Objects
GARangeAllocation and GASetAllocation

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 101 of 570

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization

Course of Optimization
The previous chapter described how an optimization task may be build by combining a certain number of basic tasks of types allocation, selection, or
sequence.
Using the definition of the basic tasks, the object GAOptimization generates solutions for the individual basic tasks. The proposed solution for a basic task is
called a chromosome. All chromosomes together form the individual. The fitness value of the individual will be determined by the simulation model or an
evaluation method. Each individual may be considered as a solution for an optimization task.

Related Topics
Initialization Phase
The Evolution Cycle

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization > Initialization Phase

Initialization Phase
First, Genetic Algorithms initialize the chromosomes of the start generation with the optional initialization values. You can enter the Initial rate in percent,
which is the number of items to be initialized, on the tab Attributes of the objects GASelection, GASequence, GARangeAllocation, and GASetAllocation.
The number of predefined chromosomes is between 0 and the size of the generation, compare Generation level.
When creating the first generation, the genetic algorithm uses as many of the predefined initialization solutions as you enter for the initialization rate. The
genetic algorithm attempts to incorporate all solutions evenly into the first generation. Initialization solutions may only occur several times if the initialization
rate has not been reached after all initialization solutions have been selected. The remaining chromosomes are assigned randomly determined values
depending on the type of task: For allocation tasks this is a random value from the range of valid values. For sequence and selection tasks the items are put
into a random order.
This is followed by The Evolution Cycle.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization > Initialization Phase

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization > The Evolution Cycle

The Evolution Cycle


After the genetic algorithm has generated the start generation of the individuals during the Initialization Phase, it executes the generation cycle. The
generation cycle consists of:
• The stochastic or deterministic selection of the parents (reproduction of solutions).
• The generation of the offspring (children) created by the random application of genetic operations (crossover, mutation, inversion).
• The evaluation of the fitness of the offspring (objective function).
After the initialization, the individuals of the start generation are evaluated by determining a fitness value for each solution. Then, a selection rule, which you
select under Parent selection in the object GAOptimization, determines, which parents out of the start generation are going to be used. The individuals you
picked are going to be the parents. Both parents are copied, so that daughter and son are clones of mother and father. Then, the genetic operators are
going to be applied to daughter and son. Whether the operators are used or not depends on the probability of the operators, which you define. The
evaluation method then starts calculating the fitness values.
According to the Offspring selection the individuals for the next generation are chosen from each family. Once all individuals for the next generation are
determined, new pairs of parents are determined from these individuals that then generate the children of the next generation, etc.
This cycle is terminated, when the maximum number of generations or a defined grade for the fitness value or the average of the fitness values is reached.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Course of Optimization > The Evolution Cycle

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators

Genetic Operators

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 102 of 570

The genetic operators play an important role, when generating new individuals. The way the genetic operators work depends on the respective basic task.
Below we describe how they work. If and how often they are used depends on the probabilities you set for the operator.
You can select the Mutation Operator, the Inversion Operator, or the Crossover Operator.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Mutation Operator

Mutation Operator
The mutation operator randomly changes individual genes.

For Allocation Tasks

For allocation tasks the mutation operator stochastically determines a value from the allocation set or chosen from the defined interval and then allocated to
the selected gene.

For Sequence Tasks

For sequence tasks the mutation operator exchanges two randomly chosen genes. The illustration below demonstrates how the operator works.

Mutation for a sequence task


You can set how the genetic algorithm exchanges the positions by using a probability for exchanging each individual item or by entering a number for the
exchanges (compare Start probability, Delta per generation, and Inversion/Mutation). When you entered a number for the exchanges, you can also define
the maximum distance of the positions of the items to be exchanged. When you defined position restrictions, the genetic algorithm will attempt to meet these
restrictions by performing a cycle exchange of some items of the sequence task. In the figure above the exchanged items 2 and 5 have a position offset of 3.

For Selection Tasks

For selection tasks the mutation operator exchanges a gene between the unused definition set and the active selection set.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Mutation Operator

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Inversion Operator

Inversion Operator
The inversion operator inverts the sequence within a defined range of the individual.

You cannot use this operator used for allocation tasks. You can use the For Sequence and Selection Tasks operator.

For Sequence and Selection Tasks

For sequential and selection tasks the inversion operator first selects a random inversion range and then inverts the sequence of genes within this range.

Mutation for an inversion task

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 103 of 570

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Inversion Operator

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Crossover Operator

Crossover Operator
As opposed to the mutation and inversion operators, the crossover operator is applied to two chromosomes. It exchanges items between these two. It
initially selects two randomly crossing points and then exchanges the ranges between these two points.

Crossover between two solutions


Using the crossover operator will result in better solutions because there is a high probability that short good ranges are preserved and will thus be
reproduced in a growing number of solutions.
For sequence and selection tasks we differentiate between two different types of the crossover operator. The operators differ in how they stress the relative
and absolute position of the individual items.
• Order Crossover (OX) preserves the relative position (neighbor relation) of the items of the solution to each other.
• Partially Matched Crossover (PMX) stresses the absolute position of the objects. So, when you use OX, small groups of solution objects are kept
together, while PMX separates the solution objects to preserve the absolute position of individual items.

Add-Ins Reference Help > Genetic Algorithms > Genetic Algorithms and Simulation > Genetic Operators > Crossover Operator

Add-Ins Reference Help > Genetic Algorithms > GAOptimization

GAOptimization
You can define the basic tasks of your optimization problem with the object GAOptimization. During the optimization run the GAOptimization manages the
individuals of the different generations. The individuals correspond to proposed solutions of the optimization problem you are analyzing.

Related Topics
Dialog Window of the GAOptimization
Methods of the GAOptimization
Attributes of the GAOptimization

Add-Ins Reference Help > Genetic Algorithms > GAOptimization

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization

Dialog Window of the GAOptimization

Double-click the icon of the GAOptimization , which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Genetic Algorithms in the Toolbox.

Related Topics

Tab Settings The Tools Menu

Tab Goal The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 104 of 570

Tab Selection Name

Tab Controls Label

Tab Recording Inheritance

Tab User-defined Attributes OK

The Navigate Menu Cancel

The View Menu Apply

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings

Tab Settings
The tab Settings provides the dialog items Task, Generation level and Number of generations.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Generation level

Generation level
Before you can enter data, click the toggle button Inheritance, so that it looks like this .

Enter the number of parent individuals of a generation. This value is the number of families within a generation.

SimTalk:
GenerationSize

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Generation level

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Number of generations

Number of generations
Before you can enter data, click the toggle button Inheritance, so that it looks like this .
Enter the maximum number of generations for which you would like to perform the optimization. Once that number of optimization steps is reached, the
termination control is called.

SimTalk:
NumGenerations

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Number of generations

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Task

Task

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 105 of 570

Before you can enter data, click the toggle button Inheritance, so that it looks like this .
Click Task to open a list, into which you enter the paths to the tables that define the optimization task. Each row stands for a basic task that is part of the
entire problem.

SimTalk:
TaskTable

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Settings > Task

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal

Tab Goal
The tab Goal provides the dialog items Direction, Fitness, and Average fitness.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Direction

Direction
Select whether the optimum is going to be a high (maximum) or a low fitness value (minimum).

SimTalk:
Direction

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Direction

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Fitness

Fitness
Enter the fitness limit of the optimization run. When at least one individual reaches or exceeds this value, the program terminates the optimization and calls
the termination control. Otherwise it executes the number of optimization runs, which you enter as the Number of generations.

SimTalk:
FitnessTarget

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Fitness

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Average fitness

Average fitness
Enter the Average fitness for the individuals of a generation. Once the program reaches this value, it terminates the optimization run. Otherwise it executes
the number of optimization runs, which you enter as the Number of generations.

SimTalk:
FitnessTargetAverage

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 106 of 570

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Goal > Average fitness

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection

Tab Selection
The tab Selection provides the dialog items Fitness reference, Parent selection, Clone best solution, and Offspring selection.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Fitness reference

Fitness reference
After a new generation has been generated and evaluated, the object GAOptimization determines the individuals of the parent generation used for creating
the individuals of the next generation.
Select if the fitness value of the individual proposed solutions is evaluated relative to the worst solution of the generation or relative to absolute zero.

SimTalk:
FitnessReference

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Fitness reference

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Parent selection

Parent selection
Select if the parent selection is going to be deterministic, according to its fitness value, or randomly, where all individuals have the same likelihood to be
used as parents. SimTalk: ParentSelection

• Deterministic
The parents are selected randomly according to their fitness values (roulette wheel selection).
For this reason individuals with good fitness values will be used more often as parents for creating the next generation. But individuals with a bad fitness
value also have a chance to be used as parents.
• Random
The fitness values are not used. All individuals have the same likelihood to be used as parents.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Parent selection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Clone best solution

Clone best solution


Select this to take the best solution of a generation over unchanged into the next generation. Clear it to not take it over.

SimTalk:
CloneBestSolution

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 107 of 570

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Clone best solution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Offspring selection

Offspring selection
Select how the GAOptimization selects family members, which are going to be used in the next generation: 1of2 Only uses the two child solutions and
selects the solution with the better fitness value. 1of4 Uses parent and child solutions and selects the best solution. Prob (probabilistic) Uses parent and
child solutions. It employs a stochastic selection. Selection probabilities are proportional to the quality of the solution. Random Selects the individual taken
for the new generation regardless of the fitness value.

SimTalk:
OffspringSelection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Selection > Offspring selection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls

Tab Controls

Click and select a Method object, into which you entered the source code of the respective control, in the dialog Select Object.
You can select or enter the Evaluation control, the Change of generations control, the Termination control, and the Error handling control.

To open the dialog of the object, whose name you entered into the text box, press the F2 key.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Evaluation control

Evaluation control

Click and select a Method object. It contains the source code on how to evaluate the newly generated individuals. The program calls it, when the
individuals of a new generation have been created. These newly generated individuals are going to be passed to the method as parameter of data type
table. Within the method or within a simulation run started by the method, the fitness value is going to be calculated for each newly created individual of the
generation. The simulation model computes the fitness value and writes it into column 2 of the table.

SimTalk:
EvaluationCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Evaluation control

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Change of generations control

Change of generations control

Click and select a Method object. It controls the alternation of generations. The GAOptimization calls it, when a generation and its offspring generation
have been completely evaluated.

SimTalk:
GenerationChangeCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Change of generations control

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 108 of 570

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Termination control

Termination control

Click and select a Method object. Enter the source code of the termination control. The GAOptimization calls it, when the optimization run is
terminated. An optimization run is terminated, when evaluation runs have been performed for all generations or when the limit for fitness or the fitness
average has been reached or has not been reached. A table containing information about the active and older generations is going to be passed as
parameter to the method.

SimTalk:
TerminationCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Termination control

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Error handling control

Error handling control

Click and select a Method object. Enter the source code of the error handling control. The GAOptimization calls it, when an error occurred during the
optimization. Two parameters are passed to the Method that is called. The first parameter, of data type integer, is the number of the error. The second
parameter, of data type string, describes the error itself.

SimTalk:
ErrorCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Controls > Error handling control

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording

Tab Recording
The tab Recording provides the dialog items Adults, Children, Families, Evolution, Best Solutions, Number, Statistics, and Evolution.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Adults

Adults
Click Adults to open a table, which shows the proposed solutions and fitness values of the active parent generation.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Adults

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Children

Children

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 109 of 570

To open the table, which shows the proposed solutions and fitness values of the active child generation, click this.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Children

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Families

Families
To open a table, which shows the relationships of the individuals of the child generation to the individuals of the parent generation, click this.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Families

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Evolution

Evolution
Select this and click Apply to save the tables Children, Families and Adults for all generations during the evolution cycle. SimTalk: Evolution
Click Evolution to open a table that shows data for the Population, Adults, Children, and for Families.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Evolution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Best Solutions

Best Solutions
To open a table that shows the best solutions of all generations until now, click this.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Best Solutions

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Number

Number
Enter the number of best solutions, which the GAOptimization is going to save.

SimTalk:
NumBestSolutions

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Number

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Statistics

Statistics
To open a table that shows the Best Fitness, Average Fitness and Worst Fitness value for each Generation evaluated until the current simulation time,

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 110 of 570

click this.
Genetic Algorithms do not save the contents of these tables when you save your model. Thus you cannot stop an optimization run, save it and reload it
later on! The GAOptimization always resets when you insert it.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab Recording > Statistics

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > Tab User-defined Attributes

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Edit 3D Properties

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Navigate Menu

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The View Menu

The View Menu


The View menu provides the menu command Refresh.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The View Menu

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Tools Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 111 of 570

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Tools Menu

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Dialog Window of the GAOptimization > The Help Menu

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization

Methods of the GAOptimization


The GAOptimization provides:
• The methods evolve and reset.
• The Methods of All Objects.
To view all of the methods and attributes of the GAOptimization, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 112 of 570

Debugger.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization > evolve

evolve

Syntax: <Path>.evolve

The method evolve creates a new generation. The parent generation and the set genetic operators are used to create the individuals of the new generation.
After the method evolve has been called, the Evaluation control is called, which is going to evaluate the newly created individuals.

Example: GAOptimization.evolve;

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization > evolve

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization > reset

reset

Syntax: <Path>.reset

The method reset resets the object GAOptimization as clicking Reset Simulation in the EventController does not do this.

Example: GAOptimization.reset;

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Methods of the GAOptimization > reset

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization

Attributes of the GAOptimization


The GAOptimization provides:
• The attributes CloneBestSolution, Direction, ErrorCtrl, Evolution, EvaluationCtrl, FitnessReference, FitnessTarget, FitnessTargetAverage,
GenerationChangeCtrl, GenerationSize, NumBestSolutions, NumGenerations, OffspringSelection, ParentSelection, TaskTable, and TerminationCtrl.
• The Attributes of All Objects.
To view all of the methods and attributes of the GAOptimization, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 113 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

GAOptimization.FitnessReference := "Relative"

• To get the value of an attribute, you might, for example, type:

print GAOptimization.FitnessReference
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > CloneBestSolution

CloneBestSolution

Syntax: <Path>.CloneBestSolution

The attribute CloneBestSolution sets if the best solution of a generation is going to be adopted unchanged (true) or not (false) into the next generation.

Assignment Value
You can assign a value of data type boolean.

Example: GAOptimization.CloneBestSolution := true;

Related Topic
Clone best solution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > CloneBestSolution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > Direction

Direction

Syntax: <Path>.Direction

The attribute Direction defines if the optimum is going to be a high (Maximum) or a low (Minimum) fitness value.

Assignment Value
You can assign a value of data type string.

Example: GAOptimization.Direction := "Maximum";

Related Topic
Direction

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > Direction

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > ErrorCtrl

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 114 of 570

ErrorCtrl

Syntax: <Path>.ErrorCtrl

The attribute ErrorCtrl designates a Method object, the Error handling control, which the GAOptimization calls, when an error occurred during the
optimization.

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


GAOptimization.ErrorCtrl := &regErrors

Example: -- SimTalk 1.0 notation


GAOptimization.ErrorCtrl := ref(regErrors);

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > ErrorCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > Evolution

Evolution

Syntax: <Path>.Evolution

The attribute Evolution sets if the GAOptimization saves the tables Children, Families, and Adults for all generations during the evolution cycle (true) or
not (false).

Assignment Value
You can assign a value of data type boolean.

Example: GAOptimization.Evolution := true;

Related Topic
Evolution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > Evolution

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > EvaluationCtrl

EvaluationCtrl

Syntax: <Path>.EvaluationCtrl

The attribute EvaluationCtrl designates a Method object, the Evaluation control, which the GAOptimization calls when the proposed solutions (children) for a
new generation have been created. The evaluation method then computes a fitness value for each proposed solution of the new generation. The individuals
of the new generation are going to be passed as parameters of data type table, to the method. The method or a simulation run that was started by the
method, then computes the fitness value for each individual of the generation and writes it into column 2 of the table.

The fitness value may not take on a negative value!

The data type of column 1 is table and sets the proposed solutions of the active generation. An individual consists of chromosomes. The number of
chromosomes equals the number of entries in the table Tasks.
Each chromosome sets one proposed solution for the corresponding basic task

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


GAOptimization.EvaluationCtrl := &evaluate

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 115 of 570

Example: -- SimTalk 1.0 notation


GAOptimization.EvaluationCtrl := ref(evaluate);

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > EvaluationCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessReference

FitnessReference

Syntax: <Path>.FitnessReference

After a new generation has been generated and evaluated, the object GAOptimization determines the individuals of the parent generation used for creating
the individuals of the next generation. The attribute FitnessReference determines if the fitness value of the individual proposed solutions is evaluated relative
to the worst solution of the generation or relative to absolute zero. FitnessReference may take the values Absolute and Relative.
• For the setting absolute the fitness value of the individual solutions is going to be evaluated relative to absolute zero. At the beginning of the optimization
runs absolute produces good results because of the variance of the individuals in the generation. For homogeneous generations the selection pressure is
extremely low with this setting.
• For the setting relative the fitness value of the individual solutions is going to be evaluated relative to the worst solution of the generation. For
homogeneous generations an even selection pressure is maintained.

Assignment Value
You can assign a value of data type string.

Example: GAOptimization.FitnessReference := "Relative";

Related Topic
Fitness reference

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessReference

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessTarget

FitnessTarget

Syntax: <Path>.FitnessTarget

The attribute FitnessTarget sets the fitness limit of the optimization run here. When at least one individual reaches or exceeds this value, the GAOptimization
terminates the optimization run and calls the termination control. Otherwise it executes the number of optimization runs set in Number of generations.

Assignment Value
You can assign a value of data type real.

Example: GAOptimization.FitnessTarget := 333.33;

Related Topic
Fitness

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessTarget

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessTargetAverage

FitnessTargetAverage

Syntax: <Path>.FitnessTargetAverage

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 116 of 570

The attribute FitnessTargetAverage sets the average fitness target value of the individuals of a generation after which the optimization run is terminated.
Otherwise the number of optimization runs set in Number of generations is executed.

Assignment Value
You can assign a value of data type real.

Example: GAOptimization.FitnessTargetAverage := 333.33;

Related Topic
Average fitness

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > FitnessTargetAverage

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > GenerationChangeCtrl

GenerationChangeCtrl

Syntax: <Path>.GenerationChangeCtrl

The attribute GenerationChangeCtrl designates a Method object, the Change of generations control, which the GAOptimization calls as soon as a
generation and its succeeding generations has been completely evaluated.
Column 1 contains the generation as integer. The following columns contain the tables Adults, Children, Families, Best Solutions and Statistics that you can
also access on the Tab Recording.

The GenerationChangeCtrl may not call the method evolve for the GAOptimization.

Use the GenerationChangeCtrl to graphically display intermediate results of an optimization run:

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


param recording: table
var sta: table
sta := recording[6,1]
StTab.delete
StTab.insertList(1,1,sta.copy({2,1}..{2,*}))
StTab.insertList(2,1,sta.copy({3,1}..{3,*}))
StTab.insertList(3,1,sta.copy({4,1}..{4,*}))
StatisticsChart.update

Example: -- SimTalk 1.0 notation


(recording: table)
is
sta : table;
do
sta := recording[6,1];
StTab.delete;
StTab.insertList(1,1,sta.copy({2,1}..{2,*}));
StTab.insertList(2,1,sta.copy({3,1}..{3,*}));
StTab.insertList(3,1,sta.copy({4,1}..{4,*}));
StatisticsChart.update;
end;

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


GAOptimization.GenerationChangeCtrl := &methObj

Example: -- SimTalk 1.0 notation


GAOptimization.GenerationChangeCtrl := ref(methObj);

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > GenerationChangeCtrl

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > GenerationSize

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 117 of 570

GenerationSize

Syntax: <Path>.GenerationSize

The attribute GenerationSize sets the number of parent individuals of a generation. This value matches the number of families in a generation. Note that not
every parent individual will have a family (compare also ParentSelection). The number of children in a generation is twice the value of GenerationSize.

Assignment Value
You can assign a value of data type integer.

Example: GAOptimization.GenerationSize := 30;

Related Topics
Generation level
Number of generations

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > GenerationSize

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > NumBestSolutions

NumBestSolutions

Syntax: <Path>.NumBestSolutions

The attribute NumBestSolutions sets how many of the best solutions found until the GAOptimization writes to the table Best Solutions.

Assignment Value
You can assign a value of data type integer.

Example: GAOptimization.NumBestSolutions := 10;

Related Topic
Best Solutions

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > NumBestSolutions

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > NumGenerations

NumGenerations

Syntax: <Path>.NumGenerations

The attribute NumGenerations sets the maximum number of generations over which the optimization is to be performed.

Assignment Value
You can assign a value of data type integer.

Example: GAOptimization.NumGenerations := 12 * Variable;

Related Topics
Generation level
Number of generations

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > NumGenerations

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 118 of 570

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > OffspringSelection

OffspringSelection

Syntax: <Path>.OffspringSelection

The attribute OffspringSelection sets how the GAOptimization selects family members used in the next generation:
• 1of2 only uses the two child solutions and selects the solution with the better fitness value.
• 1of4 uses parent and child solutions and selects the best solution.
• Prob (probabilistic) uses parent and child solutions for selecting the new generation. It employs a stochastic selection. Selection probabilities are
proportional to the quality of the solution.
• Random selects the individual taken for the new generation regardless of the fitness value.

Assignment Value
You can assign a value of data type string.

Example: GAOptimization.OffspringSelection := "1of4";

Related Topic
Offspring selection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > OffspringSelection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > ParentSelection

ParentSelection

Syntax: <Path>.ParentSelection

The attribute ParentSelection sets how the GAOptimization selects the parents for the next generation: Deterministic or Random. For deterministic
parent selection the parents are selected strictly according to their fitness values. For stochastic parent selection the fitness value set the probability used for
determining the parents randomly.

Assignment Value
You can assign a value of data type string.

Example: GAOptimization.ParentSelection := "Random";

Related Topic
Parent selection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > ParentSelection

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > TaskTable

TaskTable

Syntax: <Path>.TaskTable

The attribute TaskTable sets the tables that form the optimization task.

Assignment Value
You can assign a value of data type table.

Example: GAOptimization.TaskTable.inheritContents := false;


GAOptimization.TaskTable.delete;
GAOptimization.TaskTable[1,1] := sequence;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 119 of 570

GAOptimization.TaskTable[2,1] := selection;

Related Topic
Task

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > TaskTable

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > TerminationCtrl

TerminationCtrl

Syntax: <Path>.TerminationCtrl

The attribute TerminationCtrl designates a Method object, the Termination control, which the GAOptimization calls as soon as the optimization run is
finished. The method receives a table as parameter holding information about the active and its preceding generations.
Column 1 contains the generation as integer. The following columns contain the tables Adults, Children, Families, Best Solutions, and Statistics that
may also accessed on the tab Tab Recording.

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


GAOptimization.TerminationCtrl := &End

Example: -- SimTalk 1.0 notation


GAOptimization.TerminationCtrl := ref(End);

Genetic Algorithms do not save internal tables of the object GAOptimization. These tables may, for example contain the best solutions up to this point
in time. For this reason you cannot interrupt an optimization run by saving and reopening the model. You can use the current best solutions for
initializing additional optimization runs though.

Add-Ins Reference Help > Genetic Algorithms > GAOptimization > Attributes of the GAOptimization > TerminationCtrl

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation

GARangeAllocation
You can define allocation tasks with the object GARangeAllocation. The individual items of the chromosomes may take values from a range defined by a
minimum and a maximum, the distance of which is determined by a fixed interval.

Related Topics
Define Allocation Tasks with the Objects GARangeAllocation and GASetAllocation
Dialog Window of the GARangeAllocation
Methods of the GARangeAllocation
Attributes of the GARangeAllocation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation

Dialog Window of the GARangeAllocation

Double-click the icon of the GARangeAllocation , which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Genetic Algorithms in the Toolbox.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 120 of 570

Related Topics

Tab Contents The View Menu

Tab Attributes The Tools Menu

Tab Genetic Operators The Help Menu

Tab User-defined Attributes Name

Toolbar Label

The File Menu Inheritance

The Edit Menu OK

The Format Menu Cancel

The Navigate Menu Apply

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents

Tab Contents
The tab Contents shows a table with the columns

Define Set Interval

Minimum Initial Sets

Maximum

You can only change the column width after you deactivate Format > Inherit Format.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Define Set

Define Set
Enter the total number of items the solutions consist of into the column Define Set.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Define Set

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 121 of 570

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Minimum

Minimum
Enter the minimum number of items into the cells into the column Minimum.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Minimum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Maximum

Maximum
Enter the maximum number of items into the cells into the column Maximum.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Maximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Interval

Interval
Enter the interval between the items into the cells in the column Maximum. You might, for example enter values of 0, 20, 40, 60, 80, 100 for the solution
items for the settings minimum 0, maximum 100 and interval 20.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Interval

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Initial Sets

Initial Sets
Enter proposed start solutions into the cells in the column Initial Sets--> and the following columns.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 122 of 570

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Contents > Initial Sets

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes

Tab Attributes
The tab Attributes provides the dialog items.

Initial rate in percent Default maximum

Data type Default interval

Default minimum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Initial rate in percent

Initial rate in percent


Enter the share of chromosomes in percent that may be created for the initial generation by using the initialization data.

SimTalk:
InitRate

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Data type

Data type
Select the data type of the items of the chromosomes.

SimTalk:
DataType

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Data type

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default minimum

Default minimum
Enter the default minimum value that the GARangeAllocation uses when you did not enter an explicit Minimum for the item on the tab Contents.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 123 of 570

SimTalk:
StandardMinimum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default minimum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default maximum

Default maximum
Enter the default maximum value that the GARangeAllocation uses when you did not enter an explicit Maximum for the item on the tab Contents.

SimTalk:
StandardMaximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default maximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default interval

Default interval
Enter the default interval value that the GARangeAllocation uses when you did not enter an explicit Interval for the item on the tab Contents.

SimTalk:
StandardInterval

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Attributes > Default interval

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators

Tab Genetic Operators


The tab Genetic Operators provides the dialog items Start probability and Delta per generation.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators > Start probability

Start probability
Enter a value for the start probability for the genetic operators Crossover and Mutation.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 124 of 570

Crossover

Enter a value for the probability, which refers to the entire individual of the genetic operator, which is going to be applied to a newly created chromosome.

SimTalk:
CrossoverProb, CrossoverDelta

Mutation

Enter a value for the probability, which refers to each individual item of the genetic operator, which is going to be applied to a newly created chromosome.

SimTalk:
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators > Start probability

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators > Delta per generation

Delta per generation


Enter a value for the delta per generation for the genetic operators Crossover and Mutation over the generations.

Crossover

Enter a value for the delta per generation, which sets the change of the probabilities for the genetic operators over the generations.

SimTalk:
CrossoverProb, CrossoverDelta

Mutation

Enter a value for the delta per generation, which sets the change of the probabilities for the genetic operators over the generations.

SimTalk:
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab Genetic Operators > Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 125 of 570

getAttrName InheritValue

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Tab User-defined Attributes

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Toolbar

Toolbar
The toolbar of the GARangeAllocation has these buttons:

To do this Click

Open the dialog Open, where you pick the object file that Plant Simulation opens.

Save the list as an object file.

Print the contents of the list object on the printer you set under MS Windows.

Open the window of the Frame the object is located in.

Open the list object the active list was derived from last.

Cut the selected row or column and place it on the Plant Simulation clipboard.

Copy the selected entry, the contents of a table cell, a table row or a table column and places it on the Plant Simulation clipboard.

Paste the contents of the Plant Simulation clipboard at the selected location.

Delete the selected object(s).

Open the Find dialog in which you can search for an expression in the list or table.

Insert a new row above the active row.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > Toolbar

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The File Menu

The File Menu


The menu commands are described under the List Ribbon Tab.

Related Topics

Import File Print List

Export to File Print Setup

Export Object File Close Model

Text File Format

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The File Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Edit Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 126 of 570

The Edit Menu


The menu commands are described under the Home Ribbon Tab and the List Ribbon Tab.

Related Topics

Cut Objects Select All

Copy Objects Insert Row

Paste Objects Find

Delete Objects Replace

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Edit Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Format Menu

The Format Menu


The menu commands are described the List Ribbon Tab.

Related Topics

Activate Column Index Inherit Contents

Activate Row Index Inherit Comment

Inherit Format

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Format Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Edit 3D Properties

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Navigate Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The View Menu

The View Menu


The menu commands are described under the List Ribbon Tab.

Recompute Formulas Highlight Empty Cells

Show Comment Go To Cell

Show Data Type

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 127 of 570

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The View Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Tools Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Dialog Window of the GARangeAllocation > The Help Menu

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Methods of the GARangeAllocation

Methods of the GARangeAllocation


The GARangeAllocation provides:
• The Methods of the TableFile.
• The Methods of Lists and Tables.
• The Methods of All Objects.
To view all of the methods and attributes of the GARangeAllocation, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 128 of 570

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Methods of the GARangeAllocation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation

Attributes of the GARangeAllocation


The GARangeAllocation provides:
• The attributes CrossoverProb, CrossoverDelta, DataType, InitRate, MutationProb, MutationDelta, StandardInterval, StandardMaximum, and
StandardMinimum.
• The Attributes of the TableFile.
• The Attributes of Lists and Tables.
• The Attributes of All Objects
To view all of the methods and attributes of the GARangeAllocation, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

GARangeAllocation.Mutation := true
GARangeAllocation.MutationProb := 0.4
GARangeAllocation.MutationDelta := 0

• To get the value of an attribute, you might, for example, type:

print GARangeAllocation.Mutation
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > CrossoverProb, CrossoverDelta

CrossoverProb, CrossoverDelta

Syntax: <Path>.CrossoverProb

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 129 of 570

<Path>.CrossoverDelta

The attribute CrossoverProb sets the probability with which a crossover occurs within the first generation. This value changes for each new generation by
the value of the attribute CrossoverDelta.
When the attribute CrossoverDelta takes the value 0, the probability of a crossover to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GARangeAllocation.CrossoverProb := 0.2;


GARangeAllocation.CrossoverDelta := 0;

Related Topics
Start probability, Crossover
Delta per generation, Crossover

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > CrossoverProb, CrossoverDelta

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > DataType

DataType

Syntax: <Path>.DataType

The attribute DataType sets the data type of the definition set.

Assignment Value
You can assign a value of data type string: Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack,
String, Table, Time, or Weight.

For the data types date or dateTime select a value of data type integer (equivalent to days) or time as interval.

Example: GARangeAllocation.DataType := "speed";

Related Topic
Data type

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > DataType

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > InitRate

InitRate

Syntax: <Path>.InitRate

The attribute InitRate sets the share of chromosomes (in percent) that may be created for the initial generation by using the initialization data.

Assignment Value
You can assign a value of data type real.

Example: GARangeAllocation.InitRate := 33;

Related Topic
Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > InitRate

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 130 of 570

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > MutationProb, MutationDelta

MutationProb, MutationDelta

Example: <Path>.CrossoverProb
<Path>.CrossoverDelta

The attribute MutationProb sets the probability with which a mutation occurs within the first generation. This value changes for each new generation by the
value of the attribute MutationDelta.
When the attribute MutationDelta takes the value 0, the probability for a mutation to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GARangeAllocation.MutationProb := 0.4;


GARangeAllocation.MutationDelta := 0;

Related Topics
Start probability, Mutation
Delta per generation, Mutation

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardInterval

StandardInterval

Syntax: <Path>.StandardMinimum
<Path>.StandardMaximum
<Path>.StandardInterval

The attributes StandardMaximum, StandardMinimum, and StandardInterval set as default values.

Assignment Value
You can assign a value of data type real.

Example: -- definition
-- set 0,10,20, ... 80,90,100
GARangeAllocation.StandardMinimum := 0;
GARangeAllocation.StandardMaximum := 100;
GARangeAllocation.StandardInterval := 10;

Related Topic
Default interval

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardInterval

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardMaximum

StandardMaximum

Syntax: <Path>.StandardMinimum
<Path>.StandardMaximum
<Path>.StandardInterval

The attributes StandardMaximum, StandardMinimum, and StandardInterval set as default values.

Assignment Value
You can assign a value of data type real.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 131 of 570

Example: -- definition
-- set 0,10,20, ... 80,90,100
GARangeAllocation.StandardMinimum := 0;
GARangeAllocation.StandardMaximum := 100;
GARangeAllocation.StandardInterval := 10;

Related Topic
Default maximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardMaximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardMinimum

StandardMinimum

Syntax: <Path>.StandardMinimum
<Path>.StandardMaximum
<Path>.StandardInterval

The attributes StandardMaximum, StandardMinimum, and StandardInterval set as default values.

Assignment Value
You can assign a value of data type real.

Example: -- definition
-- set 0,10,20, ... 80,90,100
GARangeAllocation.StandardMinimum := 0;
GARangeAllocation.StandardMaximum := 100;
GARangeAllocation.StandardInterval := 10;

Related Topic
Default maximum

Add-Ins Reference Help > Genetic Algorithms > GARangeAllocation > Attributes of the GARangeAllocation > StandardMinimum

Add-Ins Reference Help > Genetic Algorithms > GASelection

GASelection
You can define selection tasks with the object GASelection.

Related Topics
Define Selection Tasks with the Object GASelection
Dialog Window of the GASelection
Methods of the GASelection
Attributes of the GASelection

Add-Ins Reference Help > Genetic Algorithms > GASelection

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection

Dialog Window of the GASelection

Double-click the icon of the GASelection , which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Genetic Algorithms in the Toolbox.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 132 of 570

Related Topics

Tab Contents The View Menu

Tab Attributes The Tools Menu

Tab Genetic Operators The Help Menu

Tab User-defined Attributes Name

Toolbar Label

The File Menu Inheritance

The Edit Menu OK

The Format Menu Cancel

The Navigate Menu Apply

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents

Tab Contents
The tab Contents shows a table with the columns Define Set, and Initial Sets.

You can only change the column width after you deactivate Format > Inherit Format.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents > Define Set

Define Set
Enter the total number of items the solutions consist of into the cells in the column Define Set. Each item may occur once only. Enter the size of the solution
set into the text box Selection quantity on the tab Attributes. Select the Data type of the definition set from the drop-down list on the tab Attributes.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents > Define Set

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents > Initial Sets

Initial Sets

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 133 of 570

Enter proposed start solutions into the column Initial Sets--> and the following columns.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Contents > Initial Sets

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes

Tab Attributes
The tab Attributes provides the dialog items Initial rate in percent, Data type, and Selection quantity.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Initial rate in percent

Initial rate in percent


Enter the share of chromosomes (in percent) that may be created for the initial generation by using the initialization data.

SimTalk:
InitRate

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Data type

Data type
Select the data type of the items of the chromosomes.

SimTalk:
DataType

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Data type

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Selection quantity

Selection quantity
Enter the number of items that are to be selected from the definition set.

SimTalk:
Selection

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 134 of 570

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Attributes > Selection quantity

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators

Tab Genetic Operators


The tab Genetic Operators provides the dialog items Crossover, Inversion/Mutation, Start probability, and Delta per generation.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Crossover

Crossover
For selection tasks each item may only occur once in the solution set. Crossover tasks on the other hand may violate this condition. This is why
procedures are needed that reorganize the remaining set, i.e., the set that is not changed by crossover, so that the condition is met again.
Select the type of crossover: OX (Order Crossover) attempts to preserve the relative position and thus the sequence of items of a chromosome as far as
possible. If an item is contained in the remaining set of chromosome 1 and in the crossover set of chromosome 2, it will be eliminated from the remaining set
and the following items will move up. PMX (Partially Matched Crossover) makes the absolute position of the items take precedence over the sequence. If
an item is contained in the remaining set of chromosome 1 and in the crossover set of chromosome 2, this item is replaced by an item from the crossover
set in chromosome 1 that is not contained in the crossover set of chromosome 2.

SimTalk:
CrossoverOperator,
CrossoverProb, CrossoverDelta

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Crossover

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Inversion/Mutation

Inversion/Mutation
Select the genetic operator: The Inversion Operator inverts the sequence within a defined range of the individual. The Mutation Operator randomly changes
individual genes.
• When you select inversion, you can enter a value for the Start probability and for the Delta per generation.
• When you select mutation, you can enter a value for the Start probability and for the Delta per generation.

SimTalk:
Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Inversion/Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Start probability

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 135 of 570

Start probability

Enter a value for the probability of the genetic operators Mutation and Inversion and Crossover, which is going to be applied to a newly created
chromosome.

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta,
MutationProb, MutationDelta

Mutation

For the setting mutation the probability refers to each individual item.
We found these probabilities to yield good results.

Mutation 0.01 to 0.1

SimTalk:
MutationProb, MutationDelta

Inversion and Crossover

For the settings inversion and crossover the probability refers to the entire individual.
We found these probabilities to yield good results.

Inversion 0 to 0.4

Crossover 0.5 to 0.8

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Start probability

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Delta per generation

Delta per generation


The value you enter for delta per generation sets the change of the probabilities for the genetic operators Crossover and Mutation over the generations.

Crossover

Enter a value for the delta per generation that sets the change of the probabilities for the genetic operators over the generations.

SimTalk:
CrossoverProb, CrossoverDelta

Mutation

Enter a value for the delta per generation that sets the change of the probabilities for the genetic operators over the generations.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 136 of 570

SimTalk:
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab Genetic Operators > Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Tab User-defined Attributes

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Toolbar

Toolbar
The toolbar of the GASelection has these buttons:

To do this Click

Open the dialog Open, where you pick the object file that Plant Simulation opens.

Save the list as an object file.

Print the contents of the list object on the printer you set under MS Windows.

Open the window of the Frame the object is located in.

Open the list object the active list was derived from last.

Cut the selected row or column and place it on the Plant Simulation clipboard.

Copy the selected entry, the contents of a table cell, a table row or a table column and places it on the Plant Simulation clipboard.

Paste the contents of the Plant Simulation clipboard at the selected location.

Delete the selected object(s).

Open the Find dialog in which you can search for an expression in the list or table.

Insert a new row above the active row.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 137 of 570

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > Toolbar

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The File Menu

The File Menu


The menu commands are described under the List Ribbon Tab.

Related Topics

Import File Print List

Export to File Print Setup

Export Object File Close Model

Text File Format

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The File Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Edit Menu

The Edit Menu


The menu commands are described under the Home Ribbon Tab and the List Ribbon Tab.

Related Topics

Cut Objects Select All

Copy Objects Insert Row

Paste Objects Find

Delete Objects Replace

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Edit Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Format Menu

The Format Menu


The menu commands are described the List Ribbon Tab.

Related Topics

Activate Column Index Inherit Contents

Activate Row Index Inherit Comment

Inherit Format

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Format Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Navigate Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 138 of 570

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Edit 3D Properties

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Navigate Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The View Menu

The View Menu


The menu commands are described under the List Ribbon Tab.

Recompute Formulas Highlight Empty Cells

Show Comment Go To Cell

Show Data Type

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The View Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Tools Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Genetic Algorithms > GASelection > Dialog Window of the GASelection > The Help Menu

Add-Ins Reference Help > Genetic Algorithms > GASelection > Methods of the GASelection

Methods of the GASelection

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 139 of 570

The GASelection provides:


• The Methods of Lists and Tables.
• The Methods of the TableFile.
• The Methods of All Objects.
To view all of the methods and attributes of the GASelection, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Genetic Algorithms > GASelection > Methods of the GASelection

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection

Attributes of the GASelection


The GASelection provides:
• The attributes CrossoverOperator, CrossoverProb, CrossoverDelta, DataType, InitRate, InversionProb, InversionDelta, Mutation, MutationProb,
MutationDelta, and Selection.
• The Attributes of the TableFile.
• The Attributes of Lists and Tables.
• The Attributes of All Objects.
To view all of the methods and attributes of the GASelection, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 140 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

GASelection.CrossoverOperator := "PMX"

• To get the value of an attribute, you might, for example, type:

print GASelection.CrossoverOperator
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > CrossoverOperator

CrossoverOperator

Syntax: <Path>.CrossoverOperator

The attribute CrossoverOperator sets the procedure that reorganizes the remaining set when a crossover is executed.
• OX (Order Crossover)
attempts to preserve the relative position and thus the sequence of items of a chromosome as far as possible. If an item is contained in the remaining set
of chromosome 1 and in the crossover set of chromosome 2, it will be eliminated from the remaining set and the following items will move up.
• PMX (Partially Matched Crossover)
makes the absolute position of the items take precedence over the sequence. If an item is contained in the remaining set of chromosome 1 and in the
crossover set of chromosome 2, this item is replaced by an item from the crossover set in chromosome 1 that is not contained in the crossover set of
chromosome 2.

Assignment Value
You can assign a value of data type string: PMX or OX.

Example: GASelection.CrossoverOperator := "PMX";

Related Topic
Crossover

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > CrossoverOperator

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > CrossoverProb, CrossoverDelta

CrossoverProb, CrossoverDelta

Syntax: <Path>.CrossoverProb

The attribute CrossoverProb sets the probability with which a crossover occurs within the first generation. This value changes for each new generation by
the value of the attribute CrossoverDelta. When the attribute CrossoverDelta takes the value 0, the probability of a crossover to take place during the
evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASelection.CrossoverProb := 0.2;


GASelection.CrossoverDelta := 0;

Related Topics
Crossover

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 141 of 570

Start probability, Inversion and Crossover


Delta per generation, Crossover

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > CrossoverProb, CrossoverDelta

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > DataType

DataType

Syntax: <Path>.DataType

The attribute DataType sets the data type of the definition set.

Assignment Value
You can assign a value of data type string: Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack,
String, Table, Time, or Weight.

Example: GASelection.DataType := "integer";

Related Topic
Data type

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > DataType

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > InitRate

InitRate

Syntax: <Path>.InitRate

The attribute InitRate sets the share of chromosomes in percent that may be created for the initial generation by using the initialization data.

Assignment Value
You can assign a value of data type real.

Example: GASelection.InitRate := 33;

Related Topic
Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > InitRate

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > InversionProb, InversionDelta

InversionProb, InversionDelta

Syntax: <Path>.InversionProb
<Path>.InversionDelta

When the attribute Mutation takes the value false, the attribute InversionProb sets the probability of an inversion to occur in the first generation. This value
changes for each new generation by the value of the attribute InversionDelta. When the attribute InversionDelta takes the value 0, the probability of an
inversion to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 142 of 570

Example: GASelection.Mutation := false;


GASelection.InversionProb := 0.4;
GASelection.InversionDelta := 0;

Related Topics
Crossover
Start probability, Inversion and Crossover
Delta per generation, Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > InversionProb, InversionDelta

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > Mutation

Mutation

Syntax: <Path>.Mutation

The attribute Mutation sets if the mutation operator (true) or the inversion operator (false) is going to be used as genetic operator.

Assignment Value
You can assign a value of data type boolean.

Example: GASelection.Mutation := true;

Related Topic
Inversion/Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > MutationProb, MutationDelta

MutationProb, MutationDelta

Syntax: <Path>.Mutation
<Path>.MutationProb
<Path>.MutationDelta

When the attribute Mutation takes the value true, the attribute MutationProb sets the probability with which a mutation occurs within the first generation. This
value changes for each new generation by the value designated by the attribute MutationDelta. When the attribute MutationDelta takes the value 0, the
probability for a mutation to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASelection.Mutation := true;


GASelection.MutationProb := 0.4;
GASelection.MutationDelta := 0;

Related Topics
Inversion/Mutation
Start probability, Mutation
Delta per generation, Mutation

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > MutationProb, MutationDelta

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 143 of 570

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > Selection

Selection

Syntax: <Path>.Selection

The attribute Selection defines the number of items from the definition set that is to be selected.

Assignment Value
You can assign a value of data type integer.

Example: GASelection.Selection := 8;

Related Topic
Selection quantity

Add-Ins Reference Help > Genetic Algorithms > GASelection > Attributes of the GASelection > Selection

Add-Ins Reference Help > Genetic Algorithms > GASequence

GASequence
You can define sequence tasks with the object GASequence.

Related Topics
Define Sequence Tasks with the Object GASequence
Dialog Window of the GASequence
Methods of the GASequence
Attributes of the GASequence

Add-Ins Reference Help > Genetic Algorithms > GASequence

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence

Dialog Window of the GASequence

Double-click the icon of the GASequence , which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Genetic Algorithms in the Toolbox.

Related Topics

Tab Contents The View Menu

Tab Attributes The Tools Menu

Tab Genetic Operators The Help Menu

Tab User-defined Attributes Name

Toolbar Label

The File Menu Inheritance

The Edit Menu OK

The Format Menu Cancel

The Navigate Menu Apply

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 144 of 570

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents

Tab Contents
The tab Contents shows a table with the columns Define Set, Position Constraints, and Initial Sets.

You can only change the column width after you deactivate Format > Inherit Format.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Define Set

Define Set
Enter the total number of items the solutions consist of into the cells in the column Define Set. Each item may only occur once. Select the data type of the
definition set from the drop-down list Data type on the tab Attributes.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Define Set

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Position Constraints

Position Constraints
Enter the names of sub-lists (of data type list) into the column Position Constraints for items for which you defined position restrictions. Enter all positions
(of data type integer), which that item may occupy into this sub-list. When you do not create a sub-list that item may occupy any position, i.e., no position
restrictions apply for it.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Position Constraints

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Initial Sets

Initial Sets

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 145 of 570

Enter proposed start solutions into the column Initial Sets--> and the following columns.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Contents > Initial Sets

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes

Tab Attributes
The tab Attributes provides these dialog items.

Initial rate in percent Number of crossover trials

Data type Number of mutation trials

Number of samples Degree of mutation correction

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Initial rate in percent

Initial rate in percent


Enter the share of chromosomes in percent that may be created for the initial generation by using the initialization data.

SimTalk:
InitRate

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Data type

Data type
Select the data type of the items of the chromosomes.

Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack, String, Table, Time or Weight.

SimTalk:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 146 of 570

DataType

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Data type

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of samples

Number of samples
Enter the number of samples after which the genetic algorithm terminates its random search for an initial solution for the start generation.

This only applies, when you defined Position Constraints for the sequence task.

SimTalk:
NumOfGaSamples

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of samples

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of crossover trials

Number of crossover trials


Enter the number of crossover trials that the genetic algorithm executes to realize the placements in the matching intersecting range. A rearrangement
attempt consists of the search for the cycle exchange for the items of the matching intersecting range.

This only applies, when you defined Position Constraints for the sequence task.

SimTalk:
NumOfCrossOverTrials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of crossover trials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of mutation trials

Number of mutation trials


Enter the number of mutation trials, which the genetic algorithm executes by using cycle exchanges to meet the position restrictions you defined.

This only applies, when you defined Position Constraints for the sequence task.

SimTalk:
NumOfMutationTrials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Number of mutation trials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Degree of mutation correction

Degree of mutation correction


Enter a number for the degree of mutation correction, which is the maximum length of the cycles for a cycle exchange that a mutation triggered.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 147 of 570

This only applies, when you defined Position Constraints for the sequence task with the mutation operator Fixed number of mutations.

Genetic Algorithms do not use the degree of mutation correction for the mutation operator Random mutations.

SimTalk:
DegreeOfCorrection

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Attributes > Degree of mutation correction

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators

Tab Genetic Operators


The tab Genetic Operators provides these dialog items.

Crossover Start probability

Inversion/Mutation Delta per generation

Mutation Operator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Crossover

Crossover
For sequence tasks each item may only occur once in the solution set. Crossover tasks on the other hand may violate this condition. This is why
procedures are needed that reorganize the remaining set, i.e., the set that is not changed by Crossover, so that the condition is met again.

Select the type of crossover:


• OX (Order Crossover)
attempts to preserve the relative position and thus the sequence of items of a chromosome as far as possible. If an item is contained in the remaining set
of chromosome 1 and in the crossover set of chromosome 2, it will be eliminated from the remaining set and the following items will move up.
• PMX (Partially Matched Crossover)
makes the absolute position of the items take precedence over the sequence. If an item is contained in the remaining set of chromosome 1 and in the
crossover set of chromosome 2, this item is replaced by an item from the crossover set in chromosome 1 that is not contained in the crossover set of
chromosome 2.
Then, enter a Start probability, and a Delta per generation.

SimTalk:
CrossoverOperator,
CrossoverProb, CrossoverDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Crossover

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 148 of 570

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Start probability

Start probability
Enter a value for the start probability of the corresponding genetic operator, which is going to be applied to a newly created chromosome.

For the setting mutation the probability refers to each individual item; for the settings inversion and crossover the probability refers to the entire individual.
We found the following probabilities to yield good results:

Mutation 0.01 to 0.1

Inversion 0 to 0.4

Crossover 0.5 to 0.8

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta,
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Start probability

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Delta per generation

Delta per generation


The value you enter for delta per generation sets the change of the probabilities for the corresponding genetic operator over the generations.

Enter a value for the delta per generation that sets the change of the probabilities for the corresponding genetic operators over the generations.

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta,
MutationProb, MutationDelta
CrossoverOperator
Mutation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Inversion/Mutation

Inversion/Mutation

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 149 of 570

Select the genetic operator:


The Inversion Operator inverts the sequence within a defined range of the individual.
The Mutation Operator randomly changes individual genes.
• When you select inversion, you can enter a value for the Start probability and for the Delta per generation.

• When you select mutation, you can select the Mutation Operator, which the genetic algorithm uses, and enter a value for the Start probability and for the
Delta per generation.

SimTalk:
Mutation,
InversionProb, InversionDelta,
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Inversion/Mutation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Mutation Operator

Mutation Operator
When you select mutation, you can also select the mutation operator, which the genetic algorithm uses: For random mutations you can define the
probabilities for exchanging an item. For a fixed number of mutations you will click Plan and enter the number of mutations per chromosome for each
generation. SimTalk: MutationOperator.
• Random mutations
Enter a number for the Start probability to define the probability for exchanging an item in the first generation.
Enter a number for the Delta per generation to define the change of this probability for the genetic operators, when the generation changes.
• Fixed number of mutations
The GASequence shows the button Plan. It opens a table with four columns of data type integer, where you define the number of mutations per
chromosome for each generation. Decreasing the number of mutations, for example, allows you to better search for a local optimum during the end phase
of the optimization. Enter the first generation into the cells of the column Generation (from), and the number of mutations for this and the following
generations into the column Number of Mutations. Modify the number of mutations for a generation by entering values into another line/row of the table.
Make sure that column 1 of the table is sorted in ascending order.
Enter the number of positions the genetic algorithm may move an item up into the column Max. Position Offset (up) or down into the column Max.
Position Offset (down). This is called position offset restriction of a mutation (compare Mutation Operator for sequence tasks).
When you do not enter values into the columns Max. Position Offset (up) and Max. Position Offset (down), the genetic algorithm uses a mutation
without position offset restrictions.

SimTalk:
Mutation,
MutationOperator,
MutationPlan

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Mutation Operator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Start probability

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 150 of 570

Start probability
Enter a value for the start probability of the corresponding genetic operator being applied to a newly created chromosome.

For the setting mutation the probability refers to each individual item; for the settings inversion and crossover the probability refers to the entire individual.
We found the following probabilities to yield good results:

Mutation 0.01 to 0.1

Inversion 0 to 0.4

Crossover 0.5 to 0.8

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta,
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Start probability

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Delta per generation

Delta per generation


Enter a value for the delta per generation that sets the change of the probabilities for the corresponding genetic operators over the generations.

SimTalk:
CrossoverProb, CrossoverDelta,
InversionProb, InversionDelta,
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab Genetic Operators > Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 151 of 570

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Tab User-defined Attributes

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Toolbar

Toolbar
The toolbar of the GASequence has these buttons:

To do this Click

Open the dialog Open, where you pick the object file that Plant Simulation opens.

Save the list as an object file.

Print the contents of the list object on the printer you set under MS Windows.

Open the window of the Frame the object is located in.

Open the list object the active list was derived from last.

Cut the selected row or column and place it on the Plant Simulation clipboard.

Copy the selected entry, the contents of a table cell, a table row or a table column and places it on the Plant Simulation clipboard.

Paste the contents of the Plant Simulation clipboard at the selected location.

Delete the selected object(s).

Open the Find dialog in which you can search for an expression in the list or table.

Insert a new row above the active row.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > Toolbar

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The File Menu

The File Menu


The menu commands are described under the List Ribbon Tab.

Related Topics

Import File Print List

Export to File Print Setup

Export Object File Close Model

Text File Format

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 152 of 570

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The File Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Edit Menu

The Edit Menu


The menu commands are described under the Home Ribbon Tab and the List Ribbon Tab.

Related Topics

Cut Objects Select All

Copy Objects Insert Row

Paste Objects Find

Delete Objects Replace

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Edit Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Format Menu

The Format Menu


The menu commands are described the List Ribbon Tab.

Related Topics

Activate Column Index Inherit Contents

Activate Row Index Inherit Comment

Inherit Format

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Format Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Edit 3D Properties

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Navigate Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The View Menu

The View Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 153 of 570

The menu commands are described under the List Ribbon Tab.

Recompute Formulas Highlight Empty Cells

Show Comment Go To Cell

Show Data Type

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The View Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Tools Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Genetic Algorithms > GASequence > Dialog Window of the GASequence > The Help Menu

Add-Ins Reference Help > Genetic Algorithms > GASequence > Methods of the GASequence

Methods of the GASequence


The GASequence provides:
• The Methods of the TableFile.
• The Methods of Lists and Tables.
• The Methods of All Objects.
To view all of the methods and attributes of the GASequence, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 154 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Genetic Algorithms > GASequence > Methods of the GASequence

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence

Attributes of the GASequence


The GASequence provides:
• The attributes CrossoverOperator, CrossoverProb, CrossoverDelta, DataType, DegreeOfCorrection, InitRate, InversionProb, InversionDelta, Mutation,
MutationOperator, MutationPlan, MutationProb, MutationDelta, NumOfCrossOverTrials, NumOfGaSamples, and NumOfMutationTrials.
• The Attributes of the TableFile.
• The Attributes of Lists and Tables.
• The Attributes of All Objects.
To view all of the methods and attributes of the GASequence, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 155 of 570

GASequence.CrossoverProb := 0.2
GASequence.CrossoverDelta := 0

• To get the value of an attribute, you might, for example, type:

print GASequence.CrossoverProb
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > CrossoverOperator

CrossoverOperator

Syntax: <Path>.CrossoverOperator

The attribute CrossoverOperator sets the procedure that reorganizes the remaining set when a crossover is executed.

Assignment Value
You can assign a value of data type string: PMX (Partially Matched Crossover) or OX (Ordered Crossover).
• OX
attempts to preserve the relative position and thus the sequence of items of a chromosome as far as possible. If an item is contained in the remaining set
of chromosome 1 and in the crossover set of chromosome 2, it will be eliminated from the remaining set and the following items will move up.
• PMX
makes the absolute position of the items take precedence over the sequence. If an item is contained in the remaining set of chromosome 1 and in the
crossover set of chromosome 2, this item is replaced by an item from the crossover set in chromosome 1 that is not contained in the crossover set of
chromosome 2.

Example: GASequence.CrossoverOperator := "PMX";

Related Topic
Crossover

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > CrossoverOperator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > CrossoverProb, CrossoverDelta

CrossoverProb, CrossoverDelta

Syntax: <Path>.CrossoverProb
<Path>.CrossoverDelta

The attribute CrossoverProb sets the probability with which a crossover occurs within the first generation. This value changes for each new generation by
the value of the attribute CrossoverDelta. When the attribute CrossoverDelta takes the value 0, the probability of a crossover to take place during the
evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASequence.CrossoverProb := 0.2;


GASequence.CrossoverDelta := 0;

Related Topics
Crossover
Start probability
Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > CrossoverProb, CrossoverDelta

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 156 of 570

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > DataType

DataType

Syntax: <Path>.DataType

The attribute DataType sets the data type of the definition set.

Assignment Value
You can assign a value of data type string: Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack,
String, Table, Time, or Weight.

Example: GASequence.DataType := "integer";

Related Topic
Data type

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > DataType

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > DegreeOfCorrection

DegreeOfCorrection

Syntax: <Path>.DegreeOfCorrection

The attribute DegreeOfCorrection sets the degree of mutation correction, which the GASequence applies.

Assignment Value
You can assign a value of data type integer.

Example: GASequence.DegreeOfCorrection := 1;

Related Topic
Degree of mutation correction

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > DegreeOfCorrection

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > InitRate

InitRate

Syntax: <Path>.InitRate

The attribute InitRate sets the share of chromosomes in percent that may be created for the initial generation by using the initialization data.

Assignment Value
You can assign a value of data type real.

Example: GASequence.InitRate := 35;

Related Topic
Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > InitRate

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 157 of 570

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > InversionProb, InversionDelta

InversionProb, InversionDelta

Syntax: <Path>.InversionProb
<Path>.InversionDelta

When the attribute Mutation takes the value false, the attribute InversionProb sets the probability of an inversion to occur in the first generation. This value
changes for each new generation by the value of the attribute InversionDelta. When the attribute InversionDelta takes the value 0, the probability of an
inversion to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASequence.Mutation := false;


GASequence.InversionProb := 0.4;
GASequence.InversionDelta := 0;

Related Topics
Inversion/Mutation,
Start probability,
Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > InversionProb, InversionDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > Mutation

Mutation

Syntax: <Path>.Mutation

The attribute Mutation sets if the genetic algorithm is going to use the mutation operator (true) or the inversion operator (false).

Assignment Value
You can assign a value of data type boolean.

Example: GASequence.Mutation := true;

Related Topics
Inversion/Mutation,
Start probability,
Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > Mutation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationOperator

MutationOperator

Syntax: <Path>.MutationOperator

When the attribute Mutation is set to true, the attribute MutationOperator designates the mutation operator, which the GASequence is going to use.
• Random mutations
Enter a number for the Start probability to define the probability for exchanging an item in the first generation.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 158 of 570

Enter a number for the Delta per generation to define the change of this probability for the genetic operators, when the generation changes.
• Fixed number of mutations
The GASequence shows the button Plan. It opens a table with four columns of data type integer, where you define the number of mutations per
chromosome for each generation. Decreasing the number of mutations, for example, allows you to better search for a local optimum during the end phase
of the optimization. Enter the first generation into the cells of the column Generation (from), and the number of mutations for this and the following
generations into the column Number of Mutations. Modify the number of mutations for a generation by entering values into another line/row of the table.
Make sure that column 1 of the table is sorted in ascending order.
Enter the number of positions the genetic algorithm may move an item up into the column Max. Position Offset (up) or down into the column Max.
Position Offset (down). This is called position offset restriction of a mutation (compare Mutation Operator for sequence tasks).
When you do not enter values into the columns Max. Position Offset (up) and Max. Position Offset (down), the genetic algorithm uses a mutation
without position offset restrictions.

Assignment Value
You can assign a value of data type string: Fixed number of mutations or Random mutations.

Example: GASequence.MutationOperator := "Random mutations";

Related Topic
Mutation Operator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationOperator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationPlan

MutationPlan

Syntax: <Path>.MutationPlan

For the setting Mutation > Fixed number of mutations the attribute MutationPlan sets the table in which you define the number of mutations per
chromosome and the position offset for each generation.

Assignment Value
You can assign a value of data type table.

Example: GASequence.MutationPlan.delete;
GAsequence.MutationPlan := MutationSteps.copy;

Related Topic
Mutation Operator

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationPlan

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationProb, MutationDelta

MutationProb, MutationDelta

Syntax: <Path>.MutationProb
<Path>.MutationDelta

When the attribute Mutation takes the value true, the attribute MutationProb sets the probability with which a mutation occurs within the first generation. This
value changes for each new generation by the value of the attribute MutationDelta. When the attribute MutationDelta takes the value 0, the probability for a
mutation to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASequence.Mutation := true;


GASequence.MutationProb := 0.4;
GASequence.MutationDelta := 0;

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 159 of 570

Start probability,
Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfCrossOverTrials

NumOfCrossOverTrials

Syntax: <Path>.NumOfCrossOverTrials

The attribute NumOfCrossOverTrials sets the number of crossover trials, which the GASequence executes.

This only applies, when you defined Position Constraints for the sequence task.

Assignment Value
You can assign a value of data type integer.

Example: GASequence.NumOfCrossOverTrials := 2;

Related Topic
Number of crossover trials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfCrossOverTrials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfGaSamples

NumOfGaSamples

Syntax: <Path>.NumOfGaSamples

The attribute NumOfGaSamples sets the number of samples, which the GASequence draws.

This only applies, when you defined Position Constraints for the sequence task.

Assignment Value
You can assign a value of data type integer.

Example: GASequence.NumOfGaSamples := 3;

Related Topic
Number of samples

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfGaSamples

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfMutationTrials

NumOfMutationTrials

Syntax: <Path>.NumOfMutationTrials

The attribute NumOfMutationTrials sets the number of mutation trials, which the GASequence executes.

This only applies, when you defined Position Constraints for the sequence task.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 160 of 570

Assignment Value
You can assign a value of data type integer.

Example: GASequence.NumOfMutationTrials := 1;

Related Topic
Number of mutation trials

Add-Ins Reference Help > Genetic Algorithms > GASequence > Attributes of the GASequence > NumOfMutationTrials

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation

GASetAllocation
You can define allocation tasks with the object GASetAllocation. The individual items of the chromosomes may take values from a predefined set.

Related Topics
Define Allocation Tasks with the Objects GARangeAllocation and GASetAllocation
Dialog Window of the GASetAllocation
Methods of the GASetAllocation
Attributes of the GASetAllocation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation

Dialog Window of the GASetAllocation


Double-click the icon of the GASetAllocation, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Genetic Algorithms in the Toolbox.

Related Topics

Tab Contents The View Menu

Tab Attributes The Tools Menu

Tab Genetic Operators The Help Menu

Tab User-defined Attributes Name

Toolbar Label

The File Menu Inheritance

The Edit Menu OK

The Format Menu Cancel

The Navigate Menu Apply

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents

Tab Contents

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 161 of 570

The tab Contents shows a table with the columns Define Set, Allocation Sets, and Initial Sets.

You can only change the column width after you deactivate Format > Inherit Format.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Define Set

Define Set
Enter the total number of items the solutions consist of into the cells in the column Define Set.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Define Set

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Allocation Sets

Allocation Sets
Enter the names of sub-tables (of data type table), which hold the allocation sets for the corresponding items, into the column Allocation Set. The
GASetAllocation considers each value you enter into the sub-table as an item of the corresponding allocation set.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Allocation Sets

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Initial Sets

Initial Sets
Enter proposed start solutions into the cells in the column Initial Sets--> and the following columns.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 162 of 570

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Contents > Initial Sets

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes

Tab Attributes
The tab Attributes provides the dialog items Initial rate in percent, Data type, and Default Set.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Initial rate in percent

Initial rate in percent


Enter the share of chromosomes in percent that may be created for the initial generation by using the initialization data.

SimTalk:
InitRate

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Data type

Data type
Select the data type of the items of the chromosomes.
Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack, String, Table, Time, or Weight.

SimTalk:
DataType

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Data type

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Default Set

Default Set
Before you can enter data, click the toggle button Inheritance, so that it looks like this .
Click this and enter the default values of the allocation set into the table. The GASetAllocation uses this default set, if you did not enter a value for an item

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 163 of 570

into the column Allocation Sets of the table on the tab Contents.

SimTalk:
DefaultSet

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Attributes > Default Set

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators

Tab Genetic Operators


The tab Genetic Operators provides the dialog items Start probability and Delta per generation.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators > Start probability

Start probability
The start probability refers to different items for the settings Crossover and Mutation.

Crossover

Enter a value for the probability, which refers to the entire individual of the corresponding genetic operator, which is going to be applied to a newly created
chromosome.
We found these probabilities to yield good results.

Mutation 0.01 to 0.1

Crossover 0.5 to 0.8

SimTalk:
CrossoverProb, CrossoverDelta

Mutation

Enter a value for the probability, which refers to each individual item of the corresponding genetic operator, which is going to be applied to a newly created
chromosome.
We found these probabilities to yield good results.

Mutation 0.01 to 0.1

Crossover 0.5 to 0.8

SimTalk:
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators > Start probability

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators > Delta per generation

Delta per generation

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 164 of 570

The value you enter for delta per generation sets the change of the probabilities for the genetic operators Crossover and Mutation over the generations.

Crossover

Enter a value for the delta per generation, which sets the change of the probabilities for the genetic operator Crossover over the generations.

SimTalk:
CrossoverProb, CrossoverDelta

Mutation

Enter a value for the delta per generation, which sets the change of the probabilities for the genetic operator Mutation over by over the generations.

SimTalk:
MutationProb, MutationDelta

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab Genetic Operators > Delta per generation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Tab User-defined Attributes

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Toolbar

Toolbar
The toolbar of the GASetAllocation has these buttons:

To do this Click

Open the dialog Open, where you pick the object file that Plant Simulation opens.

Save the list as an object file.

Print the contents of the list object on the printer you set under MS Windows.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 165 of 570

Open the window of the Frame the object is located in.

Open the list object the active list was derived from last.

Cut the selected row or column and place it on the Plant Simulation clipboard.

Copy the selected entry, the contents of a table cell, a table row or a table column and places it on the Plant Simulation clipboard.

Paste the contents of the Plant Simulation clipboard at the selected location.

Delete the selected object(s).

Open the Find dialog in which you can search for an expression in the list or table.

Insert a new row above the active row.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > Toolbar

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The File Menu

The File Menu


The menu commands are described under the List Ribbon Tab.

Related Topics

Import File Print List

Export to File Print Setup

Export Object File Close Model

Text File Format

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The File Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Edit Menu

The Edit Menu


The menu commands are described under the Home Ribbon Tab and the List Ribbon Tab.

Related Topics

Cut Objects Select All

Copy Objects Insert Row

Paste Objects Find

Delete Objects Replace

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Edit Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Format Menu

The Format Menu


The menu commands are described the List Ribbon Tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 166 of 570

Related Topics

Activate Column Index Inherit Contents

Activate Row Index Inherit Comment

Inherit Format

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Format Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Edit 3D Properties

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Navigate Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The View Menu

The View Menu


The menu commands are described under the List Ribbon Tab.

Recompute Formulas Highlight Empty Cells

Show Comment Go To Cell

Show Data Type

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The View Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Tools Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 167 of 570

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Dialog Window of the GASetAllocation > The Help Menu

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Methods of the GASetAllocation

Methods of the GASetAllocation


The GASetAllocation provides:
• The Methods of the TableFile.
• The Methods of Lists and Tables.
• The Methods of All Objects.
To view all of the methods and attributes of the GASetAllocation, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Methods of the GASetAllocation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation

Attributes of the GASetAllocation


The GASetAllocation provides:
• The attributes CrossoverProb, CrossoverDelta, DataType, DefaultSet, InitRate, and MutationProb, MutationDelta.
• The Attributes of the TableFile.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 168 of 570

• The Attributes of Lists and Tables.


• The Attributes of All Objects.
To view all of the methods and attributes of the GASetAllocation, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

GASetAllocation.Mutation := true
GASetAllocation.MutationProb := 0.4
GASetAllocation.MutationDelta := 0

• To get the value of an attribute, you might, for example, type:

print GASetAllocation.MutationProb
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > CrossoverProb, CrossoverDelta

CrossoverProb, CrossoverDelta

Syntax: <Path>.CrossoverProb
<Path>.CrossoverDelta

The attribute CrossoverProb sets the probability with which a crossover occurs within the first generation. This value changes for each new generation by
the value of the attribute CrossoverDelta.
When the attribute CrossoverDelta takes the value 0, the probability of a crossover to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASetAllocation.CrossoverProb := 0.2;


GASetAllocation.CrossoverDelta := 0;

Related Topic
Start probability, Crossover
Delta per generation, Crossover

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > CrossoverProb, CrossoverDelta

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > DataType

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 169 of 570

DataType

Syntax: <Path>.DataType

The attribute DataType sets the data type of the definition set.

Assignment Value
You can assign a value of data type string: Acceleration, Any, Boolean, Date, DateTime, Integer, Length, List, Money, Object, Queue, Real, Speed, Stack,
String, Table, Time, or Weight.

Example: GASetAllocation.DataType := "speed";

Related Topic
Data type

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > DataType

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > DefaultSet

DefaultSet

Syntax: <Path>.DefaultSet

The attribute DefaultSet sets the Default Set.

Assignment Value
You can assign a value of data type table.

Example: GASetAllocation.DataType := "boolean";


GASetAllocation.DefaultSet.delete;
GASetAllocation.DefaultSet[1,1]:= true;
GASetAllocation.DefaultSet[1,2]:= false;

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > DefaultSet

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > InitRate

InitRate

Syntax: <Path>.InitRate

The attribute InitRate sets the share of chromosomes (in percent) that may be created for the initial generation by using the initialization data.

Assignment Value
You can assign a value of data type real.

Example: GASetAllocation.InitRate := 33;

Related Topic
Initial rate in percent

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > InitRate

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > MutationProb, MutationDelta

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 170 of 570

MutationProb, MutationDelta

Syntax: <Path>.MutationProb
<Path>.MutationDelta

The attribute MutationProb sets the probability with which a mutation occurs within the first generation. This value changes for each new generation by the
value of the attribute MutationDelta.
When the attribute MutationDelta takes the value 0, the probability for a mutation to take place during the evolution cycle does not change.

Assignment Value
You can assign a value of data type real.

Example: GASetAllocation.MutationProb := 0.4;


GASetAllocation.MutationDelta := 0;

Related Topic
Start probability, Mutation
Delta per generation, Mutation

Add-Ins Reference Help > Genetic Algorithms > GASetAllocation > Attributes of the GASetAllocation > MutationProb, MutationDelta

Add-Ins Reference Help > Inter-Process Communication Interfaces

Inter-Process Communication Interfaces

Tecnomatix Plant Simulation provides these inter-process communication interfaces:


• C
• COM
• DDE
• HTML
• OPC
• SIMIT
• Socket
• Teamcenter

To add the last three interfaces to your simulation model, click Manage Class Library > Basic Objects > Information Flow on the Home ribbon tab.

Add-Ins Reference Help > Inter-Process Communication Interfaces

Add-Ins Reference Help > Inter-Process Communication Interfaces > C

C
You can extend the features and functionalities of Plant Simulation considerably by integrating functions you programmed in the programming language C,
such as numerical evaluation and optimization procedures, etc.

The C interface is part of the Plant Simulation Interface Package.

You can use the C interface to call functions directly from within SimTalk, the Plant Simulation information flow language. For this, you have to create a
program containing the functions you need and an interface with a given format. Then, you can load this program from SimTalk by employing the method

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 171 of 570

loadLibrary to load the C program or the DLL and execute functions with the method callLibrary. Within the C functions you can also directly access Plant
Simulation objects. A bidirectional data exchange between Plant Simulation and an external C program is also supported.
When you employ the C interface to link a DLL, which you yourself programmed, this DLL has to be compiled for the 32-bit or for the 64-bit version
respectively.

This help topic provides a short introduction into the C interface. Also consult the sample files in the Plant Simulation installation folder in the sub-folder
Plant Simulation\C-Interface.
Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface

Using the C Interface


To be able to use the C functions you created from within Plant Simulation, you first have to call the function loadLibrary to load the C program or the DLL.
You can also use the functions callLibrary, freeLibrary, and getLoadedLibrary.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > callLibrary

callLibrary

Syntax: callLibrary(Handle:<integer>, FunctionName:<string> [,Parameter:<any>, ...])

The function callLibrary calls the function FunctionName in a DLL.

Parameters
• The parameter Handle of data type integer designates the handle, which the function loadLibrary returned.
• The parameter FunctionName of data type string designates the FunctionName. Argument and return value depend on the called function. When an error
occurs, the Debugger opens.
• The optional parameters will be passed to the called C function.

Return Value
The return value has the data type any.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > callLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > freeLibrary

freeLibrary

Syntax: freeLibrary(NameOfDll:<integer>)

The function freeLibrary unloads the DLL, which was loaded with the parameter handle of data type integer.
The return value is true, when the program succeeded in unloading the DLL, false, if it failed.

Return Value
The return value has the data type boolean.

Related Topic
loadLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > freeLibrary

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 172 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > getLoadedLibrary

getLoadedLibrary

Syntax: getLoadedLibrary(NameOfDll:<integer>)

The function getLoadedLibrary returns the file name of the DLL, which was loaded by the parameter handle.

Return Value
The return value has the data type string.

Related Topics
loadLibrary
freeLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > getLoadedLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > loadLibrary

loadLibrary

Syntax: loadLibrary(NameOfDll:<string>)

The function loadLibrary loads a DLL.

Parameter
The parameter NameOfDll of data type string designates the name of the DLL.
When the function fails, the return value will be less than 0, when the function succeeds, the program will return a value greater than 0, which you can use to
access the DLL. This return value is the handle of the DLL.

Return Value
The return value has the data type integer.

Plant Simulation only shows error messages in the Console, when you activate the category Select if the Console records Debug messages of not..

Example: loadLibrary("PlantSimCore.DLL")

Related Topic
freeLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Using the C Interface > loadLibrary

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program

Structure of the C Program


The structure of the C program looks like described below. Plant Simulation loads the C functions as a DLL. The DLL you created has to contain the
functions, which you programmed, as well as an interface to Plant Simulation. This is accomplished by including the files cinterf.cpp and cwinfunc.h in your
project.
Within the DLL, which you would like to call from Plant Simulation, the functions in the DLL have to be declared as follows:

Syntax: export "C" __declspec(dllextern) void <FunctionName> (UF_Value* ret, UF_Value* arg)

Example: export "C" __declspec(dllextern) void uf_sin(UF_Value* ret, UF_Value* arg);

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 173 of 570

The two parameters ret and arg of a function both reference UF_Value. Compare The Structure UF_Value.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > The Structure UF_Value

The Structure UF_Value


The structure UF_Value is defined as follows in cwinfunc.h:

typedef struct
{
UF_DataType type;
UF_ValueUnion value;
} UF_Value;

The field type tells which field of the compound value is valid. value has the data type UF_ValueUnion, and defined as follows:

typedef union
{
int integer;
double real;
char *string;
objID object;
int error;
} UF_ValueUnion;

Valid values of type are:


• UF_NONE
• UF_VOID
• UF_INTEGER
• UF_REAL
• UF_BOOLEAN
• UF_STRING
• UF_LENGTH
• UF_WEIGHT
• UF_SPEED
• UF_TIME
• UF_DATE
• UF_DATETIME
• UF_OBJECT
• UF_ERROR
Also compare the definition of UF_DataType in the Header file cwinfunc.h, which is part of your program package.
Let‘s say that type is UF_INTEGER, then only value.integer contains a valid value. In this case value.real or value.char would take an undefined value.
When Plant Simulation calls a C-function, the Plant Simulation data types of the parameters will be converted to the following C data types:

Plant Simulation data type Data type in C

boolean int

integer int

real double

time double

date double

dateTime double

money double

length double

weight double

speed double

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 174 of 570

string char *

When passing a Plant Simulation real value for example, the item type of the parameter *arg is automatically set to UF_REAL. You can then query the real
value with arg->real.
The data type of the return value of the function to Plant Simulation has to be set according to the corresponding data type.
When a string data type is passed to the function, the pointer to the string is valid only during the function, as memory can be released after returning
from the function.

For a C function intended to compute the sine of a real value, enter this source code into the C program.

Example: void uf_sin(UF_Value *ret, UF_Value *arg)


{
ret->type=UF_REAL;
ret->value.real=sin(arg[0].value.real);
}

The more complex Plant Simulation data types object, table, list, stack and queue do not have a direct counterpart as basic data type in the programming
language C. When calling a function that is passed a complex data type as parameter, type is assigned the value UF_OBJECT. The parameter is then
represented by the item object of the corresponding union. The item object has the data type SimpleObjID, which is defined in the header file cwinfunc.h.
This value allows direct access to the Plant Simulation objects passed within your function. The value of object, called object ID hereafter, is generated
automatically and is not to be changed.
If you would like to pass a Plant Simulation object as a parameter to the C function it also will be represented by an object ID in the C program.
The required access functions are described under Accessing Plant Simulation Objects. For detailed examples compare the files cwinfunc.h and cinterf.cpp
in the Plant Simulation installation folder in the sub-folder Plant Simulation\C-Interface.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > The Structure UF_Value

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects

Accessing Plant Simulation Objects


The functions assignValue, evalPath, executeFunction, executeMethod, listAt, listAtPut, listAtIndex, and listAtIndexPut provide direct access to Plant
Simulation objects. The objects are defined by the corresponding object ID of data type simpleObjID. They are assigned the corresponding object ID, when
an Plant Simulation object is passed as parameter to your C function. The Plant Simulation objects TableFile, CardFile, QueueFile or StackFile and the
variables of data type table, list, stack and queue are accessed in an analogous way. These items will be referred to as list objects hereafter. For the one-
dimensional list objects CardFile, StackFile and QueueFile and for the variables of data type list, stack and queue only the first index entry (second
parameter of the listAtxxx functions) is evaluated. The third parameter has to have the type UF_Integer and the value 1.
Using index oriented access functions for one-dimensional list objects and for tables without user-defined indexes is not possible. In this case, the functions
return an object of type UF_ERROR that may be evaluated.
• UF_Value listAt(simpleObjID list, int x, int y)
• UF_Value listAtPut(simpleObjID list, int x, int y, UF_Value *value)
• UF_Value listAtIndex(simpleObjID list, UF_Value *x, UF_Value *y)
• UF_Value listAtIndexPut(simpleObjID list, UF_Value *x, UF_Value *y, UF_Value *value)
• UF_Value evalPath(simpleObjID startObject,char *path, int argcount, UF_Value *args)
• UF_Value executeMethod(simpleObjID method, simpleObjID caller, simpleObjID-ID activeElement, int argcount,UF_Value *args)
• UF_Value executeFunction(char *FunctionName, int argcount, UF_Value *args)
• UF_Value assignValue(SimpleObjID lValue, char *attribute, char*subattribute, UF_Value *value)
These functions are defined in the file cwinfunc.h.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > assignValue

assignValue

Syntax: UF_Value assignValue(SimpleObjID *lValue,char*attribute,char *subattribute,UF_Value *value)

The function assignValue assigns a value to an attribute of a Plant Simulation object.

Parameters
• The parameter SimpleObjID *lValue designates the object ID of the Plant Simulation object, whose attribute you would like to change.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 175 of 570

• The parameter char*attribute designates the name of the attribute you would like to change.
• The parameter char *subattribute is only required, when the attribute itself contains additional attributes, such as the attribute ProcTime of the SingleProc.
If the value is not required, enter 0.
• The parameter UF_Value *value designates the value that you want to assign.

Example: UF_Value rValue;


rValue.type = UF_TIME;
rValue.value.time = 33;
SimpleObjID *ID = evalPath(0,".SingleProc",0,0);
assignValue(ID,"processingtime",0,rValue);
rValue.type = UF_STRING;
rValue.value.string = "const";
assignValue(ID,"setuptime","type",rValue);

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > assignValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > evalPath

evalPath

Syntax: UF_Value evalPath(simpleObjID *startObject,char *path, int argcount,UF_Value *args)

The function evalPath evaluates a SimTalk path. Plant Simulation returns the value of the path in an UF_Value structure.

Parameters
• The parameter simpleObjID *startObject designates the Plant Simulation object, at which the path evaluation starts or 0.
• The parameter char *path designates the path to be evaluated.
If this path leads to a method expecting parameters, you have to pass their number as the parameter int argcount, otherwise the value has to be 0.
• The parameter UF_Value *args designates the parameters of the method. Only simple paths are allowed, i.e., the last item of the path has to be the name
of an attribute or a sub-attribute. A path like this is not allowed: ".SingleProc.setName("Test")".

Example: UF_Value retVal;


retVal = evalPath(0,".SingleProc.name",0,0);
UF_Value retVal;
UF_Value args[1];
args[0].type = UF_STRING;
args[0].value.string = "Test";
retVal = evalPath(0,".SingleProc.setName",1,args);

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > evalPath

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > executeFunction

executeFunction

Syntax: UF_Value executeFunction(char *FunctionName,int argc,UF_Value *args)

The function executeFunction calls a built-in SimTalk method, such as setSeedTable, sin, version, etc. from within the C function.

Parameters
• The parameter char *FunctionName designates the name of the built-in method.
• The parameter int argc designates the number of the parameters.
• The parameters UF_Value *args designate the parameters as such.
The result of the method is the return value.

Example: UF_Value retVal;


UF_Value argv[1];
argv[0].type = UF_REAL;
argv[0].value.real = 3.1415;
retVal = executeFunction("sin",1,argv);

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 176 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > executeFunction

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > executeMethod

executeMethod

Syntax: UF_Value executeMethod(simpleObjID *method,simpleObjID *caller,simpleObjID *activeElement,int


argcount,UF_Value *args)

The function executeMethod starts a user-defined method in a Plant Simulation model and returns a value. The method is executed in a mode in which the
Debugger does not open, so errors occurring in the method during its execution are not shown in the Debugger. Plant Simulation only shows an error
message in the Console.

Parameters
• The parameter simpleObjID *method designates the object ID of the method to be started.
• The parameter simpleObjID *caller designates the object ID of the object to be called in the method with the question mark.
• The parameter simpleObjID *activeElement designates the object ID of the object to be called in the method with the anonymous identifier @.
• The parameter int argcount designates the number of parameters the method expects.
These parameters have to be passed in the UF_Value *args vector. If no parameters are expected, the value is 0.

Related Topic
Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > executeMethod

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > listAt

listAt

Syntax: UF_Value listAt(simpleObjID *list,int x,int y)

The function listAt reads the cells of list objects. The function is required because Plant Simulation normally calls cells in a list by employing brackets, such
as .table[1,1]. The brackets cannot be used to evaluate paths within evalPath.

Parameters
• The parameter simpleObjID *list designates the object ID of the list object.
• The parameter int x designates the x-coordinate of the cell you’d like to query.
• The parameter int y designates the y-coordinate of the cell.
This value is going to be the return value.

Related Topic
Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > listAt

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > listAtPut

listAtPut

Syntax: UF_Value listAtPut(simpleObjID *list,int x,int y, UF_Value *value)

The function listAtPut writes values into cells of list objects.

Parameters
• The parameter simpleObjID *list designates the object ID of the list object.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 177 of 570

• The parameter int x designates the x-coordinate of the cell whose contents you’d like to change.
• The parameter int y designates the y-coordinate of the cell.
• The parameter UF_Value *value contains the value to be written.

Related Topic
Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Accessing Plant Simulation Objects > listAtPut

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > listAtIndex

listAtIndex

Syntax: UF_Value listAtIndex(simpleObjID *list,UF_Value *x, UF_Value *y)

The function listAtIndex allows accessing cells within tables by using their indexes.

Parameters
• The parameter simpleObjID *list designates the table you want to be access.
• The parameter UF_Value *x designates the index for the column.
• The parameter UF_Value *y designates the index for the row.
The data type of both index values has to be the same as the data type of the table indexes.
The function returns the addressed cell.

Related Topic
Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > listAtIndex

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > listAtIndex > listAtIndexPut

listAtIndexPut

Syntax: UF_Value listAtIndexPut(simpleObjID *list, UF_Value *x, UF_Value *y, UF_Value *value)

The function listAtIndexPut writes a value into a cell addressed by a table index.

Parameters
• The parameter simpleObjID *list designates the table you want to be access.
• The parameter UF_Value *x designates the index for the column.
• The parameter UF_Value *y designates the index for the row.
• The parameter UF_Value *value designates the value to be written into the addressed cell.

Related Topic
Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > listAtIndex > listAtIndexPut

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Error Types

Error Types
If a function call returns the type UF_ERROR for type instead of the expected value, the field error in the compound UF_ValueUnion may be evaluated. This

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 178 of 570

field contains the error type. Possible error types are:


1. Error types for listAt, listAtPut, listAtIndex, and listAtIndexPut.

Error Error type

1 Error in the parameters (amount or type).

2 First parameter is not a list object or no index access is possible.

2. Error types for evalPath and assignValue.

Error Error type

1 Wrong access to the attribute. A more specific error message is output in the Console.

2 The attribute does not exist.

3. Error types for executeMethod.

Error Error type

1 First parameter is not a method.

2 Error with passing parameters or executing the method.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Error Types

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Compiling the C Program

Compiling the C Program


The compilation process itself depends on the C compiler employed and environment the C interface is to be used in.
To create a DLL, allowing access to C functions from within Plant Simulation, execute these steps:
1. Create a new project in your C++ development environment and select Dynamic-Link Library as type.
2. Copy the Header files cwinfunc.h and cinterf.cpp from the Plant Simulation installation folder, sub-folder Plant Simulation/C-Interface, into your project
folder.
3. Include the file cwinfunc.h into the C file, which is to contain functions to be called from within Plant Simulation:
#include "cwinfunc.h"
4. Add the function you defined.

When you dynamically link the MFC libraries while creating your DLL, these libraries have to be present on the computer on which the application runs.

The Plant Simulation installation folder contains an executable example in the sub-folder Plant Simulation/C-Interface. Check out the file example.cpp, to
get an idea on how to define your functions.

Add-Ins Reference Help > Inter-Process Communication Interfaces > C > Structure of the C Program > Compiling the C Program

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM

COM
The COM interface enables you to control Plant Simulation from other applications that can address COM objects, such as MS Office applications, the
Windows Scripting Host, etc. For this you use the name Tecnomatix.PlantSimulation.RemoteControl.13.0. You might, for example, start a simulation run
in Plant Simulation from Microsoft Excel and then write the results into an Excel table.
The type of the interface is IRemoteControl:

interface IRemoteControl : IDispatch


{
HRESULT NewModel();
HRESULT LoadModel(BSTR);
HRESULT SaveModel(BSTR);
HRESULT CloseModel();
HRESULT StartSimulation(BSTR);
HRESULT StopSimulation();
HRESULT ResetSimulation(BSTR);
HRESULT IsSimulationRunning([out,retval]VARIANT_BOOL*);
HRESULT SetPathContext(BSTR);

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 179 of 570

HRESULT ExecuteSimTalk(BSTR,[optional]VARIANT,[out,retval]VARIANT*);
HRESULT GetValue(BSTR,[out,retval]VARIANT*);
HRESULT SetValue(BSTR,VARIANT);
HRESULT Quit();
};

The COM interface is part of the Plant Simulation Interface Package.

Related Topics
Functions of the COM Interface
Events of the COM Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface

Functions of the COM Interface


The COM interface provides these functions:

closeModel resetSimulation

executeSimTalk saveModel

getValue setPathContext

isSimulationRunning setValue

loadModel setVisible

newModel startSimulation

quit stopSimulation

The examples below are for the Windows Scripting Host using the syntax of JScript. They assume that Plant Simulation was initialized with:

-- SimTalk 2.0 notation


var eMPlant = WScript.CreateObject("Tecnomatix.PlantSimulation.RemoteControl.13.0");

-- SimTalk 1.0 notation


local eMPlant = WScript.CreateObject("Tecnomatix.PlantSimulation.RemoteControl.13.0");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > closeModel

closeModel

Syntax: eMPlant.closeModel

The function closeModel closes the active model. This corresponds to the menu command File > Close Model.

Example: eMPlant.closeModel;

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > closeModel

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > executeSimTalk

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 180 of 570

executeSimTalk

Syntax: eMPlant.executeSimTalk(SourceCode:<string>)

The function executeSimTalk executes the source code, which you pass, in a Method.

Parameter
The parameter SourceCode of data type string designates the source code, which is going to be executed in the Method.
When the source code of the method contain a parameter, you can enter this as the second parameter to the method executeSimTalk. The method
executeSimTalk then will return the return value of the method.

Example: -- SimTalk 2.0 notation


eMPlant.executeSimTalk("->real; return 3.14159")
eMPlant.executeSimTalk("param r:real->real; return r*r", 3.14159);

Example: -- SimTalk 1.0 notation


eMPlant.executeSimTalk(":real is do return 3.14159; end;");
eMPlant.executeSimTalk("(r:real):real is do return r*r; end;", 3.14159);

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > executeSimTalk

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > getValue

getValue

Syntax: eMPlant.getValue(ObjectName:<string>)

The function getValue returns the value of an attribute of a Plant Simulation object.

Parameter
The parameter ObjectName of data type string designates the name of the Plant Simulation object and the name of the attribute.

Example: eMPlant.getValue("MySingleProc.Proctime");

Related Topics
setValue
setPathContext

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > getValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > isSimulationRunning

isSimulationRunning

Syntax: eMPlant.isSimulationRunning

The function isSimulationRunning returns true, when the simulation is running at the moment, false, when it is not running.

Example: eMPlant.isSimulationRunning;

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > isSimulationRunning

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > loadModel

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 181 of 570

loadModel

Syntax: eMPlant.loadModel(ModelName:<string>[, Password:<string>])

The function loadModel loads a Plant Simulation simulation model. This corresponds to the menu command File > Open Model.

Parameters
• The parameter ModelName of data type string designates the name of the model that you want to open.
• The optional parameter Password of data type string designates the password that is used for loading an encrypted model.

Example: eMPlant.loadModel("Transmission Plant");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > loadModel

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > newModel

newModel

Syntax: eMPlant.newModel

The function newModel creates a new simulation model. This corresponds to the menu command File > New Model.

Example: eMPlant.newModel;

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > newModel

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > quit

quit

Syntax: eMPlant.quit

The function quit exits Plant Simulation. This corresponds to the menu command File > Exit.

Example: eMPlant.quit;

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > quit

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > resetSimulation

resetSimulation

Syntax: eMPlant.resetSimulation(PathOfEventController:<string>)

The function resetSimulation resets the EventController. This corresponds to the Reset Simulation button.

Parameter
The parameter PathOfEventController of data type string designates the path of the EventController.

Example: eMPlant.resetSimulation(".Models.Frame.EventController");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > resetSimulation

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 182 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > saveModel

saveModel

Syntax: eMPlant.saveModel(ModelName:<string>)

The function saveModel saves the active model with the name you enter. This corresponds to the menu command File > Save Model.

Parameter
The parameter ModelName of data type string designates the name of the model.

Example: eMPlant.saveModel("Plant Cedar Rapids");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > saveModel

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setPathContext

setPathContext

Syntax: eMPlant.setPathContext(StartOfRelativePath:<string>)

The function setPathContext sets where a relative path starts.

Parameter
The parameter StartOfRelativePath of data type string designates the start of the relative path.

The function only applies to the methods getValue and setValue.

Example: eMPlant.setPathContext(".Models.Study1");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setPathContext

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setValue

setValue

Syntax: eMPlant.setValue(NameOfObject:<string>, AttributeValue:<integer>)

The function setValue assigns a value to an attribute of a Plant Simulation object.

Parameters
• The parameter NameOfObject of data type string designates the name of the object and its attribute.
• The parameter AttributeValue of data type integer designates the value of the attribute.

Example: eMPlant.setValue("singleProc.Proctime",120);

Example: eMPlant.setValue(".Models.Frame.myTable[2,1]", 3);

Related Topics
getValue
setPathContext

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setValue

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 183 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setVisible

setVisible

Syntax: eMPlant.setVisible(Visible:<boolean>)

The function setVisible makes the application Plant Simulation visible (true) or invisible (false).
When Plant Simulation is created as a COM server it is invisible by default. You can use setVisible to make it visible.

Parameter
The parameter Visible of data type boolean sets if the application Plant Simulation is visible (true) or invisible (false).

Example: eMPlant.setVisible(true);

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > setVisible

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > startSimulation

startSimulation

Syntax: eMPlant.startSimulation(PathOfEventController:<string>)

The function startSimulation starts the EventController. This matches the Start/Stop Simulation button.

Parameter
The parameter PathOfEventController of data type string designates the path of the EventController.

Example: eMPlant.startSimulation(".Models.Frame.EventController");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > startSimulation

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > stopSimulation

stopSimulation

Syntax: eMPlant.stopSimulation

The function stopSimulation stops a running simulation. This matches the Start/Stop Simulation button.

Example: eMPlant.stopSimulation;

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Functions of the COM Interface > stopSimulation

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface

Events of the COM Interface


The COM interface provides the events SimulationFinished and FireSimTalkMessage.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 184 of 570

Please check the documentation that came with your programming application for instructions on how to connect to these events.

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface > FireSimTalkMessage

FireSimTalkMessage
Use the function fireSimTalkMessage to trigger the event SimTalkMessage from within SimTalk. Note that you have to enter a parameter of data type string.
The name of the function, which will be triggered, depends on the programming language you use, such as Visual Basic, JavaScript, etc. Please check the
documentation that came with your programming application. Compare the Example of a JScript below.

Example: fireSimTalkMessage("The buffer is full.");

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface > FireSimTalkMessage

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface > SimulationFinished

SimulationFinished
At the end of a simulation run Plant Simulation triggers the event SimulationFinished. You can use it to read the results of a simulation run.

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Events of the COM Interface > SimulationFinished

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Example of a JScript

Example of a JScript

var vbOKCancel = 1;
var vbCancel = 2;
var vbInformation = 64;
var Finished=false;

var WSHShell = new ActiveXObject("WScript.Shell");

var simple = WScript.CreateObject("Tecnomatix.PlantSimulation.RemoteControl1", "RemoteControl_");

simple.SetLicenseType("Runtime");

try
{
// Enter the path to a model file!
simple.LoadModel("C:\\Models\\Test.spp");
}
catch (e)
{
WScript.Echo("Could not load Model!");
WScript.Quit();
}

try
{
simple.SetValue(".Models.Frame.Buffer.ProcTime", 700.0); } catch (e) {
r=WSHShell.Popup(e.description, 0, "Continue?", vbOKCancel + vbInformation);
if (r == vbCancel)
{
simple.CloseModel();
WScript.Quit();
}
}

simple.StartSimulation(".Models.Frame.EventController");

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 185 of 570

if (simple.IsSimulationRunning())
WScript.Echo("Simulation is running!");

// Wait until simulation is finished


while (!Finished) WScript.Sleep(2000);

simple.CloseModel();
simple.Quit();
WScript.Quit();

function RemoteControl_SimulationFinished()
{
WScript.Echo("Simulation Finished!");

Finished = true;
}

function RemoteControl_SimTalkMessage(str) {
WScript.Echo(str);
}

Add-Ins Reference Help > Inter-Process Communication Interfaces > COM > Example of a JScript

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE

DDE
The DDE interface, which is integrated in Plant Simulation, allows accessing the DDE (Dynamic Data Exchange) communication system offered by MS
Windows. Plant Simulation can serve as a DDE server or as a DDE client.

Related Topics
Plant Simulation as DDE Server
Plant Simulation as a DDE Client
Reading and Writing Values of Objects of Type Variable with DDE
Linking a Variable to Microsoft Word with DDE
Linking a Variable to Microsoft Excel with DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server

Plant Simulation as DDE Server


Plant Simulation as a DDE server can execute commands. You can also read or modify values of objects of type Variable. Consult the documentation that
came with your client application for the correct syntax of the commands.
You can call Plant Simulation with these names as a DDE server:

eM-Plant
eM-Plant<Process-ID>

In addition, you can define any server name of your choice using the function initDDE. The term eM-Plant<Process-ID>, eM-Plant3218 for
example, uniquely identifies each instance of Plant Simulation you started. This way another application that starts Plant Simulation is able to call this
instance of Plant Simulation.
Closing a simulation model or loading a new model will also terminate all DDE connections and reset the server names to their default names.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > Executing Methods with DDE

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 186 of 570

Executing Methods with DDE


You can call any method in Plant Simulation via DDE, even the built-in methods. Just establish a DDE channel using the topic System. Then you can
execute a method with the function ddeExecute.
To debug a method executed via DDE, activate Debugger > Stop on Error Handlers in the main program window. The Method Debugger automatically
opens when the method is executed.

Example: sub sampleDDE()


Dim channel As Long
' open DDE channel to Plant Simulation
channel = DDEInitiate("eM-Plant","System")
' open .Frame2
DDEExecute channel, ".Frame2.openDialog"
' close DDE channel
DDETerminate (channel)
End Sub

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > Executing Methods with DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > Reading and Writing Values of Objects of Type
Variable with DDE

Reading and Writing Values of Objects of Type Variable with DDE


You can change the value of any Variable object in Plant Simulation via DDE. Just establish a DDE channel using the topic Data. Then, use the functions
ddePoke and ddeRequest to read or write the value.

The value received from Plant Simulation is a string and the value sent to Plant Simulation has to be a string.

Example: sub sampleDDE()


Dim channel As Long
' open DDE channel to Plant Simulation
channel = DDEInitiate("eM-Plant","Data")
' read .Frame2.Variable12
MsgBox DDErequest (channel,".Frame2.Variable12")
' write a new value to .Frame2.Variable12
DDEpoke channel,".Frame2.Variable12", "7"
' close DDE channel
DDETerminate (channel)
End Sub

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > Reading and Writing Values of Objects of Type
Variable with DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics

DDE Topics
Plant Simulation supports the DDE topics System, Data, and Info.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > Data

Data
Use the topic Data to set and to query the value of the global Variable. The Variable also supports hotlinks, compare Support DDE hotlinks.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > Data

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 187 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > Info

Info
You can query this information with the topic Info:
• Version: The version of Plant Simulation (matches the SimTalk method applicationVersion).
• Model: The name of the loaded model (matches the SimTalk function modelFile).
• Modelstate: The current state of the model. Return values are: loaded, empty, loading, unloading or error.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > Info

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > System

System
Use the topic System to call Plant Simulation methods with the function ddeExecute. In addition, the function ddeRequest allows you to query these values:
• Topics: A list of all supported topics separated by tab stops.
• Formats: A list of all supported file formats. For Plant Simulation this is only text.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Topics > System

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions

DDE Functions
Plant Simulation as a DDE server provides the functions initDDE and closeDDE.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions > initDDE

initDDE

Syntax: initDDE(Servername:<string>)

The function initDDE(servername) registers Plant Simulation under a name of your choice with the operating system.

Return Value
The return value has the data type boolean and tells if registering was successful (true) or not (false).

Example: print initDDE("eM-Plant2");

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions > initDDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions > closeDDE

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 188 of 570

closeDDE

Syntax: closeDDE

The function closeDDE unregisters the name, which you specified in the function initDDE, with the operating system, so that it cannot be accessed as a
DDE server any longer.

Return Value
The return value has the data type boolean.

Example: print closeDDE;

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as DDE Server > DDE Functions > closeDDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client

Plant Simulation as a DDE Client


Plant Simulation may also connect to another application as a DDE client and make the DDE server application execute commands, and read or write data.
The example shows how to connect to MS Access via SimTalk. Note that MS Access has to be started and running for this example to work. Consult the
documentation of your DDE server application for a list of supported topics and commands.

Example: -- SimTalk 2.0 notation


var channel: integer, topics: string
channel := ddeConnect("MSAccess","System")
-- Which topics does the DDE server provide?
topics := ddeRequest(channel, "Topics")
print topics;
' load database "MyDatabase.mdb"
DDEExecute(channel,"[OpenDatabase MyDatabase.mdb]",1000)
ddeDisconnect(channel)
' connect to the database
channel := ddeConnect("MSAccess", "MyDatabase.mdb")
' open form "myForm" from the database
DDEExecute(channel,"[OpenForm myForm]",1000)
ddeDisconnect(channel)

Example: -- SimTalk 1.0 notation


is
channel : integer; topics : string;
do
channel := ddeConnect("MSAccess","System");
-- Which topics does the DDE server provide?
topics := ddeRequest(channel, "Topics");
print topics;
' load database "MyDatabase.mdb"
DDEExecute(channel,"[OpenDatabase MyDatabase.mdb]",1000);
ddeDisconnect(channel);
' connect to the database
channel := ddeConnect("MSAccess", "MyDatabase.mdb");
' open form "myForm" from the database
DDEExecute(channel,"[OpenForm myForm]",1000);
ddeDisconnect(channel);
end;

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions

DDE Functions
Plant Simulation as a DDE client provides these functions for connecting to another application:

ddeAdvise ddeExecute

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 189 of 570

ddeConnect ddePoke

ddeDisconnect ddeRequest

ddeDisconnectAll ddeUnadvise

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeAdvise

ddeAdvise

Syntax: ddeAdvise(OpenedChannel:<integer>, Item:<string>, ModelPath:<string>)

The function ddeAdvise opens a hotlink to a connected server. When the value you entered changes, the server notifies Plant Simulation and it activates a
callback method. You can get the current value of this method with the function ddeRequest.

Parameters
• The parameter OpenedChannel of data type integer designates the opened channel.
• The parameter Item of data type string designates an item.
• The parameter ModelPath of data type string designates the absolute path to a method.
This function is called, whenever the item changes. Plant Simulation returns a number between 1 and 200, standing for the hotlink. Note that a maximum
of 200 hotlinks may be opened simultaneously. Plant Simulation returns 0 when this number is exceeded or when the hotlink could not be opened.

Return Value
The return value has the data type integer.

Example: -- SimTalk 2.0 notation


var channel, hotlink: integer;
channel := ddeConnect("eM-Plant","data");
hotlink := ddeAdvise(channel,".frame1.Variable", ".evaluate.method");

Example: -- SimTalk 1.0 notation


local channel,hotlink : integer;
channel := ddeConnect("eM-Plant","data");
hotlink := ddeAdvise(channel,".frame1.Variable", ".evaluate.method");

An activated method may look like this:

Example: print ddeRequest(channel,".frame1.Variable");

Related Topics
ddeUnadvise
ddeRequest

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeAdvise

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeConnect

ddeConnect

Syntax: ddeConnect(ServerApplication:<string>, Topic:<string>)

The function ddeConnect establishes a connection to another application and returns a channel number to be used for data transfer. You can then assign
this channel number, for example, to a Variable object of data type integer.

Parameters
• The parameter ServerApplication of data type string designates the name of the server application.
• The parameter Topic of data type string designates the topic, compare DDE Topics.
When Plant Simulation could not establish a connection, it returns 0. Note that a maximum of 10 simultaneous connections is possible. The return value
of a successful connection is a number between 1 and 10. If no more channels are available, Plant Simulation returns 0.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 190 of 570

Return Value
The return value has the data type integer.

Example: -- SimTalk 2.0 notation


var channel: integer
channel:=ddeConnect("eM-Plant","data")
print channel;

Example: -- SimTalk 1.0 notation


local channel : integer;
channel:=ddeConnect("eM-Plant","data");
print channel;

Related Topics
ddeDisconnect
ddeDisconnectAll

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeConnect

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeDisconnect

ddeDisconnect

Syntax: ddeDisconnect(NameOfConnection:<integer>)

The function ddeDisconnect terminates the connection designated by the parameter of data type integer.

Parameter
The parameter NameOfConnection of data type integer designates the name of the connection.

Return Value
The return value has the data type boolean.

Example: -- SimTalk 2.0 notation


var myChannel: integer
myChannel := ddeConnect("eM-Plant2","data")
print "data channel ",myChannel," is open"
-- data transfer is possible
ddeDisconnect(myChannel); -- no data transfer is possible

Example: -- SimTalk 1.0 notation


is
myChannel : integer;
do
myChannel := ddeConnect("eM-Plant2","data");
print "data channel ",myChannel," is open";
-- data transfer is possible
ddeDisconnect(myChannel); -- no data transfer is possible
end;

Related Topic
ddeConnect

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeDisconnect

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeDisconnectAll

ddeDisconnectAll

Syntax: ddeDisconnectAll

The function ddeDisconnectAll closes all open connections of Plant Simulation to other DDE servers.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 191 of 570

Related Topic
ddeConnect

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeDisconnectAll

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeExecute

ddeExecute

Syntax: ddeExecute(OpenedChannel:<integer>, Command:<string>, Timeout:<integer>)

The function ddeExecute sends a command via dynamic data exchange (DDE) to another application.

Parameters
• The parameter OpenedChannel of data type integer designates the number of the open channel.
• The parameter Command of data type string designates the command you want to send to the other application.
• The parameter TimeOut of data type integer designates is the timeout value in milliseconds. The format of the command is determined by the application
you are sending it to. Consult the application’s documentation for the correct syntax.

Return Value
The return value has the data type integer and specifies an error code, which is determined by the DDE server.

Example: -- SimTalk 2.0 notation


-- The example connects to the DDE server in Microsoft Excel and maximizes
-- the window of the application. Excel has to be started and running
-- for this example to work.

var channel: integer


channel := ddeConnect("Excel","Sheet1")
DDEExecute(channel,"[App.Maximize]",1000)
ddeDisconnect(channel)

Example: -- SimTalk 1.0 notation


-- The example connects to the DDE server in Microsoft Excel and maximizes
-- the window of the application. Excel has to be started and running
-- for this example to work.

is
channel : integer;
do
channel := ddeConnect("Excel","Sheet1");
DDEExecute(channel,"[App.Maximize]",1000);
ddeDisconnect(channel);
end;

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeExecute

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddePoke

ddePoke

Syntax: ddePoke(OpenedChannel:<integer>, Topic:<string>, Data:<string>, Timeout:<integer>)

The function ddePoke transfers data to a connected server.

Parameters
• The parameter OpenedChannel of data type integer designates the number of an open channel.
• The parameter Topic of data type string designates the name of the topic.
• The parameter Data of data type string designates the data to be transferred.
• The parameter Timeout of data type integer designates the time-out value in milliseconds.
A successful transmission returns 0, an unsuccessful one an internal DDE error number.

Return Value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 192 of 570

The return value has the data type integer.

Example: -- SimTalk 2.0 notation


var channel: integer
channel := ddeConnect("eM-Plant","data")
print ddePoke(channel,".Frame2.Variable12","9",1000)

Example: -- SimTalk 1.0 notation


is
channel : integer;
do
channel := ddeConnect("eM-Plant","data");
print ddePoke(channel,".Frame2.Variable12","9",1000);
end;

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddePoke

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeRequest

ddeRequest

Syntax: ddeRequest(OpenedChannel:<integer>, PathToObject:<string>)

The function ddeRequest gets an item of a connected server.

Parameters
• The parameter OpenedChannel of data type integer designates a channel that was opened successfully with the function ddeConnect.
• The parameter PathToObject of data type string designates the absolute path to the queried object. Plant Simulation returns the data as a string.

Return Value
The return value has the data type string.

Example: -- SimTalk 2.0 notation


var channel: integer
channel := ddeConnect("eM-Plant","data")
print ddeRequest(channel,".frame1.Variable")

Example: -- SimTalk 1.0 notation


is
channel : integer;
do
channel := ddeConnect("eM-Plant","data");
print ddeRequest(channel,".frame1.Variable");
end;

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeRequest

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeUnadvise

ddeUnadvise

Syntax: ddeUnadvise(NameOfHotlink:<integer>)

The function ddeUnadvise closes the hotlink designated by the parameter of data type integer that was opened by the function ddeAdvise.

Parameter
The parameter NameOfHotlink of data type integer designates the name of the hotlink.

Return Value
The return value has the data type boolean. Plant Simulation returns true when it succeeded in closing the link, false if it did not succeed.

Example: -- SimTalk 2.0 notation


var channel, hotlink: integer
channel := ddeConnect("eM-Plant","data")

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 193 of 570

hotlink:=ddeAdvise(channel,".frame1.Variable",".evaluate.method")
print ddeUnadvise(hotlink)

Example: -- SimTalk 1.0 notation


is
channel,hotlink : integer;
do
channel := ddeConnect("eM-Plant","data");
hotlink:=ddeAdvise(channel,".frame1.Variable",".evaluate.method");
print ddeUnadvise(hotlink);
end;

Related Topic
ddeAdvise

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Plant Simulation as a DDE Client > DDE Functions > ddeUnadvise

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Linking a Variable to Microsoft Word with DDE

Linking a Variable to Microsoft Word with DDE


Add any field function to your document to establish a DDE link between a Microsoft Word document and Plant Simulation. You might replace the field
function with this:

{DDE eM-Plant data .frame1.number}

In this case eM-Plant designates the name of the application, data the topic name, and .frame1.number the item name. Press the F9 key to update
the value of this link.
To create an automatic DDE hotlink, you might enter this field function:

{DDEAUTO eM-Plant data .frame1.number}

Then, data is updated automatically, whenever the specified value in Plant Simulation changes.

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Linking a Variable to Microsoft Word with DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Linking a Variable to Microsoft Excel with DDE

Linking a Variable to Microsoft Excel with DDE


To access data in Plant Simulation from Microsoft Excel, you might, for example, enter this function into a Microsoft Excel field:

='eM-Plant'|'data'!'.frame1.Variable'

Add-Ins Reference Help > Inter-Process Communication Interfaces > DDE > Linking a Variable to Microsoft Excel with DDE

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML

HTML
The HTML interface, which is integrated in Plant Simulation, allows you to control Plant Simulation from the Internet Explorer using the Calls for the HTML
Interface.
You might, for example, start Plant Simulation and enter http://localhost:30001/SC_LoadModel:Tutorial/Tutorial1.spp into the text
box Address to open the simulation model with the name Section1.spp.
• localhost is the name of your computer on which Plant Simulation is running.
• 30001 is the port number of the first instance of Plant Simulation you started.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 194 of 570

Related Topics
closeHTMLWindow
openHTMLBrowser
openHTMLWindow
portNumber

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface

Calls for the HTML Interface


The HTML interface provides these calls.

/SC_CallMethod /SC_OpenDialog

/SC_Execute closeHTMLWindow

/SC_Image openHTMLBrowser

/SC_LoadModel openHTMLWindow

/SC_LoadObject

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_CallMethod

/SC_CallMethod

Syntax: /SC_CallMethod:<path to a method>


/SC_CallMethod:<path to a method>|(<string)>|<URL>

The HTML link /SC_CallMethod executes the method designated by <path to a method>. Or you can enter a parameter of data type string.
The HTML window then shows the return value of the method. Note that the return value should be a string standing for a web site, at least
“<HTML></HTML>”. When no return value is passed, the HTML window shows the address designated by <URL>.

Example: <a href="http://localhost:30001/SC_CallMethod:.html.dispatcher|test|


http://www.siemens.com">

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_CallMethod

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_Execute

/SC_Execute

Syntax: /SC_Execute:<any Plant Simulation command>


/SC_Execute:<any Plant Simulation command>|<URL>

The HTML link /SC_Execute executes the command designated by <any Plant Simulation command>.
The HTML window shows the return value of the command. Note that the return value should be a string standing for a web site, at least
“<HTML></HTML>”. When no return value is passed, the HTML window shows the address designated by <URL>.

Example: <a href="http://localhost:30001/SC_Execute:.exitApplication">

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 195 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_Execute

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_Image

/SC_Image

Syntax: /SC_Image:<Plant Simulation object>


/SC_Image:<Plant Simulation object>|<icon_number>

The HTML link /SC_Image returns the active icon of the Plant Simulation object designated by <Plant Simulation object>. You can then use this link as the
source for a new icon.

Example: <img src="http://localhost:30001/SC_Image:.InformationFlow.TableFile">

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_Image

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_LoadModel

/SC_LoadModel

Syntax: /SC_LoadModel:<path to a Plant Simulation model>


/SC_LoadModel:<path to a Plant Simulation model>|<URL>

The HTML link /SC_LoadModel loads the Plant Simulation simulation model designated by <path to a Plant Simulation model>. The address designated by
<URL> will then be loaded into the HTML window. Enter the path to the object starting from the folder where Plant Simulation is installed.

Example: <a href="http://localhost:30001/SC_LoadModel:Models\Tutorial\Section1.spp|


http://www.siemens.com">

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_LoadModel

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_LoadObject

/SC_LoadObject

Syntax: /SC_LoadObject:<Path>
/SC_LoadObject:<Path>|<URL>

The HTML link /SC_LoadObject opens the Plant Simulation object designated by <Path> and then the address designated by <URL> in the HTML window.
Enter the path to the object starting from the folder where Plant Simulation is installed.

Example: <a href="http://localhost:30001/SC_LoadObject:Models\Car1\ShaftAssembly">


<a href="http://localhost:30001/SC_LoadObject:Models\Car1\ShaftAssembly|
http://www.siemens.com">

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_LoadObject

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_OpenDialog

/SC_OpenDialog

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 196 of 570

Syntax: /SC_OpenDialog:<Plant Simulation object>


/SC_OpenDialog:<Plant Simulation object>|<URL>

The HTML link /SC_OpenDialog opens the dialog of the Plant Simulation object designated by <Plant Simulation object>.

Example: <a href="http://localhost:30001/SC_OpenDialog:.Models.Car1.ShaftAssembly.spp">


<a href="http://localhost:30001/SC_OpenDialog:.Models.Car1.ShaftAssembly.spp|
http://www.siemens.com">

Add-Ins Reference Help > Inter-Process Communication Interfaces > HTML > Calls for the HTML Interface > /SC_OpenDialog

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC

OPC
The OPC interface is the interface between Plant Simulation and control and automation technology systems for accessing and exchanging data. The OPC
interface acts a a client and can read the control variable and the signals of PLC controls and provide other applications with data.
The simulation in Plant Simulation runs in real-time, as controls work with a real-time-timer and do not provide a fast forward function. Let’s say the external
application sets the value of a variable to right, then Plant Simulation might react with an exit control. You might use observer methods to react to values
provided by the external application.

The OPC interface supports OPC DA 2.0 and DA 3.0.

You can only address a 32-bit version of an OPC server with the 32-bit version of Plant Simulation.

You can only address a 64-bit version of an OPC server with the 64-bit version of Plant Simulation.

When no identical user account exists on both computers, no authentification can take place. To deactivate authentification, you can create the
following registry key of type DWORD and assign it the value 1: HKEY_CURRENT_USER/Software/Tecnomatix/Tecnomatix Plant Simulation
13.0/Settings/RPC_C_AUTHN_LEVEL_NONE. Please note that this might pose a security hole.

To add the OPC interface to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

Related Topics

Dialog Window of the OPC Interface Attributes of the OPC Interface

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 197 of 570

Methods of the OPC Interface Configuring DCOM for Remote Access

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface

Dialog Window of the OPC Interface


Double-click the icon of the OPC interface, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Active The Help Menu

Tab Attributes Name

Tab Communication Statistics Label

Tab User-defined Attributes Inheritance

The Navigate Menu OK

The View Menu Cancel

The Tools Menu Apply

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Active

Active
To activate the OPCInterface and to write status messages to the Console, select this. To deactivate it, clear it.
Instead, you can also right-click the OPCInterface object in the Frame and select Enable on the context menu. To deactivate it, select Disable on the context
menu.

SimTalk:
Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes

Tab Attributes
The tab Attributes provides the dialog items Host name, Server name, Items, Import Items, and Show Item Values.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Host name

Host name

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 198 of 570

Enter the name or the IP address of the host computer on which the OPC server runs. If the OPC server runs on the same computer as the OPCInterface or
as the PLC, you can leave this field empty.
When the OPC server is running remote on another host, you have to configure DCOM as described under Configuring DCOM for Remote Access.

SimTalk:
HostName

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Host name

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Server name

Server name
Enter the name of your OPC server. You might, for example, enter OPC.Simatic.Net or Matricon.OPCServer, etc.
Click this to open a list of all servers which are available via the host you entered. Selecting a server in the list inserts it into the text box server name.

SimTalk:
ServerName

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Server name

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Items

Items
To open the table into which you enter the OPC items, click this. Each row in this table represents a group.
• Enter the names of the groups into the cells below Group Name.
• Enter the time in milliseconds after which Plant Simulation updates the values into the cells below Update Interval.
If you do not want to be informed by a callback method, i.e., the Changed-Value Control, when the value of an item of the group changes, enter -1 as
the Update Interval. The group will then be passive, and the communication with the OPC server will be reduced.
• Enter the time in milliseconds into the cells below Write Interval.
When you enter a value greater than 0, Plant Simulation does not immediately transmit changes of OPC Items of this group via the method setItemValue,
to the OPC server, but only after the time you entered has elapsed. This way value changes of several items can be combined and transmitted to the
OPC server all at once, which saves time.

When you change the value of an OPC Item several times before the Write Interval has elapsed, then only the last value will be transmitted to the
OPC server. This saves additional time, but can cause unexpected and unwanted behavior. If, for example, you set a boolean value to true and
then reset it to false a short time after that, this change might possibly not arrive at the OPC server, i.e., the value remains constantly false.
Make sure to enter short enough write intervals in this case.

• Click Apply.
• Click in the cell below Group Name and press F2 to open the items list proper for this group. Then, define the items of that group in the sub-table. The
items, which you can enter, depend on the respective program running in the PLC control and on the OPC server you are using.

An example for a Siemens S7 PLC and the associated Siemens OPC server might look like this:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 199 of 570

• Enter the name of the item into the cells below Item Name.
• Select the type of the item in the cells below Type.

OPC data type Type Data type of the OPC Interface

B Uint8 Int1

Char Int8 Int1

W Uint16 Int2

INT Int16 Int2

DWORD Uint32 Int4

DINT Int32 Int4

X Bool Boolean

Real Real32 Real4, Real8

Time U14 Time

TOD Uint32 Int4

— — String

DT date not yet supported

• Enter an alias for the item into the cells below Alias.
• Enter the name of a Method in which you defined what is to happen into the cells below Changed-Value Control.
An Object Reference is preferable over long absolute paths as accessing an object reference is very fast. Object references to attribute methods are not
possible though.
Instead of a Method, you can also enter a global Variable. The changed value will then be written directly into the variable.
For an item of data type boolean you can also enter an object of type Checkbox as the Changed-Value Control.
The program passes two parameters to the Changed-Value Control that is called:
• The parameter Alias of data type string designates the name of the alias which is defined in the column Alias.
• The parameter CurrentValue of data type any designates the current value of the Item. If you know the data type of the value, you can also enter it
directly.
(item : string; value : any)
(item : string; value : boolean)

• Enter the Access Path. It suggests a data path to the server. The access path is an optional piece of information that can be provided by the client. As
its use is highly server-specific, we recommend to consult the documentation that came with your OPC server. The Siemens OPC server does not
need this information.

SimTalk:
getItems,
getItemValue,

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 200 of 570

setItems,
setItemValue

Related Topics
Number of changed-value control calls
Number of getItemValue calls
Number of setItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Import Items

Import Items
To import items from a Step7 file, click this. Then, select the.sdf file that you want to import in the dialog Open.
Next enter a connection string for all item to be imported. This string will then be appended in front of the names of all items. Finally, enter the name of the
callback method, which will be entered for those items, which are defined as exits in Step7.
The items will then be saved in a group with the name of the file without a file extension.

SimTalk:
addItem,
getItems,
getItemValue,
setItems,
setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Import Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Show Item Values

Show Item Values


To open a table that shows the values of the Items you defined, click this. After you selected the group name in the table that opens, the program shows the
values of the items alias, data type, and update interval of this group.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Attributes > Show Item Values

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 201 of 570

Tab Communication Statistics


The tab Communication Statistics provides these dialog items:

Number of changed-value control calls Time to get single item

Number of getItemValue calls Time to set multiple items

Number of setItemValue calls Time to get multiple items

Time to set single item

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
changed-value control calls

Number of changed-value control calls


Shows how often the Changed-Value Control, which you entered into the Items table, was called.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
changed-value control calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
getItemValue calls

Number of getItemValue calls


Shows how often the method getItemValue was called.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
getItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
setItemValue calls

Number of setItemValue calls


Shows how often the method setItemValue was called.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Number of
setItemValue calls

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 202 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to set
single item

Time to set single item


Shows how long it took the object OPC to transmit a single item to the OPC server.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to set
single item

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to get
single item

Time to get single item


Shows how long it took the object OPC to retrieve a single item from the OPC server.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to get
single item

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to set
multiple items

Time to set multiple items


Shows how long it took the object OPC to transmit multiple items to the OPC server.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to set
multiple items

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to get
multiple items

Time to get multiple items


Shows how long it took the object OPC to retrieve multiple items from the OPC server.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab Communication Statistics > Time to get
multiple items

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 203 of 570

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > Tab User-defined Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Navigate Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The View Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Tools Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Help Menu

The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 204 of 570

The Help Menu provides these menu commands:


Contents
Index
Help on Object

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Dialog Window of the OPC Interface > The Help Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface

Methods of the OPC Interface


The OPC interface provides:
• The methods addItem, getItems, getItemValue, setItems, and setItemValue.
• The Methods of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > addItem

addItem

Syntax: <path>.addItem(Item:<string>)

The method addItem defines access to the item designated by the argument <string> in the PLC.

Parameter
The parameter Item of data type string designates the item in the PLC.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 205 of 570

Return Value
The return value has the data type boolean.

Example: opcinterface.addItem("Random.INT4");

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > addItem

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > getItems

getItems

Syntax: <Path>.getItems(Table:<table>)

The method getItems returns the items which you defined in the Items table, and writes them into a table.

Parameter
The parameter Table of data type table designates the name of the table.

Example: -- SimTalk 2.0 notation


var MyItemsTable: table
opcinterface.getItems(MyItemsTable)

Example: -- SimTalk 1.0 notation


is
MyItemsTable : table;
do
opcinterface.getItems(MyItemsTable);
end;

Example: opcinterface.getItems(MyItemsTable);

Related Topics

Items table Number of changed-value control calls

setItems Number of getItemValue calls

setItemValue Number of setItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > getItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > getItemValue

getItemValue

Syntax: <Path>.getItemValue(ItemName:<string>[,FromCache:<boolean>])

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 206 of 570

The method getItemValue returns the current value of an item in the PLC.

Parameters
• The parameter ItemName of data type string designates the name of the item in the PLC. If you want to, you can also query the group name in addition
to the alias. You then have to type in the group name, a pipe symbol |, followed by the alias name.
• The parameter FromCache of data type boolean determines if the value it to be read from the cache (true) or from the server (false)

Return Value
The return value has the data type any.

Example: print opcinterface.getItemValue("Random.INT4");


print opcinterface.getItemValue("MyGroup|MyAlias");

Related Topics
Items table
setItemValue
Number of getItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > getItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > setItems

setItems

Syntax: <Path>.setItems(Table:<table>)

The method setItems sets the items in the Items table.


You can enter these items:

Parameter
The parameter Table of data type table designates the name of the table that contains the items.

Example: opcinterface.setItems("MyItemsTable");

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 207 of 570

Items table Number of changed-value control calls

getItems Number of getItemValue calls

setItemValue Number of setItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > setItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > setItemValue

setItemValue

Syntax: <Path>.setItemValue(Alias:<string>, NewValue:<any>

The method setItemValue sets the value of an item.

Parameters
• The parameter Alias of data type string designates the alias you defined.
If you want to, you can also enter the group name in addition to the alias. You then have to type in the group name, a pipe symbol |, followed by the alias
name.
• The parameter NewValue of data type any designates the value you defined.

Return Value
The return value has the data type boolean.

Example: opcinterface.setItemValue("Random.INT4",7);
opcinterface.setItemValue("MyGroup|MyAlias",5);

Related Topics
Items table
getItemValue
Number of setItemValue calls

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Methods of the OPC Interface > setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface

Attributes of the OPC Interface


The OPC interface provides:
• The attributes Active, HostName, and ServerName.
• The Attributes of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 208 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

opcInterface.HostName := "127.0.0.1"

• To get the value of an attribute, you might, for example, type:

print opcInterface.HostName
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > Active

Active

Syntax: <Path>.Active

The attribute Active activates the OPCInterface (true) or deactivates it (false).

Assignment Value
You can assign a value of data type boolean.

Example: opcInterface.Active := true;

Related Topic
Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > HostName

HostName

Syntax: <Path>.HostName

The attribute HostName sets the name or the IP address of the host computer on which the OPC server runs. If the OPC server runs on the same computer
as the OPCInterface or as the PLC, you do not have to assign a value.
When the OPC server is running remotely on another host, you have to configure DCOM as described under Configuring DCOM for Remote Access.

Assignment Value
You can assign a value of data type string.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 209 of 570

Example: opcInterface.HostName := "myOPChost";

Related Topic
Host name

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > HostName

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > ServerName

ServerName

Syntax: <Path>.ServerName

The attribute ServerName sets the Server name of the OPC server. You might, for example, enter OPC.Simatic.Net or Matricon.OPCServer, etc.

Assignment Value
You can assign a value of data type string.

Example: opcInterface.ServerName := "OPC.Simatic.Net";

Related Topic
Server name

Add-Ins Reference Help > Inter-Process Communication Interfaces > OPC > Attributes of the OPC Interface > ServerName

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT

SIMIT
The SIMIT interface provides the interface between Plant Simulation and process control devices, such as PLC controls, via SIMIT, which stands for
Simulation & Testing.
“SIMIT is an open platform for testing automation software. Using scalable models of the technical process, the correct functioning of the automation system
can be ensured. The result is greater planning security, closer adherence to schedules, reduced costs, and fewer risks, and means considerably better
budget adherence and absolute compliance with required quality standards.”

To add the SIMIT interface to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 210 of 570

Related Topics
Dialog Window of the SIMIT Interface
Methods of the SIMIT Interface
Attributes of the SIMIT Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface

Dialog Window of the SIMIT Interface


Double-click the icon of the SIMIT interface, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Active Name

Tab Attributes Label

Tab User-defined Attributes Inheritance

The Navigate Menu OK

The View Menu Cancel

The Tools Menu Apply

The Help Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Active

Active
To activate the SIMITInterface and to write status messages to the Console, select this. To deactivate it, clear it.
Instead, you can also right-click the SIMITInterface object in the Frame and select Enable on the context menu. To deactivate it, select Disable on the
context menu.

SimTalk:
Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes

Tab Attributes

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 211 of 570

The tab Attributes provides these dialog items:

Shared memory name Import Items

Update interval Show Item Values

Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Shared memory name

Shared memory name


Enter the name of the shared memory block. The SIMIT server has to run on the same computer as the SIMITInterface.

SimTalk:
SharedMemoryName

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Shared memory name

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Update interval

Update interval
Enter the time in milliseconds after which Plant Simulation updates the values, i.e., reads them from the shared memory and writes them back to it.

SimTalk:
UpdateInterval

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Update interval

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Items

Items
To open the table in which you define the SIMIT items, click this. Each row in this table represents a group.
• Enter the name of the item into the cells below Item Name.
• Select the type of the item in the cells below Type.

SIMIT data type Type Data type of the SIMIT Interface

BOOL BOOL

BYTE UI1 BYTE

WORD UI2 WORD

INT I2 INT

DWORD UI4 DWORD

DINT I4 DINT

REAL R4 REAL

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 212 of 570

• Enter an alias for the item into the cells below Alias.
• Enter the name of a Method in which you defined what is to happen into the cells below Changed-Value Control.
An Object Reference is preferable over long absolute paths as accessing an object reference is very fast. Object references to attribute methods are not
possible though.
Instead of a Method, you can also enter a global Variable. The changed value will then be written directly into the variable.
For an item of data type boolean you can also enter an object of type Checkbox as the Changed-Value Control.
The program passes two parameters to the Changed-Value Control that is called:
• The parameter ItemName of data type string designates the name of the alias which is defined in the column Alias.
• The parameter CurrentValue of data type any designates the current value of the Item. If you know the data type of the value, you can also enter it
directly.
(item : string; value : any)
(item : string; value : boolean)
• Select if the item is an input value or an output value.

SimTalk:
getItems,
getItemValue,
setItems,
setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Import Items

Import Items
To import items from a shared memory block provided by SIMIT, click this.

SimTalk:
getItems,
getItemsFromSimit,
setItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Import Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Show Item Values

Show Item Values


To open a table that shows the values of items alias, data type, and value, click this.

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab Attributes > Show Item Values

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab User-defined Attributes

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 213 of 570

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > Tab User-defined Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Navigate Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The View Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Tools Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 214 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Dialog Window of the SIMIT Interface > The Help Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface

Methods of the SIMIT Interface


The SIMITInterface provides:
• The methods getItems, getItemsFromSimit, getItemValue, setItems, and setItemValue.
• The Methods of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItems

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 215 of 570

getItems

Syntax: <Path>.getItems(Table:<table>)

The method getItems returns the items which you defined in the Items table, and writes them into a table.

Parameter
The parameter Table of data type table designates the name of the table.

Example: -- SimTalk 2.0 notation


var MyItemsTable: table
simitinterface.getItems(MyItemsTable)

Example: -- SimTalk 1.0 notation


is
MyItemsTable : table;
do
simitinterface.getItems(MyItemsTable);
end;

Example: simitinterface.getItems(MyItemsTable);

Related Topics
Items table
setItems
setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItemsFromSimit

getItemsFromSimit

Syntax: <Path>.getItemsFromSimit(Table:<table>)

The method getItemsFromSimit returns the items from the current shared memory.

Parameter
The parameter Table of data type table designates the table into which the method writes the items.

Example: -- SimTalk 2.0 notation


var MySimitItemsTable: table
simitinterface.getItemsFromSimit(MySimitItemsTable)

Example: -- SimTalk 1.0 notation


is
MySimitItemsTable : table;
do
simitinterface.getItemsFromSimit(MySimitItemsTable);
end;

Example: print simitinterface.getItemsFromSimit(MySimitItemsTable);

Related Topic
Import Items

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItemsFromSimit

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItemValue

getItemValue

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 216 of 570

Syntax: <Path>.getItemValue(ItemName:<string>)

The method getItemValue returns the current value of an item in the PLC.

Parameter
The parameter ItemName of data type string designates the name of the item in the PLC. If you want to, you can also query the group name in addition to
the alias. You then have to type in the group name, a pipe symbol |, followed by the alias name.

Return Value
The return value has the data type any.

Example: print simitinterface.getItemValue("Random.INT4");


print simitinterface.getItemValue("MyGroup|MyAlias");

Related Topics
Items table
setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > getItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > setItems

setItems

Syntax: <Path>.setItems(Table:<table>)

The method setItems sets the items in the Items table.

Parameter
The parameter Table of data type table designates the name of the table that contains the items.

Example: simitinterface.setItems("MyItemsTable");

Related Topics
Items table
getItems
setItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > setItems

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > setItemValue

setItemValue

Syntax: <Path>.setItemValue(ItemName:<string>, NewValue:<any>)


<Path>.setItemValue(ItemName:<string|string>, NewValue:<any> [,Asynchronous:<boolean>])

The method setItemValue sets the value of an item.

Parameter
• The parameter ItemName of data type string designates the alias you defined.
If you want to, you can also enter the group name in addition to the alias. You then have to type in the group name, a pipe symbol |, followed by the alias
name.
• The parameter NewValue of data type any designates the new value you defined.
• The optional parameter Asynchronous of data type boolean determines if data is transferred asynchronous or synchronous.
• To transfer data asynchronous, enter no value or true.
• To transfer data synchronous, enter false.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 217 of 570

Example: isimitinterface.setItemValue("Random.INT4",7);
simitinterface.setItemValue("MyGroup|MyAlias",5);

Related Topics
Items table
getItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Methods of the SIMIT Interface > setItemValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface

Attributes of the SIMIT Interface


The SIMITInterface provides:
• The attributes Active, SharedMemoryName, and UpdateInterval.
• The Attributes of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

simitinterface.HostName := "127.0.0.1"

• To get the value of an attribute, you might, for example, type:

print simitinterface.HostName
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > Active

Active

Syntax: <Path>.Active

The attribute Active activates the SIMITInterface (true) or deactivates it (false).

Assignment Value
You can assign a value of data type boolean.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 218 of 570

Example: SIMITInterface.Active := true;

Related Topic
Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > Active

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > SharedMemoryName

SharedMemoryName

Syntax: <Path>.SharedMemoryName

The attribute HostName sets the name of the shared memory. The SIMIT server has to run on the same computer as the SIMITInterface.

Assignment Value
You can assign a value of data type string.

Example: SIMITInterface.SharedMemoryName := "mySharedMemory";

Related Topic
Shared memory name

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > SharedMemoryName

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > UpdateInterval

UpdateInterval

Syntax: <Path>.UpdateInterval

The attribute UpdateInterval sets the time in milliseconds after which Plant Simulation updates the values, i.e., reads them from the shared memory and
writes them back to it.

Assignment Value
You can assign a value of data type integer.

Example: SIMITInterface.UpdateInterval := 100;

Related Topic
Update interval

Add-Ins Reference Help > Inter-Process Communication Interfaces > SIMIT > Attributes of the SIMIT Interface > UpdateInterval

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket

Socket
The object Socket provides a TCP/IP interface for Plant Simulation. It communicates with other applications, which have a socket interface.
Socket communication is the foundation of the most widespread communication software. Sockets are point-to-point connections, established during
initialization, allowing the online exchange of data. As the socket connection is directly based upon the TCP/IP protocol, it ensures fast communication
without much data overhead.
With socket connections one process works as a server with additional processes registering as clients. Plant Simulation can be a client as well a server.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 219 of 570

To add the object Socket to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topics

Exchanging Data via a Network Socket Methods of the Socket Interface

Dialog Window of the Socket Interface Attributes of the Socket Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface

Dialog Window of the Socket Interface


Double-click the icon of the object Socket, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the object,
double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

On The Help Menu

Tab Attributes Inheritance

Tab Sessions Name

Tab User-defined Attributes Label

The Navigate Menu OK

The View Menu Cancel

The Tools Menu Apply

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 220 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > On

On
To activate the object Socket as such, select this. If you are using it as a server socket , it then listens on the specified Port. If you are using
it as a client socket , it attempts to connect to a server.
Instead, you can also right-click the object Socket in the Frame and select Enable on the context menu. To deactivate it, select Disable on the context menu.

SimTalk:
On

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > On

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes

Tab Attributes
The tab Attributes provides these dialog items.

Protocol Callback method

Host Server socket

Port Client host

Max. connections Client port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Protocol

Protocol
Select the protocol for transmitting the data:
• When you select TCP, you have to select the check boxes On and Server socket for the server. For the client you have to select On
and clear Server socket . This establishes a connection across which the data will be exchanged. The TCP protocol ensures that the
data packages arrive at the destination.
• When you select UDP, you select the check boxes On and Server socket for the server. For the client you have to select On
and clear Server socket . You can now exchange data without a connection having to be established. This creates less overhead, but
does not guarantee that the data actually does arrive at the destination.

The object Socket supports the IPv6 protocol.

SimTalk:
TCP

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Protocol

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 221 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Host

Host
Enter the IP address of the computer with which you want to establish the connection. The number 127.0.0.1 designates the local host.

This setting applies when you are running the socket connection as a Server socket .

SimTalk:
Host

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Host

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Port

Port
Enter the port number with which the socket connection exchanges data with other applications. When you cleared Server socket , you have
to enter a local port number that is not already used in order to be able to select the setting On .
Use port numbers between 1025 and 32025, as port numbers up to and including the number 1024 designate standard services, such as telnet, ftp, etc.

SimTalk:
Port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Max. connections

Max. connections
Enter the maximum number of connections which can be active at any one time.

This setting applies when you are running the socket connection as a Server socket.

Plant Simulation can handle a maximum of 2000 socket connections at any one time.

SimTalk:
MaxConnections

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Max. connections

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Callback method

Callback method

Click , and select a Plant Simulation Method. Enter the source code of the callback method. The program calls it when it receives data.

Parameters
During the call two parameters are passed to the method.
• The parameter ChannelNumber contains the channel number of the connection (data type integer) for the protocol TCP or the Internet address of the
client (data type string) for the protocol UDP.
• The parameter ReceivedMessage contains the received message. The parameter can be of data type string, it can be an array of data type integer, or a
list of data type integer.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 222 of 570

Example: -- SimTalk 2.0 notation


param Host: string, msg: integer[])
for var i := 1 to msg.dim
print msg[i]
next

Example: -- SimTalk 1.0 notation


(Host: string; msg: integer[])
is
do
for local i := 1 to msg.dim loop
print msg[i];
next;
end;

Instead, you can also right-click in the text box. Then, select Create Control on the context menu to create a control method, which is a user-defined attribute
of data type method of this object:
• Select Create Control. Plant Simulation then inserts self.CallbackMethod. Or
• Enter a meaningful name into the text box and select Create Control. Plant Simulation then inserts
self.Name_you_entered_for_the_control.
Enter the source code of this control into the Method that opens.
• To delete this control, delete the user-defined attribute; deleting the name from the text box just deletes the name, but keeps the user-defined attribute.

To open the dialog of the object, whose name you entered into the text box, press the F2 key.

SimTalk:
CallBackMethod

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Callback method

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Server socket

Server socket
To use the object Socket as a server socket, select this. To use it as a client socket, clear the check box.

SimTalk:
ServerSocket

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Server socket

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Client host

Client host
Enter the IP address of the client host computer with which you want to establish the connection.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 223 of 570

This setting applies when you are not running the socket connection as a Server socket but as a client socket .

SimTalk:
ClientHost

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Client host

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Client port

Client port
Enter the port number with which the socket connection exchanges data with client applications. When you cleared Server socket , you have
to enter a local port number that is not already used in order to be able to select the setting On .
Use port numbers between 1025 and 32025, as port numbers up to and including the number 1024 designate standard services, such as telnet, ftp, etc.

This setting applies when you are not running the socket connection as a Server socket but as a client socket .

SimTalk:
ClientPort

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Attributes > Client port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Sessions

Tab Sessions
The Socket interface shows the active connections on the tab Sessions. It lists the name of the host and, separated by a colon, the internal identifying
number for each connection. When the object Socket works in Server socket mode , only this connection to the server socket process is
possible.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab Sessions

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 224 of 570

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > Tab User-defined Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Navigate Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The View Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Tools Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 225 of 570

Help on Object

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Dialog Window of the Socket Interface > The Help Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface

Methods of the Socket Interface


The Socket interface provides:
• The methods broadcast, getReceiveBufferSize, getSendBufferSize, setReceiveBufferSize, setSendBufferSize, write, writeArray, writeByte, writeNullByte,
and writeString.
• The Methods of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > broadcast

broadcast

Syntax: <Path>.broadcast(Message:<string>)

The method broadcast sends a message to all connected processes when the Socket interface is not working in Server socket mode .

Parameter
The parameter Message of data type string designates the message.

Return Value
The return value has the data type boolean.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 226 of 570

Example: Socket.broadcast("The simulation is finished.");

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > broadcast

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > getReceiveBufferSize

getReceiveBufferSize

Syntax: <Path>.getReceiveBufferSize(Channel:<integer>)

The method getReceiveBufferSize returns the size of the receiving buffer of the object Socket.

Parameter
The parameter Channel of data type integer designates the number of the channel.

Return Value
The return value has the data type integer.

Example: print Socket.getReceiveBufferSize(3);

Related Topic
setReceiveBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > getReceiveBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > getSendBufferSize

getSendBufferSize

Syntax: <Path>.getSendBufferSize(Channel:<integer>)

The method getSendBufferSize returns the size of the sending buffer of the object Socket.

Parameter
The parameter Channel of data type integer designates the number of the channel.

Return Value
The return value has the data type integer.

Example: print Socket.getSendBufferSize(2);

Related Topic
setSendBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > getSendBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > setReceiveBufferSize

setReceiveBufferSize

Syntax: <Path>.setReceiveBufferSize(Channel:<integer>, BufferSize:<integer>)

The method setReceiveBufferSize sets the size of the receiving buffer of the object Socket in bytes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 227 of 570

Parameters
• The parameter Channel of data type integer designates the number of the channel.
• The parameter BufferSize of data type integer designates the size of the buffer.

Return Value
The return value has the data type boolean.

Example: Socket.setReceiveBufferSize(3,2054);

Related Topic
getReceiveBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > setReceiveBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > setSendBufferSize

setSendBufferSize

Syntax: <Path>.setSendBufferSize(Channel:<integer>, BufferSize:<integer>)

The method setSendBufferSize sets the size of the sending buffer of the object Socket in bytes.

Parameters
• The parameter Channel of data type integer designates the number of the channel.
• The parameter BufferSize of data type integer designates the size of the buffer.

Return Value
The return value has the data type boolean.

Example: Socket.setSendBufferSize(1,1290);

Related Topic
getSendBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > setSendBufferSize

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > write

write

Syntax: <Path>.write([Channel:<integer>,] Message:<string>)

The method write sends messages to other Plant Simulation processes.


When the object Socket is working in Server socket mode , the channel number is 0.
To send a null byte at the end of the string, you can use the method writeNullByte.

Parameters
• The optional parameter Channel of data type integer designates the number of the channel.
• The parameter Message of data type string designates the message that you want to send.

Return Value
The return value has the data type boolean.

Example: Socket.write(3,"crankshaft:red:6");

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > write

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 228 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeArray

writeArray

Syntax: <Path>.writeArray(Parameter:<any> [,Parameter:<any>,P arameter:<any>])

The method writeArray sends data to another process.

Parameters for the TCP Protocol with Server Socket Cleared (Client)

Syntax: <Path>.writeArray(ByteArray:<integer[]>)

The parameter byteArray of data type integer designates the data which is contained in an integer array or in a list of data type integer.

Return Value
The return value has the data type boolean.

Example: Client.writeArray(makeArray(12, 48, 13));

Parameters for the TCP Protocol with Server Socket Checked (Server)

Syntax: <Path>.writeArray(Channel:<integer>, ByteArray:<integer[]>)

The parameter Channel of data type integer sets the client connection and the parameter byteArray designates the data which is contained in an integer
array or in a list of data type integer.

Return Value
The return value has the data type boolean.

Example: Server.writeArray(1, makeArray(12, 48, 13));

Parameters for the UDP Protocol

Syntax: <Path>.writeArray(ByteArray:<integer[]>)

Syntax: <Path>.writeArray(RemotePort:<integer>, RemoteHost:<string>, ByteArray:<integer[]>)

If you specify one parameter, it designates the data which is contained in an integer array or in a list of data type integer.
If you specify three parameters, the first parameter designates the remote port number. The second parameter designates the remote host name. The third
parameter designates the data which is contained in an integer array or in a list of data type integer.

Return Value
The return value has the data type boolean.

Example: Socket.writeArray(makeArray(12, 48, 13));


Socket.writeArray(30000, "Hal9000", makeArray(12, 48, 13));

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeArray

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeByte

writeByte

Syntax: <Path>.writeByte([Channel:<integer>,] ByteCode:<integer>)

The method writeByte sends bytes to other processes.

Parameters
• The optional parameter Channel of data type integer designates the number of the channel.
• The parameter ByteCode of data type integer designates the byte code you want to send.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 229 of 570

When the object Socket is set to Server socket , the channel number is 0.
To send a null byte at the end of the string, you can use the method writeNullByte.

Return Value
The return value has the data type boolean.

Example: Socket.writeByte(3,6);

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeByte

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeNullByte

writeNullByte

Syntax: <Path>.writeNullByte([Channel:<integer>,] Message:<string>)

The method writeNullByte sends messages to other processes.


When the object Socket is set to Server socket , the channel number is 0.
As compared to the method write, Plant Simulation in addition sends a null byte at the end of the string.

Parameters
• The optional parameter Channel of data type integer designates the number of the channel.
• The parameter Message of data type string designates the message you want to send.

Return Value
The return value has the data type boolean.

Example: Socket.writeNullByte(4,"crankshaft:blue:2");

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeNullByte

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeString

writeString

Syntax: <Path>.writeString([Channel:<integer>,] Message:<string>)

The method writeString sends strings to other Plant Simulation processes.


Note that this method ensures that the string is received as a whole, i.e., is not split up or merged. To ensure this, the message has a special format, which
makes it non-useful when sending a string to a non-Plant Simulation process. When you are running the object Socket as a Server socket ,
the channel number is 0.

Parameters
• The optional parameter Channel of data type integer designates the number of the channel.
• The parameter Message of data type string designates the message you want to send.

Return Value
The return value has the data type boolean.

Example: Socket.writeString(1,"fenderFrontLeft:silver:1");

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Methods of the Socket Interface > writeString

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 230 of 570

Attributes of the Socket Interface


The Socket interface provides:
• The attributes CallBackMethod, ClientHost, ClientPort, Host, MaxConnections, On, Port, ServerSocket, and TCP.
• The Attributes of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

Socket.Host := "127.0.0.1"

• To get the value of an attribute, you might, for example, type:

print Socket.Host
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > CallBackMethod

CallBackMethod

Syntax: <Path>.CallBackMethod

The attribute CallBackMethod sets the callback method of the object Socket.
Plant Simulation calls it when it receives data.
During the call two parameters are passed to the method:
• The first parameter contains the channel number of the connection (data type integer) for the protocol TCP or the Internet address of the client (data type
string) for the protocol UDP.
• The second parameter contains the contents of the received message. The parameter can be of data type string, it can be an array of data type integer,
or a list of data type integer.

Assignment Value
You can assign a value of data type object.

Example: -- SimTalk 2.0 notation


param ChannelNumber: integer, ReceivedMessage: string
print "Message from channel", channelNo
print "Message: ", message

Example: -- SimTalk 1.0 notation


(ChannelNumber: integer; ReceivedMessage: string)
is
do
print "Message from channel", channelNo;
print "Message: ", message;
end;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 231 of 570

Example: -- SimTalk 2.0 notation


-- writes the value to the global variable ’MessageReceived’
if strLen(SocketMessage) = 1
MessageReceived := to_str(ascii(SocketMessage)) -- byte received
else
MessageReceived := to_str(SocketMessage) -- string received
end
-- writes the message to the Plant Simulation Console
print "--------------------------------------------------------------------"
print self
print "Message: The number ", MessageReceived, " was received at ", sysdate

Example: -- SimTalk 1.0 notation


is
do
-- writes the value to the global variable ’MessageReceived’
if strLen(SocketMessage) = 1 then
MessageReceived := to_str(ascii(SocketMessage)); -- byte received
else
MessageReceived := to_str(SocketMessage); -- string received
end;
-- writes the message to the Plant Simulation Console
print "--------------------------------------------------------------------";
print self;
print "Message: The number ", MessageReceived, " was received at ", sysdate;
end;

Example: -- SimTalk 2.0 notation


param Host: string, msg: integer[] - Protocol UDP
for var i := 1 to msg.dim
print msg[i]
next

Example: -- SimTalk 1.0 notation


(Host: string; msg: integer[]) - Protocol UDP
is
do
for local i := 1 to msg.dim loop
print msg[i];
next;
end;

Example: -- SimTalk 2.0 notation


Socket.CallBackMethod := &SocketMethod

Example: -- SimTalk 1.0 notation


Socket.CallBackMethod := ref(SocketMethod);

Related Topic
Callback method

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > CallBackMethod

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ClientHost

ClientHost

Syntax: <Path>.ClientHost

The attribute ClientHost sets the IP address of the client host computer with which you want to establish the connection.

This setting applies when you are not running the socket connection as a Server socket but as a client socket .

Assignment Value
You can assign a value of data type string.

Example: MySocket.ClientHost := "128.0.0.1";

Related Topic
Client host

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 232 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ClientHost

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ClientPort

ClientPort

Syntax: <Path>.ClientPort

The attribute ClientPort sets the port number with which the socket connection exchanges data with client applications. When you cleared Server socket
, you have to enter a local port number that is not already used in order to be able to select the setting On .
Use port numbers between 1025 and 32025, as port numbers up to and including the number 1024 designate standard services, such as telnet, ftp, etc.

This setting applies when you are not running the socket connection as a Server socket but as a client socket .

Assignment Value
You can assign a value of data type integer.

Example: Socket.ClientPort := 30000;

Related Topic
Client port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ClientPort

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > Host

Host

Syntax: <Path>.Host

The attribute Host sets the IP address of the host computer with which you want to establish the connection. The number 127.0.0.1 designates the local
host.

This setting applies when you are running the socket connection in Server socket mode.

Assignment Value
You can assign a value of data type string.

Example: Socket.Host := "127.0.0.1";

Related Topic
Host

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > Host

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > MaxConnections

MaxConnections

Syntax: <Path>.MaxConnections

The attribute MaxConnections sets the maximum number of client connections (sessions), which can connect to the active server socket. Note that each
and every connection uses a handle of the operating system and the number of these handles is limited.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 233 of 570

This setting applies when you are not running the socket connection in Server socket mode.

Plant Simulation can handle a maximum of 2000 socket connections at any one time.

Assignment Value
You can assign a value of data type integer.

Example: Socket.MaxConnections := 7;

Related Topic
Max. connections

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > MaxConnections

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > On

On

Syntax: <Path>.On

The attribute On activates the object Socket as such (true) or deactivates it (for). If you are using it as a server socket , it then listens on
the specified Port. If you are using it as a client socket , it attempts to connect to a server.

Assignment Value
You can assign a value of data type boolean.

Example: Socket.on := true;

Related Topic
On

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > On

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > Port

Port

Syntax: <Path>.Port

The attribute Port sets the port number with which the socket connection exchanges data. When you cleared Server socket , you have to
enter a local port number that is not already used in order to be able to select the setting On .
Use port numbers between 1025 and 32025, as port numbers up to and including the number 1024 designate standard services, such as telnet, ftp, etc.

Assignment Value
You can assign a value of data type integer.

Example: Socket.Port := 31111;

Related Topic
Port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > Port

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ServerSocket

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 234 of 570

ServerSocket

Syntax: <Path>.ServerSocket

The attribute ServerSocket sets if the object Socket works as a server socket (true) or as a client socket (false).

Assignment Value
You can assign a value of data type boolean.

Example: MySocket.ServerSocket := false;

Related Topic
Server socket

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > ServerSocket

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > TCP

TCP

Syntax: <Path>.TCP

The attribute TCP sets if Socket transmits data using the TCP Protocol (true) or the UDP protocol (false).
• When you select TCP, you have to select the check boxes On and Server socket for the server. For the client you have to select On
and clear Server socket . This establishes a connection across which the data will be exchanged. The TCP protocol ensures that
the data packages arrive at the destination.
• When you select UDP, you select the check boxes On and Server socket for the server. For the client you have to select On
and clear Server socket . You can now exchange data without a connection having to be established. This creates less overhead, but
does not guarantee that the data actually does arrive at the destination.

The object Socket supports the IPv6 protocol.

Assignment Value
You can assign a value of data type boolean.

Example: Socket.TCP := true;

Add-Ins Reference Help > Inter-Process Communication Interfaces > Socket > Attributes of the Socket Interface > TCP

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter

Teamcenter
The Teamcenter interface is the interface between Plant Simulation and Teamcenter for accessing and exchanging data.

To add the Teamcenter interface to the Class Library, click Manage Class Library > Basic Objects > InformationFlow on the Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 235 of 570

The Teamcenter interface supports Teamcenter versions 10 to 10.3. The Teamcenter interface might work together with higher versions of
Teamcenter, although we cannot guarantee this.

To use the Plant Simulation-Teamcenter-Interface the .NET Framework 2.0 needs to be installed on your computer. In addition, the Teamcenter 9.1
client or the Teamcenter Client Communication System (TCCS) needs to be installed on your computer.

The figure below gives a general overview about data exchange between Teamcenter and Plant Simulation.

Teamcenter provides product data, process data, and working area data. Your Teamcenter colleague assembles this data via the Collaboration Context in
Teamcenter. He then exports a snapshot of the data frozen at a certain point in time via the application interface, which you can then select in Plant
Simulation under Application interface. The data is provided in PLM XML format, which you can then import into a Plant Simulation table with the
Teamcenter interface. You can then use this data, together with the JT files that were exported from Teamcenter, as input data for your simulation models in
Plant Simulation.
Using the Style sheet you can format the data of the exported PLM XML file in a way that the data relevant for the simulation can be arranged in a
simple table structure. This can then be imported into Plant Simulation.

The folder Teamcenter within the installation folder of Tecnomatix Plant Simulation contains an XML file with a sample configuration of the transfer mode,
i.e., of the traversal within the Teamcenter structures for processes, for parts, and for resources.
Your Teamcenter colleague can import this file into Teamcenter. It then appends the list of the available transfer modes by those that the Teamcenter
specialist can use to provide the correct data for exporting from Teamcenter. This XML file is intended for being manually imported into Teamcenter. It will
not be used or evaluated automatically. The file is intended for providing help about the format to be used and as a starting point for working with the
Teamcenter interface.

Related Topics

Dialog Window of the Teamcenter Interface Attributes of the Teamcenter Interface

Methods of the Teamcenter Interface File > Teamcenter

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 236 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface

Dialog Window of the Teamcenter Interface


Double-click the icon of the Teamcenter interface, which you inserted into a Frame, to open its dialog window. To change the properties of the Class of the
object, double-click it in the Class Library or on the tab Information Flow in the Toolbox.

Related Topics

Tab Connection The Help Menu

Tab Import Inheritance

Tab Export Name

Tab User-defined Attributes Label

The Navigate Menu OK

The View Menu Cancel

Tab User-defined Attributes Apply

The Tools Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection

Tab Connection
The tab Connection provides the following dialog items. The both apply to importing data from Teamcenter as well as to exporting data to Teamcenter.

Server URL User name

Application interface type Password

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Server URL

Server URL
Enter the server URL of the host computer on which Teamcenter runs. The default server URL is http://localhost:7001/tc.
When the connection with the server is established via HTTPS in encrypted mode, the respective certificate has to exist in the Windows Certificate
Store. (Control Panel > Internet Options > Content > Certificates.)

SimTalk:
ServerURL

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Server URL

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Application
interface type

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 237 of 570

Application interface type


Enter the name of the application interface type. By default this is PSI2PlantSimulation_AI.

SimTalk:
ApplicationInterfaceType

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Application
interface type

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > User name

User name
Enter the user name with which you want to log on to Teamcenter. Plant Simulation saves the user name in the model file.

If you do not enter it here, you have to enter the User name in the Teamcenter login dialog every time you want to log on to Teamcenter.

SimTalk:
UserName

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > User name

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Password

Password
Enter the password with which you want to log on to Teamcenter. Plant Simulation saves the password in the model file.

If you do not enter it here, you have to enter the Password in the Teamcenter login dialog every time you want to log on to Teamcenter.

SimTalk:
setPassword

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Connection > Password

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import

Tab Import
The tab Import provides these dialog items:

Application interface Directory

Sync Style sheet

Import Table

Retrieve JT files

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 238 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Import

Import
To log on to the Teamcenter database and to import items, click this. Then, enter your User name and your Password for Teamcenter into the Teamcenter
Login dialog that opens.
In case you entered a User name and a Password on the tab Connection, Plant Simulation uses this information to log in. Otherwise Plant Simulation
opens the login dialog.

In case you entered an Application interface and a Sync on the tab Import, Plant Simulation uses this information to import data from Teamcenter.
Otherwise Plant Simulation opens a dialog which shows all available application interfaces. Select one and then select a sync that belongs to this
application interface.

SimTalk:
login,
queryApplicationInterfaces,
querySyncs,
retrieveData,
selectSyncFromDialog

User name

Enter the user name with which you want to log on to Teamcenter.

If you do not enter your User name on the tab Connection, you have to enter it here every time you want to log on to Teamcenter.

SimTalk:
UserName

Password

Enter the password with which you want to log on to Teamcenter.

If you do not enter your Password on the tab Connection, you have to enter it here every time you want to log on to Teamcenter.

SimTalk:
setPassword

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Import

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 239 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Application
interface

Application interface
Enter the name of the application interface to which the Sync belongs which you would like to import from Teamcenter. If you want to select the sync and
the application interface from a dialog when importing data, just leave the text box empty. Note that you also have to enter the sync when you enter the
application interface.

SimTalk:
ApplicationInterface,
Sync,

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Application
interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Sync

Sync
Enter the name of the sync, which you would like to import from Teamcenter. If you want to select the sync and the application interface from a dialog
when importing data, just leave the text box empty. Note that you also have to enter the Application interface when you enter the sync.

SimTalk:
Sync,
ApplicationInterface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Sync

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Retrieve JT files

Retrieve JT files
To retrieve the respective JT files in addition to the PLM XML files from Teamcenter, select this.

SimTalk:
RetrieveJTFiles

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Retrieve JT files

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Directory

Directory
Enter the name of the directory into which the PLM XML file and the JT files will be copied or click the button and select the directory.

SimTalk:
Directory

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Directory

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 240 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Style sheet

Style sheet
Enter the name of the style sheet which you want to use when copying data from Teamcenter or click the button and select the style sheet.
The style sheet allows you to format the data of the exported PLM XML file in a way that the data relevant for the simulation can be arranged in a simple
table structure. This can then be imported into the Plant Simulation Table.

SimTalk:
StyleSheet

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Style sheet

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Table

Table
Enter the name of the Plant Simulation table file into which you want to import the PLM XML data, or click the button and navigate to the folder in which the
table file is located.

SimTalk:
DataTable

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Import > Table

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export

Tab Export
The tab Import provides the dialog items Export, Html Report, and Target folder.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Export

Export
To log on to the Teamcenter database to export a Plant Simulation HtmlReport to Teamcenter, click this. Then, enter your User name and your Password for
Teamcenter into the Teamcenter Login dialog that opens.
In case you entered a User name and a Password on the tab Connection, Plant Simulation does not open the login dialog but uses the login data which you
entered.

SimTalk:
exportReport,
login

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Export

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Html Report

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 241 of 570

Html Report
Enter the path to the Plant Simulation HtmlReport, which you would like to export to Teamcenter, or click the button and select the Report in the dialog that
opens.

SimTalk:
Report

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Html Report

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Target folder

Target folder
Enter the Teamcenter target folder in which the Plant Simulation HtmlReport will be stored. This folder has to be a sub-folder of the folder newstuff of the
user who logged on to Teamcenter.

SimTalk:
TargetFolder

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab Export > Target folder

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab User-defined Attributes

Tab User-defined Attributes


Define your own attributes as described under the Tab User-defined.

Related Topics

Create a User-defined Attribute Manually getAttrNo

Create a User-defined Attribute During the Simulation getAttrType

New getAttrValue

Edit numAttr

Delete setAttrType

createAttr setAttrValue

deleteAttr ConnectTo3D

getAttrName InheritValue

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > Tab User-defined Attributes

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 242 of 570

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Navigate Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The View Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Tools Menu

The Tools Menu


The Tools Menu provides these menu commands:
Edit Controls
Edit Observers
3D

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Tools Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Help Menu

The Help Menu


The Help Menu provides these menu commands:
Contents
Index
Help on Object

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Dialog Window of the Teamcenter Interface > The Help Menu

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface

Methods of the Teamcenter Interface


The Teamcenter interface provides:
• The methods exportReport, login, logout, queryApplicationInterfaces, querySyncs, retrieveData, selectSyncFromDialog, and setPassword.
• The Methods of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 243 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > exportReport

exportReport

Syntax: <Path>.exportReport(Report:<object>,FolderName:<string>)

The method exportReport exports a Plant Simulation HtmlReport.

Parameters
• The parameter Report of data type object designates the report.
• The parameter FolderName of data type string designates the Teamcenter folder into which you want to save the Report.
The method creates a dataset item in Teamcenter that contains the HTML page of the exported HtmlReport. Plant Simulation sets the name of the dataset
to the label or name of the Report.

Example: Teamcenter.exportReport(MyReport,"MyTargetFolder");

Related Topics
Html Report
Target folder
Export

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > exportReport

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > login

login

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 244 of 570

Syntax: <Path>.login(UserName:<string>, Password:<string>)

The method login establishes a connection with the Teamcenter database.

Parameters
• The parameter UserName of data type string designates the User name.
• The parameter Password of data type string designates the Password.

Return Value
The return value has the data type boolean (true if the application was successful).

Example: Teamcenter.login("MyUserName","MyPassword123");

Related Topics
Import
logout

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > login

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > logout

logout

Syntax: <Path>.logout

The method logout terminates the connection with the Teamcenter database.

Example: Teamcenter.logout;

Related Topics
Import
login

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > logout

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > queryApplicationInterfaces

queryApplicationInterfaces

Syntax: <Path>.queryApplicationInterfaces(ResultsTable:<table>)

The method queryApplicationInterfaces returns the available application interfaces.

Parameter
The parameter ResultsTable of data type table designates the table file into which the object designated by <Path> writes the application interfaces.

Example: Teamcenter.queryApplicationInterfaces(MyTable);

Related Topics
Application interface
querySyncs

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > queryApplicationInterfaces

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 245 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > querySyncs

querySyncs

Syntax: <Path>.querySyncs(AINo:<integer>, ResultsTable:<table>)

The method querySyncs returns the Teamcenter syncs for the designated ApplicationInterface. You first have to query the application interface with the
method queryApplicationInterfaces.

Parameters
• The parameter AINo of data type integer designates the Teamcenter application interface for which you want to query syncs. The integer value is the
position of the application interface in the table into which the method queryApplicationInterfaces wrote all available application interfaces. Note that the
position starts with the number 0, compare the example below.
• The parameter ResultsTable of data type table designates the table into which Plant Simulation writes the names of the available syncs.

Example: -- SimTalk 2.0 notation


Teamcenter.login
Teamcenter.queryApplicationInterfaces(MyTable)
MyTable.CursorY := 1
if MyTable.find("My application interface")
Teamcenter.querySyncs(MyTable.CursorY-1, MyTable)
MyTable.CursorY := 1
if MyTable.find("My sync")
Teamcenter.retrieveData(MyTable.CursorY-1)
end
Teamcenter.logout

Example: -- SimTalk 1.0 notation


Teamcenter.login;
Teamcenter.queryApplicationInterfaces(MyTable);
MyTable.CursorY := 1;
if MyTable.find("My application interface") then
Teamcenter.querySyncs(MyTable.CursorY-1, MyTable);
MyTable.CursorY := 1;
if MyTable.find("My sync") then
Teamcenter.retrieveData(MyTable.CursorY-1);
end;
end;
Teamcenter.logout;

Related Topics
Sync
queryApplicationInterfaces

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > querySyncs

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > retrieveData

retrieveData

Syntax: <Path>.retrieveData([SyncNo:<integer>, XMLFileName:<string>])

The method retrieveData retrieves data from the Teamcenter database.

Parameters
• The optional parameter SyncNo of data type integer designates the number of the Teamcenter sync. If you do not enter the parameter, you will then have
to set the attributes ApplicationInterface and Sync first.
You get the number of the Teamcenter sync by either calling the method selectSyncFromDialog, or by calling the methods queryApplicationInterfaces and
querySyncs one after the other.
• The optional parameter XMLFileName of data type string designates the file name of the XML file into which Plant Simulation writes the data.

Return Value
The return value has the data type string.

Example: -- SimTalk 2.0 notation


Teamcenter.login
Teamcenter.queryApplicationInterfaces(MyTable)
MyTable.CursorY := 1
if MyTable.find("My application interface")
Teamcenter.querySyncs(MyTable.CursorY-1, MyTable)
MyTable.CursorY := 1

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 246 of 570

if MyTable.find("My sync")
Teamcenter.retrieveData(MyTable.CursorY-1);
end
Teamcenter.logout

Example: -- SimTalk 1.0 notation


Teamcenter.login;
Teamcenter.queryApplicationInterfaces(MyTable);
MyTable.CursorY := 1;
if MyTable.find("My application interface") then
Teamcenter.querySyncs(MyTable.CursorY-1, MyTable);
MyTable.CursorY := 1;
if MyTable.find("My sync") then
Teamcenter.retrieveData(MyTable.CursorY-1);
end;
end;
Teamcenter.logout;

Related Topics
ApplicationInterface
Sync
selectSyncFromDialog
queryApplicationInterfaces
querySyncs

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > retrieveData

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > selectSyncFromDialog

selectSyncFromDialog

Syntax: <Path>.selectSyncFromDialog([byRef SyncName:<string>, byRef AIName:<string>])

The method selectSyncFromDialog opens the dialog Teamcenter Sync.

Parameters
• The method writes the name of the selected sync into the optional parameter SyncName of data type string.
• The method writes the name of the selected application interface into the optional parameter AIName of data type string.

Return Value
The return value has the data type integer. You can then pass this value to the method retrieveData.
The return value is -1 when you close the dialog by clicking Cancel.

Example: -- SimTalk 2.0 notation


Teamcenter.login;
var sync : integer := Teamcenter.selectSyncFromDialog
if sync /= -1 -- note that -1 means that the user clicked ‘Cancel’
Teamcenter.retrieveData(sync)
end
Teamcenter.logout

Example: -- SimTalk 1.0 notation


Teamcenter.login;
local sync : integer := Teamcenter.selectSyncFromDialog;
if sync /= -1 then -- note that -1 means that the user clicked ‘Cancel’
Teamcenter.retrieveData(sync);
end;
Teamcenter.logout;

Related Topic
Sync

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > selectSyncFromDialog

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 247 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > setPassword

setPassword

Syntax: <Path>.setPassword(Password:<string>)

The method setPassword sets the password with which you log on to the Teamcenter database.

Parameter
The parameter Password of data type string designates the password.

Return Value
The return value has the data type boolean.

Example: Teamcenter.setPassword("MyPassword123");

Related Topic
Password

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Methods of the Teamcenter Interface > setPassword

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface

Attributes of the Teamcenter Interface


The Teamcenter interface provides:
• The attributes ApplicationInterface, ApplicationInterfaceType, DataTable, Directory, Report, RetrieveJTFiles, ServerURL, StyleSheet, Sync, TargetFolder,
and UserName.
• The Attributes of All Objects.
To view all of the methods and attributes of the object Socket, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

Teamcenter.ServerURL := "http://localhost:7001/tc";

• To get the value of an attribute, you might, for example, type:

print Teamcenter.ServerURL;
posit := SingleProc.cont.XPos;

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 248 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ApplicationInterface

ApplicationInterface

Syntax: <Path>.ApplicationInterface

The attribute ApplicationInterface sets the Application interface to which the Sync belongs which you would like to import from Teamcenter. If you want to
select the sync and the application interface from a dialog when importing data, just leave the text box empty. Note that you also have to enter the sync
when you enter the application interface and vice versa.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.ApplicationInterface := "PlantSimulationInterface";

Related Topics
Application interface
Sync
Sync

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ApplicationInterface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ApplicationInterfaceType

ApplicationInterfaceType

Syntax: <Path>.ApplicationInterfaceType

The attribute ApplicationInterfaceType sets the Application interface type.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.ApplicationInterfaceType := "PSI2PlantSimulation_AI";

Related Topic
Application interface type

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ApplicationInterfaceType

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > DataTable

DataTable

Syntax: <Path>.DataTable

The attribute DataTable sets the name of the Plant Simulation Table file into which you want to import the PLM XML data.

Assignment Value
You can assign a value of data type path/object.

Example: Teamcenter.DataTable := MyDataTable;

Related Topic
Table

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > DataTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 249 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Directory

Directory

Syntax: <Path>.Directory

The attribute Directory sets the name of the Directory into which the PLM XML file and the JT files will be copied.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.Directory := "MyTeamcenterFolder";

Related Topic
Directory

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Directory

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Report

Report

Syntax: <Path>.Report

The attribute Report sets the name of the report into which you want to write to the Html Report data.

Assignment Value
You can assign a value of data type path.

Example: Teamcenter.Report := MyTeamcenterReport;

Related Topic
Html Report

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Report

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > RetrieveJTFiles

RetrieveJTFiles

Syntax: <Path>.RetrieveJTFiles

The attribute RetrieveJTFiles sets if Plant Simulation will retrieve the respective JT files in addition to the PLM XML files from Teamcenter (true) or not
(false).

Assignment Value
You can assign a value of data type boolean.

Example: Teamcenter.RetrieveJTFiles := true;

Related Topic
Retrieve JT files

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 250 of 570

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > RetrieveJTFiles

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ServerURL

ServerURL

Syntax: <Path>.ServerURL

The attribute ServerURL sets the Server URL of the Teamcenter server. The default server URL is http://localhost:7001/tc.
When the connection with the server is established via HTTPS in encrypted mode, the respective certificate has to exist in the Windows Certificate
Store. (Control Panel > Internet Options > Content > Certificates.)

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.ServerURL := "http://localhost:7001/tc";

Related Topic
Server URL

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > ServerURL

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > StyleSheet

StyleSheet

Syntax: <Path>.StyleSheet

The attribute StyleSheet sets the name of the Style sheet you want to use when copying data from the Teamcenter database.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.StyleSheet := "MyStyleSheet.xsl";

Related Topic
Style sheet

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > StyleSheet

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Sync

Sync

Syntax: <Path>.Sync

The attribute Sync sets the name of the Sync from which you would like to import from Teamcenter. If you want to select the sync and the application
interface from a dialog when importing the attribute should be an empty string. Note that you also have to enter the ApplicationInterface when you enter the
sync.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.StyleSheet := "My Sync";

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 251 of 570

Related Topics
Sync
Application interface
ApplicationInterface

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > Sync

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > TargetFolder

TargetFolder

Syntax: <Path>.TargetFolder

The attribute TargetFolder sets the Teamcenter target folder to which the Plant Simulation HtmlReport will be stored. This folder has to be a sub-folder of the
folder newstuff of the user who logged on to Teamcenter.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.TargetFolder := "My Target Folder";

Related Topic
Target folder

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > TargetFolder

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > UserName

UserName

Syntax: <Path>.UserName

The attribute UserName sets the User name with which you log on to the Teamcenter database.

Assignment Value
You can assign a value of data type string.

Example: Teamcenter.UserName := "MyUserName";

Related Topic
User name

Add-Ins Reference Help > Inter-Process Communication Interfaces > Teamcenter > Attributes of the Teamcenter Interface > UserName

Add-Ins Reference Help > Object Libraries

Object Libraries

Plant Simulation provides a number of object libraries that cover important modeling tasks.
• The Electrical Overhead Monorail for modeling railbound transport systems.
• The High Bay Warehouse (HBW) for modeling simple functions of a high bay warehouse.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 252 of 570

• The Kanban Objects for modeling pulling production facilities.


• The MultiPortalCrane for picking up and for placing parts anywhere within a plant.
• The StorageCrane for placing parts into storage and for removing them from storage.
• The Value Stream Mapping library for modeling value streams.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

We modeled the objects of the object libraries as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects do not work. To open help for an object, select Help > Help on Object in its dialog.

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Add-Ins Reference Help > Object Libraries

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail

Electrical Overhead Monorail


You can use the Electrical Overhead Monorail to transport goods flexible with an overhead rail system within your plant. The Electrical Overhead Monorail
consists of a rail system on which the vehicles move independently under their own power. Employing the built-in switches, you can model branching, with
the built-in junctions you can rejoin the branched rails.
The library Electrical Overhead Monorail encompasses:
• The object Lifter to lift and lower hangers of the Electrical Overhead Monorail from one level to another.
• The object LoadStation to lift and lower hangers of the Electrical Overhead Monorail from one level to another and for loading and unloading the
hangers.
• The object VerticalCurve to model smooth height transitions for the Electrical Overhead Monorail.
• The objectSwitch2Way to model a switch which distributes the Transporters in two directions.
• The object Junction2Way to model a junction which joins the Transporters arriving from two directions.
• The object Switch3Way to model a switch, which distributes the Transporters in three directions.
• The object Junction3Way to model a junction which joins the Transporters arriving from three directions.
• The object SwitchYWay to model a switch which distributes the Transporters in two directions.
• The object JunctionYWay to model a junction which joins the Transporters arriving from two directions.
• The object Pivot to rotate the moving objects.
• The object Track to model the rails of the Electrical Overhead Monorail.
• The moving objects
• Clampshell to model an object carrier for large parts in the automotive industry.
• Hanger to model a driven means of transport.
• TelpherWagonC an object carrier that can be attached to the Hanger.

To add the Electrical Overhead Monorail objects to your simulation model, click Manage Class Library > Libraries > Standard Libraries > Free on the
Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 253 of 570

This adds the toolbar EOM to the Toolbox.

We modeled the Electrical Overhead Monorail in Frames and with the object Dialog. For this reason the windows of the objects do not use the
standard Siemens PLM theme, but your Windows theme.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

Related Topics
Modeling an Electrical Overhead Monorail
Lift Hangers With the Lifter to a Different Level
Load and Unload Hangers With the LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter

Lifter
The Lifter facilitates the quick, easy, and cost-efficient vertical transport of goods. It mainly serves for lifting and lowering hangers of the Electrical Overhead
Monorail from one level to another.

We modeled the Lifter as a user-defined object based on the built-in object Track.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 254 of 570

The Transporter, which moves the parts (Lift), is a built-in object of the Lifter. The Transporter makes extensive use of the load bay of type Line. This is a
length-oriented loading space similar to a Line. For this reason the library provides active Transporters (Hanger), which drive on the Electrical Overhead
Monorail.
The class object of the Transporters is the object Hanger which is part of the library. If you want to use another object, always create a duplicate of the
object Hanger and modify it to suit your needs. Do not modify the attributes defined in the object Hanger as this might lead to unexpected errors.
We modeled the Lifter as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects
do not work. To open help for an object, select Help > Help on Object in its dialog..

We modeled the Lifter exclusively in 3D. In 2D the animation does not always match the animation in 3D.

EOM Transporters arrive at the Lifter, which are to be lifted to the lower or upper level depending on the attribute Destination of the Transporter. An arriving
part registers at the Lifter in the order list by calling the exit control of the respective Track. In this exit control the part enters itself into the list of the
transport orders of the Lifter by using the method transportOrder.
This order list can contain several orders. If you did not enter a strategy control, the Lifter processes the order list in the chronological order in which the
orders were registered.
When an order is processed, the Lift of the Lifter first drives to the rail, at which it is to pick up the Hanger. There the Lift waits until the Hanger has driven
onto the Lift. This facilitates creating a transport order before the Hanger arrived at the end of the rail.
As soon as the Hanger has driven onto the Lift, the Lift drives to the destination rail. Once it arrives there, the transported Hanger drives onto the destination
rail. After the Hanger has completely driven off the Lift, the Lifter processes the next order.
To enter the attached lines (rails), which are to be serviced, into the table of the attached lines, drag them onto the Lifter and drop them there. Plant
Simulation simultaneously calculates the Z position of the rail. The calculation also determines the position to which the Lift has to drive so that the transport
rail has the correct position.
The attached rails shall not form a ring, but have to consist of at least two segments. Otherwise Plant Simulation cannot uniquely determine if the
station is a loading station or an unloading station.

The attached lines/rails all have to point in one direction. It is not allowed that the transport direction runs from right to left on one level and then gets
changed to left to right. It does not matter which direction you choose, right to left or left to right. The Lift recognizes the orientation (material flow
direction). It also recognizes differing material flow directions and shows an error message if that is the case.

The Width of the Lift has to be slightly greater than the sum of the Widths of the Hangers which are to be transported. This is especially important
when the Capacity is greater than 1.

When the Lifter fails, the Transporter stops immediately. As soon as the failure has been removed, it continues fulfilling the transport order and finishes it.
The end of a shift does not directly affect the Lifter. Then end of the shift becomes noticeable when no additional order is placed.
When the currently transported part is deleted, the current order of the Lifter will be canceled. When the order list contains an additional order, this order is
processed. When the order list is empty, the Lifter stops until another order is placed.

Related Topics

Dialog Window of the Lifter Attributes of the Lifter

Methods of the Lifter Modeling an Electrical Overhead Monorail

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 255 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter

Dialog Window of the Lifter


Double-click the icon of the Lifter, which you inserted into a Frame, to open its dialog window.

Related Topics

Tab Lifting Station The Navigate Menu

Tab Lift The View Menu

Tab Failures The Help Menu

Tab Controls OK

Tab 3D Apply

Tab Statistics Cancel

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station

Tab Lifting Station


The tab Lifting Station provides these dialog items.

Height Depth

Width Open List of Attached Lines

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Height

Height
Enter the Height of the Lifter. Note that the Height of the Lifter has to be greater than the Height of the highest rail plus the Height of the Lift.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 256 of 570

SimTalk
Lifter.LifterHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Width

Width
Enter the Width of the Lifter. This Width also designates the Width of the Lift.

SimTalk
Lifter.LoadBayLength

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 257 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Width

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Depth

Depth
Enter the Depth of the Lifter. The Depth of Lifter is irrelevant for the simulation. This value is only used for drawing the Lifter in 3D.

SimTalk
Lifter.Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Open List of Attached Lines

Open List of Attached Lines


To open the list of the Lines, which are connected with the Lifter, click this button. The list shows the attached lines, their type, the direction of the material,
the track position, and the position of the sensors at which the lift comes to a stop so that the rails are located at the same height.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lifting Station > Open List of Attached Lines

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift

Tab Lift
The tab Lift provides these dialog items.

Capacity Deceleration

Speed Damping time

Acceleration Take preferred position

Acceleration Preferred position

Plant Simulation stores the attributes of the Transporter in the Lifter. It propagates these to the created Lift when initializing the model.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Capacity

Capacity
Enter the Capacity of the Lift. This is the amount of Hangers that can be transported at the same time. The Lift waits until the respective number of Hangers
has been loaded. Note that Width of the Lift has to be slightly greater than the Widths of the Hangers multiplied with the number of Hangers.

SimTalk
Lifter.LoadbayCapacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Capacity

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 258 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Speed

Speed
Enter the final speed of the Lift with which it drives on the traverse path of the Lifter.

SimTalk
Lifter.VehicleSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Acceleration

Acceleration
Select the check box Acceleration to make the Lift accelerate or decelerate on the traverse path.
You can then enter the Acceleration and the Deceleration.

SimTalk
Lifter.AccelerationEnabled

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Acceleration

Acceleration
Enter the Acceleration of the Lift with which it increases its speed on the traverse path of the Lifter. You can enter a real number greater than or equal to 0.

SimTalk
Lifter.VehicleAcceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Deceleration

Deceleration
Enter the Deceleration of the Lift with which it decreases its speed on the traverse path of the Lifter. You can enter a real number greater than or equal to 0.

SimTalk
Lifter.VehicleDeceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Deceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Damping time

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 259 of 570

Damping time
Enter the time which the Lift requires to come to a complete stop after reaching its destination. The Lift waits for this time before it can start loading or
unloading parts.

SimTalk
Lifter.DampingTime

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Damping time

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Take preferred position

Take preferred position


Select the check box Take preferred position to make the Lift drive to the rail which you select from the list Preferred position, when no transport order
exists.
You can use this function to send the Lift to a certain rail, for example to the rail from which the most parts are expected.

SimTalk
Lifter.DriveHome

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Take preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Preferred position

Preferred position
Select the rail from the list of the attached lines which is to be approached when no driving job for the Lift exists.

SimTalk
Lifter.HomePosition

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Lift > Preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures

Tab Failures
The tab Failures provides these dialog items.

Active Edit

New Delete

These settings correspond to the settings described under the Tab Failures.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Active

Active

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 260 of 570

To activate failures of the Lifter in general, select the check box. To deactivate them, clear the check box.

The failures of Lifter are only active, when you select this check box and the check box of the respective failure profile!

SimTalk
FailActive

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Active

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > New

New
To create a new failure profile, click this button, compare New.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > New

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Edit

Edit
To edit the selected failure profile, click this button, compare Edit.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Edit

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Delete

Delete
To delete the selected failure profile, click this button, compare Delete.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Failures > Delete

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls

Tab Controls
The tab Controls provides the dialog items Strategy and Shift calendar.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls > Strategy

Strategy

Click and select the control which selects an order from the list of pending orders and which returns the table index of this order.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 261 of 570

SimTalk
UserControl

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls > Strategy

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls > Shift calendar

Shift calendar
Enter the name of the ShiftCalendar. This ShiftCalendar object contains the data of the shifts in your plant and controls during which shifts the Exporter
provides services.
Or you can select the ShiftCalendar in a Frame, drag it to the text box and drop it there.

SimTalk
ShiftCalendarObject

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Controls > Shift calendar

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D

Tab 3D
The tab 3D provides the dialog items Use external graphics, Lifter graphics file and Lift graphics file.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Use external graphics

Use external graphics


Select the check box to use your own graphics for the 3D representation of the Lifter and the Lift. This activates the remaining text boxes.

SimTalk
Lifter.UserGraphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Use external graphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Lifter graphics file

Lifter graphics file

Type in the path and the name of the file which contains the graphic for the Lifter. Instead you can also click the button and select a graphics file.

SimTalk
Lifter.LifterGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Lifter graphics file

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 262 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Lift graphics file

Lift graphics file

Type in the path and the name of the file which contains the graphic for the Lift. Instead you can also click the button and select a graphics file.

SimTalk
Lifter.LifterGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab 3D > Lift graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Statistics

Tab Statistics
The tab Statistics shows the statistics values of the Lift.

The column shows the

Waiting portion of the statistics collection period during which the Lift of the Lifter was waiting for the next transport order

Empty driving portion of the statistics collection period during which the Lift of the Lifter was driving to its loading point

Loading portion of the statistics collection period during which the Lift of the Lifter was being loaded

Transporting portion of the statistics collection period during which the Lift of the Lifter was driving to its unloading point while transporting parts

Unloading portion of the statistics collection period during which the Lift of the Lifter was being unloaded

Drive to home portion of the statistics collection period during which the Lift of the Lifter was driving to its preferred position

Damping portion of the statistics collection period during which the Lift of the Lifter was located in the damping time

Failed portion of the statistics collection period during which the Lift of the Lifter was failed.

SimTalk
statistic

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > Tab Statistics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The Navigate Menu

The Navigate Menu


The menu command Open Location is described under the Navigate Menu.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The Navigate Menu

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The View Menu

The View Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 263 of 570

The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The View Menu

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index and Help on Object.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Dialog Window of the Lifter > The Help Menu

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter

Methods of the Lifter


The object Lifter provides:
• The methods statistic and transportOrder.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter > statistic

statistic

Syntax: <Path>.statistic(StatisticsTable:<table>);

The method statistic returns the statistics values of the Lifter designated by <Path>.

Parameter
The parameter StatisticsTable of data type table or object denotes the table into which the statistics values are written. The first six rows of the table contain
the statistics values of the Lifter, the rows 7 to 13 contain the statistics values of the Lift.

The column shows the

Working portion of the statistics collection period during which the Lifter was working

Waiting portion of the statistics collection period during which the Lifter was waiting

Blocked portion of the statistics collection period during which the Lifter was blocked

Failed portion of the statistics collection period during which the Lifter was failed

Paused portion of the statistics collection period during which the Lifter was paused

Unplanned portion of the statistics collection period during which the Lifter was unplanned

Waiting portion of the statistics collection period during which the Lift of the Lifter was waiting for the next transport order

Empty driving portion of the statistics collection period during which the Lift of the Lifter was driving to its loading point

Loading portion of the statistics collection period during which the Lift of the Lifter was being loaded

Transporting portion of the statistics collection period during which the Lift of the Lifter was driving to its unloading point while transporting parts

Unloading portion of the statistics collection period during which the Lift of the Lifter was being unloaded

Drive to home portion of the statistics collection period during which the Lift of the Lifter was driving to its preferred position

Damping portion of the statistics collection period during which the Lift of the Lifter was located in the damping time

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 264 of 570

Failed portion of the statistics collection period during which the Lift of the Lifter was failed.

Example: MyLifter.statistics(MyStatisticsTable);

Related Topics
Tab Statistics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter > statistic

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter > transportOrder

transportOrder

Syntax: <Path>.transportOrder(Source:<object>,Target:<object>,Part:<object>, Priorität:<integer>)

The method transportOrder enters a transport order into the order list of the Lifter designated by <Path>. The order list looks like this:

Parameter
• The parameter Source of data type object contains the rail at which the part is to be picked up.
• The parameter Target of data type object contains the rail to which the Part is to be transported.
• The parameter Part of data type object contains the part as such.
• The parameter Priority of data type integer contains a priority which is not evaluated at present as the orders are processed according to their
chronological order.

Example: Var Part : object := @


Var Caller : object := ?
Var Target : object := Part.destination
MyLifter.transportOrder(Caller, Target, Part, 1)

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Methods of the Lifter > transportOrder

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter

Attributes of the Lifter


The Lifter provides the following attributes:
• The attributes AccelerationEnabled, DampingTime, Depth, DriveHome, FailActive, HomePosition, LiftGraphicsFile, LifterGraphicsFile, LifterHeight,
LoadBayLength, RailHeight, UserControl, UserGraphics, VehicleAcceleration, VehicleDeceleration, VehicleHeight, and VehicleSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

MyLifter.VehicleSpeed := 12;

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print MyLifter.VehicleSpeed
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > AccelerationEnabled

AccelerationEnabled

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 265 of 570

Syntax: <Path>.AccelerationEnabled

The attribute AccelerationEnabled activates (true) or deactivates (false) the acceleration of the Lift of the Lifter designated by <Path>. Then the Lift can
increase its speed (VehicleAcceleration) or decrease (VehicleDeceleration) it.

Assignment Value
You can assign a value of data type boolean.

Example: MyLifter.AccelerationEnabled := true

Related Topics
Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > AccelerationEnabled

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > DampingTime

DampingTime

Syntax: <Path>.DampingTime;

The attribute DampingTime defines the time which the Lift requires to come to a complete stop after reaching its destination. The Lift waits for this time
before it can start loading or unloading parts.

Assignment Value
You can assign a value of data type time.

Example: MyLifter.DampingTime := 4

Related Topics
Damping time

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > DampingTime

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > Depth

Depth

Syntax: <Path>.Depth

The attribute Depth defines the depth of the Lifter. The depth of Lifter is irrelevant for the simulation. This value is only used for drawing the Lifter in 3D.

Assignment Value
You can assign a value of data type length.

Example: MyLifter.Depth := 2.5

Related Topics
Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > DriveHome

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 266 of 570

DriveHome

Syntax: <Path>.DriveHome

The attribute DriveHome sets if the Lift is to take its preferred position (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLifter.DriveHome := true

Related Topics
Take preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > DriveHome

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > FailActive

FailActive

Syntax: <Path>.FailActive

The attribute FailActive activates all failure profiles (true) of the Lifter designated by <Path> or deactivates them (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLifter.FailActive:= false

Related Topics
Active

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > FailActive

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > HomePosition

HomePosition

Syntax: <Path>.HomePosition

The attribute HomePosition sets the rail to which is to be approached when no driving job for the Lift exists. The attribute will only be evaluated when
DriveHome has the value true.

Assignment Value
You can assign a value of data type object.

Example: MyLifter.HomePosition := Lift.Track1

Related Topics
Preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > HomePosition

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LiftGraphicsFile

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 267 of 570

LiftGraphicsFile

Syntax: <Path>.LiftGraphicsFile

The attribute LiftGraphicsFile sets the path of the file which contains the 3D graphics file for the Lift. The attribute will only be evaluated when UserGraphics
has the value true.

Assignment Value
You can assign a value of data type string.

Example: MyLifter.LiftGraphicsFile:= "MyLiftGraphicsFile"

Related Topics
Lift graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LiftGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LifterGraphicsFile

LifterGraphicsFile

Syntax: <Path>.LifterGraphicsFile

The attribute LifterGraphicsFile sets the path of the file which contains the 3D graphics file for the Lifter. The attribute will only be evaluated when
UserGraphics has the value true.

Assignment Value
You can assign a value of data type string.

Example: MyLifter.LifterGraphicsFile:= "MyLifterGraphicsFile"

Related Topics
Lifter graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LifterGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LifterHeight

LifterHeight

Syntax: <Path>. LifterHeight

The attribute LifterHeight sets the height of the Lifter. Note that the Height of the Lifter has to be greater than the Height of the highest rail plus the Height
of the Lift.

Assignment Value
You can assign a value of data type length.

Example: MyLifter.LifterHeight:= 15

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LifterHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LoadbayCapacity

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 268 of 570

LoadbayCapacity

Syntax: <Path>. LoadbayCapacity

The attribute LoadbayCapacity sets the amount of Hangers that can be transported at the same time. The Lift waits until the respective number of Hangers
has been loaded. Note that Width of the Lift has to be slightly greater than the Widths of the Hangers multiplied with the number of Hangers.

Assignment Value
You can assign a value of data type integer.

Example: MyLifter.LoadbayCapacity := 2

Related Topics
Capacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LoadbayCapacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LoadBayLength

LoadBayLength

Syntax: <Path>.LoadBayLength

The attribute LoadbayLength sets the length of the loading space of the Lift on the Lifter designated by <Path>. Note that the length of the Lift has to be
slightly greater than the length of the EOM-Transporter multiplied with the number of Hangers.

Assignment Value
You can assign a value of data type length.

Example: MyLifter.LoadBayLength := 4.2

Related Topics
Width

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > LoadBayLength

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > RailHeight

RailHeight

Syntax: <Path>. RailHeight;

The attribute RailHeight sets the height of the rail on the Lift. This value does not affect the simulation. It is only used to accurately position the Lift at the
height of the associated rails.

Assignment Value
You can assign a value of data type length.

Example: MyLifter.RailHeight := 0.2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > RailHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > UserControl

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 269 of 570

UserControl

Syntax: <Path>.UserControl

The attribute UserControl sets the control which selects an order from the list of pending orders of the Liter designated by <Path>.

Assignment Value
You can assign a value of data type object.

Example: MyLifter.UserControl := &MyTransportOrders

Related Topics
Strategy

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > UserControl

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > UserGraphics

UserGraphics

Syntax: <Path>. UserGraphics

The attribute UserGraphics sets if your own graphics are used for the 3D representation of the Lifter and the Lift (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLifter.UserGraphics:= true

Related Topics
Use external graphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > UserGraphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleAcceleration

VehicleAcceleration

Syntax: <Path>.VehicleAcceleration

The attribute VehicleAcceleration sets the Acceleration with which the Transporter increases its speed on the Track of the Lifter.

Assignment Value
You can assign a value of data type acceleration.

Example: MyLifter.VehicleAcceleration := 10

Related Topics
Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleAcceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleDeceleration

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 270 of 570

VehicleDeceleration

Syntax: <Path>.VehicleDeceleration

The attribute VehicleDeceleration sets the Deceleration with which the Transporter decreases its speed on the Track of the Lifter.

Assignment Value
You can assign a value of data type acceleration.

Example: MyLifter.VehicleDeceleration := 3

Related Topics
Deceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleDeceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleHeight

VehicleHeight

Syntax: <Path>.VehicleHeight

The attribute VehicleHeight sets the height of the Lift of the Lifter designated by <Path>. Note that the height of the Lifter has to be greater than the Height
of the highest rail plus the Height of the Lift.

Assignment Value
You can assign a value of data type length.

Example: MyLifter.VehicleHeight:= 1.5

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleSpeed

VehicleSpeed

Syntax: <Path>.VehicleSpeed

The attribute VehicleSpeed sets the final speed of the Transporter of the Lifter designated by <Path>.

Assignment Value
You can assign a value of data type speed.

Example: MyLifter.VehicleSpeed := 4

Related Topics
Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Lifter > Attributes of the Lifter > VehicleSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation

LoadStation

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 271 of 570

The LoadStation facilitates the quick, easy, and cost-efficient vertical transport of goods. It mainly serves for moving hangers of the Electrical Overhead
Monorail from one level to another and for loading and unloading the hangers.

We modeled the LoadStation as a user-defined object based on the Track.


The Transporter, which moves the parts (Lift), is a built-in object of the LoadStation. The Transporter makes extensive used of the load bay of type Line.
This is a length-oriented loading space similar to a line. For this reason the library provides active Transporters (Hanger), which drive on the Electrical
Overhead Monorail.
The class object of the Transporters is the object Hanger which is part of the library. If you want to use another object, always create a duplicate of the
object Hanger and modify it to suit your needs. Do not modify the attributes defined in the object Hanger as this might lead to unexpected errors.
We modeled the Lifter as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects
do not work. To open help for an object, select Help > Help on Object in its dialog..

We modeled the Lifter exclusively in 3D. In 2D the animation does not always match the animation in 3D.

EOM Transporters arrive at the LoadStation, which are to be lifted to the lower or upper level depending on the attribute Destination of the Transporter. An
arriving part registers at the LoadStation in the order list by calling the exit control of the respective Track. In this exit control the part enters itself into the
list of the transport orders of the LoadStation by using the method transportOrder.
When the EOM-Transporter has the LoadStation as target, Plant Simulation also create a transport order with the LoadStation as the target. In this case the
Transporter (Hanger) is transported to the loading height which you entered into the dialog and can then be loaded there. As soon as loading the has been
finished, the Hanger is moved on by calling the method loadFinished and the assignment of the target track.
This order list can contain several orders. If you did not enter a strategy control, the Lifter processes the order list in the chronological order in which the
orders were registered.
When an order is processed, the Lift of the LoadStation first drives to the rail, at which it is to pick up the Hanger. There the Lift waits until the Hanger has
driven onto the Lift. This facilitates creating a transport order before the Hanger arrived at the end of the rail.
As soon as the Hanger has driven onto the Lift, the Lift drives to the destination rail. Once it arrives there, the transported Hanger drives onto the destination
rail. After the Hanger has completely driven off the Lift, the LoadStation processes the next order.
To enter the attached lines (rails), which are to be serviced, into the table of the attached lines, drag them onto the LoadStation and drop them there. Plant
Simulation simultaneously calculates the Z position of the rail. The calculation also determines the position to which the Lift has to drive so that the transport
rail has the correct position.
The attached rails shall not form a ring, but have to consist of at least two segments. Otherwise Plant Simulation cannot uniquely determine if the
station is a loading station or an unloading station.

The attached lines/rails all have to point in one direction. It is not allowed that the transport direction runs from right to left on one level and then gets
changed to left to right. It does not matter which direction you choose, right to left or left to right. The Lift recognizes the orientation (material flow
direction). It also recognizes differing material flow directions and shows an error message if that is the case.

The Width of the Lift has to be slightly greater than the sum of the Widths of the Hangers which are to be transported. This is especially important
when the Capacity is greater than 1.

When the LoadStation fails, the Transporter stops immediately. As soon as the failure has been removed, it continues fulfilling the transport order and
finishes it.
The end of a shift does not directly affect the LoadStation. Then end of the shift becomes noticeable when no additional order is placed.
When the currently transported part is deleted, the current order of the LoadStation will be canceled. When the order list contains an additional order, this
order is processed. When the order list is empty, the LoadStation stops until another order is placed.

Related Topics

Dialog Window of the LoadStation Attributes of the LoadStation

Methods of the LoadStation Load and Unload Hangers With the LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation

Dialog Window of the LoadStation


Double-click the icon of the LoadStation, which you inserted into a Frame, to open its dialog window.

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 272 of 570

Tab Lifting Station The Navigate Menu

Tab Lift The View Menu

Tab Failures The Help Menu

Tab Controls OK

Tab 3D Apply

Tab Statistics Cancel

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station

Tab Lifting Station


The tab LoadStation provides these dialog items.

Height Height for loading and unloading

Width Open List of Attached Lines

Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Height

Height
Enter the Height of the Lift.

SimTalk
Lifter.LifterHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Width

Width
Enter the Width of the Lifting Station. This Width also designates the Width of the Lift.

SimTalk
Lifter.LoadBayLength

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Width

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Depth

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 273 of 570

Depth
Enter the Depth of the Lifting Station. The Depth of the Lifting Station is irrelevant for the simulation. This value is only used for drawing the LoadStation in
3D.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Height for
loading and unloading

Height for loading and unloading


Enter the Height at which the EOM-Transporter is to be located so that it can be loaded or unloaded.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Height for
loading and unloading

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Open List of
Attached Lines

Open List of Attached Lines


To open the list of the Lines, which are connected with the Lifting Station, click this button. The list shows the attached lines, their type, the direction of the
material, the track position, and the position of the sensors at which the lift comes to a stop so that the rails are located at the same height.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lifting Station > Open List of
Attached Lines

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift

Tab Lift
The tab Lift provides these dialog items.

Capacity Deceleration

Speed Damping time

Acceleration Take preferred position

Acceleration Preferred position

Plant Simulation stores the attributes of the Transporter in the Lifter. It propagates these to the created Lift when initializing the model.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Capacity

Capacity
Enter the Capacity of the Lift. This is the amount of Hangers that can be transported at the same time. The Lift waits until the respective number of Hangers
has been loaded. Note that Width of the Lift has to be slightly greater than the Widths of the Hangers multiplied with the number of Hangers.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 274 of 570

SimTalk
Lifter.LoadbayCapacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Capacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Speed

Speed
Enter the final speed of the Lift with which it drives on the traverse path of the Lifter.

SimTalk
Lifter.VehicleSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Acceleration

Acceleration
Select the check box Acceleration to make the Lift accelerate or decelerate on the traverse path.
You can then enter the Acceleration and the Deceleration.

SimTalk
Lifter.AccelerationEnabled

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Acceleration

Acceleration
Enter the Acceleration of the Lift with which it increases its speed on the traverse path of the Lifter. You can enter a real number greater than or equal to 0.

SimTalk
Lifter.VehicleAcceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Deceleration

Deceleration
Enter the Deceleration of the Lift with which it decreases its speed on the traverse path of the Lifter. You can enter a real number greater than or equal to 0.

SimTalk
Lifter.VehicleDeceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Deceleration

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 275 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Damping time

Damping time
Enter the time which the Lift requires to come to a complete stop after reaching its destination. The Lift waits for this time before it can start loading or
unloading parts.

SimTalk
Lifter.DampingTime

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Damping time

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Take preferred position

Take preferred position


Select the check box Take preferred position to make the Lift drive to the rail which you select from the list Preferred position, when no transport order
exists.
You can use this function to send the Lift to a certain rail, for example to the rail from which the most parts are expected.

SimTalk
Lifter.DriveHome

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Take preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Preferred position

Preferred position
Select the rail from the list of the attached lines which is to be approached when no driving job for the Lift exists.

SimTalk
Lifter.HomePosition

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Lift > Preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures

Tab Failures
The tab Failures provides these dialog items.

Active Edit

New Delete

These settings correspond to the settings described under the Tab Failures.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 276 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Active

Active
To activate failures of the LoadStation in general, select the check box. To deactivate them, clear the check box.

The failures of LoadStation are only active, when you select this check box and the check box of the respective failure profile!

SimTalk
FailActive

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Active

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > New

New
To create a new failure profile, click this button, compare New.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > New

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Edit

Edit
To edit the selected failure profile, click this button, compare Edit.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Edit

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Delete

Delete
To delete the selected failure profile, click this button, compare Delete.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Failures > Delete

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls

Tab Controls
The tab Controls provides the dialog items Strategy and Shift calendar.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 277 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls > Strategy

Strategy

Click and select the control which selects an order from the list of pending orders and which returns the table index of this order.

SimTalk
UserControl

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls > Strategy

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls > Shift calendar

Shift calendar
Enter the name of the ShiftCalendar. This ShiftCalendar object contains the data of the shifts in your plant and controls during which shifts the Exporter
provides services.
Or you can select the ShiftCalendar in a Frame, drag it to the text box and drop it there.

SimTalk
ShiftCalendarObject

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Controls > Shift calendar

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D

Tab 3D
The tab 3D provides the dialog items Use external graphics, Lifter graphics file and Lift graphics file.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Use external graphics

Use external graphics


Select the check box to use your own graphics for the 3D representation of the Lifting Station and the Lift. This activates the remaining text boxes.

SimTalk
Lifter.UserGraphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Use external graphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Lifter graphics file

Lifter graphics file

Type in the path and the name of the file which contains the graphic for the Lifter. Instead you can also click the button and select a graphics file.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 278 of 570

SimTalk
Lifter.LifterGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Lifter graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Lift graphics file

Lift graphics file

Type in the path and the name of the file which contains the graphic for the Lift. Instead you can also click the button and select a graphics file.

SimTalk
Lifter.LiftGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab 3D > Lift graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Statistics

Tab Statistics
The tab Statistics shows the statistics values of the Lift.

The column shows the

Waiting portion of the statistics collection period during which the Lift of the LoadStation was waiting for the next transport order

Empty driving portion of the statistics collection period during which the Lift of the LoadStation was driving to its loading point

Loading portion of the statistics collection period during which the Lift of the LoadStation was being loaded

Transporting portion of the statistics collection period during which the Lift of the LoadStation was driving to its unloading point while transporting
parts

Unloading portion of the statistics collection period during which the Lift of the LoadStation was being unloaded

Drive to home portion of the statistics collection period during which the Lift of the LoadStation was driving to its preferred position

Damping portion of the statistics collection period during which the Lift of the LoadStation was located in the damping time

Failed portion of the statistics collection period during which the Lift of the LoadStation was failed.

Wait for loading portion of the statistics collection period during which the Lift of the LoadStation was waiting to be loaded.

Wait for portion of the statistics collection period during which the Lift of the LoadStation was waiting to be unloaded.
unloading

SimTalk
statistic

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > Tab Statistics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The Navigate Menu

The Navigate Menu


The menu command Open Location is described under the Navigate Menu.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The Navigate Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 279 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The View Menu

The View Menu


The View menu provides the menu commands Refresh and Show Attributes and Methods.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The View Menu

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index and Help on Object.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Dialog Window of the LoadStation > The Help Menu

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation

Methods of the LoadStation


The object LoadStation provides:
• The methods loadFinished, statistic, transportOrder, and unloadFinished.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > loadFinished

loadFinished

Syntax: <Path>.loadFinished(NewTarget)

The method loadFinished is called when loading of the EOM-Transporter has been finished. The Lift drives to the target which is passed as parameter and
the loaded Transporter then drives off there.

Example: -- example of an exit control for Loading a hanger


waituntil LoadStation.CanBeLoaded prio 1
-- now an empty hanger is located at the LoadStation
var loadingTime : time := 50
wait loadingTime
var Hanger := LoadStation.Lift.cont
@.move(Hanger)
-- move hanger to Track1
LoadStation.loadFinished(Track1)

Example: -- example of a method for unloading a hanger


waituntil LoadStation1.CanBeunloaded prio 1
var unloadTime : time := 50
wait unloadTime
var Hanger := LoadStation.Lift.cont
Hanger.cont.move(SingleProc1)
LoadStation1.unloadFinished(Track2)
self.methcall(10)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 280 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > loadFinished

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > statistic

statistic

Syntax: <Path>.statistic(StatisticsTable:<table>)

The method statistic returns the statistics values of the LoadStation designated by <Path>.

Parameter
The parameter StatisticsTable of data type table or object denotes the table into which the statistics values are written. The first six rows of the table contain
the statistics values of the LoadStation, the rows 7 to 13 contain the statistics values of the Lift.

The column shows the

Working portion of the statistics collection period during which the LoadStation was working

Waiting portion of the statistics collection period during which the LoadStation was waiting

Blocked portion of the statistics collection period during which the LoadStation was blocked

Blocked portion of the statistics collection period during which the LoadStation was failed

Paused portion of the statistics collection period during which the LoadStation was paused

Unplanned portion of the statistics collection period during which the LoadStation was unplanned

Waiting portion of the statistics collection period during which the Transporter of the LoadStation was waiting for the next transport order

Waiting portion of the statistics collection period during which the Lift of the LoadStation was waiting for the next transport order

Empty driving portion of the statistics collection period during which the Lift of the LoadStation was driving to its loading point

Loading portion of the statistics collection period during which the Lift of the LoadStation was being loaded

Transporting portion of the statistics collection period during which the Lift of the LoadStation was driving to its unloading point while transporting
parts

Unloading portion of the statistics collection period during which the Lift of the LoadStation was being unloaded

Drive to home portion of the statistics collection period during which the Lift of the LoadStation was driving to its preferred position

Damping portion of the statistics collection period during which the Lift of the LoadStation was located in the damping time

Failed portion of the statistics collection period during which the Lift of the LoadStation was failed.

Wait for loading portion of the statistics collection period during which the Lift of the LoadStation was waiting to be loaded.

Wait for portion of the statistics collection period during which the Lift of the LoadStation was waiting to be unloaded.
unloading

Example: MyLoadStation.statistic(MyStatisticsTable)

Related Topics
Tab Statistics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > statistic

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > transportOrder

transportOrder

Syntax: <Path>.transportOrder(Source:<object>,Target:<object>,Part:<object>, Priorität:<integer>)

The method transportOrder enters a transport order into the order list of the Lifter designated by <Path>. The order list looks like this:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 281 of 570

Parameter
• The parameter Source of data type object contains the rail at which the part is to be picked up.
• The parameter Target of data type object contains the rail to which the Part is to be transported.
• The parameter Part of data type object contains the part as such.
• The parameter Priority of data type integer contains a priority which is not evaluated at present as the orders are processed according to their
chronological order.

Example: Var Part : object := @


Var Caller : object := ?
Var Target : object := Part.destination
MyLoadStation.transportOrder(Caller, Target, Part, 1)

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > transportOrder

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > unloadFinished

unloadFinished

Syntax: <Path>.unloadFinished(NewTarget)

The method unloadFinished is called when unloading the EOM-Transporter has been finished.

Parameter
The parameter NewTarget denotes the target to which the Lift drives and at which the Transporter drives off.

Example: waituntil LoadStation1.canBeUnloaded prio 1


-- now now Hanger is located at LoadStation1
var unloadTime : time := 50
wait unloadTime
var Hanger := LoadStation1.Lift.cont
Hanger.cont.move(SingleProc1)
LoadStation1.unloadFinished(Track2)
self.methcall(10)

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Methods of the LoadStation > unloadFinished

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation

Attributes of the LoadStation


The LoadStation provides the following attributes:
• The attributes AccelerationEnabled, CanBeLoaded, CanBeUnloaded, DampingTime, Depth, DriveHome, FailActive, HomePosition, LiftGraphicsFile,
LifterGraphicsFile, LifterHeight, LoadbayCapacity, LoadBayLength, RailHeight, UserControl, UserGraphics, VehicleAcceleration, VehicleDeceleration,
VehicleHeight, and VehicleSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

MyLoadStation.VehicleSpeed := 12

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print MyLoadStation.VehicleSpeed
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > AccelerationEnabled

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 282 of 570

AccelerationEnabled

Syntax: <Path>.AccelerationEnabled

The attribute AccelerationEnabled activates (true) or deactivates (false) the acceleration of the Lift of the LoadStation designated by <Path>. Then the Lift
can increase its speed (VehicleAcceleration) or decrease (VehicleDeceleration) it.

Assignment Value
You can assign a value of data type boolean.

Example: MyLoadStation.AccelerationEnabled := true

Related Topics
Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > AccelerationEnabled

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > CanBeLoaded

CanBeLoaded

Syntax: <Path>.CanBeLoaded

The read-only attribute CanBeLoaded shows (true) that an empty EOM-Transporter is ready at the loading height and can be loaded. You can only read
the attribute, you cannot set it.

Query Value
The attribute has the data type boolean.

Example: waituntil MyLoadStation.CanBeLoaded prio 1

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > CanBeLoaded

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > CanBeUnloaded

CanBeUnloaded

Syntax: <Path>.CanBeUnloaded

The read-only attribute CanBeUnLoaded shows (true) that an empty EOM-Transporter is ready at the loading height and can be unloaded. You can only
read the attribute, you cannot set it.

Query Value
The attribute has the data type boolean.

Example: waituntil MyLoadStation. CanBeUnloaded prio 1

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > CanBeUnloaded

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > DampingTime

DampingTime

Syntax: <Path>.DampingTime;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 283 of 570

The attribute DampingTime defines the time which the Lift requires to come to a complete stop after reaching its destination. The Lift waits for this time
before it can start loading or unloading parts.

Assignment Value
You can assign a value of data type time.

Example: MyLoadStation.DampingTime := 4

Related Topics
Damping time

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > DampingTime

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > Depth

Depth

Syntax: <Path>.Depth

The attribute Depth defines the depth of the LoadStation. The depth of LoadStation is irrelevant for the simulation. This value is only used for drawing the
Lifter in 3D.

Assignment Value
You can assign a value of data type length.

Example: MyLoadStation.Depth := 2.5

Related Topics
Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > Depth

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > DriveHome

DriveHome

Syntax: <Path>.DriveHome

The attribute DriveHome sets if the Lift is to take its preferred position (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLoadStation.DriveHome := true

Related Topics
Take preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > DriveHome

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > FailActive

FailActive

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 284 of 570

Syntax: <Path>.FailActive

The attribute FailActive activates all failure profiles (true) of the LoadStation designated by <Path> or deactivates them (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLoadStation. FailActive:= false

Related Topics
Active

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > FailActive

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > HomePosition

HomePosition

Syntax: <Path>.HomePosition

The attribute HomePosition sets the rail to which is to be approached when no driving job for the Lift exists. The attribute will only be evaluated when
DriveHome has the value true.

Assignment Value
You can assign a value of data type object.

Example: MyLoadStation.Homeposition:= Lift.Track1;

Related Topics
Preferred position

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > HomePosition

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LiftGraphicsFile

LiftGraphicsFile

Syntax: <Path>.LiftGraphicsFile

The attribute LiftGraphicsFile sets the path of the file which contains the 3D graphics file for the Lift. The attribute will only be evaluated when UserGraphics
has the value true.

Assignment Value
You can assign a value of data type string.

Example: MyLoadStation.LiftGraphicsFile:= "MyLiftGraphicsFile"

Related Topics
Lifter graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LiftGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LifterGraphicsFile

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 285 of 570

LifterGraphicsFile

Syntax: <Path>.LifterGraphicsFile

The attribute LifterGraphicsFile sets the path of the file which contains the 3D graphics file for the Lifter. The attribute will only be evaluated when
UserGraphics has the value true.

Assignment Value
You can assign a value of data type string.

Example: MyLoadStation.LifterGraphicsFile:= "MyLifterGraphicsFile"

Related Topics
Lift graphics file

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LifterGraphicsFile

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LifterHeight

LifterHeight

Syntax: <Path>.Lifterheight

The attribute LifterHeight sets the height of the Lifter. Note that the Height of the LoadStation has to be greater than the Height of the highest rail plus the
Height of the Lift.

Assignment Value
You can assign a value of data type length.

Example: MyLoadStation.Lifterheight:= 15

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LifterHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LoadbayCapacity

LoadbayCapacity

Syntax: <Path>.LoadbayCapacity

The attribute LoadbayCapacity sets the amount of Hangers that can be transported at the same time. The Lift waits until the respective number of Hangers
has been loaded. Note that Width of the Lift has to be slightly greater than the Widths of the Hangers multiplied with the number of Hangers.

Assignment Value
You can assign a value of data type integer.

Example: MyLoadStation.LoadbayCapacity := 2

Related Topics
Capacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LoadbayCapacity

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LoadBayLength

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 286 of 570

LoadBayLength

Syntax: <Path>.LoadBayLength

The attribute LoadbayLength sets the length of the loading space of the Lift on the Lifter designated by <Path>. Note that the length of the Lift has to be
slightly greater than the length of the EOM-Transporter multiplied with the number of Hangers.

Assignment Value
You can assign a value of data type length.

Example: MyLoadStation.LoadBayLength := 4.2

Related Topics
Width

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > LoadBayLength

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > RailHeight

RailHeight

Syntax: <Path>.RailHeight;

The attribute RailHeight sets the height of the rail on the Lift. This value does not affect the simulation. It is only used to accurately position the Lift at the
height of the associated rails.

Assignment Value
You can assign a value of data type length.

Example: MyLoadStation.RailHeight := 0.2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > RailHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > UserControl

UserControl

Syntax: <Path>.UserControl

The attribute UserControl sets the control which selects an order from the list of pending orders of the Liter designated by <Path>.

Assignment Value
You can assign a value of data type object.

Example: MyLoadStation.UserControl := &MyTransportOrders

Related Topics
Strategy

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > UserControl

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > UserGraphics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 287 of 570

UserGraphics

Syntax: <Path>.UserGraphics

The attribute UserGraphics sets if your own graphics are used for the 3D representation of the Lifting Station and the Lift (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyLoadStation.UserGraphics:= true

Related Topics
Use external graphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > UserGraphics

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleAcceleration

VehicleAcceleration

Syntax: <Path>.VehicleAcceleration

The attribute VehicleAcceleration sets the Acceleration with which the Transporter increases its speed on the Track of the LoadStation.

Assignment Value
You can assign a value of data type acceleration.

Example: MyLoadStation.VehicleAcceleration := 10

Related Topics
Acceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleAcceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleDeceleration

VehicleDeceleration

Syntax: <Path>.VehicleDeceleration

The attribute VehicleDeceleration sets the Deceleration with which the Transporter decreases its speed on the Track of the LoadStation.

Assignment Value
You can assign a value of data type acceleration.

Example: MyLoadStation.VehicleDeceleration := 3

Related Topics
Deceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleDeceleration

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleHeight

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 288 of 570

VehicleHeight

Syntax: <Path>.VehicleHeight

The attribute VehicleHeight sets the height of the Lift of the LoadStation designated by <Path>. Note that the height of the LoadStation has to be greater
than the Height of the highest rail plus the Height of the Lift.

Assignment Value
You can assign a value of data type length.

Example: MyLoadStation.VehicleHeight:= 1.5

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleHeight

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleSpeed

VehicleSpeed

Syntax: <Path>.VehicleSpeed

The attribute VehicleSpeed sets the final speed of the Transporter of the LoadStation designated by <Path>.

Assignment Value
You can assign a value of data type speed.

Example: MyLoadStation.VehicleSpeed := 4

Related Topics
Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > LoadStation > Attributes of the LoadStation > VehicleSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve

VerticalCurve
You can use the object VerticalCurve to model smooth height transitions for the Electrical Overhead Monorail (EOM). This might, for example, be required
when the hangers of the EOM have to be moved from a great height to a different height to process the transported parts on the hangers. Or when
differences in height in the EOM have to be overcome because the EOM has to drive over or under equipment.

The VerticalCurve is a length-oriented object which you insert into a Frame just like a Track. The VerticalCurve always is a straight line, we do not support
horizontal arcs at the moment.
As soon as you inserted the VerticalCurve Plant Simulation opens its dialog where you can set its parameters.

Related Topics

Dialog Window of the VerticalCurve Load and Unload Hangers With the LoadStation

Attributes of the VerticalCurve

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 289 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve

Dialog Window of the VerticalCurve


As soon as you inserted the VerticalCurve Plant Simulation opens its dialog where you can set Height Z1, the Height Z2 and the Length.
When you click OK or Apply, Plant Simulation starts calculating the VerticalCurve.
The results of the calculation are only visible in 3D, in 2D Plant Simulation just shows a straight line.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Height Z1

Height Z1
Enter the Height Z1. Z1 it the height of the first insertion point, Z2 is the height of the end point of the VerticalCurve in material flow direction.
If Z1 is greater than Z2, the object is a descending VerticalCurve, If Z1 is smaller than Z2, the object is an ascending VerticalCurve.

SimTalk
Z1

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Height Z1

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Height Z2

Height Z2
Enter the Height Z1. Z1 it the height of the first insertion point, Z2 is the height of the end point of the VerticalCurve in material flow direction.
If Z1 is greater than Z2, the object is a descending VerticalCurve, If Z1 is smaller than Z2, the object is an ascending VerticalCurve.

SimTalk
Z2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Height Z2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Length

Length
Enter the length of the Track to be inserted. You can adapt the length to your own needs at any time. This length is not the length of the curve as such but
the length of the projection on the X-Y-level.

SimTalk
CurveLength

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Dialog Window of the VerticalCurve > Length

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 290 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve

Attributes of the VerticalCurve


The object VerticalCurve provides:
• The attributes CurveLength, Z1 and Z2.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

VerticalCurve.Z1 := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print VerticalCurve.Z1
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > CurveLength

CurveLength

Syntax: <Path>.CurveLength

The attribute CurveLength sets the length of the VerticalCurve designated by <Path>.

Assignment Value
You can assign a value of data type length.

Example: VerticalCurve.CurveLength := 4

Related Topics
Length

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > CurveLength

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > Z1

Z1

Syntax: <Path>.Z1

The attribute Z1 sets the start height of the VerticalCurve designated by <Path>.

Assignment Value
You can assign a value of data type length.

Example: VerticalCurve.Z1 := 4

Related Topics
Height Z1

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > Z1

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 291 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > Z2

Z2

Syntax: <Path>.Z2

The attribute Z2 sets the end height of the VerticalCurve designated by <Path>.

Assignment Value
You can assign a value of data type length.

Example: VerticalCurve.Z2 := 4

Related Topics
Height Z2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > VerticalCurve > Attributes of the VerticalCurve > Z2

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way

Switch2Way
You can use the object Switch2Way to model a switch which distributes the Transporters in two directions. The directions are straight or left.

The object Switch2Way provides the method switchTo to change the position of the switch.

Related Topics

Dialog Window of the Object Switch2Way Attributes of the Object Switch2Way

Methods of the Object Switch2Way Modeling with the library EOM

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way

Dialog Window of the Object Switch2Way


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way > Height

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 292 of 570

Height
Enter the Height of the switch.

SimTalk
Switch2Way.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way > speed

speed
Enter the speed of the switch. The switch moves from one end position to another end position with this speed.

SimTalk
Switch2Way.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Dialog Window of the Object Switch2Way > speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Methods of the Object Switch2Way

Methods of the Object Switch2Way


The object Switch2Way provides:
• The method switchTo.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Methods of the Object Switch2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Methods of the Object Switch2Way > switchTo

switchTo

Syntax: <Path>.switchTo

The method switchTo changes the position of the switch. You can, for example, use the method in the exit control of a Track, which leads directly to a
switch. The exit control could look like this:

if @.Targetortr = TrackLeft
Switch2Way.switchTo("left")
else
Switch2Way.switchTo("straight")
end

Depending if the switch is already located in the desired position, Plant Simulation moves the EOM-Transporter to the switch immediately. When the switch
is not located in the desired position, Plant Simulation works the switch to the desired position and then moves the EOM-Transporter.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Methods of the Object Switch2Way > switchTo

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 293 of 570

Attributes of the Object Switch2Way


The object Switch2Way provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

Switch2Way.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print Switch2Way.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way > Height

Height

Syntax: <Path>.Height

The attribute Height sets the Height of the switch.

Assignment Value
You can assign a value of data type length.

Example: <Path>.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed legt speed of the switch. The switch moves from one end position to another end position with this speed.

Assignment Value
You can assign a value of data type speed.

Example: <Path>.SwitchSpeed := 0.2

Related Topics
speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch2Way > Attributes of the Object Switch2Way > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 294 of 570

Junction2Way

You can use the object Junction2Way to model a junction which joins the Transporters arriving from two directions.

The object Junction2Way contains two short rail pieces, each 5 cm long, which you can use to connect the Junction2Way to your rail system. The object
Junction2Way recognizes by itself from which an EOM-hanger arrives and works the switch accordingly.

Related Topics

Dialog Window of the Object Junction2Way Modeling with the library EOM

Attributes of the Object Junction2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way

Dialog Window of the Object Junction2Way


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the Speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way > Height

Height
Enter the Height of the junction.

SimTalk
Junction2Way.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way > Speed

Speed
Enter the speed of the junction. The junction moves with this speed from one end position to another end position.

SimTalk
Junction2Way.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Dialog Window of the Object Junction2Way > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 295 of 570

Attributes of the Object Junction2Way


The object Junction2Way provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

Junction2Way.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print Junction2Way.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way > Height

Height

Syntax: <Path>.Height

The attribute Height sets the Height of the junction.

Assignment Value
You can assign a value of data type length.

Example: Junction2Way.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed sets the speed of the junction. The junction moves with this speed from one end position to another end position.

Assignment Value
You can assign a value of data type speed.

Example: Junction2Way.SwitchSpeed := 0.2

Related Topics
Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction2Way > Attributes of the Object Junction2Way > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 296 of 570

Switch3Way
The object Switch3Way to model a switch, which distributes the Transporters in three directions. The directions are straight or right or left.

The object Switch3Way provides the method switchTo to change the position of the switch.

Related Topics

Dialog Window of the Object Switch3Way Attributes of the Object Switch3Way

Methods of the Object Switch3Way Modeling with the library EOM

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way

Dialog Window of the Object Switch3Way


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the Speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way > Height

Height
Enter the Height of the switch.

SimTalk
Switch3Way.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way > Speed

Speed
Enter the speed of the switch. The switch moves with this speed from one end position to another end position.

SimTalk
Switch3Way.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Dialog Window of the Object Switch3Way > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Methods of the Object Switch3Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 297 of 570

Methods of the Object Switch3Way


The object Switch3Way provides:
• The method switchTo.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Methods of the Object Switch3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Methods of the Object Switch3Way > switchTo

switchTo

Syntax: <Path>.switchTo

The method switchTo changes the position of the switch. You can, for example, use the method in the exit control of a Track, which leads directly to a
switch. The exit control could look like this:

if @.Destination = Track1
Switch3Way.switchTo("left")
elseif @.Destination = Track2
Switch3Way.switchTo("straight")
else
Switch3Way.switchTo("right")
end

Depending if the switch is already located in the desired position, Plant Simulation moves the EOM-Transporter to the switch immediately. When the switch
is not located in the desired position, Plant Simulation works the switch to the desired position and then moves the EOM-Transporter.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Methods of the Object Switch3Way > switchTo

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way

Attributes of the Object Switch3Way


The object Switch3Way provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

Switch3Way.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print Switch3Way.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way > Height

Height

Syntax: <Path>.Height

The attribute Height sets the Height of the switch.

Assignment Value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 298 of 570

You can assign a value of data type length.

Example: Switch3Way.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed sets the speed of the switch. The switch moves from one end position to another end position with this speed.

Assignment Value
You can assign a value of data type speed.

Example: Switch3Way.SwitchSpeed := 0.2

Related Topics
speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Switch3Way > Attributes of the Object Switch3Way > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way

Junction3Way
You can use the object Junction3Way to model a junction which joins the Transporters arriving from three directions.

The object Junction3Way contains three short rail pieces, each 5 cm long, which you can use to connect the Junction3Way to your rail system. The object
Junction3Way recognizes by itself from which an EOM-hanger arrives and works the switch accordingly.

Related Topics

Dialog Window of the Object Junction3Way Modeling with the library EOM

Attributes of the Object Junction3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 299 of 570

Dialog Window of the Object Junction3Way


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the Speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way > Height

Height
Enter the Height of the switch.

SimTalk
Junction3Way.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way > Speed

Speed
Enter the speed of the switch. The switch moves from one end position to another end position with this speed.

SimTalk
Junction3Way.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Dialog Window of the Object Junction3Way > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way

Attributes of the Object Junction3Way


The object Junction3Way provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

Junction3Way.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print Junction3Way.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way > Height

Height

Syntax: <Path>.Height

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 300 of 570

The attribute Height sets the Height of the switch.

Assignment Value
You can assign a value of data type length.

Example: Junction3Way.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed legt speed of the switch. The switch moves from one end position to another end position with this speed.

Assignment Value
You can assign a value of data type speed.

Example: Junction3Way.SwitchSpeed := 0.2

Related Topics
Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Junction3Way > Attributes of the Object Junction3Way > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay

SwitchYWay
You can use the object SwitchYWay to model a switch which distributes the Transporters in two directions. The directions are left or right.

Related Topics

Dialog Window of the Object SwitchYWay Dialog Window of the Object SwitchYWay

Dialog Window of the Object SwitchYWay Modeling with the library EOM

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 301 of 570

Dialog Window of the Object SwitchYWay


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the Speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay > Height

Height
Enter the Height of the switch.

SimTalk
SwitchYWay.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay > Speed

Speed
Enter the speed of the switch. The switch moves from one end position to another end position with this speed.

SimTalk
SwitchYWay.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Dialog Window of the Object SwitchYWay > Speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Methods of the Object SwitchYWay

Methods of the Object SwitchYWay


The object SwitchYWay provides:
• The method switchTo.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Methods of the Object SwitchYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Methods of the Object SwitchYWay > switchTo

switchTo

Syntax: <Path>.switchTo

The method switchTo changes the position of the switch. You can, for example, use the method in the exit control of a Track, which leads directly to a
switch. The exit control could look like this:

if @.Destination = TrackLinks
SwitchYWay.switchTo("left")
else
SwitchYWay.switchTo("right")
end

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 302 of 570

Depending if the switch is already located in the desired position, Plant Simulation moves the EOM-Transporter to the switch immediately. When the switch
is not located in the desired position, Plant Simulation works the switch to the desired position and then moves the EOM-Transporter.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > Methods of the Object SwitchYWay > switchTo

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay

attribute of the Object SwitchYWay


The object SwitchYWay provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

SwitchYWay.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print SwitchYWay.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay > Height

Height

Syntax: <Path>.Height

The attribute Height sets the Height of the switch.

Assignment Value
You can assign a value of data type length.

Example: SwitchYWay.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed legt speed of the switch. The switch moves from one end position to another end position with this speed.

Assignment Value
You can assign a value of data type speed.

Example: SwitchYWay.SwitchSpeed := 0.2

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 303 of 570

speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > SwitchYWay > attribute of the Object SwitchYWay > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay

JunctionYWay
You can use the object JunctionYWay to model a junction which joins the Transporters arriving from two directions.

The object JunctionYWay contains two short rail pieces, each 5 cm long, which you can use to connect the JunctionYWay to your rail system. The object
JunctionYWay recognizes by itself from which an EOM-hanger arrives and works the switch accordingly.

Related Topics

Dialog Window of the Object JunctionYWay Modeling with the library EOM

Attributes of the Object JunctionYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay

Dialog Window of the Object JunctionYWay


To open the dialog of the object, double-click the icon of the object. Here you can set the Height and the speed.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay > Height

Height
Enter the Height of the switch.

SimTalk
JunctionYWay.Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay > speed

speed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 304 of 570

Enter the speed of the switch. The switch moves from one end position to another end position with this speed.

SimTalk
JunctionYWay.SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Dialog Window of the Object JunctionYWay > speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay

Attributes of the Object JunctionYWay


The object JunctionYWay provides:
• The attributes Height and SwitchSpeed.
• Um den Wert eines Attributs festzulegen, könnten Sie beispielsweise eintippen:

JunctionYWay.Height := 1

• Um den Wert eines Attributs abzufragen, könnten Sie beispielsweise eintippen:

print JunctionYWay.Height
posit := Einzelstation.Contents.XPos

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay > Height

Height

Syntax: <Path>.Height

The attribute Height sets the Height of the switch.

Assignment Value
You can assign a value of data type length.

Example: JunctionYWay.Height := 5

Related Topics
Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay > Height

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay > SwitchSpeed

SwitchSpeed

Syntax: <Path>.SwitchSpeed

The attribute SwitchSpeed legt speed of the switch. The switch moves from one end position to another end position with this speed.

Assignment Value
You can assign a value of data type speed.

Example: JunctionYWay.SwitchSpeed := 0.2

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 305 of 570

Related Topics
speed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > JunctionYWay > Attributes of the Object JunctionYWay > SwitchSpeed

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Pivot

Pivot
The object Pivot is based on the built-in object Turntable. Its properties are the same, we only changed the icon of the object. It rotates the moving objects.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Pivot

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Track

Track
The object Track is based on the built-in object Turntable. Its properties are the same. The object represents the rails of the Electrical Overhead Monorail.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Track

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail

Moving Objects of the Electrical Overhead Monorail


The Electrical Overhead Monorail provides the moving objects Hanger, TelpherWagonC, and Clampshell.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > Hanger

Hanger
The moving object Hanger is the main MU of the library Electrical Overhead Monorail. It is a driven means of transport.

The Hanger is based on the built-in object Transporter. The loading space is of type store and by default has the Capacity 1. You can adjust the Capacity
to your needs.
You can load any other type of MU onto the Hanger. Plant Simulation shows the loaded object below the Hanger.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > Hanger

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 306 of 570

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > TelpherWagonC

TelpherWagonC
The moving object TelpherWagonC is an object carrier that can be attached to the Hanger.

The TelpherWagonC is based on the built-in object Container. You can load the TelpherWagonC onto a Hanger. You can adjust the Capacity to your
needs.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > TelpherWagonC

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > Clampshell

Clampshell
The moving object Clampshell is an driven MU especially suited for the automotive industry.

Is is based on the built-in object Transporter. The loading space is of type store and by default has the Capacity 1. You can adjust the Capacity to your
needs.
You can load any other MU onto the Clampshell. Plant Simulation shows the loaded object below the Clampshell.

Add-Ins Reference Help > Object Libraries > Electrical Overhead Monorail > Moving Objects of the Electrical Overhead Monorail > Clampshell

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW)

High Bay Warehouse (HBW)

To add the objects of the library High Bay Warehouse to your simulation model, click Manage Class Library > Libraries > Standard Libraries > Free
on the Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 307 of 570

This adds the toolbar HBW to the Toolbox.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

We modeled the objects of the object libraries as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects in the dialogs of the objects do not work. To open help for an object, select Help > Help on Object in its dialog.

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

The library High Bay Warehouse enables the simple simulation of the functions of a High Bay Warehouse. The library consists of the objects RackLane and
WMS (Warehouse Management System). The Method userSetTarget requests the parameters of an empty storage place from the WMS.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW)

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane

RackLane
The RackLane realizes the function of a single RackLane. You can insert the object several times next to each other and thus model the entire storage
system. Naturally you can parameterize each individual RackLane by itself. This way you can use RackLanes in which the storage places have different
dimensions.
The RackLane itself consists of two racks, the rack serving unit, and the track between the two racks. A Converter feeds the pallets into the RackLane, a
Line transports the pallet (EUR_pallet) to the hand-over point. The exit control of the hand-over point creates a transport order for the rack serving unit.
The rack serving unit then places the pallet into a storage place.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 308 of 570

Related Topics
Dialog Window of the RackLane
Methods of the RackLane

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane

Dialog Window of the RackLane


Double-click the icon of the RackLane, which you inserted into a Frame, to open its dialog window. It shows the properties of the object on the Tab Rack
Serving Unit, Tab Racks, the Tab Conveyor, and the Tab Statistics.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 309 of 570

When a stock removal order arrives, the rack serving unit removes the pallet from one of the shelfs, transports it to the hand-over point from where it is
returned via a Line and a Converter to the Conveyor.
The Pallet (EUR_pallet) provides the user-defined attributes required to do this:
• Racklane: This is the name of the RackLane. The Converter compares the value of this attribute with the name of the RackLane and removes the pallet
when the attribute matches.
• Side: Determines if the pallet is put into the left or the right Rack.
• Column: Sets the column of the Rack.
• Row: Sets the row of the Rack.

If the user-defined attributes do not exist, The Method userSetTarget creates them.

The values above uniquely determine where the pallet is to be stored. You can set these values can be set with a Method or the WMS sets them.

Related Topics

Tab Rack Serving Unit The View Menu

Tab Racks The Help Menu

Tab Conveyor OK

Tab Statistics Cancel

The Navigate Menu Apply

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit

Tab Rack Serving Unit


The tab Rack Serving Unit provides these dialog items:

Related Topics

Distance between the tracks Speed of the load handler

Height of the rack serving unit Speed of the carrier

Speed of the rack serving unit

The rack serving unit consists of the following components:


• A track—two rails—on which it drives forwards and backwards between the Racks of the RackLane.
• A load handler, which moves up and down on the lift poles of the rack serving unit.
• A carrier, which moves to the left and to the right on the load handler. The carrier places the pallets into the storage places and removes them from
the storage places.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 310 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Distance
between the tracks

Distance between the tracks


Enter the distance between the tracks of the RackLane.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Distance
between the tracks

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Height of the
rack serving unit

Height of the rack serving unit


Enter the height of the rack serving unit. This is the height of the entire RackLane.
The height of the rack serving unit has to be greater than the Height of a storage place multiplied with the Number of rows.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Height of the
rack serving unit

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 311 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
rack serving unit

Speed of the rack serving unit


Enter the speed of the rack serving unit with which it drives on the tracks forwards and backwards between the Racks.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
rack serving unit

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
load handler

Speed of the load handler


Enter the speed of the load handler with which it moves up and down on the lift poles of the rack serving unit.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
load handler

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
carrier

Speed of the carrier


Enter the speed of the carrier with which it moves left and right on the load handler.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Rack Serving Unit > Speed of the
carrier

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks

Tab Racks
The tab Regale provides these dialog items:

Number of columns Height of a storage place

Number of rows Depth of a storage place

Width of a storage place

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Number of columns

Number of columns
Enter the Number of columns of the racks. The number of columns multiplied with the Number of rows sets the size of a Rack of the RackLane.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 312 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Number of columns

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Number of rows

Number of rows
Enter the Number of rows of the racks. Die number of rows multiplied with the Number of columns sets the size of a Rack of the RackLane.
The height of the rack serving unit has to be greater than the Height of a storage place multiplied with the Number of rows.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Number of rows

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Width of a storage place

Width of a storage place


Enter the Width of a storage place within the rack.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Width of a storage place

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Height of a storage place

Height of a storage place


Enter the Height of a storage place within the rack.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 313 of 570

The height of the rack serving unit has to be greater than the Height of a storage place multiplied with the Number of rows.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Height of a storage place

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Depth of a storage place

Depth of a storage place


Enter the Depth of a storage place within the rack.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > RackLane > Dialog Window of the RackLane > Tab Racks > Depth of a storage place

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget

The Method userSetTarget


The method userSetTarget requests the parameters of an empty storage place. We assume that the part/pallet to be stored has the following attributes:
• Product: Designates the names of the parts to be stored.
• MUWidth: Designates the width of the part to be stored, this normally is the width of the pallet.
• MULength: Designates the length of the part to be stored, this normally is the length of the pallet.
• TotalHeight: Designates the overall height of the part to be stored/of the pallet. The height consists of the height of the pallet and the maximum height of
the loaded parts.
This method also uses the built-in attribute numMU.
If the other attributes (Lane, Side, Column, Row, OrderNo) do not exist, Plant Simulation automatically creates them.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 314 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor

Tab Conveyor
The tab Conveyor provides the dialog items Width of the conveyor, Length of the conveyor, and Speed of the conveyor.
The conveyor designates the components of the High Bay Warehouse that place parts into stock and remove them from stock. We modeled the conveyors
with a Converter and a Line each.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Width of the conveyor

Width of the conveyor


Enter the Width of the conveyor.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 315 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Width of the conveyor

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Length of the conveyor

Length of the conveyor


Enter the Length of the conveyor.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Length of the conveyor

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Speed of the conveyor

Speed of the conveyor


Enter the Speed of the conveyor.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Conveyor > Speed of the conveyor

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Statistics

Tab Statistics
Plant Simulation shows the statistics data of the rack serving unit on the tab Statistics.

The column shows the percentage

Drive home of the statistics collection time, which the rack serving unit used for returning home

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 316 of 570

Drive to target of the statistics collection time, which the rack serving unit used for driving to the target

Loading of the statistics collection time, which the rack serving unit used for loading

Unloading of the statistics collection time, which the rack serving unit used for unloading

Waiting of the statistics collection time during which the rack serving unit was waiting

SimTalk
statistic

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > Tab Statistics

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The Navigate Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The View Menu

The View Menu


The View Menu provides the menu commands Refresh and Contents.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The View Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Tab Conveyor > The Help Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane

Methods of the RackLane


The RackLane provides the methods appendOrder and statistic:

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 317 of 570

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane > appendOrder

appendOrder

Syntax: <Path>.appendOrder(ordeNo:<integer>, orderType:<string>, Column:<integer>, Row:<integer>,


Side:<string>)

The method appendOrder appends a transport order to the order list.

Parameter
• The parameter OrderNo of data type integer designates the order number, which is responsible to send the completion report to the WMS.
• The parameter OrderType of data type string sets the type of the transport order: put for place into stock and get for remove from stock.
• Die Parameter Column (of data type integer), Row (of data type integer) and Side (of data type string) set the storage place within the RackLane.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane > appendOrder

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane > statistic

statistic

Syntax: <Path>.statistic(StatisticsTable:<table>)

The method statistic returns the driving statistics of the rack serving unit.

Parameter
The parameter of data type Table either designates a local variable of type table or an object of type TableFile.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > The Method userSetTarget > Methods of the RackLane > statistic

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS

WMS
The WMS (Warehouse Management System) all RackLanes which you inserted into your model. During the initialization phase the RackLanes register with
the WMS and report the number of columns and rows of the storage places and the size of a storage place. This enables the WMS to manage the storage
places, i.e., determine if they are free or occupied, it can assign storage places according to the dimension of the pallet to be stored and/or assign storage
places according to a preallocation table.

Related Topics
Dialog Window of the WMS
Methods of the WMS

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS

Dialog Window of the WMS


Double-click the icon of the WMS, which you inserted into a Frame, to open its dialog window. It shows the properties of the object on the Tab Contents and
on the Tab Stock Removal.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 318 of 570

Related Topics

Tab Contents The Help Menu

Tab Stock Removal OK

The Navigate Menu Cancel

The View Menu Apply

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents

Tab Contents
The tab Contents provides the dialog items Show Contents and Predefined Racks.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents > Show Contents

Show Contents
Click Show Contents to open a table, which shows the current contents of the store.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents > Show Contents

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents > Predefined Racks

Predefined Racks
Click Predefined Racks to open a table, into which you can enter the Products and RackLanes for the parts/pallets to be placed into stock.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Contents > Predefined Racks

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Stock Removal

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 319 of 570

Tab Stock Removal


The tab Stock Removal provides the dialog items Automatic stock removal, Removal starts after, and Interval between removals an:

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Stock Removal

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Stock Removal > Automatic stock removal

Automatic stock removal


To automatically remove parts from stock, select the check box Automatic stock removal. Then a random number of a randomly determined product will
be removed from stock in the intervals you define.
To deactivate automatic stock removal, clear the check box.

Removal starts after

Enter the time after which automatic stock removal starts.

Interval between removals

Enter the interval between two automatic stock removal processes.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > Tab Stock Removal > Automatic stock removal

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The Navigate Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The View Menu

The View Menu


The View Menu provides the menu commands Refresh and Contents.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The View Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 320 of 570

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Dialog Window of the WMS > The Help Menu

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS

Methods of the WMS


The WMS provides these methods:
getFreePlace, occupancy, removeFinished, removeProducts, stock, and transportFinished.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > getFreePlace

getFreePlace

Syntax: <Path>.getFreePlace(Product:<string>, Width:<length>, Depth:<length>, Height:<length>,


Quantity:<integer>, byref OrderNo:<integer>, byref Rack:<string>, byref Side:<string>, byref
Column:<integer>, byref Row:<integer>)

The method getFreePlace searches for a free storage place for the designated product. Plant Simulation first checks if a RackLane is defined for the
product. If this is not the case, it searches for a storage place, which corresponds to the dimensions of the pallet. When Plant Simulation finds a storage
place, the result is true and the parameters Rack, Side, Column, and Row contain valid values. Plant Simulation at first only reserves the storage place until
the respective Rack Serving Unit reports back that the product was placed into stock. Only then the parts are booked in the store.

Parameter
• The parameter Product of data type string designates the part/pallet to be placed into stock.
• The parameter Width of data type length designates the width of the part to be stored.
• The parameter Depth of data type length designates the depth of the part to be stored
• The parameter Height of data type length designates the overall height of the part to be stored.
• The parameter Quantity of data type integer designates the number of parts, which are located on the pallet and which are to be placed into stock.
• The parameter byref OrderNo of data type integer designates the order number of the storage order.
• The parameter byref Rack of data type string designates the RackLane.
• The parameter byref Side of data type string designates the side of the RackLane (left/right).
• The parameter byref Column of data type integer designates the column of the Rack.
• The parameter byref Row of data type integer designates the row of the Rack.

Return Value
The return value has the data type boolean.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > getFreePlace

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > occupancy

occupancy

Syntax: <Path>.occupancy(Table:<table>)

The method occupancy returns a table with the current occupancy of the store.
The table shows these values:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 321 of 570

The Entry designates the

Racklane RackLane

Side side of RackLane

Column column of the Rack

Row row of the Rack

Quantity number of parts in the storage place

Parts that have not been place into storage yet, but for which a storage place has already been determined, are not listed here.

Example: Var t :Table := occupancy

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > occupancy

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > removeFinished

removeFinished

Syntax: <Path>.removeFinished(Rack:<string>, Side:<string>, Column:<integer>, Row:<integer>)

The method removeProducts designates the pallets to be removed from stock as reserved for a removal from stock order. Only when the removal has been
finished the rack serving unit reports this to the WMS with the method removeFinished. From this point in time the storage place is marked as free and can
be replaced again.

Parameter
• The parameter Rack of data type string designates the Rack.
• The parameter Side of data type string designates the side of the RackLane (left/right).
• The parameter Column of data type integer designates the position of the column of the storage place.
• The parameter Rows of data type integer designates the position of the row of the storage place.

Related Topics
removeProducts

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > removeFinished

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > removeProducts

removeProducts

Syntax: <Path>.removeProducts(Product:<string>, Quantity:<integer>)

The method removeProducts removes the desired amount of parts from stock. Once a sufficient amount of the parts is available, the method returns the
value true. If this is not the case, it returns false and no parts are removed from stock.
If the parts are available, Plant Simulation first checks if a pallet is available, which contains at least the requested amount. If a pallet is available, it will be
removed from stock by sending a remove from stock order to the respective RackLane. If no pallet with a sufficient amount of parts is available, Plant
Simulation removes the pallet from stock, which contains the most parts. For the remaining remainder of parts Plant Simulation tries to find a pallet, which
contains the corresponding amount of parts. This continues until the requested amount of parts has been removed from stock.
Note that this may cause more parts to be removed from stock than the requested amount.

Parameter
• The parameter Product of data type string designates the part to be removed from stock.
• The parameter Quantity of data type integer designates the amount of parts to be removed from stock.

Return Value
The return value has the data type boolean.

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 322 of 570

removeProducts

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > removeProducts

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > stock

stock

Syntax: <Path>.stock(Table:<table>)

The method stock returns a table containing the stock that is available in the store. Parts that have not been place into storage yet, but for which a storage
place has already been determined, are not listed here.

Parameter
The parameter Table designates the table.

Example: Var t: Table := Stock

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > stock

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > transportFinished

transportFinished

Syntax: <Path>.transportFinished(OrderNo:<integer>)

The method transportFinished reports that the place into stock order has been finished.

Parameter
The parameter OrderNo designates the order number of the pallet. It will be booked as available stock.

Add-Ins Reference Help > Object Libraries > High Bay Warehouse (HBW) > WMS > Methods of the WMS > transportFinished

Add-Ins Reference Help > Object Libraries > Kanban Objects

Kanban Objects
You can use the Kanban objects KanbanSource, KanbanBuffer, and KanbanSingleProc to model manufacturing facilities working with pull strategies. The
demand at the end of the manufacturing plant determines which parts have to be produced. You can use the KanbanChart to show the different types of
parts within the KanbanBuffer.

To add the Kanban objects to your simulation model, click Manage Class Library > Libraries > Standard Libraries > Free on the Home ribbon tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 323 of 570

This adds the toolbar Kanban to the Toolbox.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

We modeled the objects of the object libraries as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects in the dialogs of the objects do not work. To open help for an object, select Help > Help on Object in its dialog.

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topic
Modeling a Kanban System

Add-Ins Reference Help > Object Libraries > Kanban Objects

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer

KanbanBuffer
The KanbanBuffer follows the Kanban principles. It only moves parts on to its successors, when other objects, usually a KanbanBuffer or a
KanbanSingleProc, order these parts.
We modeled the KanbanBuffer based on the Store. We added methods and attributes which a KanbanBuffer requires. The built-in properties of the Store,
such as exit behavior or failures, remain untouched. You can use them as you are used to with the built-in objects.
The KanbanBuffer maintains a threshold value for each part, the minimum inventory. When the inventory falls short of this number, parts are ordered from
the Supplier of this part. The ordered amount is calculated like this:
Ordered amount equals maximum inventory minus current inventory minus still open, but already ordered amount.
We modeled the KanbanBuffer as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do not
work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topics
Dialog Window of the KanbanBuffer
Methods of the KanbanBuffer
Attributes of the KanbanBuffer
Configure the Kanban Buffer which Manages Storing and Ordering of Parts

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 324 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer

Dialog Window of the KanbanBuffer


Double-click the icon of the KanbanBuffer, which you inserted into a Frame, to open its dialog window. It shows the properties on the Tab Part Information,
on the Tab Advanced, and on the Tab Statistics. To use other properties of the Store, select Tools > Open Workplace.

We modeled the KanbanBuffer as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do not
work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Part Information

Tab Part Information


The tab Part Information shows information about the parts to be managed. It contains the parts table and a button for adding new parts.
• To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
• To open the entire table, not just a row in it, select Tools > Open Part Information Table.

• To add a new part to the table, click .


Each row in this table describes how the part is managed. It contains these entries:

Name Is the identifier of the part. The Kanban system recognizes the part by this identifier and by its name. The identifier is the user-defined
attribute EntityType of this MU.

Min. Stock Is the minimum inventory of this part in this KanbanBuffer. When the inventory falls short of this number, parts are ordered from the
supplier.

Max. Stock Is the maximum inventory of this part in this KanbanBuffer.

Initial Is the number of parts, which is created during the initialization phase of the model. The KanbanBuffer receives the required date from its
Stock supplier.

Supplier Contains the supplier of the parts, which are either other KanbanBuffers or KanbanSources. You can only define a single supplier per
part in this KanbanBuffer.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 325 of 570

Dialog for Editing an Existing Part

To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
• To delete a part type, delete it from the text box EntityType.

• To open a dialog in which you can select the supplier, click the button.

• To directly open the supplier, click the button.

Dialog for Adding a New Part

To add a new part to the table, proceed as follows:

• To add a new part to the table, click . Enter the required information into the dialog, which opens.

• To open a dialog in which you can select the supplier, click the button.

• To directly open the supplier, click the button.

Related Topic
Tools > Open Part Information Table

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Part Information

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced

Tab Advanced
On the tab Advanced you can extend and modify the properties of the Kanban system. You can access the tables and the Store on which the KanbanBuffer
is based. In addition, you can manipulate how parts are ordered.

The tab Advanced provides these dialog items:

Calculate capacity Open User-defined Method sortList

Show List of Open Requests Open Workplace

Direct order mode

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 326 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Calculate capacity

Calculate capacity
To make the Kanban system automatically compute the required capacity, by calculating the maximum from the sum of the initial inventory and from the
sum of the maximum inventory numbers, select the check box Calculate capacity.
When you clear it, you have to enter the capacity. When you enter a smaller capacity than the maximally required capacity, not all parts might be produced
during initialization or that the ordered part cannot enter the KanbanBuffer during the simulation. Note that this may block the simulation model.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Calculate capacity

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Show List of Open Requests

Show List of Open Requests


To open the table containing all open requests placed with the KanbanBuffer, click Open. You cannot edit the table Open requests manually, but only by
clicking Open User-defined Method sortList.

The table contains this information:

PartName Is the name of the part. This name can be any string, it has to comply with the naming conventions in Plant Simulation.

Quantity Is the number of parts, which the KanbanBuffer still has to deliver.

Released Shows if this order, i.e., this row of the table Open requests has already been processed. The Kanban system sets this attribute,
when at least one part has already been produced.

OrderingObject Is the object, which ordered the part, in most cases a KanbanBuffer or a KanbanSingleProc.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Show List of Open Requests

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Direct order mode

Direct order mode


To reorder the same part type from the supplier immediately after a part has left the KanbanBuffer, select the check box.
To only order parts when the current stock has fallen below the minimum stock, clear the check box. The KanbanBuffer then orders the amount of parts to
meet the maximum stock.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Direct order mode

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Open User-defined Method
sortList

Open User-defined Method sortList


The Kanban system can automatically call this method. The check boxes Call after a part was ordered, Call after a part has left, and Call after a part has
arrived set, when it will be called. Within this method you can manipulate the order proceed by accessing the entries in the table Show List of Open
Requests.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 327 of 570

The passed parameter determines how the method will be called at runtime:
• The value 1 stands for a Call after a part was ordered from the supplier.
• The value 2 stands for a Call after a part has left the KanbanBuffer.
• The value 3 stands for a Call after a part has arrived the KanbanBuffer.
To open the method editor click the button Open User-defined Method sortList. In the Method you can then edit the order in which the requests are
processed.

Related Topic
userDef_SortList

Call after a part has arrived

To call the method sortList after a part has entered the KanbanBuffer, select this check box.

Related Topic
CallAfter_PE

Call after a part was ordered

To call the method sortList after the order for this part has been placed, select this check box.

Related Topic
CallAfter_RP

Call after a part has left

To call the method sortList after a part has left KanbanBuffer, select this check box.

Related Topic
CallAfter_PL

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Open User-defined Method
sortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Open Workplace

Open Workplace
To open the Store on which the KanbanBuffer is based, click this. In the dialog of the Store you can then view or change its attributes.

Related Topic
Tools > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Advanced > Open Workplace

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 328 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Statistics

Tab Statistics
The tab Statistics shows these statistics values of the KanbanBuffer:

Open quantity Shows how many parts have been ordered, but have not arrived yet. This is the sum of all orders.

Quantity of requests Shows the sum of all parts which have been ordered.

Number of requests Shows the total of all placed orders.

Average amount Shows the average amount of parts per order.

Average interval Shows the average time interval between two orders.

Open Statistics Table

To open the statistics table, click this. The table lists the individual values for each part type.

Related Topic
StatisticalData

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > Tab Statistics

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 329 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Navigate Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The View Menu

The View Menu


The View Menu provides the menu commands Refresh and Contents.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The View Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The View Menu > Contents

Contents
The menu command Contents opens the contents list of the KanbanBuffer. It shows the parts in inventory and manages open requests and orders.

It contains these entries:

Name Is the identifier of the part. The Kanban system recognizes the part by this identifier and by its name. The identifier is the user-
defined attribute EntityType of this MU.

OpenOrders Is the number of open orders by succeeding objects, such as a KanbanBuffer or a KanbanSingleProc. Parts leaving this
KanbanBuffer reduce this value.

Stock Is the current number of parts in stock.

RequestedParts Is the number of parts ordered from the supplier. Parts arriving in this KanbanBuffer reduce this value.

Contentlist Is the name of a sub-table, which contains all parts of this type in stock.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The View Menu > Contents

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu

The Tools Menu


The Tools menu provides the menu commands Open Part Information Table and Open Workplace.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu > Open Part Information
Table

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 330 of 570

Open Part Information Table


The menu command Open Part Information Table opens the part information table as a table file. You can then edit its contents.

Related Topic
Tab Part Information

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu > Open Part Information
Table

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu > Open Workplace

Open Workplace
The menu command Open Workplace opens the Store on which the KanbanBuffer is based, click this. In the dialog of the Store you can then view or
change its attributes.

Related Topic
Button Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Dialog Window of the KanbanBuffer > The Tools Menu > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > The Help Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer

Methods of the KanbanBuffer


The KanbanBuffer provides:
• The Methods of the Store.
• The methods requestParts and userDef_SortList.
To view all of the methods and attributes of the KanbanBuffer, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 331 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer > requestParts

requestParts

Syntax: <Path>.requestParts(Part:<string>, Amount:<integer>)

The method requestParts inserts a new row of orders in the table Open requests, and starts the from-bin transfer if necessary.

Parameters
• The parameter Part of data type string designates the name of the part (EntityType).
• The parameter Amount of data type integer designates the amount of requested parts.

Example: -- SimTalk 2.0 notation


var requiredWheelType: string
requiredWheelType := BOM[1,@.EntityType]
KanbanBuffer.requestParts(requiredWheelType,4)
@.move

Example: -- SimTalk 1.0 notation


local requiredWheelType : string;
requiredWheelType := BOM[1,@.EntityType];
KanbanBuffer.requestParts(requiredWheelType,4);
@.move;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer > requestParts

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer > userDef_SortList

userDef_SortList

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 332 of 570

Syntax: <Path>.userDef_SortList(CallOrder:<integer>)

The method userDef_SortList allows to edit the Show List of Open Requests table.

Parameter
The parameter CallOrder of data type integer determines how the method will be called at runtime:
• The value 1 stands for a Call after a part was ordered from the supplier.
• The value 2 stands for a Call after a part has left the KanbanBuffer.
• The value 3 stands for a Call after a part has arrived the KanbanBuffer.

Example: myKanbanBuffer.userDef_SortList(2);

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Methods of the KanbanBuffer > userDef_SortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer

Attributes of the KanbanBuffer


The KanbanBuffer provides:
• The Attributes of the Store.
• The attributes CallAfter_PE, CallAfter_PL, CallAfter_RP, and StatisticalData. You can access these attributes as you access any of the built-in attributes.
To view all of the methods and attributes of the KanbanBuffer, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

myKanbanBuffer.CallAfter_PE := true

• To get the value of an attribute, you might, for example, type:

print myKanbanBuffer.CallAfter_PE
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_PE

CallAfter_PE

Syntax: <Path>.CallAfter_PE

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 333 of 570

The attribute CallAfter_PE sets if the method sortList will be called, when part has entered the KanbanBuffer (true) or not (false)

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanBuffer.CallAfter_PE := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_PE

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_PL

CallAfter_PL

Syntax: <Path>.CallAfter_PL

The attribute CallAfter_PL sets if the method sortList will be called, when a part has left the KanbanBuffer (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanBuffer.CallAfter_PL := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_PL

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_RP

CallAfter_RP

Syntax: <Path>.CallAfter_RP

The attribute CallAfter_RP sets if the method sortList will be called, when a new part has been ordered (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanBuffer.CallAfter_RP := false;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > CallAfter_RP

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > StatisticalData

StatisticalData

Syntax: <Path>.StatisticalData

The attribute StatisticalData reads the statistics table of the KanbanBuffer.

Example: openAmountOfOrders:= myKanbanBuffer.StatisticalData.sum({1,1}..{1,*});

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanBuffer > Attributes of the KanbanBuffer > StatisticalData

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 334 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart

KanbanChart
You can use the KanbanChart to show the different part types located in the KanbanBuffer. You can select the KanbanBuffer to be observed in the dialog of
the KanbanChart. Or you can drag the KanbanBuffer to be observed onto the icon of the KanbanChart and drop it there.
We modeled the KanbanChart as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do not
work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topic
Dialog Window of the KanbanChart
Methods of the KanbanChart

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart

Dialog Window of the KanbanChart


Double-click the icon of the KanbanChart, which you inserted into a Frame, to open its dialog window. It provides the dialog items Watched buffer, Watched
entity types, Type of chart, and Show Chart.
Drag the KanbanBuffer onto the KanbanChart and drop it there to automatically enter the required data.
We modeled the KanbanChart as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do not
work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Watched buffer

Watched buffer

Click and select a KanbanBuffer in the dialog Select Object.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 335 of 570

Or type its name into the text box. After you have entered a new KanbanBuffer, the table Watched entity types will automatically be populated with all parts,
which the KanbanBuffer manages.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Watched buffer

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Watched entity types

Watched entity types


To watch a certain type of part within the KanbanBuffer, double-click the row which contains the data of this part. An X in the row designates that the
KanbanChart watches that part.

Delete All Entries

To delete all entries from the column Selection in the table Watched entity types, click this.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Watched entity types

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Type of chart

Type of chart
Select the chart type, which will be used for showing the data: Histogram or Plotter.

Histogram Plotter

Show Chart

To show the chart window, click this.

Histogram Plotter

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 336 of 570

Related Topic
setParam

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > Type of chart

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The Navigate Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The View Menu

The View Menu


The Navigate Menu provides the menu command Refresh.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The View Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The Tools Menu

The Tools Menu


The Tools menu provides the menu command Open Chart.

Open Chart

The menu command Open Chart opens the dialog of the Chart on which the object KanbanChart is based.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 337 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Dialog Window of the KanbanChart > The Tools Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > The Help Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Methods of the KanbanChart

Methods of the KanbanChart


The KanbanChart provides:
• The Methods of the Chart.
• The method setParam.
To view all of the methods and attributes of the KanbanChart, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Methods of the KanbanChart

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Methods of the KanbanChart > setParam

setParam

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 338 of 570

Syntax: <Path>.setParam(Buffer:<object>, PartsList:<list>, Plot:<boolean>)

The method setParam sets the parameters of the KanbanChart.

Parameters
• The parameter Buffer of data type Object designates the KanbanBuffer to be observed.
• The parameter PartsList of data type List designates the list of the parts that are to be displayed. The list has to contain either a part of the parts or all
parts managed by the KanbanBuffer.
• The parameter Plot of data type boolean sets if the recorded data is shown as a Plot (true) or as a histogram (false).

Example: myKanbanChart.setParam(myKanbanBuffer,MyPartsList,true);

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanChart > Methods of the KanbanChart > setParam

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc

KanbanSingleProc
The KanbanSingleProc triggers the entire Kanban mechanism. It creates the requests, which are passed to the KanbanSource via the KanbanBuffer.
The Kanban system can create Kanban orders with a random selection or via a sequence table. The first order is created during the initialization phase of
the model. The next order is generated after this part has arrived and has been processed. You can set if the KanbanSingleProc waits for a part of the
selected type or creates an order as soon as the part has been processed.
We modeled the KanbanSingleProc as an application object based on the SingleProc. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects do not work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topics
Dialog Window of the KanbanSingleProc
Methods of the KanbanSingleProc
Attributes of the KanbanSingleProc
Configure the Kanban Station which Orders the Parts

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc

Dialog Window of the KanbanSingleProc


Double-click the icon of the KanbanSingleProc, which you inserted into a Frame, to open its dialog window. It shows the properties on the Tab Part
Information and the Tab Advanced.
To use other properties of the SingleProc, select Tools > Open Workplace.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 339 of 570

We modeled the KanbanSingleProc as an application object based on the SingleProc. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects do not work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Part Information

Tab Part Information


The tab Part Information shows information about the parts to be managed. It contains the parts table and a button for adding new parts.
• To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
• To open the entire table, not just a row in it, select Tools > Open Kanban Information Table.

• To add a new part to the table, click .


Each row in this table describes how the part is managed. It contains these entries:

Name Is the identifier of the part. The Kanban system recognizes the part by this identifier and by its name. The identifier is the user-defined
attribute EntityType of this MU.

Portion Is the percentage of the part for a random selection of the orders. When the new orders are created with a sequence table, this entry is
irrelevant.

Supplier Contains the supplier of the part, either a KanbanBuffer or a KanbanSource. Note that there can only be one supplier per part.

Dialog for Editing an Existing Part

To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
To delete a part type, delete it from the text box EntityType.

Dialog for Adding a New Part

To add a new part to the table, click . Enter the required information into the table that opens.

Related Topic
Tools > Open Kanban Information Table

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 340 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Part Information

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced

Tab Advanced
On the tab Advanced you can select to either produce parts in a random order or using a sequence table. You can also open the SingleProc on which the
KanbanSingleProc is based.

The tab Advanced provides these dialog items:

Sequence Order next part only when correct part type was processed

Cyclical Waiting for

Open Kanban Sequence Table Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Sequence

Sequence
To create orders with a sequence table, select the check box Sequence. When you select Sequence, the KanbanSingleProc also activates the check box
Cyclical and the button Open Open Kanban Sequence Table.

Related Topic
Sequence

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Sequence

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Cyclical

Cyclical
To make the KanbanSingleProc cyclically repeat the Kanban sequence, select the check box Cyclical. To use the Kanban sequence only once, clear it.

Related Topic

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 341 of 570

SequenceCyclical

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Cyclical

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Open Kanban
Sequence Table

Open Kanban Sequence Table


To define a sequence for creating the Kanban orders via the names of the parts in a one-columned table, click Open Kanban Sequence Table.
• When you select the check box Cyclical, the KanbanSingleProc repeats this sequence after it has been finished.
• When you clear the check box Cyclical, the sequence is used only once.
You always have to enter the parts into the table, which opens, as the connection with the supplier is established there. The table contains this entry:

Name of Part Is the name of the part. This name can be any string, it has to comply with the naming conventions in Plant Simulation.

Related Topic
KanbanSequence

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Open Kanban
Sequence Table

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Order next part
only when correct part type was processed

Order next part only when correct part type was processed
To wait until a certain ordered part has been processed, select the check box.

To create an order each time after a part has been processed on the station, clear the check box. This ensures that between the supplier and the
KanbanSingleProc one part is on its way.

Related Topic
OnlyCorrect

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Order next part
only when correct part type was processed

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Waiting for

Waiting for
Here the KanbanSingleProc shows which type of part has been ordered last.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 342 of 570

Related Topic
WaitingFor

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Waiting for

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Open Workplace

Open Workplace
To open the SingleProc on which the KanbanSingleProc is based, click this. In the dialog of the SingleProc you can then view or change its attributes.

Related Topic
Tools > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > Tab Advanced > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Navigate Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The View Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 343 of 570

The View Menu


The View Menu provides the menu commands Refresh and Contents.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The View Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The View Menu > Contents

Contents
The menu command Contents opens the contents table of the KanbanSingleProc.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The View Menu > Contents

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu

The Tools Menu


The Tools menu provides the menu commands Open Kanban Information Table and Open Workplace.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu > Open Kanban
Information Table

Open Kanban Information Table


The menu command Open Kanban Information Table opens the part information table as a table file. You can then edit its contents.

Related Topic
Tab Part Information

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu > Open Kanban
Information Table

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu > Open Workplace

Open Workplace
The menu command Open Workplace opens the SingleProc on which the KanbanSingleProc is based. In the dialog of the SingleProc you can then view or
change its attributes.

Related Topic
Button Open Workplace

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 344 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Dialog Window of the KanbanSingleProc > The Tools Menu > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > The Help Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Methods of the KanbanSingleProc

Methods of the KanbanSingleProc


The KanbanSingleProc provides the Methods of the SingleProc.
To view all of the methods and attributes of the KanbanSingleProc, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Methods of the KanbanSingleProc

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc

Attributes of the KanbanSingleProc


The KanbanSingleProc provides:
• The Attributes of the SingleProc.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 345 of 570

• The attributes KanbanParts, KanbanSequence, OnlyCorrect, Sequence SequenceCyclical, and WaitingFor. You can access these attributes as you
access any of the built-in attributes.
To view all of the methods and attributes of the KanbanSingleProc, open the window Show Attributes and Methods. The figure below illustrates the
information using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

myKanbanSingleProc.KanbanParts := myKanbaninformationtable;

• To get the value of an attribute, you might, for example, type:

print myKanbanSingleProc.OnlyCorrect;
posit := SingleProc.cont.XPos;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > KanbanParts

KanbanParts

Syntax: <Path>.KanbanParts

The attribute KanbanParts allows read access to the table on the Tab Part Information.

Assignment Value
You can assign a value of data type table.

Example: myKanbanSingleProc.KanbanParts := myKanbaninformationtable;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > KanbanParts

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > KanbanSequence

KanbanSequence

Syntax: <Path>.KanbanSequence

The attribute KanbanSequence allows to access the Open Kanban Sequence Table table of the Kanban orders.

Assignment Value
You can assign a value of data type table.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 346 of 570

Example: myKanbanSingleProc.KanbanSequence := mySequencetable;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > KanbanSequence

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > OnlyCorrect

OnlyCorrect

Syntax: <Path>.OnlyCorrect

The attribute OnlyCorrect sets if a new Kanban will be created only when the previous order has been fulfilled, i.e., a part of the respective type has been
processed (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanSingleProc.OnlyCorrect := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > OnlyCorrect

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > Sequence

Sequence

Syntax: <Path>.Sequence

The attribute Sequence sets if the KanbanSingleProc randomly selects a new order (false) or uses a sequence list to do so (true).

Assignment Value
You can assign a value of data type boolean.

Syntax: myKanbanSingleProc.Sequence := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > Sequence

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > SequenceCyclical

SequenceCyclical

Syntax: <Path>.SequenceCyclical

The attribute SequenceCyclical sets if the KanbanSingleProc cyclically processes the sequence list (true) or if it only processes it once (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanSingleProc.SequenceCyclical := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > SequenceCyclical

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 347 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > WaitingFor

WaitingFor

Syntax: <Path>.WaitingFor

The attribute WaitingFor gets the part type (EntityType), which a new Kanban order expects.

Assignment Value
You can assign a value of data type string.

Example: ExpectedPart := myKanbanSingleProc.WaitingFor;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSingleProc > Attributes of the KanbanSingleProc > WaitingFor

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource

KanbanSource
The KanbanSource employs the Kanban principle. It produces parts, when it receives a request from a KanbanBuffer or KanbanSingleProc.
We modeled the KanbanSource based on the SingleProc. We added methods and attributes which a KanbanSource requires. The built-in properties of the
SingleProc, such as exit behavior or failures, remain untouched. You can use them in the usual way.
We modeled the KanbanSource as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do
not work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topics
Dialog Window of the KanbanSource
Methods of the KanbanSource
Attributes of the KanbanSource
Configure the Kanban Sources which Produce the Parts

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource

Dialog Window of the KanbanSource


Double-click the icon of the KanbanSource, which you inserted into a Frame, to open its dialog window. It shows the properties on the Tab Part Information
and the Tab Advanced.
To use other properties of the SingleProc, select Tools > Open Workplace.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 348 of 570

We modeled the KanbanSource as an application object. For this reason opening Help with F1 and What’s This Help in the dialogs of the objects do
not work. To open help for the object, select Help > Help on Object in its dialog.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Part Information

Tab Part Information


The tab Part Information shows information about the parts to be produced. It contains the parts table and a button for defining new parts.
• To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
• To open the entire table, not just a row in it, select Tools > Open Part Information Table.

• To add a new part to the table, click .


Each row in this table describes a part, which this KanbanSource can produce. It contains these entries:

EntityType Is the identifier of the part. The Kanban system recognizes the part by this identifier and by its name. The identifier is the user-defined
attribute EntityType of this MU.

Path to Type in the path to the class of this part.


MU

Attributes Equivalent to the settings Sequence, Sequence cyclical, Random of the Source, you can enter additional attributes into this sub-table.

Related Topics
Tools > Open Part Information Table
PartInformation

Dialog for Editing an Existing Part

To edit the properties of a part in the table, double-click that row in the table. Edit the attributes in the dialog, which opens.
To delete a part type, delete it from the text box EntityType.

Dialog for Adding a New Part

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 349 of 570

To add a new part to the table, click . Enter the required information into the dialog, which opens.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Part Information

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced

Tab Advanced
On the tab Advanced you can extend and modify the properties of the Kanban system. You can access the tables, and the SingleProc, on which the
KanbanSource is based. In addition, you can manipulate the order process.

The tab Advanced provides these dialog items:

Show List of Open Requests Open Workplace

Open User-defined Method sortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Show List of Open
Requests

Show List of Open Requests


To open the table, which contains the open requests, click Show List of Open Requests. It shows all open requests, which the KanbanSource still has to
process. You cannot edit this table manually, but only by clicking Open User-defined Method sortList.

The table contains this information:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 350 of 570

PartName Is the name of the part. This name can be any string, it has to comply with the naming conventions in Plant Simulation.

Quantity Is the amount of parts, which the KanbanSource has to produce still.

Released Shows if this order, i.e., this row of the table Open requests has already been processed. The Kanban system sets this attribute,
when at least one part has already been produced.

OrderingObject Is the object, which ordered the part, in most cases a KanbanBuffer or a KanbanSingleProc.

Related Topics
requestParts
OpenRequestList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Show List of Open
Requests

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Open User-defined Method
sortList

Open User-defined Method sortList


The Kanban system can automatically call this method. The check boxes Call after a part was ordered and Call after a part has left set, when it will be
called. Within this method you can manipulate the order process by accessing the entries in the table Show List of Open Requests.

Call after a part was ordered

To call the method sortList after the order for this part has been placed, select this check box.

Related Topic
CallAfter_RP

Call after a part has left

To call the method sortList after a part has left KanbanSource, select this check box.

Related Topic
CallAfter_PL

User-defined method sortList

To edit the Show List of Open Requests table in the method sortList, click Open User-defined Method sortList. The passed parameter determines how the
method will be called at runtime:
• The value 1 stands for a Call after a part was ordered.
• The value 2 stands for a Call after a part has left the KanbanSource.

Related Topic
userDef_SortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Open User-defined Method
sortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Open Workplace

Open Workplace
To open the SingleProc on which the KanbanSource is based, click this. In the dialog of the SingleProc you can then view or change its attributes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 351 of 570

Related Topic
Tools > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > Tab Advanced > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Go to Class

Open Origin Open 3D Location

Go to Origin Edit 3D Properties

Open Class

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Navigate Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The View Menu

The View Menu


The View Menu provides the menu command Refresh.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The View Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu

The Tools Menu


The Tools menu provides the menu commands Open Part Information Table, and Open Workplace.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 352 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu > Open Part Information
Table

Open Part Information Table


The menu command Open Part Information Table opens the part information table as a table file. You can then edit its contents.

Related Topics
Tab Part Information
PartInformation

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu > Open Part Information
Table

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu > Open Workplace

Open Workplace
The menu command Open Workplace opens the SingleProc on which the KanbanSource is based. In the dialog of the SingleProc you can then view or
change its attributes.

Related Topic
Button Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Dialog Window of the KanbanSource > The Tools Menu > Open Workplace

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > The Help Menu

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource

Methods of the KanbanSource


The KanbanSource provides:
• The Methods of the SingleProc.
• The methods requestParts and userDef_SortList.
To view all of the methods and attributes of the KanbanSource, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 353 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource > requestParts

requestParts

Syntax: <Path>.requestParts(Part:<string>, Amount:<integer>)

The method requestParts insert a new row of orders in the table Open requests, and starts a production order if necessary.

Parameters
• The parameter Part of data type string designates the name of the part (EntityType).
• The parameter Amount of data type integer designates the amount of requested parts.

Example: -- SimTalk 2.0 notation


var requiredWheelType: string
requiredWheelType := BOM[1,@.EntityType]
KanbanBuffer.requestParts(requiredWheelType,4)
@.move

Example: -- SimTalk 2.0 notation


is
requiredWheelType : string;
do
requiredWheelType := BOM[1,@.EntityType];
KanbanBuffer.requestParts(requiredWheelType,4);
@.move;
end;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource > requestParts

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource > userDef_SortList

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 354 of 570

userDef_SortList

Syntax: <Path>.userDef_SortList(CallOrder:<integer>)

The method userDef_SortList allows you to change the contents of the Show List of Open Requests table.

Parameter
The parameter CallOrder of data type string determines how the method will be called:
• The value 1 designates a Call after a part was ordered.
• The value 2 designates a Call after a part has left the KanbanSource.

Example: myKanbanSource.userDef_SortList(1);

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Methods of the KanbanSource > userDef_SortList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource

Attributes of the KanbanSource


The KanbanSource provides:
• The Attributes of the SingleProc.
• The attributes CallAfter_PL, CallAfter_RP, OpenRequestList, and PartInformation. You can access these attributes as you access any of the built-in
attributes.
To view all of the methods and attributes of the KanbanSource, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

myKanbanSource.CallAfter_PL := true

• To get the value of an attribute, you might, for example, type:

print myKanbanSource.CallAfter_PL
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > CallAfter_PL

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 355 of 570

CallAfter_PL

Syntax: <Path>.CallAfter_PL

The attribute CallAfter_PL sets if the method sortList will be called, when a part has left the KanbanSource (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanSource.CallAfter_PL := true;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > CallAfter_PL

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > CallAfter_RP

CallAfter_RP

Syntax: <Path>.CallAfter_RP

The attribute CallAfter_RP sets if the method sortList will be called, when a new order for parts has been placed (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: myKanbanSource.CallAfter_RP := false;

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > CallAfter_RP

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > OpenRequestList

OpenRequestList

Syntax: <Path>.OpenRequestList

The attribute OpenRequestList allows read access to the table Show List of Open Requests.

Example: OpenRequests := myKanbanSource.OpenRequestList.sum({2,1}..{2,*});

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > OpenRequestList

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > PartInformation

PartInformation

Syntax: <Path>.PartInformation

The attribute PartInformation allows to access the table on the Tab Part Information/Open Part Information Table.

Assignment Value
You can assign a value of data type table.

Example: myKanbanSource.PartInformation := myPartInformationTable;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 356 of 570

Add-Ins Reference Help > Object Libraries > Kanban Objects > KanbanSource > Attributes of the KanbanSource > PartInformation

Add-Ins Reference Help > Object Libraries > MultiPortalCrane

MultiPortalCrane

To add the MultiPortalCrane to the Class Library, click Manage Class Library > Libraries > Standard Libraries > Free > Cranes on the Home ribbon
tab.

The MultiPortalCrane can pick up a part and place it anywhere within a plant. It thus is ideally suited for:
• The shipyard industry where parts are picked up from a truck, are then assembled on pre-assembly stations and the finished components are put together
to form the ship. The crane can also be used for clamping and holding components or blocks until they are tack welded.
• Loading and unloading machines with the MultiPortalCrane being the feeder. It can either move on runways on the floor of the plant or on rails attached to
the ceiling of the production area.
Be aware that the MultiPortalCrane only provides a set of basic functions. These functions serve as the starting point for developing the crane that best suits
your specific needs.
Several MultiPortalCranes can drive on the same crane runway. For this reason you have to position each portal, each trolley, and each hook of each of the
individual cranes. The basic functions for detecting collisions of the portals prevent them from colliding with each other.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

We modeled the objects of the object libraries as application objects based on Frames. For this reason opening Help with F1 and What’s This Help in
the dialogs of the objects do not work. To open help for an object, select Help > Help on Object in its dialog.

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topics

How the MultiPortalCrane Works Methods of the MultiPortalCrane

Dialog Window of the MultiPortalCrane Attributes of the MultiPortalCrane

Add-Ins Reference Help > Object Libraries > MultiPortalCrane

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > How the MultiPortalCrane Works

How the MultiPortalCrane Works


After you insert the MultiPortalCrane into your simulation model, Plant Simulation creates two sensors for each portal during the init phase of the simulation
run. The position of these sensors is stored in a table. The position of the portal is defined by the center point of the hook of the portal.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 357 of 570

If the portal is empty, the distance between the sensors S1 and S2 is the same as the width of the portal. If the portal picks up a part and if the part is shorter
than the portal is wide, the position of S1 and S2 will not be changed. If the part is longer than the portal is wide, the position of both sensors will be adjusted
accordingly.
When the crane receives a driving order for the portal K1 to the left or to a position between the sensors S1 and S3, then this driving command can be
executed.
If a driving command will lead to a collision, the collision detection control of the portal will be activated. If both portals are driving independently of each
other, they might collide. Then the collision control will be activated.
The x-direction of the MultiPortalCrane is the direction of the rails. The y-direction is the direction towards the second rail. The z-direction is the direction
from rail to trolley.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > How the MultiPortalCrane Works

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane

Dialog Window of the MultiPortalCrane


Double-click the icon of the MultiPortalCrane, which you inserted into a Frame, to open its dialog window.

Related Topics

Tab Crane Runway The Navigate Menu

Tab Portal The View Menu

Tab Trolley The Help Menu

Tab Hook OK

Tab Failures Cancel

Tab 3D Apply

Tab Statistics

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 358 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway

Tab Crane Runway


The tab Crane Runway provides these dialog items:

Length of runway Height of runway

Width of runway Number of portals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Length of runway

Length of runway
Enter the length of the runway, i.e., the length of the rails on which the MultiPortalCrane drives.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Length of runway

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 359 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Width of runway

Width of runway
Enter the width of the runway, i.e., the distance between the rails on which the MultiPortalCrane drives.

SimTalk
RunwayWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Width of runway

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Height of runway

Height of runway
Enter the height of the runway. The height determines if the rails, on which the MultiPortalCrane drives, are laid down on the floor of your plant (Height 0) or
attached to the ceiling of the building.
Enter 0 to place the runway on the floor. Enter the height of your building to place the runway under the ceiling.

SimTalk
RunwayHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Height of runway

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Number of portals

Number of portals
Enter the number of portals that are moving on the same set of runways at the same time. Plant Simulation creates the portals during the init phase of
your simulation run with equal distance to each other.

SimTalk
NumberOfPortals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Crane Runway > Number of portals

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 360 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal

Tab Portal
The tab Portal provides these dialog items:

Portal length Portal speed

Portal width Collision detection control

Portal height Collision control

Overhang

The following example shows how to work with the portals, and how to get pointers to the portals respectively.

is
Portal_1, Portal_2 : object;
do
-- get pointers to the portals of the crane
local Portal : list;
Portal.create;
MultiPortalCrane.getPortals(Portal);
Portal_1 := Portal[1,1];
Portal_2 := Portal[1,2];
Portal_2.moveToObject(Station4);
end;

SimTalk

getPortals moveToObject

moveHook moveToPosition

moveTo

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal length

Portal length
Enter the length of the portal of the MultiPortalCrane.
The area within which the hook can pick up parts or deposit parts is located in the interval defined by the formula [1/2*portal length..runway length-
1/2*portal length].

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 361 of 570

The portal length multiplied with the number of portals has to be less than the runway length. If this is not the case, the portals will not be created.
This is especially true if the crane only has a single portal.

SimTalk
PortalLength

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal length

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal width

Portal width
Enter the width of the portal of the MultiPortalCrane. It designates the distance between the rails of the runway. You can also make the portal width greater
than the Width of runway. In this case you have to enter an Overhang on the right hand side of the portal in the direction in which you inserted the
MultiPortalCrane.

SimTalk
PortalWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal width

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 362 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal height

Portal height
Enter the height of the portal of the MultiPortalCrane. It designates the height of its columns.

SimTalk
PortalHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Overhang

Overhang
If the portal width is greater than the Width of runway, you have to enter the overhang on the right hand side of the portal. This is the side of the runway
you drew, when you inserted the MultiPortalCrane into your simulation model.
You only have to enter the overhang on the right hand side, as you can compute the overhang on the left hand side by the formula overhang left = portal
length - overhang right - runway width.

SimTalk
Overhang

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 363 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Overhang

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal speed

Portal speed
Enter the speed with which the portal moves on the runway backwards and forwards.

SimTalk
PortalSpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Portal speed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Collision detection control

Collision detection control


Enter the name of a Method, the collision detection control. It will be called when the portal detects that the new position to which you are sending it will
cause a collision. If the control returns the value true, the portal will continue moving to the defined location. If it returns false, the crane cancels the most
recent movement command.

SimTalk
CollisionDetectCtrl

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Collision detection control

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Collision control

Collision control
Enter the name of a Method, the collision control. It will be called as soon as a collision was detected. Both colliding portals stop moving. You have to
program the following movement commands which prevent the collision in this control.

SimTalk
CollisionCtrl

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 364 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Portal > Collision control

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley

Tab Trolley
The tab Trolley provides these dialog items:

Trolley length Lift height

Trolley width Trolley speed

Trolley height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley length

Trolley length
Enter the length of the trolley of the MultiPortalCrane.

SimTalk
TrolleyLength

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley length

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley width

Trolley width
Enter the width of the trolley of the MultiPortalCrane.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 365 of 570

SimTalk
TrolleyWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley width

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley height

Trolley height
Enter the height of the trolley of the MultiPortalCrane.

SimTalk
TrolleyHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Lift height

Lift height
Enter the traverse length of the hook, i.e., how far the hook can move up or down. If you modeled the crane as an overhead crane, the portal can then
move the hook below the runway of the crane.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 366 of 570

SimTalk
HeightOfLift

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Lift height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley speed

Trolley speed
Enter the speed with which the trolley of the MultiPortalCrane moves left and right on the portal.

SimTalk
TrolleySpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Trolley > Trolley speed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook

Tab Hook
The tab Hook provides the dialog items Hook height and Hook speed.

SimTalk
moveHook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook > Hook height

Hook height
Enter the height/length of the hook of the MultiPortalCrane.

SimTalk
HookHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook > Hook height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook > Hook speed

Hook speed
Enter the speed with which the hook of the MultiPortalCrane moves up or down.

SimTalk
HookSpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Hook > Hook speed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 367 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures

Tab Failures
The tab Failures provides these dialog items:

Availability portal MTTR trolley

MTTR portal Availability hook

Availability trolley MTTR hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability portal

Availability portal
Enter the availability of the portal.

SimTalk
PortalAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR portal

MTTR portal
Enter the MTTR of the portal.

SimTalk
PortalMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability trolley

Availability trolley
Enter the availability of the trolley.

SimTalk

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 368 of 570

TrolleyAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability trolley

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR trolley

MTTR trolley
Enter the MTTR of the trolley.

SimTalk
TrolleyMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR trolley

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability hook

Availability hook
Enter the availability of the hook.

SimTalk
HookAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > Availability hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR hook

MTTR hook
Enter the MTTR of the hook.

SimTalk
HookMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Failures > MTTR hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D

Tab 3D
On the tab 3D you can set to use your own graphics files for displaying one or several portals, trolleys, and hooks of the MultiPortalCrane respectively in

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 369 of 570

the 3D Viewer. You can specify a graphics file for the portals, the trolley, and for the hook. When you specify the graphics file for the portal, the
MultiPortalCrane uses this portal for all newly created portals. When you use an external graphics file, the MultiPortalCrane scales it according to the
masses of the portal. The MultiPortalCrane also uses the scaling factor, which it calculated for the portal, for the trolley and for the hook.

The tab 3D provides these dialog items:

Use external graphics Trolley animation offset X

Portal graphics file Trolley animation offset Z

Trolley graphics file Hook graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Use external graphics

Use external graphics


To use your own graphics for displaying the MultiPortalCrane in the 3D Viewer, select the check box. To use the built-in graphics, clear it.
Then, you can select the Portal graphics file, the Trolley graphics file, and the Hook graphics file.
The MultiPortalCrane can import files in any of these formats:

SimTalk
UserGraphics

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Use external graphics

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Portal graphics file

Portal graphics file

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 370 of 570

Enter the name of the graphics file to be used for displaying the portal in the 3D Viewer into the text box.

Or click the button and select the graphics file.

SimTalk
Portal_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Portal graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley graphics file

Trolley graphics file


Enter the name of the graphics file to be used for displaying the trolley in the 3D Viewer into the text box.

Or click the button and select the graphics file.

SimTalk
Trolley_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley animation offset X

Trolley animation offset X


Enter the offset of the animation line in the x-direction on which the trolley is to be animated. This is useful when the trolley does not directly move on the
portal but with an offset in the x-direction and in the z-direction.
In our example the trolley moves with a positive x-offset and a negative z-offset.

SimTalk
TrolleyXOffset

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley animation offset X

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 371 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley animation offset Z

Trolley animation offset Z


Enter the offset of the animation line in the z-direction on which the trolley is to be animated. This is useful when the trolley does not directly move on the
portal but with an offset in the x-direction and in the z-direction.
In our example the trolley moves with a positive x-offset and a negative z-offset.

SimTalk
TrolleyZOffset

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Trolley animation offset Z

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Hook graphics file

Hook graphics file


Enter the name of the graphics file to be used for displaying the hook in the 3D Viewer into the text box.

Or click the button and select the graphics file.

SimTalk
Hook_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab 3D > Hook graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Statistics

Tab Statistics
On the tab Statistics the MultiPortalCrane shows the mean values for all portals for the states waiting, idle, driving, and movingHook. When you click the
button Detailed Statistics Values, the MultiPortalCrane opens a table showing the values of the individual portals.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 372 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > Tab Statistics

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Navigate Menu

The Navigate Menu


The Navigate Menu provides these menu commands:

Open Location Open Class

Open Origin Go to Class

Go to Origin Open Object

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Navigate Menu

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Navigate Menu > Open Object

Open Object
The menu command Open Object opens the dialog of the object of type Track on which the MultiPortalCrane is based.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Navigate Menu > Open Object

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The View Menu

The View Menu


The View Menu provides the commands Refresh, Show Statistics Report, and Contents.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The View Menu

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Dialog Window of the MultiPortalCrane > The Help Menu

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 373 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane

Methods of the MultiPortalCrane


The MultiPortalCrane provides:
• The Methods of the MultiPortalCrane Proper.
• The Methods of the Portals.
• The Methods of the Material Flow Objects.
• The Methods of All Objects.
To view all of the methods and attributes of the MultiPortalCrane, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the MultiPortalCrane Proper

Methods of the MultiPortalCrane Proper


The MultiPortalCrane proper provides the method endSequence.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the MultiPortalCrane Proper

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the MultiPortalCrane Proper > endSequence

endSequence

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 374 of 570

Syntax: <Portal_path>.endSequence

The method endSequence terminates a command sequence. The command waits until the state changes to waiting and then sets the state to idle.

Example: MyPortal.endSequence;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the MultiPortalCrane Proper > endSequence

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals

Methods of the Portals


The portals of the MultiPortalCrane provide the methods getPortals, moveHook, moveTo, moveToObject, moveToPosition, synchronize, and, unsync.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > getPortals

getPortals

Syntax: <Path>.getPortals(Targetlist:<list>)

The method getPortals returns all portal objects which were created for the crane and writes them into a list. These portals are required to access the
functions of each portal.

Parameter
The parameter TargetList of data type list can either be a list of data type object or a table of data type table in which the column with the number 1 has the
data type object. The method automatically formats the list or the table.

Example: MyPortalcrane.getPortals(MyPortallist);
MyPortal := MyPortallist[1,1];

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > getPortals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveHook

moveHook

Syntax: <Portal_path>.moveHook(Z:<real>)

The method moveHook lifts the hook of the portal to the designated position.

Parameter
The parameter Z of data type real designates the z-coordinate, i.e., the position up to which the crane lifts the hook.
The state is movingHook. As soon as the position of the hook is reached, the state changes to waiting.

Return Value
The return value has the data type integer. The value is 0 if the designated position can be reached. If the designated position cannot be reached, the value
will be greater than 0. The integer value depends on the result of checking the parameters and has the following meaning:
• 0 means that everything is OK.
• 1 means that the portal position is out of range.
• 2 means that the trolley position is out of range.
• 3 means that the hook position is out of range.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 375 of 570

Example: MyPortal.moveHook(5);

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveHook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveTo

moveTo

Syntax: <Portal_path>.moveTo(X:<real>, Y:<real>, Z:<real>)

The method moveTo moves the portal, more exactly the hook, to the designated position. The portal, the trolley, and the hook start moving immediately. If
the value of the z-position is -1, the hook will keep its current z-position. This is required to move a part to a location without lifting it.
The portal changes its state to driving. This designates that the portal is executing a command. When it reaches the defined position, the state of the portal
changes to waiting.

Parameters
• The parameter X of data type real designates the x-coordinate.
• The parameter Y of data type real designates the y-coordinate.
• The parameter Z of data type real designates the z-coordinate.

Return Value
The return value has the data type integer. The value is 0 if the designated position can be reached. If the designated position cannot be reached, the value
will be greater than 0.
The portal changes its state to driving. This shows that the portal executes a command. As soon as it reaches the designated position, the state of the
portal changes to waiting.

Example: MyPortal.moveTo(140,80,12);

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveTo

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveToObject

moveToObject

Syntax: <Portal_path>.moveToObject(TargetObject:<object>)

The method moveToObject moves the portal to the designated target object. The position is defined by the position of the object. You can, for example, get
it by querying the x-position and the y-position of the target object.

Parameter
The parameter TargetObject of data type object designates the target object.

Return Value
The return value has the data type integer. The value is 0 if the designated position can be reached. If the designated position cannot be reached the value
will be greater than 0.
The portal changes its state to driving. When it has reached the designated position, the state of the portal changes to waiting.

Example: MyPortal.moveToObject(MyObject,1);

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveToObject

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveToPosition

moveToPosition

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 376 of 570

Syntax: <Portal_path>.moveToPosition(X:<integer>, Y:<integer>)

The method moveToPosition moves the portal to the designated position. The position is defined by the absolute pixel position in the Frame that contains
your simulation model. You can, for example, get it by querying the x and y position of any material flow object.

Parameters
• The parameter X of data type integer designates the x-coordinate.
• The parameter Y of data type integer designates the y-coordinate.

Return Value
The return value has the data type integer. The value is 0 if the designated position can be reached. If the designated position cannot be reached the value
will be greater than 0.
The portal changes its state to driving. This shows that the portal is executing a command. When it reaches the designated position, the state of the portal
changes to waiting.

Example: MyPortal.moveToPosition;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > moveToPosition

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > synchronize

synchronize

Syntax: <Portal_path>.synchronize(NameOfPortal:<object>);

The method synchronize synchronizes two portals. This means that both portals move in parallel starting from the point in time that synchronization starts.
You can only assign the driving commands to the master portal.
This enables a very long part to be transported with two portals. The part is hooked to the hook of the master portal. Make sure to set the reference points of
the part accordingly so that Plant Simulation can run the animation correctly. Move both portals to positions until the distance between them is, depending
on the length of the part, as great as you need it, and then synchronize the portals.

Parameter
The parameter NameOfPortal of data type object designates the name of the slave portal which you want to synchronize with the master portal.

Example: MyPortal.synchronize(SlavePortal);

Related Topic
unsync

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > synchronize

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > unsync

unsync

Syntax: <Portal_path>.unsync;

The method unsync terminates the synchronization of two portals. Then both portals move independent of each other again.

Example: MyPortal.unsync;

Related Topic
synchronize

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Methods of the MultiPortalCrane > Methods of the Portals > unsync

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 377 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane

Attributes of the MultiPortalCrane


The MultiPortalCrane provides:
• The Attributes of the MultiPortalCrane Proper.
• The Attributes of the Portal.
• The Attributes of the Trolley.
• The Attributes of the Hook.
• The Attributes for Displaying the Crane in 3D.
• The Attributes of All Objects.
• The Attributes of the Material Flow Objects.
To view all of the methods and attributes of the MultiPortalCrane, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyStorageCrane.HeightOfLift := 6;

• To get the value of an attribute, you might, for example, type:

print .MyStorageCrane.HeightOfLift
posit := SingleProc.cont.XPos;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper

Attributes of the MultiPortalCrane Proper


The MultiPortalCrane proper provides these attributes: CollisionCtrl, CollisionDetectCtrl, HeightOfLift, HookAvailability, HookHeight, HookMTTR,
HookSpeed, NumberOfPortals, Overhang, PortalAvailability, PortalHeight, PortalLength, PortalMTTR, PortalAvailability, PortalHeight, PortalLength,
PortalMTTR, PortalWidth, RunwayHeight, RunwayWidth, TrolleyAvailability, TrolleyHeight, TrolleyLength, TrolleyMTTR, TrolleySpeed, and TrolleyWidth.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > CollisionCtrl

CollisionCtrl

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 378 of 570

Syntax: <Path>.CollisionCtrl

The attribute CollisionCtrl sets the name of the Collision control. It will be called as soon as a collision was detected. Both colliding portals stop moving. You
have to program the following movement commands which prevent the collision in this control.

Assignment Value
You can assign a value of data type string or object.

Example: MyPortalcrane.CollisionCtrl := "myCollisionControl";

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > CollisionCtrl

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper >
CollisionDetectCtrl

CollisionDetectCtrl

Syntax: <Path>.CollisionDetectCtrl

The attribute CollisionCtrl sets the name of the Collision detection control. It will be called when the portal detects that the new position to which you are
sending it will cause a collision. If the control returns the value true, the portal will continue moving to the defined location. If it returns false, the crane
cancels the most recent movement command.

Assignment Value
You can assign a value of data type string or object.

Example: MyPortalcrane.CollisionDetectCtrl := "myCollisionDetectControl";

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper >
CollisionDetectCtrl

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HeightOfLift

HeightOfLift

Syntax: <Path>.HeightOfLift

The attribute HeightOfLift sets the traverse length of the hook. If you modeled the crane as an overhead crane the portal can then move the hook below the
runway of the crane.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.HeightOfLift := 6;

Related Topic
Lift height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HeightOfLift

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookAvailability

HookAvailability

Syntax: <Path>.HookAvailability

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 379 of 570

The attribute HookAvailability sets the availability of the hook.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.HookAvailability := 80;

Related Topic
Availability hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookHeight

HookHeight

Syntax: <Path>.HookHeight

The attribute HookHeight sets the height of the hook.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.HookHeight := 1; -- sets the height of the hook to one meter

Related Topic
Hook height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookMTTR

HookMTTR

Syntax: <Path>.HookMTTR

The attribute HookMTTR sets the MTTR of the hook.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.HookMTTR := "200";

Related Topic
MTTR hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookSpeed

HookSpeed

Syntax: <Path>.HookSpeed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 380 of 570

The attribute HookSpeed sets the speed with which the hook moves up or down on the trolley.

Assignment Value
You can assign a value of data type speed.

Example: MyPortalcrane.HookSpeed := 14;

Related Topic
Hook speed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > HookSpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > NumberOfPortals

NumberOfPortals

Syntax: <Path>.NumberOfPortals

The attribute NumberOfPortals sets the number of portals that can move on the same runway at the same time.

Assignment Value
You can assign a value of data type integer.

Example: MyPortalcrane.NumberOfPortals := 2;

Related Topic
Number of portals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > NumberOfPortals

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > Overhang

Overhang

Syntax: <Path>.Overhang

The attribute Overhang sets the overhang of the right hand side of the portal. This only applies if the portal width is greater than the Width of runway. This
is the side of the runway you drew, when you inserted the MultiPortalCrane into your simulation model.
You only have to enter the overhang on the right hand side, as you can compute the overhang on the left hand side by the formula overhang left = portal
length-overhang right-runway width.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.Overhang := 2;

Related Topic
Overhang

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > Overhang

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalAvailability

PortalAvailability

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 381 of 570

Syntax: <Path>.PortalAvailability

The attribute PortalAvailability sets the availability of the portal.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.PortalAvailability := 90;

Related Topic
Availability portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalHeight

PortalHeight

Syntax: <Path>.PortalHeight

The attribute PortalHeight sets the height of the portal.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.PortalHeight := 20;

Related Topic
Portal height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalLength

PortalLength

Syntax: <Path>.PortalLength

The attribute PortalLength sets the length of the portal.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.PortalLength := 200;

Related Topic
Portal length

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalLength

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalMTTR

PortalMTTR

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 382 of 570

Syntax: <Path>.PortalMTTR

The attribute PortalMTTR sets the MTTR of the portal.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.PortalMTTR := "300";

Related Topic
MTTR portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalSpeed

PortalSpeed

Syntax: <Path>.PortalSpeed

The attribute PortalSpeed sets the speed with which the portal moves on the runway.

Assignment Value
You can assign a value of data type speed.

Example: MyPortalcrane.PortalSpeed := 10;

Related Topic
Portal speed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalSpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalWidth

PortalWidth

Syntax: <Path>.PortalWidth

The attribute PortalWidth sets the width of the portal. You can also make the portal width greater than the Width of runway. In this case you have to enter
an Overhang on the right hand side of the portal in the direction in which you inserted the MultiPortalCrane.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.PortalWidth := 20;

Related Topic
Portal width

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > PortalWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > RunwayHeight

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 383 of 570

RunwayHeight

Syntax: <Path>.RunwayHeight

The attribute RunwayHeight sets the height of the runway. The height determines if the rails, on which the MultiPortalCrane drives, are laid down on the floor
of your plant or attached to the ceiling of the factory building.
Enter 0 to place the runway on the floor. Enter the height of your building to place the runway under the ceiling.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.RunwayHeight := 0;

Related Topic
Height of runway

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > RunwayHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > RunwayWidth

RunwayWidth

Syntax: <Path>.RunwayWidth

The attribute RunwayWidth sets the width of the runway, i.e., the distance between the rails on which the MultiPortalCrane drives.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.RunwayWidth := 24;

Related Topic
Width of runway

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > RunwayWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyAvailability

TrolleyAvailability

Syntax: <Path>.TrolleyAvailability

The attribute TrolleyAvailability sets the availability of the trolley.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.TrolleyAvailability := 100;

Related Topic
Availability trolley

TrolleyHeight

Syntax: <Path>.TrolleyHeight

The attribute TrolleyHeight sets the height of the trolley.


You can assign a value of data type length.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 384 of 570

Example: MyPortalcrane.TrolleyHeight := 1;

Related Topic
Portal height

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyAvailability

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyLength

TrolleyLength

Syntax: <Path>.TrolleyLength

The attribute TrolleyLength sets the length of the trolley.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.TrolleyLength := 14;

Related Topic
Portal length

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyLength

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyMTTR

TrolleyMTTR

Syntax: <Path>.TrolleyMTTR

The attribute TrolleyMTTR sets the MTTR of the trolley.

Assignment Value
You can assign a value of data type real.

Example: MyPortalcrane.TrolleyMTTR := "200";

Related Topic
MTTR trolley

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyMTTR

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleySpeed

TrolleySpeed

Syntax: <Path>.TrolleySpeed

The attribute TrolleySpeed sets the speed with which the trolley moves left and right on the portal.

Assignment Value
You can assign a value of data type speed.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 385 of 570

Example: MyPortalcrane.TrolleySpeed := 10;

Related Topic
Trolley speed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleySpeed

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyWidth

TrolleyWidth

Syntax: <Path>.TrolleyWidth

The attribute TrolleyWidth sets the width of the trolley.

Assignment Value
You can assign a value of data type length.

Example: MyPortalcrane.TrolleyWidth := 8;

Related Topics
Trolley width
HeightOfLift
HookHeight

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the MultiPortalCrane Proper > TrolleyWidth

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal

Attributes of the Portal


The portal of the MultiPortalCrane provides these attributes: Hook, MovingDirection, Overhang, and State.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > Hook

Hook

Syntax: <Portal_path>.Hook

The attribute Hook queries the hook of the portal designated by <Portal_path>.

Assignment Value
You can assign a value of data type object.

Example: print Portal.Hook;


MyHook := MyPortal.Hook
part.move(MyHook); -- loads a part

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > Hook

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 386 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > MovingDirection

MovingDirection

Syntax: <Portal_path>.MovingDirection

The attribute MovingDirection queries the direction in which the portal designated by <Portal_path> is currently moving.
The return values of this attribute are "left" or "right". The empty string "" means that portal is not moving at the moment. The moving direction is set to
"right" if the portal moves in the direction in which you inserted the runway when you created your simulation model.

Example: currentDirection := Portal.MovingDirection;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > MovingDirection

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > Overhang

Overhang

Syntax: <Portal_path>.Overhang

The attribute Overhang sets the overhang on the right hand side of the portal, which is the side of the runway you drew, when you inserted the
MultiPortalCrane into your simulation model.
You only have to enter the overhang on the right hand side, as you can compute the overhang on the left hand side by the formula overhang left = portal
length-overhang right-runway width

Assignment Value
You can assign a value of data type length.

Example: Portal.Overhang := 2;

Related Topic
Overhang

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > Overhang

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > State

State

Syntax: <Portal_path>.State

The attribute State supports you in implementing project-specific behavior. It returns the current state of the MultiPortalCrane. This attribute is observable.
You can use observers to watch the value of the attribute and to react on any changes of the value.
The default state of the portal is idle. When executing a command, the state changes to driving. After finishing the command, the state is waiting. If a
sequence of commands is finished, you have to execute the command endSequence. This will change the state back to idle. The reason for this is that it is
often necessary to execute several commands without disrupting the sequence. So before starting a sequence, you have to wait until the portal is in state
idle. Then the sequence of commands can be started, the portal only will reach the state waiting when finishing one command. If all commands are
finished, you have to send the command endSequence to the portal and the portal will change its state from waiting to idle.

Example: print Portal.State;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Portal > State

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 387 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Trolley

Attributes of the Trolley


The trolley of the MultiPortalCrane provides the attribute Hook.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Trolley

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Trolley > Hook

Hook

Syntax: <Trolley_path>.Hook

The attribute Hook queries the hook which is attached to the trolley.

Example: print Trolley.Hook;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Trolley > Hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Hook

Attributes of the Hook


The hook of the MultiPortalCrane provides the attribute HeightOfPart.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Hook

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Hook > HeightOfPart

HeightOfPart

Syntax: <Hook_path>.HeightOfPart

The attribute HeightOfPart queries the height of the loaded part which you entered. The MultiPortalCrane does not use this attribute.

Example: print Hook.HeightOfPart;

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes of the Hook > HeightOfPart

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D

Attributes for Displaying the Crane in 3D


The MultiPortalCrane provides these attributes for displaying it in the 3D Viewer:
Hook_Graphics_File, Portal_Graphics_File, Trolley_Graphics_File, TrolleyXOffset, TrolleyZOffset, and UserGraphics.

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 388 of 570

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Hook_Graphics_File

Hook_Graphics_File

Syntax: <Path>.Hook_Graphics_File

The attribute Hook_Graphics_File sets the name of the graphics file to be used for displaying the hook of the MultiPortalCrane designated by <Path> in the
3D Viewer.

Assignment Value
You can assign a value of data type string.

Example: MyPortalCrane.Hook_Graphics_File := "MyHookGraphic.JT";

Related Topic
Hook graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Hook_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Portal_Graphics_File

Portal_Graphics_File

Syntax: <Path>.Portal_Graphics_File

The attribute Portal_Graphics_File sets the name of the graphics file to be used for displaying the portal of the MultiPortalCrane designated by <Path> in the
3D Viewer.

Assignment Value
You can assign a value of data type string.

Example: MyPortalCrane.Portal_Graphics_File := "MyPortalGraphic.JT";

Related Topic
Portal graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Portal_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Trolley_Graphics_File

Trolley_Graphics_File

Syntax: <Path>.Trolley_Graphics_File

The attribute Trolley_Graphics_File sets the name of the graphics file to be used for displaying the trolley of the MultiPortalCrane designated by <Path> in
the 3D Viewer.

Assignment Value
You can assign a value of data type string.

Example: MyPortalCrane.Trolley_Graphics_File := "MyTrolleyGraphic.JT";

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 389 of 570

Related Topic
Trolley graphics file

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D >
Trolley_Graphics_File

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > TrolleyXOffset

TrolleyXOffset

Syntax: <Path>.TrolleyXOffset

The attribute TrolleyXOffset sets the offset of the animation line in the x-direction on which the trolley of the MultiPortalCrane designated by <Path> is to be
is to be animated in the 3D Viewer. This is useful when the trolley does not directly move on the portal but with an offset in the x-direction and in the z-
direction displaying the trolley.

Assignment Value
You can assign a value of data type real.

Example: MyPortalCrane.TrolleyXOffset := 0.5;

Related Topic
Trolley animation offset X

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > TrolleyXOffset

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > TrolleyZOffset

TrolleyZOffset

Syntax: <Path>.TrolleyZOffset

The attribute TrolleyZOffset sets the offset of the animation line in the z-direction on which the trolley of the MultiPortalCrane designated by <Path> is to be
is to be animated in the 3D Viewer. This is useful when the trolley does not directly move on the portal but with an offset in the x-direction and in the z-
direction displaying the trolley.

Assignment Value
You can assign a value of data type real.

Example: MyPortalCrane.TrolleyZOffset := 1

Related Topic
Trolley animation offset Z

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > TrolleyZOffset

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > UserGraphics

UserGraphics

Syntax: <Path>.UserGraphics

The attribute UserGraphics sets if external graphics are used for displaying the MultiPortalCrane in the 3D Viewer (true). To use the built-in graphics, enter
false.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 390 of 570

Assignment Value
You can assign a value of data type boolean.

Example: MyPortalCrane.UserGraphics := true;

Related Topic
Use external graphics

Add-Ins Reference Help > Object Libraries > MultiPortalCrane > Attributes of the MultiPortalCrane > Attributes for Displaying the Crane in 3D > UserGraphics

Add-Ins Reference Help > Object Libraries > StorageCrane

StorageCrane

To add the StorageCrane to the Class Library, click Manage Class Library > Libraries > Standard Libraries > Free > Cranes on the Home ribbon
tab.

The StorageCrane is a crane with vertical columns, which passes over the associated store and places parts into stock and removes parts from stock. The
StorageCrane can move large parts in the x-, y-, and z-dimensions. You can define the size of the storage area, the size of the crane gantry and the position
of the columns of the gantry.

We modeled the StorageCrane as an application object in a Frame. For this reason opening Help with F1 and What’s This Help in the dialogs of the
objects do not work. To open help for the object, select Help > Help on StorageCrane in its dialog.

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Plant Simulation checks about every half hour if a newer version of any of the loaded libraries exists.

Related Topics

Model a Plant Using a Storage Crane Methods of the StorageCrane

Dialog Window of the StorageCrane Attributes of the StorageCrane

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 391 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane

Dialog Window of the StorageCrane


Double-click the icon of the StorageCrane, which you inserted into a Frame, to open its dialog window.
The StorageCrane deletes and creates the portal anew, after you changed its size, height or position, when you click OK. When you change settings
while the simulation is running, the StorageCrane cancels the current order and deletes the part on the hook.

Related Topics

Tab Size The Navigate Menu

Tab Speed The View Menu

Tab Store The Help Menu

Tab Strategy OK

Tab Failures Cancel

Tab Removal Apply

Tab Statistics setCraneParameters

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size

Tab Size
The tab Size provides these dialog items:

Crane length Portal position 2

Portal width setCraneParameters

Portal height getParameterTable

Portal position 1

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Crane length

Crane length
Enter the length of the storage area, which the crane covers into the text box. The crane uses the unit, which you selected under File > Preferences > Units
> Length.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Crane length

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal width

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 392 of 570

Portal width
Enter the width of the crane gantry into the text box. The crane uses the unit, which you selected under File > Model Settings/Preferences > Units >
Length.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal width

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal height

Portal height
Enter the height of the crane gantry into the text box. The crane uses the unit, which you selected under File > Model Settings/Preferences > Units >
Length.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal height

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal position 1

Portal position 1
Portal position 1 and Portal position 2 determine where the columns of the crane gantry are placed, when the crane moves over the storage area.
Enter the position of the “top” column of the crane gantry into the text box. Enter 0 to place the “top” column on the top border of the storage area, which the
crane covers. Note that Plant Simulation counts the positions starting from the top left corner of the storage area, which has the coordinates 0,0. The unit is
the unit you selected under File > Model Settings/Preferences > Units > Length.
In this example our crane is 5 meters wide.
• To make the crane move on the outside of the storage area we entered 0 as Portal position 1 and 5 as Portal position 2.
• To make the crane move on “tracks” inside of the storage area we entered 1.5 as Portal position 1 and 4 as Portal position 2.

When the crane drives inside of the storage area, it automatically blocks the storage places on these “tracks.”

Position 1 = 0, Position 1 = 1.5,


position 2 = 5 position 2 = 4

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal position 1

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal position 2

Portal position 2
Portal position 1 and Portal position 2 determine where the columns of the crane gantry are placed, when the crane moves the storage area.
Enter the position of the “bottom” column of the crane gantry into the text box. Enter the Portal width to place the “bottom” column on the bottom border of
the storage area, which the crane covers. Note that Plant Simulation counts the positions starting from the top left corner of the storage area, which has the
coordinates 0,0. The crane uses the unit, which you selected under File > Model Settings/Preferences > Units > Length.
In this example our crane is 5 meters wide.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 393 of 570

To make the crane move on the outside of the storage area we entered 0 as Portal position 1 and 5 as Portal position 2.
• To make the crane move on tracks inside of the storage area we entered 1.5 as Portal position 1 and 4 as Portal position 2.

When the crane drives inside of the storage area, it automatically blocks the storage places on these “tracks.”

Position 1 = 0, Position 1 = 1.5,


position 2 = 5 position 2 = 4

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Size > Portal position 2

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed

Tab Speed
The tab Speed provides these dialog items:

Portal speed setCraneParameters

Trolley speed getParameterTable

Hook speed

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Portal speed

Portal speed
Enter the speed with which the crane moves over the storage area into the text box. The crane uses the unit, which you selected under File > Model
Settings/Preferences > Units > Speed.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Portal speed

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Trolley speed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 394 of 570

Trolley speed
Enter the speed with which the trolley moves left and right on the gantry beam into the text box. The crane uses the unit, which you selected under File >
Model Settings/Preferences > Units > Speed.
You can only see how fast the crab moves in the 3D part of your model, not in the 2D part. Plant Simulation does, of course, record the time moving left
and right takes and evaluates it for statistical purposes.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Trolley speed

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Hook speed

Hook speed
Enter the hook speed into the text box. This is the speed with which the hook moves up and down on the lifting gear, which in turn is attached to the gantry
beam. The crane uses the unit, which you selected under File > Model Settings/Preferences > Units > Speed.
You can only see how fast the hook moves in the 3D part of your model, not in the 2D part. Plant Simulation does, of course, record the time moving up
and down takes and evaluates it for statistical purposes.

Related Topic
Show Statistics

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Speed > Hook speed

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store

Tab Store
The tab Store provides these dialog items:

Storage places Stack height

Define Barred Area Entry place

Define Initialization of Store Area Exit place

Related Topics

getPart storePart

getPartFromPosition setCraneParameters

shiftPart getParameterTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 395 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Storage places

Storage places
Enter the number of storage places within the store in the three dimensions into the text boxes.

• Enter the number of storage places along the x-axis into the text box X. The Crane length divided by the number of storage places X results in the size of
a single storage place on the x-axis. The crane uses the unit, which you selected under File > Model Settings/Preferences > Units > Length.
• Enter the number of storage places along the y-axis into the text box Y. The Portal width divided by the number of storage places Y results in the size of a
single storage place on the y-axis.
• Enter the number of storage places along the z-axis into the text box Z. The Portal height divided by the number of storage places Z results in the size of
a single storage place on the z-axis.
Here you define how many places the store has. You can set how many of these place the crane actually uses by defining a barred area along the x-axis
and the y-axis and by entering the Stack height along the z-axis.

Related Topics

getStoreXDim occupy

getStoreYDim placeIsFree

getStoreZDim reserve

free

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Storage places

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Define Barred Area

Define Barred Area


To define the storage places onto which the StorageCrane does not place any parts, click Define Barred Area. Enter the x-coordinate and the y-coordinate
of the storage places into the table. Our sample below has ten storage places on the x-axis and five storage places on the y-axis. To prevent the crane from
placing parts onto the storage places marked in red in the picture below, we entered these values into the table.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 396 of 570

Note that Plant Simulation counts the storage places starting from the top left corner of the storage area, which has the coordinates x = 1, y = 1.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Define Barred Area

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Define Initialization of Store Area

Define Initialization of Store Area


To define the occupied storage places of the store when you initialize the model, click the button Define Initialization of Store Area. This results in a
shortened warm-up phase of your model as the store then already contains parts.
The table has these columns:

MU Type Type in the class of the MU that is to be created.

X Type in the x-position of the storage place within the store at which the MU is to be created.

Y Type in the y-position of the storage place within the store at which the MU is to be created.

Number Type in how many MUs are to be stacked one on top of the other.

Related Topics
setCraneParameters
getParameterTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Define Initialization of Store Area

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Stack height

Stack height
Enter how many parts the crane stacks one on top of the other into the text box. The stack height represents the z-dimension of the store.

You can only see the actual stack height in the 3D part of your model, not in the 2D part.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 397 of 570

Related Topic
getStoreZDim

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Stack height

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Entry place

Entry place
Enter the x-coordinate and the y-coordinate of the storage place at which the StorageCrane transfers parts to stock.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Entry place

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Exit place

Exit place
Enter the x-coordinate and the y-coordinate of the storage place at which the StorageCrane removes parts from stock.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Store > Exit place

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy

Tab Strategy
The tab Strategy provides these dialog items:

Driving strategy Define your own method for hooking/unhooking a part

Default position setCraneParameters

Drive only when the hook is up getParameterTable

Define your own method for searching an available location

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Driving strategy

Driving strategy
Select the driving strategy of the StorageCrane from the drop-down list.

The crane can:


• Return to the Default position, which you define.
• Or it can remain at the target position after releasing the load.

Default position

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 398 of 570

When you select the Driving strategy Return to default position, you can enter the x-coordinate and the y-coordinate of the position to which the
StorageCrane returns and waits for orders.

Drive only when the hook is up

To only allow the StorageCrane to move, when the hook is pulled up all the way, select this.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Driving strategy

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Define your own method for searching an
available location

Define your own method for searching an available location

If you want to define your own method for searching for an available storage place, click , navigate to the folder in which you stored the method and select
it.

By default the StorageCrane searches for an available storage place starting at the largest coordinate on the y-axis and the x-axis on the bottom level of the
storage area and places the part onto it. It then proceeds to fill the free storage place toward the smaller coordinates on the y-axis. Then it goes to the
second but largest coordinate on the x-axis and the y-axis and fills the free storage places, and so on. When the bottom level of the storage area is full, it
starts filling the second level, i.e., the z-dimension (Stack height), starting at the largest coordinate on the y-axis and the x-axis, and so on.

Naturally the crane does not place any parts on storage places, which you barred or which are occupied.

The built-in default method for determining an available storage place looks like this in SimTalk 2.0 notation:

(byref x1,y1,z1 : integer) : boolean


-- SimTalk 2.0 notation
param byref x1,y1,z1 : integer -> boolean
for var k := 1 to MyStorageCrane.getStoreZDim
for var i := MyStorageCrane.getStoreXDim downto 1
for var j := MyStorageCrane.getStoreYDim downto 1
if MyStorageCrane.placeIsFree(i,j,k)
x1 := i
y1 := j
z1 := k
return true
end
next
next
next
return false

The built-in default method for determining an available storage place looks like this in SimTalk 1.0 notation:

(byref x1,y1,z1 : integer) : boolean


is
i,j,k : integer;
do
-- example
for k := 1 to /*add name of crane*/getStoreZDim loop
for i := /*add name of crane*/getStoreXDim downto 1 loop
for j := /*add name of crane*/getStoreYDim downto 1 loop
if /*add name of crane*/placeIsFree(i,j,k) then
x1 := i;
y1 := j;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 399 of 570

z1 := k;
return true;
end;
next;
next;
next;
return false;
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Define your own method for searching an
available location

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Define your own method for hooking/unhooking
a part

Define your own method for hooking/unhooking a part


If you want to decide how the crane proceeds, when it hooks a part at the source location and how it unhooks it at the target location, you have to define
your own method. Click , navigate to the folder in which you stored the method, and select it.

Parameters
The method has two parameters:
• The parameter HookPart of data type boolean sets if the StorageCrane hooks the part (true) or if it unhooks it (false).
• The parameter Part of data type object designates the part, which the StorageCrane hooks or unhooks.
The StorageCrane calls this method:
• With the boolean parameter true, when it drives to the source location and lowers the hook to hook the part.
• With the boolean parameter false after it drove to the target location and lowered the hook to unhook the part.
You method for hooking and unhooking the part might, for example, look like this in SimTalk 2.0 notation:

param hooking: boolean, part: object


if hooking
-- hooking
else
-- unhooking
end

You method for hooking and unhooking the part might, for example, look like this in SimTalk 1.0 notation:

(hooking : boolean; part : object)


is
do
if hooking then
-- hooking
else
-- unhooking
end;
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Strategy > Define your own method for hooking/unhooking
a part

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures

Tab Failures
The tab Failures provides these dialog items:
Availability
MTTR time

Related Topics
setCraneParameters
getParameterTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 400 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures > Availability

Availability
Enter the availability of the StorageCrane. This is a number between 0 and 100 percent. Availability is the proportion of time during which the StorageCrane
is in an operable state. Availability is based on a combination of MTBF and MTTR time.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures > Availability

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures > MTTR time

MTTR time
Enter the Mean Time To Repair (MTTR) of the StorageCrane. The mean time to repair is a measure of maintainability. It is the average time required to
repair it.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Failures > MTTR time

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal

Tab Removal
The tab Removal provides these dialog items:
Remove after this time
Shift blocking parts

Related Topics
setCraneParameters
getParameterTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal > Remove after this time

Remove after this time


To automatically remove the parts from stock after a certain time has elapsed, select the check box. Then, enter the time into the text box.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal > Remove after this time

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal > Shift blocking parts

Shift blocking parts


To shift any parts, which prevent another part from being removed from storage, to another storage place, select the check box. Imagine that the

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 401 of 570

StorageCrane is to remove the part at the bottom of a stack, which has several parts stacked on top of it. In this case it transfers these parts to the first
available storage place and then removes the bottom part from stock. The crane leaves the parts, which it shifted, at the new storage place, it does not
move them back to their original storage place!

Related Topics
shiftPart
Number of transfer orders

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Removal > Shift blocking parts

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics

Tab Statistics
The tab Statistics provides these dialog items:

Number of storage orders Show Utilization of Store

Number of removal orders Show Table of Utilization of Store

Number of transfer orders Show Chart of States

Show Statistics Show Table of States

Show Report Record orders

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of storage orders

Number of storage orders


The StorageCrane shows the number of storage orders it fulfilled here. This is the number of parts, which the StorageCrane transferred to stock.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of storage orders

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of removal orders

Number of removal orders


The StorageCrane shows the number of removal orders it fulfilled here. This is the number of parts, which the StorageCrane removed from stock.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of removal orders

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 402 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of transfer orders

Number of transfer orders


The StorageCrane shows the number of transfer orders it fulfilled here. This is the number of parts, which the StorageCrane shifted from one storage place
within the store to another storage place.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Number of transfer orders

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Statistics

Show Statistics
To open the statistics report of the hook of the StorageCrane, click Show Statistics.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Statistics

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Report

Show Report
To open a report, click Show Report. It shows the number of orders, the chart and table of the utilization of the store, the chart and the table of the states,
and, if activated, the order table.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Report

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Utilization of Store

Show Utilization of Store


To open a chart, which shows the utilization of the store, which is part of the StorageCrane, click Show Utilization of the Store.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Utilization of Store

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Table of Utilization of Store

Show Table of Utilization of Store


To open the table, which shows the utilization of the store of the StorageCrane, click Show Table of Utilization of the Store.

The column Shows the

Value amount of parts in the crane.

Frequency number of occurrences of the value from column Value.

Duration duration of the occurrences, which is the complete duration the Value had during the statistics collection period.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 403 of 570

%_Frequency portion of the individual frequencies of the sum of all values in the column Frequency.

%_Duration portion of the individual durations to the sum of all values in the column Duration.

Mean Duration mean duration of the individual durations.

Standard Deviation standard deviation of the duration.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Table of Utilization of Store

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Chart of States

Show Chart of States


To open a chart, which shows the percentages of the different states of the StorageCrane, click Show Chart of States.
The StorageCrane can be in these states:

The value Denotes that the StorageCrane

Unplanned is not scheduled (Unplanned) to work during the time, which you entered into the ShiftCalendar.

Paused is Paused for any reason.

Failed is Failed for any reason.

Blocked is Blocked for any reason.

Waiting does not have a part attached to the hook and is waiting for an order.

Order empty does not have a part attached to the hook, but has an order and is moving towards the part that it is to transport.

Order has a part attached to the hook and is moving towards the destination of the part.
occupied

Base position pulls the hook up after it has unloaded the part and moves back to its normal position, provided you selected the Driving strategy >
Return to default position.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Chart of States

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Table of States

Show Table of States


To open the table showing the different states, which the StorageCrane was in, click Show Table of States.

The column Shows the

Value name of the value.

Frequency number of occurrences of the value from column Value.

Duration duration of the occurrences, which is the complete duration the Value had during the statistics collection period.

%_Frequency portion of the individual frequencies of the sum of all values in the column Frequency.

%_Duration portion of the individual durations to the sum of all values in the column Duration.

Mean Duration mean duration of the individual durations.

Standard Deviation standard deviation of the duration.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Show Table of States

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 404 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Refresh

Refresh
To update all statistics values on the tab itself and the values in the tables and charts, click Refresh.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Refresh

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Record orders

Record orders
To record all orders in a table, select this.

Be aware that this table might become very large.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > Tab Statistics > Record orders

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The Navigate Menu

The Navigate Menu


The Navigate Menu provides the menu command Open Location.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The Navigate Menu

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The View Menu

The View Menu


The View menu provides the commands Refresh and Change lcon.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The View Menu

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The View Menu > Change lcon

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 405 of 570

Change lcon
The menu command Change Icon toggles between the icons of the StorageCrane. The storage area of the default icon is gray. The storage area of the
other icon is transparent, surrounded by a black border.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The View Menu > Change lcon

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The Help Menu

The Help Menu


The Help Menu provides the menu commands Contents, Index, and Help on Object.

Add-Ins Reference Help > Object Libraries > StorageCrane > Dialog Window of the StorageCrane > The Help Menu

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane

Methods of the StorageCrane


The StorageCrane provides:
• The methods continue, craneHasOrder, free, getParameterTable, getPart, getPartFromPosition, getPartFromPositionToObject, getPartToObject,
getStoreTable, getStoreXDim, getStoreYDim, getStoreZDim, occupy, placeIsFree, reserve, setCraneParameters, shiftPart, shiftPartFromToObject,
shiftPartFromToPositionAbs, storePart, storePartFromObject, and stop.
• The Methods of the Material Flow Objects.
• The Methods of All Objects.
To view all of the methods and attributes of the StorageCrane, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
An example of the Syntax line of the individual methods might look like this:

Syntax: <Path>.readFile(FileName:<string> [,NoDebugger:<boolean>])

• The expression <Path> designates the path of the object to which the method applies.
• The data type of the parameters is listed in parenthesis between the less-than < and the greater-than > signs. The expression (Parameter:<string>), for
example, designates a parameter of data type string. Instead of a constant value, you can also use a variable of the required type or a method that returns
the required data type.
Optional parameters are listed within square brackets. The expression [,Parameter:<boolean>], for example, means that you can, but do not have to enter
the boolean parameter.

Make sure to enter the parentheses for expressions within parentheses (…). Not entering them may lead to unexpected results and open the
Debugger.

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 406 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > continue

continue

Syntax: <Path>.continue;

The method continue makes the crane move again after you stopped it with the method stop.

Example: MyStorageCrane.continue;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > continue

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > craneHasOrder

craneHasOrder

Syntax: <Path>.craneHasOrder

The method craneHasOrder returns if the crane is fulfilling an order at the moment (true) or if it is idle (false).

Return Value
The return value has the data type boolean.

Example: print MyStorageCrane.craneHasOrder;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > craneHasOrder

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > free

free

Syntax: <Path>.free(XStorage:<integer>, YStorage:<integer>, ZStorage:<integer>);

The method free sets the state of the storage place designated by its coordinates to free, i.e., not occupied.

Parameters
• The parameter XStorage of data type integer designates the x-coordinate of the storage place.
• The parameter YStorage of data type integer designates its y-coordinate.
• The parameter ZStorage of data type integer designates its z-coordinate.

Example: MyStorageCrane.free(2,2,1);

Related Topics
occupy
placeIsFree
reserve

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > free

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getParameterTable

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 407 of 570

getParameterTable

Syntax: <Path>.getParameterTable(TargetTable:<any>)

The method getParameterTable returns the parameters of the portal crane and writes them into the table, whose name you enter as the parameter of data
type any. This table can be an object of data type table, which you insert into the Frame or a local variable of data type table, which you create with a
method. Plant Simulation automatically format this table. It contains the parameters which you set in the method setCraneParameters.

Parameter
The parameter TargetTable of data type any designates the table.

Example: -- SimTalk 2.0 notation


var tab: table
tab.create
MyStorageCrane.getParameterTable(tab)

Example: -- SimTalk 1.0 notation


is
tab : table;
do
tab.create;
MyStorageCrane.getParameterTable(tab);
end;

Example: MyStorageCrane.getParameterTable(MyTableFile);

Related Topic
setCraneParameters

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getParameterTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPart

getPart

Syntax: <Path>.getPart(PartType:<string>, Amount:<integer>, Priority:<integer>

The method getPart sends an order to the crane to retrieve the designated amount of parts of the designated type from the store. The crane enters this
order with the priority designated by the parameter integer into its order list.

Parameters
• The parameter PartType of data type string designates the type of the part.
• The parameter Amount of data type integer designates the number of parts.
• The parameter Priority of data type integer designates the priority with which the crane enters this order into its order list.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

Example: MyStorageCrane.getPart("Entity",2,0);

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPart

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartFromPosition

getPartFromPosition

Syntax: <Path>.getPartFromPosition(XStore:<integer>, YStore:<integer>, ZStore:<integer>, Priority:<integer>

The method getPartFromPosition checks if a part is located on the position designated by its coordinates.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 408 of 570

Parameters
• The parameter XStore of data type integer designates the x-coordinate of the part in the store.
• The parameter YStore of data type integer designates its y-coordinate.
• The parameter ZStore of data type integer designates its z-coordinate.
• If this is the case, it enters a retrieval order with the priority designated by the parameter Priority of data type integer into the order list.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

Return Value
The return value has the data type boolean. False means that no such storage place exists or that no part is located on it.

Example: MyStorageCrane.getPartFromPosition(10,1,1,100);

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartFromPosition

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartFromPositionToObject

getPartFromPositionToObject

Syntax: <Path>.getPartFromPositionToObject(XStore:<integer>, YStore:<integer>, ZStore:<integer>,


Priority:<integer>, XTarget:<integer>, YTarget:<integer>, TargetObject:<object>, XOnTarget:<integer>,
YOnTarget:<integer>)

The method getPartFromPositionToObject retrieves a part from a storage place and places this part onto the target object. The target object has to be
located within the storage area of the crane. You can define the position on the target object:
You might, for example, use this method to load a train with a crane.

This method only triggers a transport order for the crane. The execution of the transport order might possibly be delayed.

Parameters
• The parameter XStore of data type integer designates the x-coordinate of the storage place of the part within the portal crane.
• The parameter YStore of data type integer designates its y-coordinate.
• The parameter ZStore of data type integer designates its y-coordinate.
• The parameter Priority of data type integer designates the priority of the removal order.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

• The parameter XTarget of data type integer designates the x-position of the target object within the portal crane.
• The parameter YTarget of data type integer designates its y-position.
• The parameter TargetObject of data type of data type object designates the target object.
• The parameter XOnTarget of data type integer designates the x-position on the target object.
• The parameter YOnTarget of data type integer designates the y-position.
These parameters have to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to
determine the position.

Return Value
The return value has the data type boolean. False means that no such storage place exists or that no part is located on it.

Example: -- Transports a part from the position (1,2,3) with the priority 5 to the
-- position (7,8) and places it on the object trailer. On the trailer the
-- part is going to be placed on the position (1,1).
MyStorageCrane.getPartFromPositionToObject(1,2,3,5,7,8,trailer,1,1);

Related Topic
Load a Train with the Storage Crane

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartFromPositionToObject

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 409 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartToObject

getPartToObject

Syntax: <Path>.getPartToObject(PartType:<string>, Amount:<integer>, Priority:<integer>, XStore:<integer>,


YStore:<integer>, TargetObject:<object>, XOnTarget:<integer>, YOnTarget:<integer>)

The method getPartToObject removes parts of the type designated by their name from storage and places them onto the target object.

Parameters
• The parameter PartType of data type string designates the type of the part, which is to be removed from storage.
• The parameter Amount of data type integer designates the number of parts of this type, which are to be removed.
• The parameter Priority of data type integer is the priority of the removal order.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

• The parameter XStore of data type integer designates the x-position of the target object within the store.
• The parameter YStore of data type integer designates the y-position of the target object within the store.
• The parameter TargetObject of data type object designates the target object onto which the part is to be placed.
• The parameter XOnTarget of data type integer designates the x-position on the target object onto which the part is to be placed.
• The parameter YOnTarget of data type integer designates the y-position on the target object onto which the part is to be placed.
These parameters have to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to
determine the position.

Example: -- SimTalk 2.0 notation


-- moves two MUs of type "part1" with the priority 1 to the position (4, 5)
-- of the trailer in the store. The parts are placed onto a free storage place
-- on the trailer.

MyStorageCrane.getPartToObject("part1",2,1,4,5,trailer,-1,-1)

Example: -- SimTalk 2.0 notation


-- moves two MUs of type "part1" with the priority 1 to the position (4, 5)
-- of the trailer in the store. The parts are placed onto a free storage place
-- on the trailer.

is
do
MyStorageCrane.getPartToObject("part1",2,1,4,5,trailer,-1,-1);
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getPartToObject

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreTable

getStoreTable

Syntax: <Path>.getStoreTable(TargetTable:<any>)

The method getStoreTable returns a table, which contains the occupied storage places and writes them to the table, whose name you enter as the
parameter of data type any. This table can be an object of data type table, which you insert into the Frame or a local variable of data type table, which you
create with a method. The columns of data type integer contain the x-coordinate, the y-coordinate, and the z-coordinate. The column of data type string
contains the name of the MU located on this storage place. (When storage places are reserved, Plant Simulation shows Reserved here.) Plant Simulation
automatically formats the table.

Parameters
The parameter TargetTable of data type table designates the table which contains the occupied storage places.

Example: -- SimTalk 2.0 notation


var tab:table[integer,integer,integer,object]
tab.create
MyStorageCrane.getStoreTable(tab)
MyStorageCrane.getStoreTable(StoreTable)

Example: -- SimTalk 1.0 notation


is
tab:table[integer,integer,integer,object];
do
tab.create;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 410 of 570

MyStorageCrane.getStoreTable(tab);
MyStorageCrane.getStoreTable(StoreTable);
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreXDim

getStoreXDim

Syntax: <Path>.getStoreXDim

The method getStoreXDim returns the number of storage places along the x-axis.

Return Value
The return value has the data type integer.

Example: print MyStorageCrane.getStoreXDim;

Related Topic
Storage places

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreXDim

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreYDim

getStoreYDim

Syntax: <Path>.getStoreYDim

The method getStoreYDim returns the number of storage places along the y-axis.

Return Value
The return value has the data type integer.

Example: print MyStorageCrane.getStoreYDim;

Related Topic
Storage places

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreYDim

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreZDim

getStoreZDim

Syntax: <Path>.getStoreZDim

The method getStoreZDim returns the actually used number of storage places along the z-axis, which is the stack height.

Return Value
The return value has the data type integer.

Example: print MyStorageCrane.getStoreZDim;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 411 of 570

Related Topic
Storage places

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > getStoreZDim

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > occupy

occupy

Syntax: <Path>.occupy(XStorage:<integer>, YStorage:<integer>, ZStorage:<integer>)

The method occupy sets the state of the storage place designated by its coordinates to occupied, i.e., to not available for storing a part.

Parameters
• The parameter XStorage of data type integer designates the x-coordinate of the storage place.
• The parameter YStorage of data type integer designates its y-coordinate.
• The parameter ZStorage of data type integer designates its z-coordinate.

Example: MyStorageCrane.occupy(9,1,1);

Related Topics
free
placeIsFree
reserve

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > occupy

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > placeIsFree

placeIsFree

Syntax: <Path>.placeIsFree(XStorage:<integer>, YStorage:<integer>, ZStorage:<integer>)

The method placeIsFree returns if the storage place designated by its coordinates is free (true) or if it is occupied (false).

Parameters
• The parameter XStorage of data type integer designates the x-coordinate of the storage place.
• The parameter YStorage of data type integer designates its y-coordinate.
• The parameter ZStorage of data type integer designates its z-coordinate.

Return Value
The return value has the data type boolean.

Example: -- SimTalk 2.0 notation


param byref x1,y1,z1 : integer -> boolean
for var k := 1 to MyStorageCrane.getStoreZDim
for var i := MyStorageCrane.getStoreXDim downto 1
for var j := MyStorageCrane.getStoreYDim downto 1
if MyStorageCrane.placeIsFree(i,j,k)
x1 := i
y1 := j
z1 := k
return true
end
next
next
next
return false

Example: -- SimTalk 1.0 notation


(byref x1,y1,z1 : integer) : boolean
is

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 412 of 570

i,j,k : integer;
do
for k := 1 to MyStorageCrane.getStoreZDim loop
for i := MyStorageCrane.getStoreXDim downto 1 loop
for j := MyStorageCrane.getStoreYDim downto 1 loop
if MyStorageCrane.placeIsFree(i,j,k) then
x1 := i;
y1 := j;
z1 := k;
return true;
end;
next;
next;
next;
return false;
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > placeIsFree

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > reserve

reserve

Syntax: <Path>.reserve(XStorage:<integer>, YStorage:<integer>, ZStorage:<integer>);

The method reserve reserves the storage place designated by its coordinates. A reserved storage place does not store a part.

Parameters
• The parameter XStorage of data type integer designates the x-coordinate of the storage place.
• The parameter YStorage of data type integer designates its y-coordinate.
• The parameter ZStorage of data type integer designates its z-coordinate.

Example: MyStorageCrane.reserve(2,1,3);

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > reserve

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > setCraneParameters

setCraneParameters

Syntax: <Path>.setCraneParameters(tab:table[(CraneLength:<length>, PortalWidth:<length>,


PortalHeight:<length>, PortalPosition1:<length>, PortalPosition2:<length>, PortalSpeed:<speed>,
CrabSpeed:<speed>, HookSpeed:<speed>, XStore:<integer>, YStore:<integer>, ZStore:<integer>,
BarredArea:<table>, StackHeight:<integer>, XEntry:<integer>, YEntry:<integer>, XExit:<integer>,
YExit:<integer>, DrivingStrategy:<integer>, XDefault:<integer>, YDefault:<integer>,
HookIsUp:<boolean>, Method:<string>, Availability:<real>, MTTRTime:<time>, RemoveAfterTime:<boolean>,
RemoveIn:<time>, ShiftBlockingParts:<boolean>, DefineInitialization:<table>, HookMethod:<string>)]

The method setCraneParameters sets the parameters of the StorageCrane with the values you enter into a table. This table can be an object of data type
table, which you insert into the Frame or a local variable of data type table, which you create with a method. The parameters, which you enter for the data
types of the columns, follow the order of the dialog items on the tabs in the dialog of the StorageCrane.

Parameters
• The first set of parameters designates the Size of the StorageCrane.

• The parameter CraneLength of data type length designates the crane length.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 413 of 570

• The parameter PortalWidth of data type length designates the portal width.
• The parameter PortalHeight of data type length designates the portal height.
• The parameter PortalPosition1 of data type length designates portal position 1.
• The parameter PortalPosition2 of data type length designates portal position 2.
• The second set of parameters designates the Speed with which of the StorageCrane moves.

• The parameter PortalSpeed of data type speed designates the portal speed.
• The parameter CrabSpeed of data type speed designates the crab speed.
• The parameter HookSpeed of data type speed designates the hook speed.
• The third set of parameters designates the Storage features of the StorageCrane.

• The parameter XStore of data type integer designates the number of storage places in the x-direction.
• The parameter YStore of data type integer designates the number of storage places in the y-direction.
• The parameter ZStore of data type integer designates the number of storage places in the z-direction.
• The parameter BarredArea of data type table designates the table in which you can Define Barred Area, i.e., the storage places onto which the crane
does not place parts. It has four columns of data type integer.
• The parameter StackHeight of data type integer designates the stack height.
• The parameter XEntry of data type integer designates the x-coordinate of the entry place.
• The parameter YEntry of data type integer designates the y-coordinate of the entry place.
• The parameter XExit of data type integer designates the x-coordinate of the exit place.
• The parameter YExit of data type integer designates the y-coordinate of the exit place.
• The fourth set of parameters designates the driving strategy with which the StorageCrane moves.

• The parameter DrivingStrategy of data type integer designates the number of the driving strategy within the drop-down list.
• The parameter XDefault of data type integer designates the x-coordinate of the default position.
• The parameter YDefault of data type integer designates the y-coordinate of the default position.
• The parameter HookIsUp of data type boolean sets if the crane will only drive when the hook is up (true) or not (false).
• The parameter Method of data type string designates the path to the method in which you defined your own method for searching for an available
location for parts.
• The fifth set of parameters designates properties of the Failures of the StorageCrane.

• The parameter Availability of data type real designates the availability of the crane.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 414 of 570

• The parameter MTTRTime of data type time designates the MTTR time.
• The sixth set of parameters designates the Removal strategy with which the StorageCrane takes parts out of the store.

• The parameter RemoveAfterTime of data type boolean sets if you want to remove parts after a certain time (true) or not (false).
• The parameter RemoveIn of data type time designates the time after which you want to remove parts from storage.
• The parameter ShiftBlockingParts of data type boolean sets if you want to shift blocking parts (true) or not (false).
• The parameter DefineInitialization of data type table designates the table in which you Define Initialization of Store Area. This sub-table has four
columns with the data types object, integer, integer, and integer.
• The parameter HookMethod of data type string designates the path to the method in which you defined your own method for hooking/unhooking a part.

Return Value
The return value has the data type integer, meaning that the format of the table is correct and that all values are permitted.

Example: -- SimTalk 2.0 notation


-- change the size of the gantry
var tab: table
tab.create
MyStorageCrane.getParameterTable(tab)
tab[4,1] := 1.5
tab[5,1] := 4
MyStorageCrane.setCraneParameters(tab)

Example: -- SimTalk 1.0 notation


-- change the size of the gantry

is
tab:table;
do
tab.create;
MyStorageCrane.getParameterTable(tab);
tab[4,1] := 1.5;
tab[5,1] := 4;
MyStorageCrane.setCraneParameters(tab);
end;

Related Topic
getParameterTable

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > setCraneParameters

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPart

shiftPart

Syntax: <Path>.shiftPart(Priority:<integer>, FromX:<integer>, FromY:<integer>, FromZ:<integer>, ToX:<integer>,


ToY:<integer>, ToZ:<integer>)

The method shiftPart sends an order to the crane to shift the part from one storage place to another storage place.

The order for moving the part has to have highest priority, so that another order does not change the store in the mean time. The predefined
priority is 10 for automatically placing parts in stock and for removing them from stock.

Parameters
• The parameter Priority of data type integer designates the priority with which the crane enters the order into its order list.
• The parameter FromX of data type integer designates the x-coordinate of the storage place from which the crane shifts the part.
• The parameter FromY of data type integer designates its y-coordinate.
• The parameter FromZ of data type integer designates its z-coordinate.
• The parameter ToX of data type integer designates the x-coordinate of the storage place to which the crane shifts the part.
• The parameter ToY of data type integer designates its y-coordinate.
• The parameter ToZ of data type integer designates its z-coordinate.

Example: MyStorageCrane.shiftPart(1000,10,5,1,2,3,1);

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 415 of 570

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPart

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPartFromToObject

shiftPartFromToObject

Syntax: <Path>.shiftPartFromToObject(Part:<object>, Priority:<integer>, XSource:<integer>, YSource:<integer>,


XTarget:<integer>, YTarget:<integer>, TargetObject:<object>, XTargetObject:<integer>,
YTargetObject:<integer>)

The method shiftPartFromToObject transports a part from a machine within the storage area of the portal crane to another machine, which also has to be
located within the storage area of the crane. This way you can easily model the transport of heavy parts from one machine to the next.

Parameters
• The parameter Part of data type object designates the part, which is to be transported.
• The parameter Priority of data type integer designates the priority of the transport order.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

• The parameter XSource of data type integer designates the x-position of the machine on which the part is located. The crane has to call at this position,
when the part is to be picked up.
• The parameter YSource of data type integer designates the y-position of the machine on which the part is located. The crane has to call at this position,
when the part is to be picked up.
• The parameter XTarget of data type integer designates the x-position of the target station. The crane has to call at this position, when the part is to be
deposited.
• The parameter YTarget of data type integer designates the y-position of the target station. The crane has to call at this position, when the part is to be
deposited.
• The parameter TargetObject of data type object designates the target object onto which the part is to be deposited.
• The parameter XTargetObject of data type integer designates the x-position on the target object.
This parameter has to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to determine
the position.
• The parameter YTargetObject of data types integer designates y-position on the target object.
This parameter has to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to determine
the position.

Example: -- SimTalk 2.0 notation


-- exit control of a station, which orders the crane to pick up the
-- processed part with the priority 2 at the position (13,6) and to deposit
-- it at the position (10,3) on the object SingleProc1.

var part: object


part := @
MyStorageCrane.shiftPartFromToObject(part,2,13,6,10,3,SingleProc1,-1,-1)

Example: -- SimTalk 1.0 notation


-- exit control of a station, which orders the crane to pick up the
-- processed part with the priority 2 at the position (13,6) and to deposit
-- it at the position (10,3) on the object SingleProc1.

is
part : object;
do
part := @;
MyStorageCrane.shiftPartFromToObject(part,2,13,6,10,3,SingleProc1,-1,-1);
end;

Related Topic
Feed Machines with an Overhead Crane

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPartFromToObject

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPartFromToPositionAbs

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 416 of 570

shiftPartFromToPositionAbs

Syntax: <Path>.shiftPartFromToPositionAbs(Part:<object>, Priority:<integer>, XSource:<real>, YSource:<real>,


ZSource:<real>, XTarget:<real>, YTarget:<real>, ZTarget:<real>, TargetObject:<object>,
XTargetObject:<integer>, YTargetObject:<integer>)

The method shiftPartFromToPositionAbs transports a part from a machine within the storage area of the portal crane to another machine, which also has to
be located within the storage area of the crane. This way you can easily model the transport of heavy parts from one machine to the next.

Parameters
• The parameter Part of data type object designates the part, which is to be transported.
• The parameter Priority of data type integer is the priority of the transport order.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

• The parameter XSource of data type real designates the x-position at which the part is to be picked up.
• The parameter YSource of data type real designates the y-position at which the part is to be picked up.
• The parameter ZSource of data type real designates the z-position at which the part is to be picked up.
• The parameter XTarget of data type real designates the x-position at which the part is to is to be deposited.
• The parameter YTarget of data type real designates the y-position at which the part is to is to be deposited.
• The parameter ZTarget of data type real designates the z-position at which the part is to is to be deposited.
• The parameter TargetObject of data type object designates the target object onto which the part is to be deposited.
• The parameter XTargetObject of data type integer designates the x-position on the target object.
This parameter has to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to determine
the position.
• The parameter YTargetObject of data type integer designates the y-position on the target object.
This parameter has to be -1, when the target object only has a single processing station, such as the SingleProc or when Plant Simulation is to determine
the position.

Example: -- SimTalk 2.0 notation


-- Exit control of a station, which orders the crane to pick up the
-- processed part with the priority 2 at the position (13,6,4.8) and to
-- deposit it at the position (10,3,2.5) on the object SingleProc1.

var part: object


part := @
MyStorageCrane.shiftPartFromToPositionAbs(part,2,13,6,4.8,10,3,2.5, SingleProc1,-1,-1)

Example: -- SimTalk 1.0 notation


-- Exit control of a station, which orders the crane to pick up the
-- processed part with the priority 2 at the position (13,6,4.8) and to
-- deposit it at the position (10,3,2.5) on the object SingleProc1.

is
part : object;
do
part := @;
MyStorageCrane.shiftPartFromToPositionAbs(part,2,13,6,4.8,10,3,2.5, SingleProc1,-1,-1);
end;

Related Topic
Feed Machines with an Overhead Crane

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > shiftPartFromToPositionAbs

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > storePart

storePart

Syntax: <Path>.storePart(Part:<object>, Priority:<integer>)

The method storePart transfers the designated part to stock.

Parameters
• The parameter Part of data type object designates the part.
• The parameter Priority of data type integer designates the priority with which the storage place requests the crane to move the part to a free storage
place.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 417 of 570

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

You might, for example, enter the instruction below into the exit control of an object. The method moves the part onto the entry place of the crane. It returns
if transferring was successful (true) or not successful (false). The entry place of the crane then enters an order to move the part into its order list. It
fulfills the order with the priority you enter. The crane determines onto which storage place it puts the part when it processes the order.

Example: MyStorageCrane.storePart(@,1);

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > storePart

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > storePartFromObject

storePartFromObject

Syntax: <Path>.storePartFromObject(Part:<object>, Priority:<integer>, XTarget:<integer>, YTarget:<integer>)

The method storePartFromObject places parts, which are located on another object, into the store of the portal crane.

Parameters
• The parameter Part of data type object designates the part.
• The parameter Priority of data type integer designates the priority.

The predefined priority is 10 for automatically placing parts in stock and for removing them from stock.

• The parameter XTarget of data type integer designates the x-position of storage place within the crane, at which the part will be placed.
• The parameter YTarget of data type integer designates the y-position of storage place within the crane, at which the part will be placed.

Example: -- SimTalk 2.0 notation


-- Unloads a truck with the crane. The parts will be placed onto a free storage
-- place of the crane store. The truck is located at the position (1,7), the
-- transport order has the priority 1.

var truck: object


var MU: object
truck:= @
truck.Stopped := true
for var i := truck.numMUs downto 1
MyStorageCrane.storePartFromObject(truck.MU(i),1,1,7)
next
waituntil truck.empty prio 1
truck.Stopped := false

Example: -- SimTalk 1.0 notation


-- Unloads a truck with the crane. The parts will be placed onto a free storage
-- place of the crane store. The truck is located at the position (1,7), the
-- transport order has the priority 1.

is
truck : object;
MU : object;
i : integer;
do
truck := @;
truck.Stopped := true;
for i := truck.numMUs downto 1 loop
MyStorageCrane.storePartFromObject(truck.MU(i),1,1,7);
next;
waituntil truck.empty prio 1;
truck.Stopped := false;
end;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > storePartFromObject

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > stop

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 418 of 570

stop

Syntax: <Path>.stop

The method stop stops the crane. You can make it move again with the method continue.

Example: MyStorageCrane.stop;

Add-Ins Reference Help > Object Libraries > StorageCrane > Methods of the StorageCrane > stop

Add-Ins Reference Help > Object Libraries > StorageCrane > Attributes of the StorageCrane

Attributes of the StorageCrane


The StorageCrane provides:
• The attribute HeightOfPart.
• The Attributes of All Objects.
• The Attributes of the Material Flow Objects.
To view all of the methods and attributes of the StorageCrane, open the window Show Attributes and Methods. The figure below illustrates the information
using the example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of the selected Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyStorageCrane.StateBlocked := true

• To get the value of an attribute, you might, for example, type:

print .MyStorageCrane.BackgroundColor
posit := SingleProc.cont.XPos

Add-Ins Reference Help > Object Libraries > StorageCrane > Attributes of the StorageCrane

Add-Ins Reference Help > Object Libraries > StorageCrane > Attributes of the StorageCrane > HeightOfPart

HeightOfPart

Syntax: <Path>.HeightOfPart

The attribute HeightOfPart sets the height of the part, i.e., its y-dimension. Right-click the StorageCrane, select Show Attributes and Methods, double-click
HeightOfPart, and enter the appropriate value into the dialog. The correct height of the part ensures that the hook of the crane appears to be attached to the
part instead of hooking thin air in 3D.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 419 of 570

Assignment Value
You can assign a value of data type real.
You only access the attribute in the dialog Show Attributes and Methods. It is only of importance for 3D, as Plant Simulation 2D does not use the z-
dimension yet.

Example: MyStorageCrane.HeightOfPart := 0.5;

Add-Ins Reference Help > Object Libraries > StorageCrane > Attributes of the StorageCrane > HeightOfPart

Add-Ins Reference Help > Object Libraries > Value Stream Mapping

Value Stream Mapping


The value stream mapping library in Tecnomatix Plant Simulation allows you simulate lean production systems and to analyze value streams. By definition a
value stream encompasses all steps a product has to pass through from producing the unmachined products until the machined products leave the plant
and arrive at the customer.
The value stream mapping library focuses on optimized throughput times, on minimal work in progress, and on the ability to deliver the product to the
customer in time.
By definition entering the data for the value stream mapping simulation is an involved and time-consuming process. To create an executable simulation
model, you have to provide some or all of the following data:
• Products to be produced
• Point in time of retrieval and retrieval quantity of the production orders
• Arrangement of the processes and of the inventory
• Cycle times of the processes
• Transport times of the products
• Lot sizes and transfer amounts of the products
• Delivery times and delivery numbers of the suppliers
You have to enter these parameters into the dialogs of the value stream mapping objects which in turn use them for the simulation. Be aware that
completeness and consistency of the input data is crucial to produce reliable results.
Always keep in mind that value stream mapping is not synonymous with material flow simulation. Value stream mapping simulation is a dynamic
simulation using the settings you selected and the data you entered. It produces and shows the results based on the settings you selected, it does not
optimize those settings.

To add the value stream mapping library to your simulation model, click Manage Class Library > Libraries > Standard Libraries > Licensed on the
Home ribbon tab.

The value stream mapping library creates a temporary SQLite database to store statistical values. For this reason we recommend to reset your
simulation model to make sure that the database will be emptied and closed.

If you change your value stream mapping model, we strongly recommend to reset your model first. To do so, click the button in the
EventController in your model.

If Microsoft Excel shows an error message when you open your model file, and opens the file in protected mode, you have to add the directory, which
contains the Excel file, to the list of trustworthy directories for Excel. For more information, consult the Microsoft Excel Help.

We recommend to use Plant Simulation Version 10.1.4 or higher when working with the Excel interface. Otherwise you may run into problems when re-
importing data.

We modeled the objects of the value stream mapping library as application objects based on a Frame. For this reason opening Help with F1 and
What’s This Help in the dialogs of the objects do not work. To open help for an object, select Help > Help on Object in its dialog.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 420 of 570

We modeled the dialogs of the objects with the object Dialog. The windows of the objects do not use the standard Siemens PLM theme, but your
Windows theme.

To assign the object another name or a label, click it with the right mouse button and select Rename.

Related Topics
Course of Events of the Internal Control of the Model
Shared Properties of the Value Stream Mapping Objects
Value Stream Mapping Objects
Value Stream Mapping Tools
Value Stream Mapping Connectors

Add-Ins Reference Help > Object Libraries > Value Stream Mapping

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Course of Events of the Internal Control of the Model

Course of Events of the Internal Control of the Model


Based on the smallest possible model, consisting of a Customer, a Supplier, an Inventory, and a Process, we will explain the course of events of the internal
control in the value stream mapping model. To do so, we will follow a single production order through the model:
• The object Production Control receives the customer orders and creates production orders for the Process objects. It also disposes raw parts and
orders them from the supplier. In addition it handles a number of managing functions and thus has to be inserted as first object into your model.
• The object Customer creates production orders for one or several products. The orders are passed on to the Production Control.
• The object Process receives one or several production orders, gets the required base parts from the Inventory and delivers the processed products to
the object Customer.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Course of Events of the Internal Control of the Model

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects

Shared Properties of the Value Stream Mapping Objects


The objects in the value stream mapping library share these features:
• Name and Label
• Tab Product
• Tab Set-Up
• Tab Failures
• Tab Controls
• Tab Import/Export
• How the Supplier Orders Products
• How to Place an Order
• How a Process Object Processes an Order
• Showing a Display Panel

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 421 of 570

• Attributes of the Value Stream Mapping Objects

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Name and Label

Name and Label


Enter the Name and the Label of the object into these text boxes. Note that the conventions and limitations of object names in Plant Simulation apply for the
Name.

The Label can be any identifier containing any character.

Related Topic
User-defined Names

Product Names

All product names used in any of the tables of the value stream mapping objects have to follow the conventions and limitations of object names in Plant
Simulation. You have to strictly comply with these rules because the library uses the product names as the names of the moving objects in your model.

Related Topics
Name
User-defined Names

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Name and Label

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product

Tab Product
All material flow objects of the value stream mapping library provide the tab Product.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

To add a product to the product table, you can:

• Click the button Add to open the dialog Product. Initially it is empty. Enter the properties of the product.
• Or double-click an empty row in the table row to open the dialog Product. Enter the properties of the product. When the product table on the tab is full,
you cannot add a new product this way, but you have to click the button Add.
To edit a product that is already defined in the product table, you can:

• Click the row in the table containing the product and click Edit . This opens the dialog Product showing the values of this product.
• Or double-click the row in the table containing the product. This opens the dialog Product showing the values of this product.
To open the product table and edit a number of products simultaneously in the product table instead of editing each product individually in a dialog, click

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 422 of 570

Edit Table .

To delete a product from the product table, select it in the table, and click Delete
To select the product and/or the base product from the list of defined products, click the button to the left of the text box in the dialog Product. This
prevents data entry errors when typing in the product identifiers over and over again.

Whenever you enter a new product, Plant Simulation enters this name into the object PPS. You can select this name from the list of products later on.
For this reason Plant Simulation inserts the PPS into the Frame, in which you create your model, when you insert one of the value stream mapping objects.
You can move the product selection dialog to any position on your screen. The dialog remembers its last position the next time you open it.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Add

Add
To open the dialog Product into which you can enter the properties of a product, click the button Add.
Or double-click an empty row in the table to open the dialog Product. Enter the properties of the product. When the product table on the tab is full, you
cannot add a new product this way, but you have to click the button Add.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Add

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Edit

Edit
To edit the properties of a product, select its row in the product table, click Edit.
Or double-click the row in the table containing the product. This opens the dialog Product showing the values of this product.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Edit

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Edit Table

Edit Table

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 423 of 570

To open the product table and edit a number of products simultaneously in the product table instead of editing each product individually in a dialog, click Edit
Table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Edit Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Delete

Delete
To delete the selected product from the product table, click Delete.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Product > Delete

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Set-Up

Tab Set-Up
All material flow objects of the value stream mapping library provide the tab Set-Up. You can assign a constant set-up time which applies when changing
from one product to another product which requires setting-up. To to assign different set-up times depending on the product, select the check box Use
setup matrix and click the button Open Set-Up Matrix. This opens the set-up matrix. It shows the product names which you defined on tab Products.
Enter the set-up times into the table.
Keep in mind that the set-up matrix contains the names of the basic products. The first row shows a minus (-) instead of the product name from which the
process is going to be set up. This is required when the object sets-up for the first time and no preceding product has been defined yet.

The figure above shows the defined products on the left-hand side and the respective set-up matrix on the right-hand side.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Failures

Tab Failures
All material flow objects of the value stream mapping library provide the tab Failures.
The failures always refer to the production time. Failures can only occur, when the process is processing products at the moment.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 424 of 570

Availability

Enter the technical availability of the process into the text box. You can enter a percentage between 0 and 100.

MTTR

Enter the MTTR, the mean time to repair, for the process into the text box.
The availability of a process element is related to the processing time. A low failure portion might therefore indicate that the utilization of the process
element is low.

Related Topics

Tab Failures MTTR

Availability Attributes of the Value Stream Mapping Objects

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Failures

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Controls

Tab Controls
All material flow objects of the value stream mapping library provide the tab Controls. You can assign a ShiftCalendar to the individual objects by dragging
the ShiftCalendar over the object and dropping it there.

You can also enter the name of the ShiftCalendar into the text box. Plant Simulation automatically extends the name to the path of the object.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Import/Export

Tab Import/Export
All material flow objects of the value stream mapping library provide the tab Import/Export.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 425 of 570

You can click the respective button to execute the action described on the label of the button:

Read Model Data into Table

To collect all attributes, the product table and the setup matrix of the object, and to store the values in an internal table, click this button.

Open Data Table

To open the table containing the collected model data, click this button.

Write Data to Excel File

To export the contents of the data table into the Excel file whose name you enter into text box below the button, click this button.

Text box for Entering the Path to the Excel File

Enter the name of the Excel file, including its entire path, into the text box.

Instead, you can also click the button to open the dialog in which you can select the respective Excel file. If the path is invalid, Plant Simulation does not
import or export data.
You find the exported data on the Excel worksheet which has the same name as the object.

Read Data from Excel File

To import the object data from the specified Excel file, click this button. Plant Simulation uses the name of the object to find the name of the corresponding
worksheet in the Excel file.

Open Imported Data Table

To show the contents of the imported data table, click this button. You can also open the table of current object parameters and the table of imported data at
the same time. This way you can compare the current object data with the imported data.

Assign Imported Data to Object

To assign the imported data to the data of the object, click this button. Note that Plant Simulation clears the contents of all tables of the object before it writes
the new data to these tables.
The Import function might, under certain circumstances, import a wrong time format as Excel automatically formats the data! To prevent this, enter the
times in seconds into the Excel file. One hour, 1:00:00, for example, equals 3600 seconds.

After importing data from an Excel file, close the dialog window by clicking Cancel. If you do not do this, Plant Simulation overwrites the parameters of
the object with the values you entered into the dialog.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How the Supplier Orders Products

How the Supplier Orders Products


The object PPS, i.e., the production control, orders products in the frequency which you enter as the Disposition interval. When ordering products, the
production control takes into account how many products are currently available as well as the current demand for this product. The available products
could, for example, be gathered by one of the Inventories and the current demand could be calculated by the production orders of an object of type Process,
such as Process, Process_assembly, etc.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 426 of 570

The figure below shows all valid connections between Suppliers and objects of type Process.
Note that the Processes unload and unload2 are not connected with the Production Control because these Processes receive their products directly from
the objects TransportExternal or Supplier.

In the example, the objects Inventory I1 to Inventory I4 compute the currently available number of products and the process Process1 computes the
demand. Plant Simulation calculated the order quantity of a product using the daily demand, the current demand and the available number of products.
The daily demand is defined by the cycle time of the Customer:

T_C = (available working time per day)/(customer demand rate per day)

Starting at the Customer, Plant Simulation computes the cycle time for each object of type Process taking the quantity of the required numbers of the base
products (XBP) of the product into account.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How the Supplier Orders Products

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How to Place an Order

How to Place an Order


You can place an order in a number of ways:
• If an object of type Process is connected with the PPS, in which case the connection has to run from the PPS to the object of type Process, the Process
object is commissioned by the PPS.
• A Process object can be commissioned by a Supermarket when you established a connection with an information connector between the Supermarket
and the Process object.
• An object of type Process can be commissioned by a Kanban object when you established a connection with a Kanban Connector between the Kanban
object and the Process object.
• If an object of type Process is not connected with a Connector and no production order exists, the Process object waits until products arrive from the
predecessor. This can be the case when the preceding object of the Process object is a Transport object, or when a Kanban order is being processed on
the production line.

How the Number of Products to be Produced is Calculated

A number of n products named P1 is ordered for an object of type Process. Typically, these orders are created by the object PPS taking the lot size of the
product into consideration.
For the Process the respective values for the lot size Xpart, the quantity of the required base products XBP for the product BP1 are defined.
To produce a single product P1

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 427 of 570

x=XBP

x products BP1 are required. X does not have to be an integer number. As, for example, when splitting up a base product to make several products of the
final product, x is less than 1.
To produce n products P1

n*x=n*XBP

products BP1 are required.


So we have to order

a=ceil(n*XBP)

products from the preceding Inventory. In some cases this causes a different number of products to be produced than the number of products that were
ordered.

Depending on the selected transfer quantity the produced products are then delivered in transport units. If the transfer quantity is not a multiple of the
produced number of products, the last transportation unit does not carry a whole transportation quantity.

Product Base Product XBP Order Quantity (n) Ordered Products (a) Number of produced Products n
1

P1 P2 1 2400 2400 2400

P1 P2 0.001 2400 3 3000

P1 P2 2 2400 4800 2400

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How to Place an Order

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How a Process Object Processes an
Order

How a Process Object Processes an Order


When a production order was sent to any of the Process objects Process, Process_indexed, Process_multiple, or Process_assembly, Plant Simulation
processes this production order as follows:
• Plant Simulation computes the order quantity. In some cases the ordered quantity might be adjusted to the lot size.
• Plant Simulation enters the production order into the order list. In some cases the order list contains more than one production order.
• If the object of type Process is in the state waiting then it will be activated.
• Until Plant Simulation finds a production order that can be satisfied, it executes the following steps:
• Plant Simulation checks if the preceding Inventory can provide enough base products.
• If the required number of base products is available, the base products will be commissioned at the Inventory, they will be sent to the object of type
Process, and they will be processed there.
• If the required number of base products is not available, Plant Simulation checks the following production order to see if this order can be processed.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > How a Process Object Processes an
Order

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Showing a Display Panel

Showing a Display Panel


During the simulation run you can display a Display Panel below the value stream mapping objects in the Frame containing your simulation model. To define
which values you want to show, click Display Panel on the tab Settings. Depending on the object type it opens the dialog which shows different settings
which you can select.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 428 of 570

Plant Simulation only creates or updates the Display Panel after the model was initialized.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects

Attributes of the Value Stream Mapping Objects


Most of the value stream mapping objects offer:
• The attributes Availability and MTTR.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyCustomer.Availability := 80;

• To get the value of an attribute, you might, for example, type:

print MyCustomer.Availability;

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 429 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects > Availability

Availability

Syntax: <Path>.Availability

The attribute Availability sets the availability in percent of the object designated by <Path>. The availability defines the probability with which the process can
meet its tasks. You can enter a value between 0 percent and 100 percent.
The availability is calculated as follows:

Availability = (total operating time - total downtime)/total operating time


Operating time = simulation time - unplanned time

The availability only relates to failures. A failure caused by a set-up process is not included. Thus availability is not the same as overall equipment
effectiveness (OEE)!

Assignment Value
You can assign a value of data type real.

Example: MyCustomer.FailureActive := false;


MyCustomer.Availability := 80;
MyCustomer.MTTR := str_to_time("10:00");
MyCustomer.FailureActive := true; -- activate failures

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects > Availability

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects > MTTR

MTTR

Syntax: <Path>.MTTR

The attribute MTTR sets the mean time to repair of the object designated by <Path>.
The MTTR (Mean Time To Repair) reflects the repair duration of the process. You can enter the MTTR value in the format [h:m:s] or in seconds.

Assignment Value
You can assign a value of data type time.

Example: MyCustomer.MTTR := 3600; -- 1 hour

Related Topic
Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Shared Properties of the Value Stream Mapping Objects > Attributes of the Value Stream
Mapping Objects > MTTR

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects

Value Stream Mapping Objects


The value stream mapping library provides these value stream mapping objects:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 430 of 570

• Customer
• FIFO
• ForeignOrders
• Inventory
• Kanban
• LeadProcess
• PPS
• Process
• Process_assembly
• Process_indexed
• Process_multiple
• Rework
• ScheduleBox
• Supermarket
• Supplier
• Transport
• TransportExternal

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer

Customer
The object Customer creates orders based on the order list and the product list. These orders trigger a production order at the production control. When you
directly connect the object Customer with a Supermarket via an information connector, the products will be removed from this Supermarket.
Possible predecessors are:

FIFO

Process

Process_assembly

Process_indexed

Process_multiple

Supermarket

Transport

TransportExternal

Possible information connectors can lead to these objects:

PPS

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 431 of 570

Supermarket

The object Customer does not have any information predecessors.


The Process object, which is the predecessor of the Customer object, processes the number of orders which the Customer ordered, as the Customer
wants to receive the number of parts that the Customer ordered.

Related Topics
Dialog Window of the Customer
Attributes of the Customer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer

Dialog Window of the Customer


Double-click the icon of the object Customer, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Order, on the Tab Product, on the Tab Controls, on the Tab Import/Export, and Tab Statistics.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order

Tab Order
The tab Order provides the dialog items Order sequence, Allow delay, and Stop simulation after all orders have been received.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Order sequence

Order sequence
Select how the object Customer creates orders. You can select Demand on customer cycle, In sequence, or Fixed date controlled in the drop-down list:

Demand on customer cycle

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 432 of 570

For this setting you have to enter the product, the number of products per order, and the corresponding interval, in which the customer requests the
products, on the tab Product.
Compare this example:

Product Products per Request Interval

A 100 2:00:00

B 110 2:30:00 AM

According to these settings 100 products of type A will be requested every 2 hours, plus 110 products of type B will be requested every two and half hours.

In sequence

For this setting you have to enter the sequence of the orders into the product list. The next order in the list will be commissioned as soon as an order has
been finished.
Compare this example:

Product Products per Request Interval

A 100 2:00:00

B 110 2:30:00 AM

According to these settings 100 products of type A will be requested after 2 hours, then 110 products of type B will be requested after two and a half hours.
After that 100 products of type A will be requested after another 2 hours, and so on.

Fixed date controlled

For this setting you have to enter which product will be requested in which quantity at which point in time on the tab Product.

Related Topic
OrderIndex

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Order sequence

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Allow delay

Allow delay

This setting is only available for the Order sequence > In sequence.

To allow a delay when ordering materials, select this. The delay is required to meet the interval for ordering materials depending on pauses or unplanned
times.
Compare this example:
The customer orders products in an interval of 10 minutes. The order was dispatched at 12:55. A new call will thus be at 13:05. As the customer takes his
lunch break from 13:00 to 14:00 hours in this example, no material is used. At the start of the new shift material for five minutes is available. The delay then
leads to the new call to not be at 13:05 but at 14:05. The interval will thus be kept:

New call = end of the pause + (call interval - start of the pause)
New call = 14:00 + (13:05 - 13:00) = 14:05

Related Topic
AllowDelay

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Allow delay

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 433 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Stop simulation after all orders have been received

Stop simulation after all orders have been received

This setting is only available for the Order sequence > Fixed date controlled.

To stop the simulation run after all orders defined on the tab Order arrived at the object Customer, select this check box. If you inserted more than one
object of type Customer into your simulation model, Plant Simulation stops the simulation run as soon as the first Customer has received all ordered
products.

Related Topic
StopWhenFullfilled

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Order >
Stop simulation after all orders have been received

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Product

Tab Product
On the tab Product you can define the products that the Customer requests. Which settings the columns show depends on the setting you selected for the
Order sequence on the Tab Order.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

• For the setting Demand according to customer cycle you have to enter the product and the amount per order. You can select the product from the
list of the products you already defined by clicking the button Product. Enter the time interval in which the products are ordered. You can use the range
of variation to define the fluctuation percentage of the called products. Entering 100 percent means that the called quantity is between 0 percent and 200
percent of the defined value. Plant Simulation computes the value using the triangular distribution.

• For the setting In sequence you have to enter the same data as for the setting Demand on customer cycle.
• For the setting Fixed date controlled you have to select the Product, and enter the Quantity/request, and the Date. Plant Simulation then commissions
the orders at the given dates.

The PPS uses the Quantity/request you enter in the text box to create the production orders. Thus it does not make sense entering the quantity of a

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 434 of 570

weekly or monthly production program. This will lead to very large production orders allocating Process objects for a very long time.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics

Tab Statistics
On the tab Statistics you can view a number of statistics values of the created orders. To do so, click Order protocol, select Use product groups, click Show
Delivery Delay, enter the Update interval, Orders Within Threshold, enter the Order threshold, Open Statistics Table, and Chart of Lifetime.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Order protocol

Order protocol

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 435 of 570

To open the Order Protocol, click the button Order Protocol. The table shows the product, the ordered quantity, the date at which the order was created,
and when the product was delivered to the Customer. The column Duration shows the time difference between the creation date and the completion date of
the order.
You can filter the statistics table by entering a product. You can also filter the table according to the minimum delivery time.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Order protocol

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Use product groups

Use product groups


To use the product groups that you defined on the Tab Product in the object PPS, select this.
When you activate the check box, Plant Simulation shows the product groups in the charts, when you click the respective button on this tab.

When you clear the check box, Plant Simulation shows the product in the charts, when you click the respective button on this tab.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 436 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Use product groups

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Show Delivery Delay

Show Delivery Delay


To open the Chart which shows the difference between the order date and the arrival date of the order, click the button Show Delivery Delay.
The Chart shows the minimum value, the maximum value, and the average value for each product. The minimum value typically represents the time from
ordering the product at the Inventory that is located closest to the Customers to the delivery of the ordered quantity.

Depending on the state of the check box Use product groups, the chart shows different values.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Show Delivery Delay

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 437 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Update interval

Update interval
Enter the time in minutes after which Plant Simulation updates the values of the delivery delay.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Update interval

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Orders Within Threshold

Orders Within Threshold


When you define a supply limit, Plant Simulation compares the duration between the creation of an order and the arrival time with this supply limit. To open
the table which shows the number of orders which arrived within the order threshold, click the button Orders within Threshold.
The table only shows those orders which arrived completely. The table shows the number of orders within the supply limit as well as the percentage of all
Customer orders for each product. This value is comparable to the delivery reliability of the production system.

Depending on the state of the check box Use product groups, the chart shows different values.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Orders Within Threshold

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Order threshold

Order threshold
Enter the order threshold in minutes. When you do this, Plant Simulation compares the duration between the creation of an order and the arrival time with
this supply limit.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Order threshold

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 438 of 570

Statistics > Open Statistics Table

Open Statistics Table


To open a table which shows the minimum value, the average value, and the maximum value for lifetime, production time, transport time, and storage time
of the products, click Open Statistics Table. For the lifetime the table shows the time value, for transport, production and storage it shows the portion.

Depending on the state of the check box Use product groups, the table shows different values.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Open Statistics Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Chart of Lifetime

Chart of Lifetime
To open the Chart which shows the average lifetime for each product type arriving at the Customer, click the button Chart of Lifetime.

Depending on the state of the check box Use product groups, the chart shows different values.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Dialog Window of the Customer > Tab
Statistics > Chart of Lifetime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 439 of 570

Attributes of the Customer


The object Customer provides:
• The attributes OrderIndex, AllowDelay, and StopWhenFullfilled.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyCustomer.AllowDelay := true;

• To get the value of an attribute, you might, for example, type:

print MyCustomer.AllowDelay;

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer > OrderIndex

OrderIndex

Syntax: <Path>.OrderIndex

The attribute OrderIndex sets the order sequence of the Customer designated by <Path>.

Assignment Value
You can assign a value of data type integer.
• 1 stands for Demand according to customer cycle.
• 2 for In sequence.
• 3 for Fixed date controlled.

Example: MyCustomer.OrderIndex := 2;

Related Topic
Order sequence

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer > OrderIndex

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer > AllowDelay

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 440 of 570

AllowDelay

Syntax: <Path>.AllowDelay

The attribute AllowDelay allows (true) or denies (false) delays for the object designated by <Path>.

Assignment Value
You can assign a value of data type boolean.

Example: MyCustomer.AllowDelay := true;

Related Topic
Allow delay

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer > AllowDelay

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer >
StopWhenFullfilled

StopWhenFullfilled

Syntax: <Path>.StopWhenFullfilled

The attribute StopWhenFullfilled terminates the simulation as soon as the object designated by <Path> has received orders (true) or does not terminate it
(false). The setting only makes sense for Customer.OrderIndex := 3;.

Assignment Value
You can assign a value of data type boolean.

Example: MyCustomer.StopWhenFullfilled := false;

Related Topic
Stop simulation after all orders have been received

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Customer > Attributes of the Customer >
StopWhenFullfilled

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO

FIFO
The object FIFO is mostly used in Kanban lines, where the FIFO objects connect two consecutive objects of type Process. Products, which exit a production
process, arrive at the succeeding production process in the same order. The object FIFO represents a line which pushes the products. Products cannot pass
one another on the FIFO line. You can enter the maximum capacity of the FIFO line and the transportation time needed to pass the FIFO line into the
dialog.
The objects FIFO and Transport share their behavior.
The object FIFO is a type of buffer with a certain transportation time.
The object Transport is a type of conveyor that transports products from A to B in a defined time.
Possible predecessors are:

Process

Process_assembly

Process_indexed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 441 of 570

Process_multiple

Supplier

TransportExternal

Possible successors are:

Customer

Inventory

Process

Process_assembly

Process_indexed

Process_multiple

Supermarket

The object FIFO does not have any information Connectors.

Related Topics
Dialog Window of the Object FIFO
Attributes of the Object FIFO

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO

Dialog Window of the Object FIFO


Double-click the icon of the object FIFO, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Transport, on the Tab Exit Strategies, on the Tab Import/Export, and on the Tab Statistics.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Transport

Tab Transport
On the tab Transport you can define the Transportation time and the Capacity.

Transportation time

Enter the transportation time into the text box. The transportation time is the time that a product takes to cover the object when no blockages or failures
occur. This time can be considered as the minimum throughput time of a workpiece carrier.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 442 of 570

Related Topic
TransportationTime

Capacity

Enter the maximum capacity of the object into the text box. It defines the maximum number of workpiece carriers and not the number of products.

Related Topic
_Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Exit
Strategies

Tab Exit Strategies


On the tab Exit Strategies you can select the strategy according to which a workpiece carrier is to be moved on to one of the succeeding objects.
Note that the exit controls are only used when an object of type FIFO has several successors which are able to process the same products. If there is a
single successor or if there are several successors only one of which can process the product, it is uniquely determined where the workpiece carrier is to be
moved and the exit controls will not be taken into consideration.

The object FIFO provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
Note that all exit strategies always move the workpiece carriers belonging to a production order to the same successor to avoid uncalled for set-up
processes. If the workpiece carriers are not kept together, this would amount to an order splitting, which the value stream mapping library generally does not
support.

The model depicted above shows the effects of the exit strategies. In the model we defined two products with different cycle times and with different lot sizes
and transfer units. The objects Process1 and Process2 can process both products.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 443 of 570

With a simulation duration of 20 days the object FIFO moves on 2591 workpiece carriers.
• For the setting Cyclic it moves 1364 workpiece carriers to the object Process1 and 1227 workpiece carriers to the object Process2. Both processes were
set-up 22 times.
• For the setting Start at successor 1 the object Process1 receives 1937 workpiece carriers, while the object Process2 only receives 654 workpiece
carriers. To accomplish this, the object Process1 had to be set-up 193 times. while the object Process2 had to be set-up only 11 times only.
• For th setting First free successor Process1 receives 1364 workpiece carriers, while Process2 receives 1227 workpiece carriers. Both processes had to
be set-up 22 times. This is the same as the strategy Cyclic as both processes have the same cycle time for the products.
• For th setting Percentage with a distribution of 40/60 for Process1/Process2, Process1 receives 1039 workpiece carriers and Process2 receives 1552
workpiece carriers. Process1 had to be set-up 69 times, while Process2 had to be set-up 136 times. The percentage distribution achieved in the
simulation is 40,1% to 59,9%.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Exit
Strategies

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Statistics

Tab Statistics
The tab Statistics shows the minimum number of workpiece carriers, the maximum number of workpiece carriers (not products), and the average
number of workpiece carriers, which are located on the object FIFO.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Dialog Window of the Object FIFO > Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO

Attributes of the Object FIFO


The object FIFO provides:
• The attributes _Capacity and TransportationTime.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 444 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyFIFO._Capacity := 3

• To get the value of an attribute, you might, for example, type:

print MyFIFO._Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO > _Capacity

_Capacity

Syntax: <Path>._Capacity

The attribute _Capacity sets capacity of the object designated by <Path>.

The attribute _Capacity does not designate the number of the products located on the object FIFO, but the number of workpiece carriers.

Assignment Value
You can assign a value of data type integer.

Example: MyFIFO._Capacity := 3;

Related Topic
Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO > _Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO > TransportationTime

TransportationTime

Syntax: <Path>.TransportationTime := 3600

The attribute TransportationTime sets the time that a product takes to cover the object designated by <Path>.

Assignment Value
You can assign a value of data type time.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 445 of 570

Example: MyFIFO.TransportationTime := str_to_time("1:00:00");

Related Topic
Transportation time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > FIFO > Attributes of the Object FIFO > TransportationTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders

ForeignOrders
Frequently processes are not only charged with production orders from a production line, but also with production orders from other production lines. This is
referred to as shared resources or shared processes respectively. To be able to use a production process as a shared resource, this production process has
to be charged with additional production orders. This is the task of the object ForeignOrders.
In the object ForeignOrders you can set how the production orders are created and how they are passed on to the connected processes.
The object does not have any material flow predecessors.
The object does not have any material flow successors.
The object does not have any information predecessors.
Possible information successors are:

Process

Process_assembly

Process_indexed

Process_multiple

Related Topics
Dialog Window of the Object ForeignOrders
Mode of Operation and Use of the Object ForeignOrders

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders

Dialog Window of the Object ForeignOrders


Double-click the icon of the ForeignOrders, which you inserted into a Frame, to open its dialog window.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 446 of 570

It shows the properties on the Tab Orders Table, on the Tab Percentage Definition, and on the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Orders Table

Tab Orders Table


The tab Orders Table shows the table with the orders that are defined at the moment. Click the button Edit Orders Table, to open the table. You can then
enter the point in time into the column Slot and the order quantity into the columns of the individual days.

In the example above an order for 30 parts is created on Monday morning at 7 o’clock. This order is then passed on to the connected Process object or
objects.
At the production orders a product with the name Foreign is ordered.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Orders Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Percentage Definition

Tab Percentage Definition


On the tab Percentage Definition you enter the percentage of the processing time of the connected processes which is to be charged with orders. To
do so, the object ForeignOrders determines the processing time of the Processes and computes the percentage across the time which is to be used for
foreign orders, i.e., the externally processed orders.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 447 of 570

You can also enter the minimum order amount, i.e., the smallest possible order size.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Percentage Definition

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Dialog Window of the Object
ForeignOrders > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Mode of Operation and Use of the Object
ForeignOrders

Mode of Operation and Use of the Object ForeignOrders


The foreign orders are entered into the order list at the calculated or at the defined point in time into the connected Process object or Process. The order is
assigned a high priority so that it is processed as the next production order. Any order that is processed at the moment will be completed first though. Only
then the foreign order is processed.
The foreign order is entered as Product Foreign into the orders table.
When processing a foreign order no parts are removed from the Inventory or the Supermarket. Instead a workpiece carrier is created on the entrance buffer
of the Process object. This workpiece carrier has the capacity of the order amount and the products are created on this workpiece carrier.
The created products are called Foreign. You have to define this product in the definition table of the products. When you are using a setup matrix, you also
have to consider the product Foreign in the setup matrix.
Note that the products are delete again after processing has been completed.
In the example below the object Process1 is a shared resource, meaning that it is provided with production orders by a production line which we do not
consider here.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 448 of 570

We entered the following settings into the orders table of the object ForeignOrders:

This means that the object Process receives production orders on Monday, Tuesday, Wednesday, and Thursday at 7 a.m., 9 a.m., 11 p.m., and 15 p.m.
A product with the name Foreign is commissioned with the production order. Accordingly, this product has to be defined in the object Process1.

In the second example, we define the percentage of the foreign orders.

We want to use 20 percent of the available processing time of the Process object for foreign orders.
First, the program determines the processing time of the Process object. If you entered a ShiftCalendar into the Process object, it will be considered as
well. Plant Simulation determines the percentage of the foreign orders using this processing time. It determines the percentage and the amount of the
production orders using the cycle time and the lot size of the product Foreign. In our example the lot size of 10 and the minimum order amount of 15 result
in order amounts of 20.
Plant Simulation distributes the thus calculated production orders equally across the processing time of the Process object.
You can also connect the object ForeignOrders with several Process objects as shown below.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 449 of 570

The Process objects can also be assigned to different ShiftCalendars.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ForeignOrders > Mode of Operation and Use of the Object
ForeignOrders

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory

Inventory
The object Inventory represents an uncontrolled stock of products. The Inventory receives products on a workpiece carrier and places them into stock. If a
succeeding object requires products, it moves them out of stock on their workpiece carriers and transfers them to the requesting process. In case there are
not enough parts at stock, the requesting object has to wait until parts arrive and are placed in stock. The Inventory will then inform all waiting processing
objects. In the same sequence as above the objects then again request the parts and the parts will be transfered to the requesting objects.
Note that it may happen again that not all requests can be fulfilled and that the requesting objects have to wait again. This may prevent one of the requesting
processes to never receive any parts.
Compare these examples:
The process P1 needs Part1 with a lot size of 40 parts.
The process P2 needs Part1 with a lot size of 80 parts.
The Inventory stores Part1, 20 parts are in stock-
Step 1:
The production order for P2 requires 80 parts of Part1.
The production order for P1 requires 40 parts of Part1.
Step 2:
40 parts of Part1 arrive at the Inventory.
The processes P1 and P2 will be informed.
Step 3:
The request of the process P2 can not be satisfied.
The request of the process P1 can be satisfied.
Consequently 40 parts of Part1 will be transfered to the process P1.
Step 4:
The production order for P2 requires 80 parts of Part1.
The production order for P1 requires 40 parts of Part1.
Step 5:
40 parts of Part1 arrive at the Inventory.
The processes P1 and P2 will be informed.
Step 6:
The request of the process P2 can not be satisfied.
The request of the process P1 can be satisfied.
Consequently 40 parts of Part1 will be transfered to the process P1.
The number of products on a workpiece carrier does not change, meaning that the products are not repacked in the Inventory.
The Inventory stores products which are contained in a list. You have to enter the product name and the corresponding initial stock. The initial stock is
available at the start of the simulation run and is increased or decreased during the simulation run.
Note that the Supermarket is a special type of Inventory.
Possible predecessors are:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 450 of 570

FIFO

Process_assembly

Process_indexed

Process_multiple

Supplier

Transport

TransportExternal

Possible successors are:

Process

Process_assembly

Process_indexed

Process_multiple

The object Inventory does not have any information Connectors.

Related Topic
Dialog Window of the Object Inventory

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory

Dialog Window of the Object Inventory


Double-click the icon of the Inventory, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Import/Export, on the Tab Statistics, and on the Tab Settings.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Product

Tab Product
On the tab Product you can define the Product, which can be stored in the Inventory, and the Initial stock.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 451 of 570

Product

To add a product, double-click an empty row in the product table or click in an empty row and click on the button Add.
To change an entry in the list, click in the respective row and click on the button Add.
This opens the dialog Product.

You can either click the button Product and select the products in the dialog that opens or you can type the names of the products into the text box.
You can also enter the initial stock, i.e. the number of products that is initially located in the inventory into the text box initial stock. During the simulation
run Plant Simulation also shows the current stock.
The table only shows a snapshot of the time at which you open the dialog during the simulation run. It is not updated continuously. Pressing the F5 key
only updates the display panels.

Initial stock

Enter the initial stock. The initial stock is the number of products that is stored in the object Inventory at the start of the simulation run.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Statistics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 452 of 570

Tab Statistics
On the tab Statistics the object Inventory shows the Minimum Stock and the Maximum Stock of the Product.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Settings

Tab Settings
On the tab Settings you can select to Plot current stock values, enter the Delay time before stocking, and open the dialog for defining the Display Panel.

Plot current stock values

To show a plot of all products in the Inventory while the simulation is running, select the check box Plot current stock values.

Delay time before stocking

Enter the time that elapses before the Inventory places the products into stock. Note that the products are only available after the storing time has elapsed.

Display Panel

To open the dialog for defining the display panel, which the object Inventory can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 453 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Inventory > Dialog Window of the Object Inventory > Tab
Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban

Kanban
You can use the object Kanban to model Kanban lines. You can use one or more Kanban objects in the same model. Typically you will insert two Kanban
Connectors. The first one connects a Supermarket with the Kanban control and the second one connects the Kanban object with any production process.
In a Kanban model, you will typically connect two Process objects with a FIFO object. In a standard material flow model Inventories are typically located
between two objects of type Process.
Here you can use both, FIFO objects and/or Inventories. If you use Inventories, we recommend to set the initial value for each product to zero. The defined
number of products defined by the initial value will not be taken into account when working with Kanban cards. The Kanban boxes will be directly moved on
by the Inventory, comparable to a FIFO object or a Transport object.
The possible Kanban predecessor is the

Supermarket

Possible Kanban successors are:

Process

Process_assembly

Process_indexed

Process_multiple

Supplier

Related Topic
Dialog Window of the Object Kanban

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban

Dialog Window of the Object Kanban


Double-click the icon of the object Kanban, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Traffic-Light-Kanban, on the Heijunka Board, on the Tab Import/Export, and Tab Settings.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 454 of 570

To add a product, click the button Add or double-click an empty row of the table.
Click the button Product and select a product in the dialog. Instead, you can also enter the name of the product into the dialog Product.

Define the products which normally is consumed by the Supermarket.


Define the base product which has to be ordered and which is produced by the Process object starting the Kanban line and to which the Kanban Connector
leads.
Define the number of consumed base products to produce one product. This value is normally set to 1 if one base product forms one final product. In
case processes exist for which you defined the number of consumed products not equal to one, you have to adjust this value.
Define the number of available Kanban cards for the product and the number of products per card whose production one Kanban card controls.
The product definitions are valid for the following four strategies:

• Unlimited Number of cards


• Limited Number of cards
• Traffic-Light-Kanban
• Heijunka Board

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies

Kanban Strategies
The object Kanban provides these Kanban strategies:
• Unlimited Number of cards
• Limited Number of cards
• Traffic-Light-Kanban

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 455 of 570

• Heijunka Board

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Unlimited Number of cards

Unlimited Number of cards


For the strategy Unlimited Number of cards, you have to enter the number of available Kanban cards for each product in the dialog Product.

During the simulation run, the object Kanban watches the production order list of the supplying processes of each product. If the production order list is
empty, the Kanban object sends a Kanban card to the supplying processes. As Plant Simulation does not check of the number of cards currently in use, the
number of cards may exceed the predefined number of cards.
You can use this strategy to check the correct number of Kanban cards of the production line.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Unlimited Number of cards

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Limited Number of cards

Limited Number of cards


The strategy Limited Number of cards is almost the same as the strategy Unlimited Number of cards.
There is only one exception: If the list of production orders of the supplying object is empty, Plant Simulation first checks if any Kanban cards are available.
Cards will only be transferred to the supplying object, if any cards are available.
If more Kanban cards are required when initializing the Supermarket, which is connected with the Kanban object than are defined in the Kanban object,
arriving Kanban cards are deleted until the defined number of Kanban cards is reached.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Limited Number of cards

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Traffic-Light-Kanban

Traffic-Light-Kanban
For the strategy Traffic-Light-Kanban you can define three zones for each product: Green, yellow, and red, just like a traffic light.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 456 of 570

• If the number of available Kanban cards is located within the zone from 0to the green limit, the Kanban cards will be stored at the Kanban control.
• If the number of available Kanban cards is located within the zone from green to the yellow limit, the available Kanban cards will only be transferred to the
supplying processes if in fact the production order list of the supplying processes runs dry. Otherwise the Kanban cards will remain at the Traffic-Light-
Kanban.
• When the Kanban cards reach the red zone, all available Kanban cards will be send to the supplying process all at once, no matter if orders exist at the
production process or not.

To open the dialog Product, double-click an empty row in the Traffic-Light-Kanban or click the Add button. Here you can define the green, the yellow, and
the red range of the product.

To open the table in which you can edit the color values for the green, yellow, and red ranges the product, click Edit Table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Traffic-Light-Kanban

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 457 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Heijunka Board

Heijunka Board
When you select the strategy Heijunka Board, Plant Simulation activates the dialog elements on the tab Heijunka.

When a Supermarket consumes products, the Supermarket transfers an emptied Kanban card to the Kanban control.
The card will be stored in an overflow board. The Kanban cards are transferred from the overflow board to the Heijunka Board at midnight every day.
There the cards are placed into slots of the following day which are marked with the product of the following day. If there is no mark in the slot, no card will
be placed there.
If the number of cards available for one product is less than the number of marked slots, the rest of the slots will remain empty.
If there are more cards available for one product than marked slots, the remaining number of cards will be stored in the overflow board.
At the respective point in time the card in the slot of the Heijunka Board will be transferred to the supplying process.
To open the Heijunka Board, which is shown in the figure below, click the button Open Heijunka Board. You can enter the name of a product for which a
Kanban card is be transferred to the supplying process, into all columns marked yellow. Plant Simulation fills the gray columns in automatically at midnight
from the overflow table.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 458 of 570

To open the overflow table, click Open Overflow Board. It shows how many Kanban cards are available at the current point in time.
If you need another interval for your Heijunka Board, enter the Interval Time into the text box and click Update Interval Column of Heijunka Board to
update the column Time in the board. Note that you might have to rearrange the Kanban cards afterwards.
The interval you select does not necessarily have to be an integer divider of 24 hours. Note that the last time interval until the end of the day may be shorter
than defined.
For a time interval of 37 minutes the last interval starts, for example, at 23:26 and lasts for 34 minutes.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Product > Kanban Strategies > Heijunka Board

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Settings

Tab Settings
On the tab Settings you can Log Kanban Data, Show Kanban Protocol, and open the dialog for defining the Display Panel.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 459 of 570

Log Kanban Data

To log the Kanban data during the simulation, select the check box. This also activates the button Show Kanban Protocol.

Show Kanban Protocol

To show the Kanban data that were recorded during the simulation, click the button.

Display Panel

To open the dialog for defining the display panel, which the object Kanban can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Kanban > Dialog Window of the Object Kanban > Tab
Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess

LeadProcess
In general the object LeadProcess shares the properties and the behavior of the object Process. As opposed to the Process though you have to define not
only the cycle time but also the lead time for each product.
In reality the LeadProcess resembles a feed oven in which the products require a certain time to move from the infeed into the oven to the drainfield of the
oven. This time is the lead time. The oven discharges parts every x seconds, x representing the cycle time.
If the lead time is the same as the cycle time the object LeadProcess behaves like the object Process.
Possible predecessors are:

Inventory

Supplier

Supermarket

Transport

TransportExternal

Possible successors are:

Customer

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 460 of 570

Inventory

Supermarket

Transport

TransportExternal

Possible information predecessors are:

Customer

PPS

Supermarket

The object LeadTime does not have any information successors.

Related Topic
Dialog Window of the Object LeadProcess

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess

Dialog Window of the Object LeadProcess


Double-click the icon of the object LeadProcess, which you inserted into a Frame, to open its dialog window.
It shows the object-specific properties on the Tab Product and on the Tab Set-Up. The Tab Failures, the Tab Controls, the Tab Exit Controls, the Tab
Import/Export, on Tab Statistics, and the Tab Settings are the same as of the object Process. You can also select if the process is a Value-adding process.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess >
Tab Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 461 of 570

Click the button Add to add new products or change existing products in the dialog Product. Instead, you can also double-click the table on the tab to open
the dialog. Enter the required settings, compare the Tab Product of the object Process, plus the lead time and click OK.

The dialog Product then enters your settings into the cells of the product table on the tab.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess >
Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess >
Tab Set-Up

Tab Set-Up
Define set-up processes as described under the Tab Set-Up.
To only start setting-up the process object for the next class of product when it is Empty, i.e., when it is not processing any parts, select Set-up only when
empty. Products of the type for which the object is setting-up can only enter the object, after the set-up process is finished.
To allow products to enter the object although it has not been set-up for their type yet, clear the check box.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 462 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > LeadProcess > Dialog Window of the Object LeadProcess >
Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS

PPS
The production planning and control object PPS handles a number of key functions in your value stream mapping models.
Its main task though is to accept orders from a Customer or a Supermarket, to derive production orders from them, and to distribute these orders to the
respective objects.
In doing so the object PPS takes into consideration if the product identifier changes from production plant to production plant and in which quantities the
different products have to be produced to meet Customer demand. It also takes into account the lot sizes of the production facilities when creating the
production orders.
Possible information predecessors are:

Customer

Supermarket

Possible information successors are:

Supplier

Process

Process_assembly

Process_indexed

Process_multiple

Course of the Disposition

Plant Simulation runs a disposition according to the time interval you enter as the disposition interval. A typical disposition interval is one day. This means
that a disposition run takes place each and every day at midnight.
During the disposition process the daily demand for base parts based on the takt time of the customer is calculated. The takt time of the customer results
from the product demands defined in the Customer objects.
Against this daily demand the existing base products in the first Inventory following the Supplier object and the production orders in the first Process object
are charged. The resulting demand is passed on to the Supplier object.

Related Topic
Dialog Window of the Object PPS

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS

Dialog Window of the Object PPS


Double-click the icon of the object PPS, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Disposition, on the Tab Product, on the Tab Import/Export, on the Tab Messages, on the Tab Settings, and on the
Context Menu.
In addition you can select the menu command Validate Planning.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 463 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition

Tab Disposition
On the tab Disposition you can enter the Disposition interval and the number of Extra lots. You can select to Log disposition data and click the button Open
Disposition Report to show this report.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Disposition interval

Disposition interval
Enter the disposition interval into the text box.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Disposition interval

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Extra lots

Extra lots
Whenever a planning run is executed, the object PPS can include additional lots in its calculations to prevent the number of products in the Inventory to fall
to zero or to prevent that a production order has to be created immediately with the next demand. This way you can compensate for scrap and rework
processes within the production process.
Enter the number of the additional extra lots into the text box Extra lots.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Extra lots

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Log disposition data

Log disposition data


To log the disposition data during the simulation run, select the check box.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 464 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Log disposition data

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Open Disposition Report

Open Disposition Report


To open the disposition report after the simulation run, click this button.

This only works if you select the check box Log disposition data.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Disposition >
Open Disposition Report

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product

Tab Product
The object PPS collects all defined products and then provides them as the selection when you enter products into other value stream mapping objects.
Plant Simulation shows the defined products on the tab Products of the object PPS.
While you are modeling, you sometimes might have to delete a product or to change the name of a product.
• You can edit the Products and Groups Table.
• You can edit the Groups Table.

Here you only edit the internal list of the object PPS. This does not affect the Process objects or the Inventories and Supermarkets respectively.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 465 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product >
Products and Groups Table

Products and Groups Table


The products and groups table on the tab Product shows the products and groups that you defined.

The products and groups table provides the following buttons to manipulate its contents:
• Delete: To delete an individual product, select it in the table on the tab Product, and click Delete.
• Edit Table: To edit the products and groups table, click Edit Table. You can, for example, add new products, you can edit the names of products, you can

assign a group to a product , and you can delete a product from the table. To assign a group, double-click the respective cell in the
column Groups.
• Rebuild Product Table: To delete the contents of the table Products and to re-read the product names of all value stream mapping objects of your
model, click Rebuild Product Table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product >
Products and Groups Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product >
Groups Table

Groups Table
The groups table on the tab Product shows the groups that you defined.

To edit the groups table, click Edit Product Groups. You can, for example, add new groups, you can edit groups, and you can delete them from the table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Product >
Groups Table

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 466 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Messages

Tab Messages
One of the many tasks of the object PPS is to collect all messages and warnings that occurred during the simulation run and to provide them for analyzing
your model.

• To show the messages that Plant Simulation collected during the simulation run, click Show Messages.
• To show the error messages, which prevent the simulation run from continuing immediately, select Show error messages. If you do not want to display
those messages, clear the check box. This makes sense, when you are working with the ExperimentManager to ensure that Plant Simulation does not
stop the simulation run because of a message.
Once the PPS has collected any messages, the icon of the PPS in your model changes. It then shows a small envelope down to the right.

To show the messages, select the object and click the right mouse button. This opens a context menu, in which you can select the menu command Show
Messages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Messages

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Settings

Tab Settings
On tab Settings you can enter the maximum number of MUs to be created.

Plant Simulation always checks this number when products are created. If the maximum number of products is reached, Plant Simulation shows a message
asking if you want to stop or to continue the simulation run. If you continue the simulation run, the object PPS will not show this message any more. Keep in
mind that the number of MUs reduces the speed of the simulation and that it will take a long time to reset you simulation model.
Note that the instances of the MU classes are counted for determining the number of produced MUs. If your model file contains several value stream
mapping models and if you did not delete the MUs in the individual models by resetting the models, these instances are counted as well.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 467 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Tab Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu

Context Menu
The context menu of the object PPS provides the menu commands Validate Planning and Show Messages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu >
Validate Planning

Validate Planning
The menu command Validate Planning opens a validation report of all created production orders during the simulation run. It shows which object creates
the order (in our example the Customer) and which number of which product will be ordered. Starting with this order, several other orders will be created
depending on the number of products available in the Inventories or Supermarkets.
Keep in mind that the total demand is the sum of all open orders of the product in the succeeding Process object.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 468 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu >
Validate Planning

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu >
Show Messages

Show Messages
The menu command Show Messages opens the messages report, compare the Tab Messages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > PPS > Dialog Window of the Object PPS > Context Menu >
Show Messages

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process

Process
The object Process processes products. The information about which product it has to process arrives via a production order. The object PPS, a succeeding
Supermarket, or an object of type Kanban creates production orders.
The Process orders the base products required for the production order from a preceding Inventory or from a preceding Supermarket.
Possible predecessors are:

Inventory

Supplier

Supermarket

Transport

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 469 of 570

TransportExternal

Possible successors are:

Customer

Inventory

Supermarket

Transport

TransportExternal

Possible information predecessors are:

Customer

PPS

Supermarket

The object Process does not have any information successors.

Related Topics
Dialog Window of the Object Process
Attributes of the Object Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > How the Throughput Time is Calculated

How the Throughput Time is Calculated


The throughput time (TpT) for a product through a Process results from the sum of the value-added time (VADT) and the queue time (QT).
The value-added time (VADT) results from the cycle time of the product. As the Process can only process a single product at any one point in time, the cycle
time is identical with the processing time, i.e., the value-added time.
A Process can only accommodate a single workpiece carrier. A certain amount of products on this workpiece carrier waits to be processed. A product is
being processed while the rest of the products, which already have been processed, are waiting on the workpiece carrier.
This way the queue time (QT) results from
QT = TQ * CT
where TQ stands for the transfer quantity of the product and CT stands for the cycle time.

Related Topics
Dialog Window of the Object Process
Attributes of the Object Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > How the Throughput Time is Calculated

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process

Dialog Window of the Object Process

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 470 of 570

Double-click the icon of the object Process, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Set-Up, on the Tab Failures, on the Tab Controls, on the Tab Exit Controls, on the Tab
Import/Export, on the Tab Statistics, and on the Tab Settings. You can also select if the process is a Value-adding process.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Value-
adding process

Value-adding process
To treat the cycle time of the products as a value-added time, select this check box. You can, for example, use it to exclude testing times from value-added
times.

Related Topic
IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Value-
adding process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 471 of 570

The dialog Product then enters your settings into the cells of the product table on the tab.

Product

Click the button Product and select the product that is to be processed. Instead, you can also enter the name of the product into the dialog Product.

Base Product

Click the button Base Product and select the base product that is required to produce the product. Instead, you can also enter the name of the base product
into the dialog Base Product.
The required product can have the same identifier as the product. To produce the product cylinder, for example, the base product blank is required.

Number of consumed parts

Enter the quantity, i.e., how many of the requested base products are used to produce one product.
For producing one cylinder 0.25 blanks are required for example. Thus four cylinders can be produced with one blank.

Lot size

Enter the lot size in which you want to produce the product. The production order quantity will always be rounded to this lot size. The exception is the last
Process object before the Customer object. The products are ordered with this lot size from the preceding store (Inventory or Supermarket).

Cycle time

Enter the cycle time. The cycle time is the time that elapses between two consecutive products that leave the Process. For the object Process the cycle
time is identical wit the processing time.

Transfer quantity

Enter the number of products which are transferred on a workpiece carrier at the same time.

Rework rate

Enter the percentage of products which will be marked for reworking. These products will be moved out of the line at the next rework connector.

Scrap rate

Enter the percentage of products which will be deleted because they are scrap. They will be deleted immediately after they were processed.

Priority

Enter the priority. Plant Simulation adds the priority of a product to the production order when a new order arrives at the object of type Process. All
production orders in the order list are sorted according to the priority and the point in time at which the order arrives. This way you can define high priority
products which have to be processed before all other products. The higher the number you enter the higher the priority.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab Set-
Up

Tab Set-Up
Define set-up processes as described under the Tab Set-Up.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 472 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab Set-
Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Failures

Tab Failures
Define failures as described under the Tab Failures.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Failures

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab Exit
Controls

Tab Exit Controls


On the tab Exit Controls you can select the strategy according to which a workpiece carrier is to be moved on to one of the succeeding objects.

The object Process provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
• Minimum Occupation
This strategy moves the workpiece carrier to the successor that had the lowest occupancy until now.
All strategies always keep the workpiece carriers of a production order together. This means that a strategy only is used when the order number of a
workpiece carrier changes.
When a strategy is blocking, Plant Simulation activates the label blocking next to the drop-down list, otherwise it grays the label out.
For the strategy Percentage Plant Simulation activates the button Open List. Click the button, to enter the percentage of the workpiece carriers into the
table. During the simulation the table shows the current numbers for the percentages.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 473 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab Exit
Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics

Tab Statistics
The tab Statistics shows the statistics values which the built-in material flow objects also show. In addition it shows the number of reworked products and
the number of scrapped products.
You can view the value for the Current length of the waiting queue and the Mean value and you can click the Show Waiting Queue.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Current length of the waiting queue

Current length of the waiting queue


This field shows the current number of production orders in the order list.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Current length of the waiting queue

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 474 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Mean value

Mean value
This field shows the mean value of the number of production orders.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Mean value

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Show Waiting Queue

Show Waiting Queue


To open a Plotter that shows the current length of the waiting queue and the average length of the waiting queue over time, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Statistics > Show Waiting Queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Settings

Tab Settings
On the tab Settings you can open the dialog for defining the Display Panel.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 475 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Settings > Display Panel

Display Panel
To open the dialog for defining the display panel, which the Process object can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Dialog Window of the Object Process > Tab
Settings > Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process

Attributes of the Object Process


The object Process provides:
• The attributes IsRelevant, SetupTime, and UseSetupMatrix.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 476 of 570

MyProcess.IsRelevant := false

• To get the value of an attribute, you might, for example, type:

print MyProcess.IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process > IsRelevant

IsRelevant

Syntax: <Path>.IsRelevant

The attribute IsRelevant sets if the cycle time of the products of the object designated by <Path> is a value-added time (true) or not (false). You can
use it to exclude testing times from value-added times.

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess.IsRelevant := false;

Related Topic
Value-adding process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process > IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process > SetupTime

SetupTime

Syntax: <Path>.SetupTime

The attribute SetupTime sets the time between a product change of the object designated by <Path>. A set-up process takes place whenever the product
name changes.

Assignment Value
You can assign a value of data type time. You can enter the set-up time in [h:m:s] or in seconds.

Example: MyProcess.SetupTime := str_to_time("1:00:00");

Related Topic
Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process > SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process >
UseSetupMatrix

UseSetupMatrix

Syntax: <Path>.UseSetupMatrix

The attribute UseSetupMatrix sets if the object designated by <Path> uses a set-up matrix (true) or not (false).

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 477 of 570

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess.UseSetupMatrix := true;

Related Topic
Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process > Attributes of the Object Process >
UseSetupMatrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly

Process_assembly
The object Process_assembly creates a target product out of several different products. The information, which target product is to be assembled, is
delivered via a production order.
Possible predecessors are:

FIFO

Inventory

Supplier

Supermarket

Transport

TransportExternal

Possible successors are:

FIFO

Customer

Inventory

Supermarket

Transport

TransportExternal

Possible information predecessors are:

Customer

PPS

Supermarket

The object Process_assembly does not have any information successors.

Related Topics

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 478 of 570

Dialog Window of the Object Process_assembly


Attributes of the Object Process_assembly

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > How the Throughput Time is
Calculated

How the Throughput Time is Calculated


The throughput time (TpT) for a product through a Process_assembly results from the sum of the value-added time (VADT) and the queue time (QT).
The value-added time (VADT) results from the cycle time of the product. As the Process_assembly can only process a single product at any one point in
time, the cycle time is identical with the processing time.
An object of type Process_assembly can only accommodate a single workpiece carrier. A certain amount of products on this workpiece carrier waits to be
processed. A product is being processed while the rest of the products, which already have been processed, are waiting on the workpiece carrier.
This way the queue time (QT) results from
QT = TQ * CT
where TQ stands for the transfer quantity of the product and CT stands for the cycle time.

Related Topics
Dialog Window of the Object Process_assembly
Attributes of the Object Process_assembly

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > How the Throughput Time is
Calculated

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly

Dialog Window of the Object Process_assembly


Double-click the icon of the object Process_assembly, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Set-Up, on the Tab Failures, on the Tab Controls, on the Tab Exit Strategies, on the Tab Statistics,
and on the Tab Settings. You can also select if the process is a Value-Adding Process.
Enter the names of the subparts and the quantity of the subparts, which is required to produce the target product, into the bill of materials.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Value-Adding Process

Value-Adding Process
To treat the cycle time of the products as a value-added time, select this check box. You can, for example, use it to exclude testing times from value-added
times.

Related Topic
IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Value-Adding Process

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 479 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Product

Tab Product
On the tab Product you can define the settings of the products and the bill of materials of the product.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.
In addition you have to fill in the bill of materials by selecting a subpart and entering the number of the required subparts.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up

Tab Set-Up

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 480 of 570

On the tab Set-Up you can enter the Set-up time, select to use a set-up matrix by selecting Use set-up matrix, and open it by clicking Open Set-Up Matrix.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up > Set-up time

Set-up time
Enter the set-up time, which is required to set the process up, into the text box. If you want to define a product-specific set-up time, leave the text box
empty.

Related Topic
SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up > Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up > Use set-up matrix

Use set-up matrix


To use a set-up matrix, select this check box. This activates the button Open Set-Up Matrix.

Related Topic
UseSetupMatrix

Open Set-Up Matrix

To open the set-up matrix into which you can enter the change over time from one product to the next product, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Set-Up > Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Failures

Tab Failures
Define failures as described under the Tab Failures.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Failures

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 481 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Exit Strategies

Tab Exit Strategies


On the tab Exit Strategies you can select according to which strategy workpiece carriers transporting products are moved on when several successors can
process the product.

The object Process_assembly provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
• Minimum Occupation
This strategy moves the workpiece carrier to the successor that had the lowest occupancy until now.Plant Simulation
All strategies always keep the workpiece carriers of a production order together. This means that a strategy only is used when the order number of a
workpiece carrier changes.
When a strategy is blocking, Plant Simulation activates the label blocking next to the drop-down list, otherwise it grays the label out.
For the strategy Percentage Plant Simulation activates the button Open List. Click the button and enter the percentages into the table that opens. During
the simulation the table shows the current numbers for the percentages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Exit Strategies

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Import/Export

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 482 of 570

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics

Tab Statistics
The tab Statistics shows the statistics values which the built-in material flow objects also show. In addition it shows the number of reworked products and
the number of scrapped products.
You can view the Current length of the waiting queue, the Mean value, and click Show Waiting Queue.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Current length of the waiting queue

Current length of the waiting queue


This field shows the current number of orders for the object of type Process_assembly.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Current length of the waiting queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Mean value

Mean value
This field shows the mean value of the number of production orders for the object of type Process_assembly.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Mean value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 483 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Show Waiting Queue

Show Waiting Queue


To open a Plotter that shows the current length of the waiting queue and the average length of the waiting queue over time, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Statistics > Show Waiting Queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Settings

Tab Settings
On the tab Settings you can open the dialog for defining the Display Panel.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Settings > Display Panel

Display Panel
To open the dialog for defining the display panel, which the object of type Process_assembly can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Dialog Window of the Object
Process_assembly > Tab Settings > Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly

Attributes of the Object Process_assembly


The object Process_assembly provides:
• The attributes IsRelevant, SetupTime, and UseSetupMatrix.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 484 of 570

example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyProcess_assembly.IsRelevant := false

• To get the value of an attribute, you might, for example, type:

print MyProcess_assembly.IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > IsRelevant

IsRelevant

Syntax: <Path>.IsRelevant

The attribute IsRelevant sets if the cycle time of the products of the object designated by <Path> is a value-added time (true) or not (false). You can
use it to exclude testing times from value-added times.

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_assembly.IsRelevant := false;

Related Topic
Value-Adding Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > SetupTime

SetupTime

Syntax: <Path>.SetupTime

The attribute SetupTime sets the time between a product change of the object designated by <Path>. A set-up process takes place whenever the product
name changes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 485 of 570

Assignment Value
You can assign a value of data type time. You can enter the set-up time in [h:m:s] or in seconds.

Example: MyProcess_assembly.SetupTime := str_to_time("1:00:00");

Related Topic
Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > UseSetupMatrix

UseSetupMatrix

Syntax: <Path>.UseSetupMatrix

The attribute UseSetupMatrix sets if the object designated by <Path> uses a set-up matrix (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_assembly.UseSetupMatrix := true;

Related Topic
Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_assembly > Attributes of the Object
Process_assembly > UseSetupMatrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed

Process_indexed
The object Process_indexed processes products in several steps on sequentially arranged stations. The object Process_indexed is a type of revolving
machine or transfer line. The object Process_indexed contains several sequentially arranged stations which are controlled by the object Cycle. The products
are only moved on to the next station when all stations have finished their respective processing steps. Once the product has covered the sequence of
stations, processing is finished.
The information about which product is to be processed, is delivered via a production order. Production orders are created by the object PPS or by one of
the succeeding processes.
You can drag the object Process_indexed and drop it onto a Chart. This shows the utilization of each of the internal stations. If you modify the capacity of the
object Process_indexed, this will change the internal structure and the Chart object can no longer show the utilization of these internal stations.
Possible predecessors are:

FIFO

Inventory

Supplier

Supermarket

Transport

TransportExternal

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 486 of 570

Possible successors are:

FIFO

Customer

Inventory

Supermarket

Transport

TransportExternal

Possible information predecessors are:

Customer

PPS

Supermarket

The object Process_indexed does not have any information successors.

Related Topics
Dialog Window of the Object Process_indexed
Attributes of the Object Process_indexed

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > How the Throughput Time is Calculated

How the Throughput Time is Calculated


The throughput time (TpT) for a product through a Process_indexed results from the sum of the value-added time (VADT) and the queue time (QT).
The value-added time (VADT) results from the cycle time multiplied with the number of stations which the product has to cover. As the object
Process_indexed can process several products at the same time, the cycle time is not identical with the processing time (PT).
PT = CT * c
where c stands for the capacity (number of stations) of the object Process_indexed.
The products of a workpiece carrier wait to be processed. The amount c of products are being processed while the rest of the products, which already have
been processed, are waiting on the workpiece carrier.
This way the queue time (QT) results from
QT = TQ * CT
where TQ stands for the transfer quantity of the product and CT stands for the cycle time.

Related Topics
Dialog Window of the Object Process_indexed
Attributes of the Object Process_indexed

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > How the Throughput Time is Calculated

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 487 of 570

Dialog Window of the Object Process_indexed


Double-click the icon of the object Process_indexed, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Set-Up, on the Tab Failures, on the Tab Controls, on the Tab Exit Controls, on the Tab
Import/Export, on the Tab Statistics, and on the Tab Settings. You can also select if the process is a Value-Adding Process.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Value-Adding Process

Value-Adding Process
To treat the cycle time of the products as a value-added time, select this check box. You can, for example, use it to exclude testing times from value-added
times.

Related Topic
IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Value-Adding Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

Select or enter the following data, which is relevant for producing the products, in the dialog Product.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 488 of 570

It in turn enters them into the cells of the product table on the tab.

Product

Click the button Product and select the product that is to be produced. Instead, you can also enter the name of the product into the dialog Product.

Base Product

Click the button Base Product and select the base product that is required to produce the product. Instead, you can also enter the name of the base product
into the dialog Base Product.
The required base product can have the same identifier as the product. To produce the product cylinder, for example, the base product blank is required.

Number of consumed parts

Enter the quantity, i.e., how many of the requested base products are used to produce one product.
For producing one cylinder 0.25 blanks are required for example. Thus four cylinders can be produced with one blank.

Lot size

Enter the lot size in which you want to produce the product. The products are ordered from the preceding Inventory or Supermarket in this lot.

Cycle time

Enter the cycle time. The cycle time is the time that elapses between two consecutive products that leave the object Process_indexed.

Transfer quantity

Enter the number of products which are transferred on a workpiece carrier at the same time.

Rework rate

Enter the percentage of products which will be marked for reworking. These products will be moved out of the line at the next rework connector.

Scrap rate

Enter the percentage of products which will be deleted because they are scrap. They will be deleted immediately after the Process_indexed object has
processed them.

Priority

Enter the priority. Plant Simulation adds the priority of a product to the production order when a new order arrives at the object of type Process_indexed. All
production orders in the order list are sorted according to the priority and the point in time at which the order arrives. This way you can define high priority
products which have to be processed before all other products. The higher the number you enter the higher the priority.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up

Tab Set-Up
On the tab Set-Up you can enter the Set-up time, select to use a set-up matrix by selecting Use set-up matrix, and open it by clicking Open Set-Up Matrix.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 489 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up > Set-up time

Set-up time
Enter the set-up time, which is required to set the process up, into the text box. If you want to define a product-specific set-up time, leave the text box
empty.

Related Topic
SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up > Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up > Use set-up matrix

Use set-up matrix


To use a set-up matrix, select this check box. This activates the button Open Set-Up Matrix.

Related Topic
UseSetupMatrix

Open Set-Up Matrix

To open the set-up matrix into which you can enter the change over time from one product to the next product, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Set-Up > Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Failures

Tab Failures
Define failures as described under the Tab Set-Up.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Failures

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 490 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Exit Controls

Tab Exit Controls


On the tab exit controls you can select according to which strategy workpiece carriers transporting products are moved on when several successors can
process the product.

The object Process_indexed provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
• Minimum Occupation
This strategy moves the workpiece carrier to the successor that had the lowest occupancy until now.Plant Simulation
All strategies always keep the workpiece carriers of a production order together. This means that a strategy only is used when the order number of a
workpiece carrier changes.
When a strategy is blocking, Plant Simulation activates the label blocking next to the drop-down list, otherwise it grays the label out.
For the strategy Percentage Plant Simulation activates the button Open List. Click the button and enter the percentages into the table that opens. During
the simulation the table shows the current numbers for the percentages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Exit Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Import/Export

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 491 of 570

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics

Tab Statistics
The tab Statistics shows the statistics values which the built-in material flow objects also show. In addition it shows the number of reworked products and
the number of scrapped products.
You can view the Current length of the waiting queue, the Mean value, and click Show Waiting Queue.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Current length of the waiting queue

Current length of the waiting queue


This field shows the current number of orders for the object of type Process_indexed.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Current length of the waiting queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Mean value

Mean value
This field shows the mean value of the number of production orders for the object of type Process_indexed.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Mean value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 492 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Show Waiting Queue

Show Waiting Queue


To open a Plotter that shows the current length of the waiting queue and the average length of the waiting queue over time, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Statistics > Show Waiting Queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Settings

Tab Settings
On the tab Settings you can enter the Number of stations and open the dialog for defining the Display Panel.

Number of stations

Enter the number of internal stations with identical cycle time and through which the products pass. The cycle time results from the longest processing
time which applies within the processes.

Display Panel

To open the dialog for defining the display panel, which the object Process_indexed can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Dialog Window of the Object
Process_indexed > Tab Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed

Attributes of the Object Process_indexed


The object Process_indexed provides:
• The attributes IsRelevant, SetupTime, and UseSetupMatrix.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 493 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyProcess_indexed.IsRelevant := false;

• To get the value of an attribute, you might, for example, type:

print MyProcess_indexed.IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > IsRelevant

IsRelevant

Syntax: <Path>.IsRelevant

The attribute IsRelevant sets if the cycle time of the products of the object designated by <Path> is a value-added time (true) or not (false). You can,
for example, use it to exclude testing times from value-added times.

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_indexed.IsRelevant := false;

Related Topic
Value-Adding Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > SetupTime

SetupTime

Syntax: <Path>.SetupTime

The attribute SetupTime sets the time between a product change of the object designated by <Path>. A set-up process takes place whenever the product
name changes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 494 of 570

Assignment Value
You can assign a value of data type time. You can enter the set-up time in [h:m:s] or in seconds.

Example: MyProcess_indexed.SetupTime := str_to_time("1:00:00");

Related Topic
Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > UseSetupMatrix

UseSetupMatrix

Syntax: <Path>.UseSetupMatrix

The attribute UseSetupMatrix sets if the object designated by <Path> uses a set-up matrix (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_indexed.UseSetupMatrix := true;

Related Topic
Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_indexed > Attributes of the Object
Process_indexed > UseSetupMatrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple

Process_multiple
The object Process_multiple can process several products simultaneously but independent of each other. The internal structure of the object is the same as
that of the ParallelProc. The object Process_multiple makes modeling several identical stations which process products parallel to each other easier.
The object Process_multiple always processes a single production order at any one point in time. This production order is processed in parallel on all
stations though. Note that you define the cycle time when you define the product. The cycle time defines the time interval in which two products leave the
object. This is not the processing time of the products on the object.
The information about which product is to be processed, is delivered via a production order. Production orders are created by the object PPS, by a
Supermarket, by a Kanban control or by one of the succeeding processes.
Possible predecessors are:

FIFO

Inventory

Supplier

Supermarket

Transport

TransportExternal

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 495 of 570

Possible successors are:

FIFO

Customer

Inventory

Supermarket

Transport

TransportExternal

Possible information predecessors are:

Customer

PPS

Supermarket

The object Process_multiple does not have any information successors.

Related Topics
Dialog Window of the Object Process_multiple
Attributes of the Object Process_multiple

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > How the Throughput Time is Calculated

How the Throughput Time is Calculated


The throughput time (TpT) for a product through a Process_multiple results from the sum of the value-added time (VADT) and the queue time (QT).
The value-added time (VADT) results from the cycle time of the product. The cycle time CT of the object Process_multiple results from the processing time
(PT) and the capacity c (i.e., the number of stations) of the object as follows:
CT = PT / c
or transposed:
PT = CT * c
A Process can only accommodate a single workpiece carrier. A certain amount of products on this workpiece carrier waits to be processed. The amount c of
products is being processed while the rest of the products, which already have been processed, are waiting on the workpiece carrier.
This way the queue time (QT) results from
QT = TQ * CT
where TQ stands for the transfer quantity of the product and CT stands for the cycle time.

Related Topics
Dialog Window of the Object Process_multiple
Attributes of the Object Process_multiple

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > How the Throughput Time is Calculated

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 496 of 570

Dialog Window of the Object Process_multiple


Double-click the icon of the object Process_multiple, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Set-Up, on the Tab Failures, on the Tab Controls, on the Tab Exit Strategies, on the Tab
Import/Export, on the Tab Statistics, and on the Tab Settings. You can also select if the process is a Value-Adding Process.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Value-Adding Process

Value-Adding Process
To treat the cycle time of the products as a value-added time, select this check box. You can, for example, use it to exclude testing times from value-added
times.

Related Topic
IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Value-Adding Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

Select or enter the following data, which is relevant for producing the products, in the dialog Product.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 497 of 570

It in turn enters them into the cells of the product table on the tab.

Product

Click the button Product and select the product that is to be produced. Instead, you can also enter the name of the product into the dialog Product.

Base Product

Click the button Base Product and select the base product that is required to produce the product. Instead, you can also enter the name of the base product
into the dialog Base Product.
The required base product can have the same identifier as the product. To produce the product cylinder, for example, the base product blank is required.

Number of consumed parts

Enter the quantity, i.e., how many of the requested base products are used to produce one product.
For producing one cylinder 0.25 blanks are required for example. Thus four cylinders can be produced with one blank.

Lot size

Enter the lot size in which you want to produce the product. The products are ordered from the preceding Inventory or Supermarket in this lot.

Cycle time

Enter the cycle time. The cycle time is the time that elapses between two consecutive products that leave the object of type Process_multiple.

Transfer quantity

Enter the number of products which are transferred on a workpiece carrier at the same time.

Rework rate

Enter the percentage of products which will be marked for reworking. These products will be moved out of the line at the next rework connector.

Scrap rate

Enter the percentage of products which will be deleted because they are scrap. They will be deleted immediately after the object of type Process_multiple
has processed them.

Priority

Enter the priority. Plant Simulation adds the priority of a product to the production order when a new order arrives at the object of type Process_multiple. All
production orders in the order list are sorted according to the priority and the point in time at which the order arrives. This way you can define high priority
products which have to be processed before all other products. The higher the number you enter the higher the priority.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Set-Up

Tab Set-Up
Define set-up processes as described under the Tab Set-Up.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 498 of 570

Process_multiple > Tab Set-Up

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Failures

Tab Failures
Define failures as described under the Tab Failures.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Failures

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Exit Strategies

Tab Exit Strategies


On the tab Exit Strategies you can select according to which strategy workpiece carriers transporting products are moved on when several successors can
process the product.

The object Process_multiple provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
• Minimum Occupation
This strategy moves the workpiece carrier to the successor that had the lowest occupancy until now.Plant Simulation
All strategies always keep the workpiece carriers of a production order together. This means that a strategy only is used when the order number of a
workpiece carrier changes.
When a strategy is blocking, Plant Simulation activates the label blocking next to the drop-down list, otherwise it grays the label out.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 499 of 570

For the strategy Percentage Plant Simulation activates the button Open List. Click the button and enter the percentages into the table that opens. During
the simulation the table shows the current numbers for the percentages.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Exit Strategies

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics

Tab Statistics
The tab Statistics shows the statistics values which the built-in material flow objects also show. In addition it shows the number of reworked products and
the number of scrapped products.
You can view the values for the Current length of the waiting queue and for the Mean value and click Show Waiting Queue.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Current length of the waiting queue

Current length of the waiting queue


This field shows the current number of orders for the object of type Process_multiple.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 500 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Current length of the waiting queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Mean value

Mean value
This field shows the mean value of the number of production orders for the object of type Process_multiple.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Mean value

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Show Waiting Queue

Show Waiting Queue


To open a Plotter that shows the current length of the waiting queue and the average length of the waiting queue over time, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Statistics > Show Waiting Queue

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings

Tab Settings
On the tab Settings you can enter the Capacity and open the dialog for defining the Display Panel.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings > Capacity

Capacity
Enter the number of parallel stations into the text box. Each product only passes through one of the stations with the processing time you enter.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 501 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings > Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings > Display Panel

Display Panel
To open the dialog for defining the display panel, which the object Process_multiple can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Dialog Window of the Object
Process_multiple > Tab Settings > Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple

Attributes of the Object Process_multiple


The object Process_multiple provides:
• The attributes IsRelevant, SetupTime, and UseSetupMatrix.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyProcess_multiple.IsRelevant := false

• To get the value of an attribute, you might, for example, type:

print MyProcess_multiple.IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 502 of 570

Process_multiple > IsRelevant

IsRelevant

Syntax: <Path>.IsRelevant

The attribute IsRelevant sets if the cycle time of the products of the object designated by <Path> is a value-added time (true) or not (false). You can,
for example, use it to exclude testing times from value-added times.

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_multiple.IsRelevant := false;

Related Topic
Value-Adding Process

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple > IsRelevant

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple > SetupTime

SetupTime

Syntax: <Path>.SetupTime

The attribute SetupTime sets the time between a product change of the object designated by <Path>. A set-up process takes place whenever the product
name changes.

Assignment Value
You can assign a value of data type time. You can enter the set-up time in [h:m:s] or in seconds.

Example: MyProcess_multiple.SetupTime := str_to_time("1:00:00");

Related Topic
Set-up time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple > SetupTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object
Process_multiple > UseSetupMatrix

UseSetupMatrix

Syntax: <Path>.UseSetupMatrix

The attribute UseSetupMatrix sets if the object designated by <Path> uses a set-up matrix (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MyProcess_multiple.UseSetupMatrix := true;

Related Topic
Use set-up matrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Process_multiple > Attributes of the Object

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 503 of 570

Process_multiple > UseSetupMatrix

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework

Rework
The object Rework represents a reworking station within your value stream model. Products, which have been marked as defective, will be repaired here
and be fed back into the value stream. Be aware that the name of the product might change during this process.
The arriving defective part will be repaired according to the required repair time. This time will be determined according to a constant time located between
the minimum reworking time and the maximum reworking time.

Related Topic
Dialog Window of the Object Rework

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework > Dialog Window of the Object Rework

Dialog Window of the Object Rework


Double-click the icon of the object Rework, which you inserted into a Frame, to open its dialog window.
It shows its object-specific properties on the Possible successors are:.
Possible predecessors are:

FIFO

Transport

Possible successors are:

Inventory

Supermarket

The object Rework does not have any information connectors.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework > Dialog Window of the Object Rework

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework > Dialog Window of the Object Rework > Tab
Product

Tab Product
On the tab Product you can enter the properties of the product to be produced.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 504 of 570

Enter the name of the arriving defective product and the name of the repaired, i.e., the leaving product.
Enter the minimum reworking time and the maximum reworking time for this product.
The simple sample model demonstrates how to model a reworking station. Within the model we marked 1 % of the parts in the object Process1 as defective.
In the objects Process2 and Process3 we marked 2 % each of the processed parts.

As Process1 and Process2 are not connected with a rework connector, which is red, the parts that have to be repaired will be moved along according to the
material flow connectors, which are blue.
Process3, on the other hand, is connected to another object via a rework connector. Here the parts marked as defective are removed from the material flow
and are moved to the Rework station.
The Rework station can only be preceded by objects of type FIFO or Transport. The reworking cycle always has to end in an Inventory or a Supermarket.
The Rework station repairs the defective products. The repaired parts are renamed according to the name you enter as the leaving product. Be aware that
the leaving product has to be defined in the target object, i.e., in the Inventory or in the Supermarket.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Rework > Dialog Window of the Object Rework > Tab
Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox

ScheduleBox
Enter the sequence and the amount of products to be produced for each day into the ScheduleBox. At the beginning of a day the number of parts to be
produced this day are then ordered from the connected production process with the specified amount.
The object ScheduleBox does not have any information predecessors.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 505 of 570

Possible information successors are:

Process

Process_assembly

Process_indexed

Process_multiple

Related Topic
Dialog Window of the Object ScheduleBox

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox

Dialog Window of the Object ScheduleBox


Double-click the icon of the object ScheduleBox, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product and on the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Tab Product

Tab Product
On the tab Product you can enter the product and the amount that is to be produced for each day.

Double-click the table in the dialog to open the input table. Instead, you can also click the button Edit Table to open the input table.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 506 of 570

Enter the name of the end product to be produced into the first column of a day. Enter the amount of the product to be produced into the second column.
You can also enter the same product with different amounts for a single day. The amount of entries can differ from day to day.
At the beginning of a day production orders are produced with these settings for the assigned processes. Note that the production orders will be rounded up
to the lot size of the product. The production orders are passed on to the Process object and then entered into the table of the production orders.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Tab Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Using the ScheduleBox in the Model

Using the ScheduleBox in the Model


Insert one or several objects of type ScheduleBox into your value stream model. Connect the ScheduleBox with the Process objects using an Information
Connector as shown in the figure below.

You can also connect a ScheduleBox directly with more than one Process objects as shown in the figure below. In this case the production orders will be
sent to each Process object.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 507 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > ScheduleBox > Dialog Window of the Object ScheduleBox >
Using the ScheduleBox in the Model

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket

Supermarket
The Supermarket is a special type of Inventory. It stores products and only removes them from stock after receiving a corresponding order.
As opposed to the Inventory, a reorder level and a maximum stock are defined for each product in the Supermarket. When the current stock of a product has
reached the reorder level, the number of products is reordered to arrive at the defined maximum stock.
The products are either ordered from a Process object that is located upstream or from the PPS. To enable this, you have to establish an Information
Connector to the Process object or to the PPS.
If you want to replace an Inventory with a Supermarket, you can drag the Supermarket over the Inventory and drop it there. This opens a dialog in which you
can define which values of the object Inventory are to be applied to the Supermarket.
Possible predecessors are:

FIFO

Process_assembly

Process_indexed

Process_multiple

Supplier

Transport

TransportExternal

Possible successors are:

Customer

Process

Process_assembly

Process_indexed

Process_multiple

Possible information predecessors are:

PPS

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 508 of 570

Customer

Process

Process_indexed

Process_multiple

Process_assembly

Possible information successors are:

PPS

Process

Process_indexed

Process_multiple

Process_assembly

Supplier

Kanban

Related Topics
Dialog Window of the Object Supermarket
Attributes of the Object Supermarket

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket

Dialog Window of the Object Supermarket


Double-click the icon of the object Supermarket, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Import/Export, on the Tab Statistics, and on the Tab Settings.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product

Tab Product
On the tab Product you can enter the properties of the products which you want to store in the Supermarket.
You can add products to the products table by clicking Add. You can edit the selected product by clicking Edit. You can edit the products table by clicking
Edit Table. You can delete the selected product from the products table by clicking Delete.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 509 of 570

To add a product, click the button Add or double-click an empty row of the table. Enter the parameters of the product to be produced.

Product

Click the button Product and select the product name in the dialog that opens. Instead, you can also enter the name of the product into the text box.

Initial stock

Enter the initial stock into the dialog Product. The initial stock is the number of products that is stored in the object Supermarket at the start of the
simulation run.

Safety stock

Enter the safety stock into the dialog Product. The safety stock is the lowest number of products in the object Supermarket. This number is only used to
switch the icon of the Supermarket. This way you can see that the number of products has fallen below this limit.

Reorder level

Enter the reorder level into the dialog Product. When the current number of products reaches this level, the Supermarket reorders products. For
reordering, an outgoing Information Connector is required. Following this connection, the order for producing the requested product will be send. The target
of the Information Connector can be the PPS system or any Process object or a Supplier.

Maximum stock

Enter the maximum stock into the dialog Product, compare How the Supplier Orders Products and How to Place an Order.

Current stock

This column shows the current number of parts in stock in the Supermarket. You cannot enter data here.

Ordered

This column shows the current number of products that were ordered.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 510 of 570

Tab Product > Add

Add
To open the dialog Product where you can enter or modify the values of a product, click the button Add. Instead, you can also double-click an empty row in
the product table to open the dialog.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Add

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Edit

Edit
To edit the definition of the selected object, click Edit.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Edit

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Edit Table

Edit Table
To open the table in which you can edit all properties of all products in a single table, click Edit Product Table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Edit Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Delete

Delete
To delete the selected product from the product table, click Delete.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Product > Delete

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Import/Export

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 511 of 570

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics

Tab Statistics
On the tab Statistics you can select to Plot current stock values and to Show minimum, maximum, and average stock.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics > Plot current stock values

Plot current stock values


To show a plot of all products in the Supermarket during the simulation run, select the check box Plot of current stock values.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics > Plot current stock values

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics > Show minimum, maximum, and average stock

Show minimum, maximum, and average stock

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 512 of 570

To show a bar chart of the minimum stock, the maximum stock, and the average stock of all products in the Supermarket, select the check box Show
minimum, maximum and average stock.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Statistics > Show minimum, maximum, and average stock

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings

Tab Settings
On the tab Settings you can select to Stop the simulation on a supply shortage, to Log supply shortages, to Show Supply Shortages, and open the dialog
for defining the Display Panel.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Stop the simulation on a supply shortage

Stop the simulation on a supply shortage


To stop the simulation run as soon as the current stock of a product cannot meet a request of the following Process object, select the check box.

Related Topic

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 513 of 570

StopOnSupplyShortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Stop the simulation on a supply shortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Log supply shortages

Log supply shortages


To write all supply shortages into a list, select the check box. You can then show the list by clicking Show Supply Shortages.

Related Topic
LogSupplyShortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Log supply shortages

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Show Supply Shortages

Show Supply Shortages


To open the list of all supply shortages which Plant Simulation creates when you selected Log supply shortages, click this button.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Show Supply Shortages

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Display Panel

Display Panel
To open the dialog for defining the display panel, which the object Supermarket can show during the simulation run, click this button.

Related Topic
Showing a Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Dialog Window of the Object Supermarket >
Tab Settings > Display Panel

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket

Attributes of the Object Supermarket


The object Supermarket provides:
• The attributes LogSupplyShortage and StopOnSupplyShortage.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 514 of 570

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MySupermarket.LogSupplyShortage := false

• To get the value of an attribute, you might, for example, type:

print MySupermarket.LogSupplyShortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket >
LogSupplyShortage

LogSupplyShortage

Syntax: <Path>.LogSupplyShortage

The attribute LogSupplyShortage logs all supply shortages of the object designated by <Path> in a table (true) or not (false).

Assignment Value
You can assign a value of data type boolean.

Example: MySupermarket.LogSupplyShortage := false;

Related Topic
Log supply shortages

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket >
LogSupplyShortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket >
StopOnSupplyShortage

StopOnSupplyShortage

Syntax: <Path>.StopOnSupplyShortage

The attribute StopOnSupplyShortage stops the EventController as soon as a request for products of the object designated by <Path> could not be satisfied
by the current number of products available (true) or not (false).

Assignment Value

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 515 of 570

You can assign a value of data type boolean.

Example: MySupermarket.StopOnSupplyShortage := false;

Related Topic
Stop the simulation on a supply shortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supermarket > Attributes of the Object Supermarket >
StopOnSupplyShortage

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier

Supplier
The Supplier is a kind of inexhaustible source for products and materials. The Supplier takes orders. Once you defined the products to be ordered in the
delivery list of the Supplier, it delivers the ordered products. The products are delivered rounded up to the container quantity of the product, compare the
attribute PackagingSize.
The Supplier always moves the parts on after the restocking time has elapsed. If you do not want this, you can control the times during which the parts are
moved on with a ShiftCalendar.
Caused by the changes we made to the objects Supplier and TransportExternal, existing simulation models can behave differently. The products on
the Supplier can accumulate because the object TransportExternal does not provide sufficient transport capacity. As a consequence memory
consumption can increase dramatically.

Possible successors are:

FIFO

Inventory

Process

Process_assembly

Process_indexed

Process_multiple

Supermarket

Transport

TransportExternal

Possible information predecessors are:

PPS

Supermarket

Kanban

The object Supplier does not have any information successors.

Related Topics
Dialog Window of the Object Supplier
How to Use the Supplier

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 516 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier

Dialog Window of the Object Supplier


Double-click the icon of the object Supplier, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Product, on the Tab Cyclic Delivery of Products, on the Tab Controls, and Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product

Tab Product
On the tab Product you can enter the properties of the product to be produced. You can add products to the products table by clicking Add. You can edit the
selected product by clicking Edit. You can edit the products table by clicking Edit Table. You can delete the selected product from the products table by
clicking Delete.

To add a product, click the button Add or double-click an empty row of the table. Enter the parameters of the product to be produced into the dialog
Product.

Product

Click the button Product and select the product, which the Supplier can supply, in the dialog. Instead, you can also enter the name of the product into the
dialog Product.

Packaging size

Enter the packaging size. The ordered quantity of the product is rounded up to the next-higher packaging size of the product.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 517 of 570

Restocking time

Enter the time which the Supplier needs to create the product in the quantity given by the packaging size. This is a delay between the point in time at which
the order arrives at the Supplier and the point in time at which delivery of the product starts. The restocking time is the time needed for one packaging
size.
If, for example, you need five packages, it will five times the restocking time to produce the products.
Using a ShiftCalendar object to control the Supplier may prolong the restocking time.

Order quantity

Enter the amount of product that is delivered cyclically. The order quantity will be adjusted to a multiple of the packaging size.

This setting only applies if you activated the check box Active on the Tab Cyclic Delivery of Products

Delivery interval

Enter the delivery interval during which the Order quantity will be delivered.

This setting only applies if you activated the check box Active on the Tab Cyclic Delivery of Products

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Add

Add
To open the dialog Product where you can enter or modify the values of a product, click the button Add. Instead, you can also double-click an empty row in
the product table to open the dialog.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Add

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Edit

Edit
To edit the definition of the selected object, click Edit.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Edit

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Edit Table

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 518 of 570

Edit Table
To open the table in which you can edit all properties of all products in a single table, click Edit Product Table.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Edit Table

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Delete

Delete
To delete the selected product from the product table, click Delete.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Product > Delete

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Cyclic Delivery of Products

Tab Cyclic Delivery of Products


On the tab Cyclic Delivery of Products you can tell the Supplier to create the products cyclical, i.e., not by a disposition process of the PPS. To do so,
activate the check box Active.
When the Supplier is to deliver the products cyclically, you do not have to establish an Information Connector to the Supplier object.

To open the dialog Product, double-click an empty row in the table on the tab or click Add.
Click the button Product and select the products, which the Supplier can supply, in the dialog. Instead, you can also enter the name of the product into the
dialog Product.

Select a Product or type in the name of the product in the text box. Enter the Packaging size and the Restocking time.
For the setting cyclic delivery you have to enter the Quantity of products to be delivered during every cycle and the Interval between two deliveries.
In the example shown in the figure above, the product coil will be delivered every hour with the quantity of 0.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > Dialog Window of the Object Supplier > Tab
Cyclic Delivery of Products

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 519 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier

How to Use the Supplier


Typically the Supplier receives the order for delivering products from the PPS.

This only works if you insert an Information Connector between the objects PPS and the Supplier. The PPS computes the quantity of products needed for
the next day and then orders these products from the Supplier.
In the example below, the Supplier delivers products cyclical. We did not insert an Information Connector between the PPS and the Supplier. In the
example, 10 products of type coil will be delivered every day.
Plant Simulation adjusts the ordered quantity to the Packaging size of the Supplier.
Der Supplier delivers the products immediately after the interval time has elapsed. For this setting there is no additional replacement time.

In the example below the Supermarket orders products from the Supplier. Whenever the reorder level of a product is reached, the Supermarket orders new
products from the Supplier. After the products used up the restocking time, they will be transferred to the Supermarket via the object TransportExternal.
Plant Simulation adjusts the ordered quantity to the Packaging size of the Supplier.

In the last example a Kanban object controls ordering the products. Depending on the strategy you selected in the Kanban object, Kanban-orders will be
sent to the Supplier and the products will be transferred to the Supermarket after the restocking time has elapsed. Keep in mind that the Supplier sends the
quantity of products defined on the Kanban card, not the packaging size.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 520 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier > Tab Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Supplier > How to Use the Supplier > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport

Transport
The object Transport transports products from one station to another station within a defined time. You can connect any number of value stream mapping
objects with the object Transport.

A sender cannot be a receiver at the same time.

The objects Transport and FIFO share their behavior.


The object Transport is a type of conveyor that transports products from A to B in a defined time. The object FIFO is a type of buffer with a certain
transportation time.
Possible predecessors are:

Process

Process_assembly

Process_indexed

Process_multiple

Supplier

Possible successors are:

Customer

Inventory

Process

Process_assembly

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 521 of 570

Process_indexed

Process_multiple

Supermarket

The object Transport does not have information predecessors or information successors.

Related Topics
Dialog Window of the Object Transport
Attributes of the Object Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport

Dialog Window of the Object Transport


Double-click the icon of the object Transport, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Transport, on the Tab Exit Strategies, on the Tab Import/Export, and Tab Statistics.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Transport

Tab Transport
On the tab Transport you can define the Transportation time and the Capacity.

Transportation time

Enter the transport time which the workpiece carriers take to cover the object Transport.

Related Topic
TransportationTime

Capacity

Enter the maximum capacity of the workpiece carriers which the object Transport can transport.

Related Topic
_Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Transport

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 522 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Exit Strategies

Tab Exit Strategies


On the tab Exit Strategies you can select the strategy according to which a workpiece carrier is to be moved on to one of the succeeding objects.
Note that the exit controls are only used when an object of type Transport has several successors which are able to process the same products. If there is
a single successor or if there are several successors only one of which can process the product, it is uniquely determined where the workpiece carrier is to
be moved and the exit controls will not be taken into consideration.

The object Process_multiple provides these exit strategies:


• Cyclic
This strategy moves the workpiece carriers one after the other to the successors. This is a blocking strategy. This means that when its the turn of
successor 2, but when this successor is occupied, Plant Simulation waits for successor 2 all the same until this successor can receive the workpiece
carrier.
• Start at successor 1
This strategy always attempts to move the workpiece carrier to the first successor. It only takes the other successors into consideration when this is not
possible.
• First free successor
This strategy checks which successor can accept the workpiece carrier. It them moves the workpiece carrier to this successor.
• Percentage
This strategy attempts to distribute the workpiece carriers among the successors according to a percentage which you define.
Note that all exit strategies always move the workpiece carriers belonging to a production order to the same successor to avoid uncalled for set-up
processes. If the workpiece carriers are not kept together, this would amount to an order splitting, which the value stream mapping library generally does not
support.

The model depicted above shows the effects of the exit strategies. In the model we defined two products with different cycle times and with different lot sizes
and transfer units. The objects Process1 and Process2 can process both products.
With a simulation duration of 20 days the object FIFO moves on 2591 workpiece carriers.
• For the setting Cyclic it moves 1364 workpiece carriers to the object Process1 and 1227 workpiece carriers to the object Process2. Both processes were
set-up 22 times.
• For the setting Start at successor 1 the object Process1 receives 1937 workpiece carriers, while the object Process2 only receives 654 workpiece
carriers. To accomplish this, the object Process1 had to be set-up 193 times. while the object Process2 had to be set-up only 11 times only.
• For th setting First free successor Process1 receives 1364 workpiece carriers, while Process2 receives 1227 workpiece carriers. Both processes had to
be set-up 22 times. This is the same as the strategy Cyclic as both processes have the same cycle time for the products.
• For th setting Percentage with a distribution of 40/60 for Process1/Process2, Process1 receives 1039 workpiece carriers and Process2 receives 1552
workpiece carriers. Process1 had to be set-up 69 times, while Process2 had to be set-up 136 times. The percentage distribution achieved in the
simulation results in 40,1% to 59,9%.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Exit Strategies

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 523 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Statistics

Tab Statistics
The tab Statistics shows the minimum number of workpiece carriers, the maximum number of workpiece carriers (not products), and the average
number of workpiece carriers, which are located on the object Transport.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Import/Export

Tab Import/Export
Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Dialog Window of the Object Transport > Tab
Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport

Attributes of the Object Transport


The object Transport provides:
• The attributes _Capacity and TransportationTime.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 524 of 570

• To set the value of an attribute, you might, for example, type:

MyTransport._Capacity := 10

• To get the value of an attribute, you might, for example, type:

print MyTransport._Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport > _Capacity

_Capacity

Syntax: <Path>._Capacity

The attribute _Capacity sets capacity of the object designated by <Path>.

Assignment Value
You can assign a value of data type integer.

Example: MyTransport._Capacity := 10;

Related Topic
Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport > _Capacity

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport >
TransportationTime

TransportationTime

Syntax: <Path>.TransportationTime

The attribute TransportationTime sets the transportation time of the object designated by <Path>. The transport time spans the time the point in time at
which the workpiece carrier enters the object until the point in time it exits it. You can enter the transport time in the format [d:h:min:s] or in seconds.

Assignment Value
You can assign a value of data type time.

Example: MyTransportExternal.TransportationTime := str_to_time("10:00");

Related Topic
Transportation time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > Transport > Attributes of the Object Transport >
TransportationTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal

TransportExternal
The object TransportExternal receives products from the preceding object and transports them to the succeeding object. The products are passed on to the

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 525 of 570

succeeding object after the defined transportation time has elapsed.


Enter the time it takes for the means of for the return trip if the next transport process can only take place after the means of transport has returned to its
original position. The duration of the next transportation process can, under certain circumstances, be prolongated by the duration of the return trip.
As a rule, the means of transportation always loads a single part. The transportation process always takes place. If you do not want this, you can control the
transportation times with the ShiftCalendar. In this case a started transportation process will always be finished, even if it exceeds the time you entered into
the ShiftCalendar.
When you insert the object TransportExternal between a Supplier and its successor, the transportation process uses the Packaging size you entered into the
Supplier.
Caused by the changes we made to the objects Supplier and TransportExternal, existing simulation models can behave differently. The products on
the Supplier can accumulate because the object TransportExternal does not provide sufficient transport capacity. As a consequence memory
consumption can increase dramatically.

Possible predecessors are:

Process

Process_assembly

Process_indexed

Process_multiple

Supplier

Possible successors are:

Customer

Inventory

Process

Process_assembly

Process_indexed

Process_multiple

Supermarket

The object TransportExternal does not have any information predecessors or information successors.

Related Topics
Dialog Window of the Object TransportExternal
Attributes of the Object TransportExternal

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal

Dialog Window of the Object TransportExternal


Double-click the icon of the object TransportExternal, which you inserted into a Frame, to open its dialog window.
It shows the properties on the Tab Transport, on the Tab Controls, and on the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 526 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Transport

Tab Transport
On the tab Transport you can enter the Number of Transporter, enter the Transportation time, and enter the Return trip.

Number of Transporter

Enter the number of Transporters that run the transportation process.

Related Topic
NumberOfTransporter

Transportation time

Enter the transport time which the products take to cover the object TransportExternal.

Related Topic
TransportationTime

Return trip

Enter the time it takes the means of transport to return to its original position into the text box.

Related Topic
WayBackTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Transport

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Controls

Tab Controls
Define Controls as described under the Tab Controls.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Controls

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Import/Export

Tab Import/Export

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 527 of 570

Define how you want to import or to export data as described under the Tab Import/Export.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Dialog Window of the Object
TransportExternal > Tab Import/Export

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal

Attributes of the Object TransportExternal


The object TransportExternal provides:
• The attributes NumberOfTransporter, TransportationTime, and WayBackTime.
• The Attributes of the Material Flow Objects.
• The Attributes of All Objects.
To show all attributes and methods of the object, open the window Show Attributes and Methods. The figure below illustrates the information using the
example of the object Source.

• Select Show Attributes and Methods on the context menu of the Class Library to show the attributes and methods of the selected Class.
• Press the F8 key or click Show Attributes and Methods on the Home ribbon tab of the Frame into which you inserted an instance to show the attributes
and methods of this Instance.
You can set the value of an attribute and you can get its value, either with the check boxes, the text boxes and drop-down lists in the dialog windows or by
assigning values to the corresponding attributes.
• To set the value of an attribute, you might, for example, type:

MyTransportExternal.NumberOfTransporter := 2

• To get the value of an attribute, you might, for example, type:

print MyTransportExternal.NumberOfTransporter

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > NumberOfTransporter

NumberOfTransporter

Syntax: <Path>.NumberOfTransporter

The attribute NumberOfTransporter sets the number of Transporters that run the transportation process for the object designated by <Path>.

Assignment Value
You can assign a value of data type integer.

Example: MyTransportExternal.NumberOfTransporter := 2;

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 528 of 570

Related Topic
Number of Transporter

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > NumberOfTransporter

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > TransportationTime

TransportationTime

Syntax: <Path>.TransportationTime

The attribute TransportationTime sets the transportation time of the object designated by <Path>. The transport time spans the time the point in time at
which the product enters the Transport object until the point in time it exits it. You can enter the transport time in the format [d:h:min:s] or in seconds.

Assignment Value
You can assign a value of data type time.

Example: MyTransportExternal.TransportationTime := str_to_time("10:00");

Related Topic
Transportation time

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > TransportationTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > WayBackTime

WayBackTime

Syntax: <Path>.WayBackTime

The attribute WayBackTime sets the time it takes the means of transport of the object designated by <Path> to return to its original position. You can enter
the return trip time in the format [d:h:min:s] or in seconds.

Assignment Value
You can assign a value of data type time.

Example: MyTransportExternal.WayBackTime := str_to_time("15:00");

Related Topic
Return trip

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Objects > TransportExternal > Attributes of the Object
TransportExternal > WayBackTime

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools

Value Stream Mapping Tools


The value stream mapping tools provide fast access to display, analysis, and exchange options.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 529 of 570

The toolbar VSM_Tools provides these tools:


• Check
• DataExchange
• Debugger
• Display
• Documentation
• Downstream
• EPEI
• FIFO_Analyzer
• FlowGrade
• ProductPlotter
• Remark
• ShowEventQueues
• StockPlotter
• UtilizationAndStock
• Work in Process (WIP)

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Check

Check
You can use the object Check to detect inconsistencies in your simulation model. If it detects any, it opens a Report that lists them.
Insert the Check tool into the Frame that contains your model, double-click it to open the dialog, and click Check Model.

Plant Simulation always implicitly runs the plausibility check, when you start a simulation run. If inconsistencies occur, Plant Simulation opens a Report
informing you about the inconsistencies it detected.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Check

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > DataExchange

DataExchange
You can use the object DataExchange to export or import data for all objects.
Be aware that all existing data in the Excel file, which you specified, will be overwritten during the export process.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 530 of 570

• Click Read Model Data into Table to import all relevant data of your simulation model into a table.
• Click Open Data Table to open the table Plant Simulation just filled.

• Enter a valid file name into the text box for storing data. Instead, you can also click next to the text box and select an Excel file in the dialog that
opens.
• Click the button Write Data to Excel File to export the contents of the table into the Excel worksheet which you designated.

• Click the button Read Data from Excel Worksheet to import the data from an Excel worksheet into an internal table.
• Click the button Open Imported Data Table to open the table which was filled by reading the Excel file. This way you can compare the data of both
tables, namely the table that contains the current settings of the object and the table that was just imported.
• Click the button Assign Imported data to Object to assign the data that was just imported from the Excel file to the objects.
The worksheet within the Excel file has to have the same name as the model itself. This is necessary to determine the correct worksheet for importing
the data.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > DataExchange

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Debugger

Debugger
You can use the object Debugger to stop the simulation run when the selected Inventories and Supermarkets have run dry. Open the dialog of the object,
double-clicking its icon.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 531 of 570

The dialog of the Debugger shows all Inventories and Supermarkets in your model. Activate the check box in the column Zero stock to observe the stock of
that object. As soon as the current number of products of one of the products reaches zero, the Debugger stops the simulation and generates a Report.

The Report shows which product has approached zero stock and reports all objects upstream of the object as well as their inventory or production order list
respectively.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Debugger

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Display

Display
You can use the object Display to show or hide the different types of connectors. Remember that a value stream mapping model can have these types of
connectors:
• Information Connector
• Kanban Connector
• Material Connector
• Rework Connector

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 532 of 570

By selecting or clearing the respective check box you can show or hide the respective type of connector. This is useful in your model contains a large
number of connectors, which overlay the Process objects and lead to a cluttered model.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Display

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Documentation

Documentation
You can use the object Documentation to document statistical values of your simulation model.
Open the dialog of the object, double-clicking its icon. Then, define the Excel file into which you want to export the model data. You can also add information
about the person for whom the simulation study is executed.

If you selected all check boxes, Plant Simulation creates several worksheets within the Excel file.
The first worksheet shows general data, including the Plant Simulation version and the library version.

The second worksheet contains the label of the Process objects and all statistical data of the Process objects.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 533 of 570

Another worksheet shows all statistical data of all Inventories.

If your simulation model contains objects of type Supermarket, Plant Simulation shows their statistical data on another Excel worksheet.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Documentation

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Downstream

Downstream
You can use the object Downstream to show the way of a product downstream in the value stream, starting at the Process object you select and ending at
the object Customer.
To open the dialog of the object, double-click its icon. On the tab Control you can enter or select the required settings.

• Drag a Process object over the icon of the object Downstream and drop it there. Instead, you can also click next to the text box Process object and
select an object in the dialog that opens.
• Select one of the products from the drop-down list which contains all products that are defined for the selected Process object.
• Click the button Mark Way of Product to show the flow of the products downstream to the object Customer highlighted in your model. By default, the
highlight color is red.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 534 of 570

• Click Remove Mark to show all objects and connectors in their original color. When you select a new product from the list, Plant Simulation also shows
the highlighted objects in their original color, before Plant Simulation highlights the way of the newly selected product.
• To only highlight the way from the starting object until the selected product changes its name, select Stop when product changes. Otherwise the way
downstream to the Customer object will be marked.
When you close the dialog, Plant Simulation shows all highlighted objects in their predefined color again.
If you do not like red for highlight color, you can select one of the predefined colors on tab Settings.

If you would like to define a color of your own to highlight the connectors, you can assign a color to the attribute HighlightColor:

MyDownstream.HighlightColor := makeRGBValue(255, 0, 0);

Compare the method makeRGBValue in the Plant Simulation Online Help.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Downstream

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > EPEI

EPEI
You can use the object EPEI to compute the EPEI (Every Part Every Interval) value. This value denotes how long it will take to produce one lot of
every product variant. The EPEI value is a rate of flexibility of a production process.
The EPEI value is calculated using this formula:

Double-click the icon of the object EPEI to open its dialog.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 535 of 570

To compute the value, click Calculate EPEI Value. Plant Simulation opens a Report after it finished calculating the value. The Report shows the name of
the Process object and the calculated EPEI value.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > EPEI

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FIFO_Analyzer

FIFO_Analyzer
You can use the object FIFO_Analyzer to show the occupancy of the FIFO objects used in your value stream model. Double-click the icon of the object
FIFO_Analyzer to open its dialog.

The dialog of the FIFO_Analyzer shows all objects of type FIFO_Analyzer in your model. Select the check box to the left of the name of the FIFO object to
observe this object during a simulation run. Use the check box Active to activate or to deactivate the FIFO_Analyzer. The FIFO_Analyzer does not collect
values when it is deactivated.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 536 of 570

The histogram shows the percentage of the simulation time during which the corresponding FIFO object was occupied by a certain number of Carriers.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FIFO_Analyzer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FIFO_Analyzer > Tab Statistics

Tab Statistics
The tab Statistics shows the statistical values of the observed FIFO objects.

It lists the minimum, the average, and the maximum occupancy of the observed FIFO objects.
The table is statics and will not be updated during the simulation run. To update the values, click the button Update.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FIFO_Analyzer > Tab Statistics

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FlowGrade

FlowGrade

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 537 of 570

You can use the object FlowGrade to compute and to show the flow grade between two objects, which you define. The flow grade is a key figure for
determining how inert a production is. High inventory on stations identifies barrages within the production flow. (Erlach: Wertstromdesign).
The flow grade (value-added time portion) shows to which extent the flow/stream principle (few interruptions and waiting times, low inventory) and the
reduction of waste on all levels of the value stream chain has already been realized. The value-added time portion establishes the direct connection to the
time span between placing the orders and the delivery of the finished products.
The flow grade (value-added time portion) is calculated as follows:

Value-adding time = processing time


Throughput time = (value-added time + transportation time + delay time)
Value-adding time portion = value-added time / throughput time

To open the dialog of the object, double-click its icon.


• Drag the object at which you would like to start your analysis to the text box Calculate from of the object FlowGrade and drop it there.
• Drag the object at which you would like to end your analysis to the text box Calculate to of the object FlowGrade and drop it there.
• To show the products which move between these two objects, click Read Products.
• Select a product from of the drop-down list Products.
• Select one of the variants of the throughput time for this product. This shows the route through the production line and enters the values on the right
hand side of the dialog.

The FlowGrade computes the value-adding time portion by summing up the individual processing times.
The waiting time results from the current inventory multiplied by the cycle time of the succeeding process.
The transportation time results from the times which the product spent on objects of type Transport, TransportExternal, and FIFO.
The throughput time is the sum of value-adding time plus waiting time plus transportation time.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 538 of 570

Click the button Show Chart to show the value-adding time, the transportation time, and the waiting time in a Chart.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > FlowGrade

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ProcessAnalyzer

ProcessAnalyzer
You can use the object ProcessAnalyzer to analyze the list of production orders of all Process objects in your value stream mapping model. This only
considers the current order list. The object determines the minimum quantity and the maximum quantity of a product of a production order for all products.
The ProcessAnalyzer also checks which object is the Supplier of the product and how many products are currently available. If the supplying object is a
Supermarket, the ProcessAnalyzer also checks if the reorder level for the product is high enough to make sure that there will be no problems when
reordering products.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 539 of 570

• Open the dialog of the object, double-clicking its icon.


• Click the button Analyze All Processes to start analyzing the processes.
Plant Simulation then opens a Report that shows the analysis of all Process objects.

In the example above the ProcessAnalyzer shows additional information about the reorder level below the data of the object Process_assembly. The
minimum order quantity is 100 and the maximum order quantity is 300 products. The reorder level is 75 products with 200 products being currently
available. The order quantity of the current processing order is 300 though. As only 200 products are available, the reorder level was not reached and no
products are ordered. The process cannot continue though because it needs 300 products, which are currently not available.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ProcessAnalyzer

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ProductPlotter

ProductPlotter
You can use the object ProductPlotter to plot and show the current stock of the selected product of all Inventories and Supermarkets in which the product is
defined.
Insert the ProductPlotter into your model. Open the dialog of the object, double-clicking its icon.

Select one of the products in the dialog that opens. The ProductPlotter shows the contents of all Inventories and Supermarkets for this product.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 540 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ProductPlotter

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Remark

Remark
You can use the object Remark to create any comment of your own. Plant Simulation shows this comment in the value stream mapping model. Double-click
the icon of the object Remark to open its dialog.
Enter any text you want to show and which you deem helpful for anybody working with the model. If you want to show several lines of text, you can force a
line break by entering a forward slash (/).

The result in your Frame looks like this:

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Remark

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ShowEventQueues

ShowEventQueues
You can use the object ShowEventQueues to activate the Display Panel of all Process objects. The object ShowEventQueues shows the current length and
the average length of the waiting queue of the production orders.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 541 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > ShowEventQueues

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > StockPlotter

StockPlotter
You can use the object StockPlotter to create a Chart that shows the current stock of the selected products of selected Inventories or Supermarkets.

Drag a Supermarket or Inventory onto the object StockPlotter and drop it there. Instead, you can also enter the name of a Supermarket or an Inventory in
the text box to the left of Add. Plant Simulation then shows the name of the Inventory or Supermarket in the list on the left side of the dialog. The list on the
right-hand side shows all products which are defined in the Supermarket or the Inventory. Double-click the column Selected to switch the value from False
to True. Plant Simulation only shows the stock values of selected products in the Chart. Click Show Plot to activate and to open the diagram.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > StockPlotter

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > UtilizationAndStock

UtilizationAndStock
You can use the object UtilizationAndStock to show the utilization of the Process objects of your model and the stock level between the Process objects.
To show the utilization of the process elements, the object UtilizationAndStock uses a state chart.
It shows the number of products in the Inventory or Supermarket between the Process objects as a dark violet bar.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 542 of 570

The object UtilizationAndStock shows the utilization bars in percent from 0 on upwards. It shows the number of products in the buffers as negative values
that are normalized to 100 percent. The number representing the 100 percent line is shown in the lower left corner of the chart.
The object UtilizationAndStock shows where the bottleneck of your production line is located. Typically, the bottleneck has a high utilization and the stock in
front of the process holds a high number of products.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > UtilizationAndStock

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Work in Process (WIP)

Work in Process (WIP)


You can use the object WIP to analyze the current number of products in Inventories and Supermarkets. Insert the object WIP into your model and double-
click its icon.
This opens a table which shows all defined products as the column index of the table. The rows show the material flow objects from your model. The cells
show how many products are stored in which object.

The table will not be updated during the simulation run. To update the values, double-click the object again.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Tools > Work in Process (WIP)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 543 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors

Value Stream Mapping Connectors


The Value Stream Connectors control the value stream mapping objects. They serve for identifying the predecessors and the successors in the value
stream simulation model. The value stream mapping objects exchange information or materials via the value stream connectors.
The toolbar Connectors looks like this:

It provides these Connector types:


• Connection Point
• Information Connector
• Kanban Connector
• Material Connector
• Rework Connector
Proceed as follows to establish a connection with a Connector:
• Click the icon of the type of Connector with which you want to establish a connection with the left mouse button.
• Then, click the object at which the Connector starts with the left mouse button.
• Next, click the object at which the Connector ends with the left mouse button.
You can insert any number of anchor points between the value stream mapping objects with the value stream mapping connectors.
• To cancel the connection process, click the right mouse button or press the Esc key.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Connection Point

Connection Point
A Connection Point bundles a number of connections and makes them continue at another location, comparable to a tunnel.
Insert a Connection Point at the location at which you would like to create it. Double-click the connection point and select an identifier in the dialog that
opens. Then, connect one or more objects with the connection point.
A connection point can only establish connections with connection points with the same identifier. Hold down Ctrl+T and press the respective arrow key to
rotate the object so that it shows the flow direction. This is just for visual purposes, for controlling the simulation the alignment of the object is not relevant.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Connection Point

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Information Connector

Information Connector
An Information Connector transmits production orders. In the real world an information connector represents information which is transmitted via computer or
fax.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Information Connector

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 544 of 570

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Kanban Connector

Kanban Connector
A Kanban Connector transmits production orders. It represents information which is transmitted via a Kanban system.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Kanban Connector

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Material Connector

Material Connector
A Material Connector connects the material flow objects in your model and visualizes the possible flow of materials.

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Material Connector

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Rework Connector

Rework Connector
A Rework Connector routes products, which have to be reworked, to the respective value stream mapping objects and then back into the production line.
Insert the Rework Connector as shown in the figure below:

Add-Ins Reference Help > Object Libraries > Value Stream Mapping > Value Stream Mapping Connectors > Rework Connector

Add-Ins Reference Help > Statistics Tools

Statistics Tools

Below you find this information about these topics:


• About Statistics Tools
• Determine Probability Distributions
• Determine Confidence Intervals
• Run a Regression Analysis
• Find the Parameters of Truncated Distributions
• Run an Analysis of Variance (ANOVA)
• Run an Independence Test
• Use the VariantsGenerator
• Take Sequential Samples

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 545 of 570

The statistics tools are only available in the Professional License.

Related Topic
Preparing Data for the Simulation with DataFit

Add-Ins Reference Help > Statistics Tools

Add-Ins Reference Help > Statistics Tools > About Statistics Tools

About Statistics Tools

The Statistics Tools support you in preparing data, in creating your model, and in analyzing the simulation results. The Statistics Tool Datafit serves for
parameterizing statistical distributions for random values, such as failure times, set-up and processing times, interarrival times, and for setting the number of
rejects.

To add the Statistical Tools, the Variants Generator, and the Sequential Sampler to the Class Library, click Manage Class Library > Libraries > Tools
> Statistical Tools on the Home ribbon tab.

• This adds the toolbar Statistical Tools to the Toolbox.

You find the Variants Generator and the Sequential Sampler on the tab Tools.

To get a quick introduction to the statistics tools:


• Click the Window ribbon tab, click Start Page > Getting Started > Example Models.
• Click Example Models > Small Examples.
• Select the category Tools and Optimization and the Topic Statistics Tools.

You can use the object DataFit to Determine Probability Distributions.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 546 of 570

• Filters samples and provides descriptive statistics.


• Estimates parameters of selected distributions.
• Runs goodness-of-fit tests.
• Shows results in histograms.

You can use the object Confidence to Determine Confidence Intervals by calculating an interval containing the mean value of a random number.

You can use the object Regression to Run a Regression Analysis.


• Calculates the correlation coefficient.
• Calculates the regression coefficient.
• Calculates the regression line or regression curve, respectively.
• Shows results in scatter diagrams.

You can use the object TruncDistribution to Find the Parameters of Truncated Distributions.
• Determines the mean value and the standard deviation for distributions with bounds.
• Calculates parameters for given bounds and mean values.
• Plots the density function of the truncated distribution.

You can use the object ANOVA to Run an Analysis of Variance (ANOVA).
• Tests whether grouped data have the same mean values.
• Graphically compares the confidence intervals of the groups.

You can use the object Independence to Run an Independence Test to test whether paired data are independent of each other.
You can load the sample data into the object DataFit, Confidence (confidence interval) or Regression (linear regression) using the object FileInterface or the
Windows clipboard. Plant Simulation shows information in the Console and outputs prompt messages about all actions of the objects.
Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Related Topic
Preparing Data for the Simulation with DataFit

Add-Ins Reference Help > Statistics Tools > About Statistics Tools

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions

Determine Probability Distributions

The object DataFit assists you in determining the parameters of certain specified distributions for observed data (samples) of a random variable, so
that the distribution matches the properties of the sample as adequately as possible. After manually scaling and translating the sample data, the parameters
of the known distributions are calculated using the maximum-likelihood method and the method of moments. A goodness-of-fit test decides for a given level
of significance, whether the distribution under consideration fits the sample data in an adequate manner.

The goodness-of-fit test is performed with the chi-square test ( -test), the Kolmogorov-Smirnov test (KS test) and the Anderson-Darling test (AD test). The
test is only invoked if the sample data is appropriate for the considered test. The KS test and the AD tests, for example, are executed only if the sample size
is less than 2000 and the sample belongs to a population of a continuous random variable.
Data fitting comprises the following steps:
• Loading or generating the sample data (table file DataFit.DataX).
• Filtering and sorting the data (table file DataFit.Sampledata).
• Choosing a hypothesis about the distribution of the sample.
• Choosing the level of significance, which is the probability for rejecting the hypothesis although it was true: Type I error).
• Running a goodness-of-fit test (result table file DataFit.Ranking).
If you want to, you can compare the observed and the expected frequencies, based on the selected distribution, in a diagram.
If no distribution fits the sample with the desired level of confidence, then you can model the sample with an empirical distribution. The corresponding
frequency table will be determined by DataFit.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 547 of 570

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data

Input Data
You must save the data, which you want to investigate, in the table file Samples. This data will then be imported to the tab Data Input of the object DataFit.
To delete the table file DataX and all calculated data, click the button Input data > Delete. To enter sample data from any Plant Simulation table file, drag
the table file onto the object DataFit and drop it there.

The table file Samples of the model DataFitFeatures with some samples
This opens the dialog Data Source:

Load a sample with drag and drop


The drop-down list contains all columns of the table of data types real, time, or integer. The leftmost number is the number of the column.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data > Recommended Test Data

Recommended Test Data

For testing purposes generate a sample of 100 Erlang-distributed numbers with the Plant Simulation parameter µ = 3 (mean) and σ = 3 (standard
deviation). This distribution is also an exponential distribution with β = 3 and a Weibull- and Gamma distribution with the parameter α = 1 and β = 3.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data > Recommended Test Data

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data > Loading Data from a File

Loading Data from a File


To load sample data from the file sample.dat, click the button Data from file > Load. You can change the name of the file in the text box Data file. The
object RollDice in the Class Library generates the corresponding file.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 548 of 570

DataFit, tab Input Data


The loaded data of the sample is contained in the table file DataX. You can open or close it by clicking the button Open/Close. You can only start filtering
data on the tab Data Filter if you did load data. If you select discrete on the drop-down list Type of data, all numbers of the sample are rounded to integer
values.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Input Data > Loading Data from a File

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Data Filter

Data Filter
You can change the bounds of the sample by entering different values into the text boxes on the tab Filter Data.

DataFit, Filter Data


The table file Sampledata contains the filtered and sorted data of the sample. You can open it by clicking the button Sorted data > Open.
To start filtering the data, click Apply. Each new start of the data filter uses the original data of the sample contained in the table DataX. The filtered data of
the previous run of the filter will be discarded. The selected parameters, on the other hand, (lower and upper bounds, zoom factor and offset) are
available for the next run of the filter.
To eliminate outliers from the sample, you can define lower and upper bounds. Only the sample data between these bounds is transferred to the table file
Sampledata. Note that you have to enter both bounds.
Then, the data is shifted by the value of DistrFit.Offset and scaled with the factor DataFit.Zoomfactor. If X is a value of DataX and Y is a value of
Sampledata, then the equation Y = Zoomfactor * (X + Offset) holds true.
The effects of these transformations on the descriptive statistics, such as minimum, maximum, mean value, standard deviation, of the filtered sample are
shown in the table file StatData. You can open this table by clicking the button Descriptive statistics. How you can use the transformed distributions in
simulation models is explained below.
DataFit automatically selects the data type of the table file Sampledata according to the setting of the drop-down list Type of data on the tab Data Input.
Selecting discrete rounds the sample data to an integer value and then changes the data type of the corresponding table files.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Data Filter

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 549 of 570

Hypotheses about Suitable Distributions


The table file DataFit.StatData contains important statistical parameters of the sample, making it possible to recognize elementary properties of the sample
(method DataFit.computeStatDescript). The analysis of measures of shape, such as the variance coefficients, yields statistical hints about the type of the
distribution.
The data can be adapted using certain filters. Suppose that you want to use a Beta distribution, then the values of the sample must be transformed into the
interval (0,1).

The table file StatData with all statistical parameters

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Minimum and Maximum

Minimum and Maximum


To examine the range of the sample, the minimum and the maximum should be known. A characteristic value of a sample is Range = Maximum - Minimum.
From previous experience the standard deviation is approximately equal to Range/4.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Minimum and Maximum

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Mode

Mode
The mode of a sample from a discrete random variable is the most frequently used value. In general, the mode is not uniquely determined. The explanation
of this notion for a sample of a continuous distribution is difficult. The practical meaning—especially in case of non-uniqueness—is small.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Mode

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Mean and Variance

Mean and Variance

Using the filtered data of the sample in the table file Sampledata the mean value and the variance

are calculated.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 550 of 570

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Mean and Variance

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Median and Quartiles

Median and Quartiles

When determining these parameters, it is important that the values of the sample contained in Sampledata are sorted: . The
calculation of the quartile is given in the following table. [a,b] = (a + b)/2 designates the arithmetical mean of a and b.

Definitions of the quartiles


The second quartile is also called median or middle quartile. The first and the third quartile are also known as the lower and upper quartile, respectively.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Median and Quartiles

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Skewness

Skewness
A typical parameter is the skewness coefficient, which measures the lack of symmetry of the considered distribution of a random variable X. The skewness

coefficient is defined by . A symmetric distribution has .

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Skewness

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Coefficient of Variation

Coefficient of Variation

An important measure of shape is this parameter defined by .


Suppose that , then the exponential distribution with a suitable parameter ß can fit the sample. cv <1 implies that the sample can fit with a Gamma and
the Weibull distribution with α > 1. For cv > 1 the Gamma and the Weibull distribution with α < 1 can be used.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Coefficient of Variation

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Kurtosis

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 551 of 570

Kurtosis

The set of values falling long away from the mean value are measured by this parameter. It is defined by . A standard normal
distributed random variable has a kurtosis coefficient equal to 0.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Hypotheses about Suitable Distributions > Kurtosis

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test

Goodness-of-Fit Test
For a given level of significance DataFit checks whether a hypothesis about the distribution of a random variable X under consideration is true or not. The
random sample is determined by X. Suppose that the hypothesis is true, then the test rejects the hypothesis with a probability α. This probability
α is called level of significance. You can enter it on the tab Fit. Frequently used values for α are 0.1, 0.05 or 0.01. The value (1-α) is therefore the
probability for recognizing the true hypothesis.

The setting Number of classes only applies to the test. The analyzed range, within which the values of the sample are located, are split into a number of
intervals (classes) of the same length, which you enter. The classes for which the frequencies to be expected are less than 5 are combined. The frequency
to be expected results from the number of sample elements and the probability that a random variable of the selected and parameterized distribution are
located within the interval (class). The program always executes this class adjustment as the used methods only work correctly under these circumstances.
You can open a histogram by clicking the Show button.

The settings for the goodness-of-fit test


DataFit computes the parameters of the following distribution and performs the goodness-of-fit test. The string in parenthesis shows the name of the
distribution in Plant Simulation.
Discrete Distributions
• Binomial distribution (Binomial)
• Geometric distribution (Geom)
• Poisson-distribution (Poisson)
Continuous Distributions
• Beta distribution (Beta)
• Cauchy distribution (not contained in the drop-down list)
• Erlang-distribution (Erlang)
• Exponential distribution (Negexp)
• Frechet distribution (not contained in the drop-down list)
• Gamma distribution (Gamma)
• Gumbel distribution (not contained in the drop-down list)
• Laplace distribution (not contained in the drop-down list)
• Logistic distribution (not contained in the drop-down list)
• LogLogistic distribution (not contained in the drop-down list)
• Log-Normal distribution (Lognorm)
• Normal distribution (Normal)
• Paralogistic distribution (not contained in the drop-down list)
• Pareto distribution (not contained in the drop-down list)
• Triangular distribution (Triangle)
• Uniform distribution (Uniform)
• Weibull-distribution (Weibull)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 552 of 570

Click Distributions > Select to opens this dialog and select the distributions. Hold down Shift to select more than one distribution.

DataFit runs three tests: The Chi-square test ( -test), the Kolmogorov-Smirnov test (KS test) and the Anderson-Darling test (AD test).

Selecting the distribution


Using the data of the sample all tests compute a test function, the so-called test statistic. The level of significance yields a critical value α. The hypothesis is
accepted if the test statistic is less than the critical value.
Click the button FIT to start rating the distribution parameters and the following parameter tests for the selected distribution types. The Console shows
information about each and every action of the program.
To show the results of the calculations, click the button Results > Open on the tab Evaluation.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The -Test

The -Test

The -test needs samples with at least 40 values with . The test consists of the following steps:

1. The values of the sample are partitioned into k intervals of the same length, the so-called classes: .
Note that the lower bound of the interval belongs to it and the upper bound does not. The intervals cover the range between the minimum and maximum.
You set the number k of classes in the variable NumClasses. The number of classes for a discrete distribution is equal to the number of observed values
in the sample.
2. By the maximum-likelihood method the parameters of the distribution are calculated.

3. Under the assumption that the hypothesis (the selected distribution fits the sample data) is true the probabilities of the event that a value lies in the i-th
class (the interval ) are calculated.
4. The numbers of values of the sample lying in the i-th class are calculated.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 553 of 570

Part of the frequency table


The table file stores the bounds of the intervals together with the observed and with the expected frequencies.
Under the assumption of the hypothesis, there are no essential differences between the observed and expected frequencies. These differences are
measured by the test statistic. Therefore, the next steps consist of:
5. Calculating the test statistic of the sample .
6. Calculating the critical value by using the level of significance.
7. Accepting or rejecting the hypothesis by comparing the test statistic and the critical value.

Intermediate results of the -test in the Report


The columns Chi statistic, Chi value and Result Chi in the table Ranking contain the test function, the critical value, and the test result of the tests.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The -Test

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The Kolmogorov-Smirnow Test

The Kolmogorov-Smirnow Test


The KS test and the AD test are based on the comparison of the empirical distribution function derived from the sample and the distribution function of the
selected distribution. The selected distribution is considered with the parameters calculated by the maximum-likelihood estimation (MLE). Both tests process
samples containing 2000 values at most.
The test function, the critical value and the result of the KS test are contained in columns 5, 6 and 7 of the table file Ranking, respectively.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 554 of 570

Intermediate results of the KS test in the Report

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The Kolmogorov-Smirnow Test

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The Anderson-Darling Test

The Anderson-Darling Test


The KS test and the AD test are based on the comparison of the empirical distribution function derived from the sample and the distribution function of the
selected distribution. The selected distribution is considered with the parameters, which were calculated by the maximum-likelihood estimation. Both tests
process samples containing 2000 values at most. The AD test is appropriate for samples with a small size n.

Intermediate results of the AD test in the Report


The test function, the critical value and the result of the AD test are contained in columns 8, 9 and 10 of the table file Ranking, respectively.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Goodness-of-Fit Test > The Anderson-Darling Test

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Evaluating the Test Results

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 555 of 570

Evaluating the Test Results


The result table file Ranking contains the columns Chi statistic, KS statistic and AD statistic with the values of the test function. The critical values are
shown in the columns Chi value, KS value and AD value resulting from the level of significance α. The result of the single test (accept the hypothesis or
not) is stored in an additional column of the table file Ranking.
The distributions can be sorted according to the quality of fitting, measured by the test statistic. You can select the test to be performed from the drop-down
list Sort according to.

Evaluation of the results of the goodness-of-fit test


You can then use these parameters in Plant Simulation models. If you want a certain value to be distributed by an Erlang-distribution, you can use the
parameters in columns 11 and 12. In a method, you can enter z_erlang(Stream, Parameter1, Parameter2). If, on the other hand, the
zoomfactor is not 1 and the offset is not 0, you would type in

z_erlang(Stream, Parameter1, Parameter2) / Zoomfactor - Offset

You find the explanations of the estimated parameters at the end of the table file ranking:

The estimated parameters for the distributions


Click Messages to open a table file containing information about the numerical calculations. If you try to fit a continuous distribution to a discrete sample,
DataFit will tell you that this is not possible.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 556 of 570

Information and error messages of the data fitting


If no distribution fits the sample with the desired level of confidence, then you can model the sample with a empirical distribution. DataFit presents the
corresponding frequency table.
The button Frequency table opens a table file with the intervals defined by the number of classes and the bounds of the data filter together with the
observed frequencies.

Empirical frequency table of a sample


Click Evaluation > Intermediate results to display histograms for all investigated distributions types with the desired frequencies of the parameterized
distribution and the respective observed frequencies in the sample.

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Evaluating the Test Results

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Evaluating the Test Results > Using the Object DataFit during the Simulation

Using the Object DataFit during the Simulation

Suppose you want to estimate the parameters α and β of the gamma distribution for a sample containing in the second column of the table file Samples.

Example: -- SimTalk 2.0 notation


DataFit.DataX.delete
DataFit.DataX.insertList(1,1,Samples.copy({4,1}..{4,*}))
DataFit.Distributions.initialize({3,1}..{3,12}, false)
DataFit.Distributions[3,"Gamma"] := true
DataFit.FilterRequired := false
DataFit.filterData
DataFit.fit
print "alpha = ", DataFit.Ranking[10,1]
print "beta = ", DataFit.Ranking[11,1]

Example: -- SimTalk 1.0 notation


is

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 557 of 570

do
DataFit.DataX.delete;
DataFit.DataX.insertList(1,1,Samples.copy({4,1}..{4,*}));
DataFit.Distributions.initialize({3,1}..{3,12}, false);
DataFit.Distributions[3,"Gamma"] := true;
DataFit.FilterRequired := false;
DataFit.filterData;
DataFit.fit;
print "alpha = ", DataFit.Ranking[10,1];
print "beta = ", DataFit.Ranking[11,1];
end;

Add-Ins Reference Help > Statistics Tools > Determine Probability Distributions > Evaluating the Test Results > Using the Object DataFit during the Simulation

Add-Ins Reference Help > Statistics Tools > Determine Confidence Intervals

Determine Confidence Intervals

For determining confidence intervals we provide the object Confidence .


Calculating the confidence intervals presumes that the sample is provided by a normally distributed random number. This presumption for evaluating
simulation results is met in most cases. Looking at a histogram enables you to visually evaluate the symmetry of the sample, compare Skewness.
You can input data via the object FileInterface or by pasting them from the Windows clipboard. You can also drag a table file onto the statistical object
Confidence and select the column containing the input data.

Data input and Histogram of confidence intervals


To compute the confidence interval and to show the results, click the button Start.

Confidence intervals with unknown variance


The confidence level is the probability that the true value is really contained within the determined interval.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 558 of 570

If the standard deviation of the random number under consideration is known, select the check box Known standard deviation and type in the value of the
standard deviation.
If the standard deviation of the random number is unknown, the dialog item for the standard deviation contains the standard deviation of the sample.
When calculating the confidence intervals, we assume that all observations are independent of each other. The autocorrelated samples have a bigger
confidence interval. The object computes a corresponding interval.
During the simulation, you can determine a confidence interval for data contained in the second column of the table file myData with these statements.

Example: -- SimTalk 2.0 notation


var StatObj,TabObj: object, a,b: real
StatObj := Confidence
TabObj := StatObj.DataX
TabObj.delete
TabObj.insertList(1,1, myData.copy({2,1}..{2,*}))
StatObj.alpha := 0.1 -- confidence level 90 percent
StatObj.knownVariance := false
StatObj.compute
a := round(StatObj.mean - StatObj.width,2)
b := round(StatObj.mean + StatObj.width,2)
print "Confidence intervals [",a," , ",b,"]"

Example: -- SimTalk 1.0 notation


is
StatObj,TabObj:object;a,b:real;
do
StatObj := Confidence;
TabObj := StatObj.DataX;
TabObj.delete;
TabObj.insertList(1,1, myData.copy({2,1}..{2,*}));
StatObj.alpha := 0.1; -- confidence level 90 percent
StatObj.knownVariance := false;
StatObj.compute;
a := round(StatObj.mean - StatObj.width,2);
b := round(StatObj.mean + StatObj.width,2);
print "Confidence intervals [",a," , ",b,"]";
end;

As we only have a single sample for evaluation and we do not know further properties of the random number, we usually validate the confidence intervals by
using bootstrapping. For this you select so called bootstrap samples from the given sample. This way you can simulate typical properties, such as variations
of the mean value. The bootstrapping method does not pose additional assumptions to the distribution of the random variable. This method is called re-
sampling. To do so, select Tools > Resampling.

When many observations of the mean value exist, the interval, within which the true mean value with the given confidence interval is located, can be
calculated.

Add-Ins Reference Help > Statistics Tools > Determine Confidence Intervals

Add-Ins Reference Help > Statistics Tools > Run a Regression Analysis

Run a Regression Analysis

Using a regression analysis you can describe the correlation between the input values and a single output value of a simulation study with a mathematical
formula. This way you can predict an output value for a large number of parameter combinations of input values. If you want to study how a single input
value determines an output value, start with several observations of value pairs of input and output values. You can perform a linear, a polynomial or

multiple regression analysis. The icon of the object shows a different icon after each calculation if you last ran a linear , a polynomial or a

multiple regression.

The object Regression determines a regression line or a regression polynomial. It computes the correlation and the regression coefficient. A sample
consists of ordered pairs with j = 1,..., n, where n is the sample size.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 559 of 570

You can input data via the object FileInterface or by pasting it from the Windows clipboard. To import data from a table which you inserted into a Frame,
drag the table onto the Wizard and drop it there. This opens this dialog.

Click the button Read XY to load a sample for a linear or a polynomial regression analysis. With the drop-down lists you can set the columns for the input
values (Column X) and the output values (Column Y). To run a multiple regression analysis, load the entire contents of a table. This table has to contain the
output values in the first column. The following columns contain input values.

Descriptive statistics
Selecting the appropriate degree of the polynomial is a trade off between minimizing the error rate and the ability of a regression analysis to filter out the
data noise.

Polynomial regression analysis


The RegressionAnalysis recommends the degree of the regression curve, based on the Akaike information criterion (AIC). The error between the data of
the sample and the data of the regression curve is measured by the mean squared error (MSE). Increasing the degree leads to a decreasing error. A great
degree of the regression curve allows to also model data fluctuations resulting from the influence of random model components and modeling errors.
Complex regression formulas with a large number of parameters make it difficult to recognize the essential correlations between the input values and the
output values. On the other hand complex correlations of the input and the output values also require complex regression formulas.
The RegressionAnalysis creates the regression polynomials for all degrees between 1 and 10 and selects the best polynomial according to the Akaike
information criterion. The results of these calculations are written to a table, which you can open by selecting Tools > Akaike Information Criterion
(AIC).

To show a scatter diagram for the data of the sample , click Show. It displays the linear association between the X and the Y values.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 560 of 570

The scatter diagram of a sample with the regression line

Polynomial regression analysis


n
If the data under consideration cannot be modeled with a linear function, run a polynomial regression analysis. The data is fitted by a polynomial y = a x
n
+... + a x + a . You can type in the degree of the polynomial n > 0 into the text box.
1 0

Output of the resulting polynomial y = 0.62 x2 - 4.26 x + 26.18

The scatter diagram of a sample with regression polynomial of degree 2


If you want to analyze the correlation between several input values and a single output value, you will use a multiple regression analysis. An item of a
sample consists of an observation of an output value y and the corresponding input values x , x , x ....
1 2 3
When a simulation study has four input values x , x , x and x , the wizard computes the coefficient ß , ß , ß , ß and ß , so that the properties of the
1 2 3 4 0 1 2 3 4

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 561 of 570

sample match the formula y = ß + ß x + ß x + ß x + ß x as good as possible. The magnitude of the calculated coefficient ßj and its algebraic sign
0 1 1 2 2 3 3 4 4
allow to draw conclusions from the influence of the corresponding input value x onto the output value y. This type of regression analysis is thus called
j
factorial regression.

Data for a multiple regression analysis


For a multiple regression analysis all data has to be provided in a table. The first column always contains the observations of the output value.
Just as in a polynomial regression analysis Akaikes information criterion (AIC) gives a recommendation as to which regression polynomial best describes
the properties of the sample.
It may happen that regression formulas with fewer terms better describe the results of a simulation study as the regression formula with all variables. For this
reason for a regression analysis with three input values regression formulas such as y = ß + ß x + ß x will also be analyzed. This regression formula
0 1 1 3 3
eliminates the influence of the input value x which possibly strongly depends on random model components.
2

Result polynomial ß + ß x + ß x + ß x + ß x
0 1 1 2 2 3 3 4 4
To compute the output value with a regression formula in a table, select the command Tools > Calculator. Enter the input values into the white-colored cells
and click Apply.

Calculation of the output value for different sets of input values


For additional information consult: Kenneth P. Burnham, David R. Anderson: Model Selection and Inference: A Practical Information-Theoretic Approach,
1998 Springer-Verlag, New York Inc.

Add-Ins Reference Help > Statistics Tools > Run a Regression Analysis

Add-Ins Reference Help > Statistics Tools > Find the Parameters of Truncated Distributions

Find the Parameters of Truncated Distributions

For modeling random failures, you will often use probability distributions with lower and upper bounds. We do know these bounds and the mean value of the
failures from experience. We want to find the distribution parameters, guaranteeing that the desired mean value occurs during the simulation.
This poses these two problems:
• A truncated distribution has other mean values and another standard deviation than the distribution without bounds.
To generate a random number with bounds, Plant Simulation generates a number of the unlimited distribution and checks whether this random number
lies between the bounds. You can enter the maximum number of the taken samples by selecting File > Preferences/Model Settings > Simulation in the
main program window.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 562 of 570

Setting the maximum number of samples for generating truncated distributions


• Since the simulation is interrupted when this number of trials is reached, it is advisable to know the probability for the interval between the bounds before
we start the simulation. If the probability P is located near 1, the mean value and the standard deviation of the truncated distribution will only slightly differ
from the respective values of the distribution without bounds.

The object TruncDistribution computes the (real) mean value and the standard deviation for a distribution with an upper and a lower bound.
You can compare the mean value of the original (dotted line) and of the truncated distribution (continuous line) of the density function in a diagram.

The object TruncDistribution for the analysis of a truncated distribution


The object TruncDistribution assists you in solving the following task:
Given are a continuous distribution—of type Erlang, Gamma, Lognorm, Negexp, Normal, Weibull—, the lower bound a and the upper bound b, a shape
parameter—for instance, α or σ—of the distribution under consideration and the desired (real) mean value of the truncated distribution. You want to find the
remaining scaling parameter (for instance, β or µ) of the distribution, so that the truncated distribution has the desired mean value. Furthermore, you want
to know the probability P([a,b]) for the unlimited distribution P using the determined parameter.
To display all results in the dialog of the object, press the button Start. Note that it my happen that the desired mean value cannot be reached for some
selected distributions.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 563 of 570

Determination of the parameters of a truncated distribution


You can also have the simulation compute the parameters during the simulation run and then use the determined parameters in the Plant Simulation model:

Example: -- SimTalk 2.0 notation


var StatObj := TruncDistribution
var distrType := "Normal"
StatObj.distribution := distrType

var lowerBd := 240; -- lower bound 4 minutes


StatObj.a := lowerBd

var upperBd := 600; -- upper bound 10 minutes


StatObj.b := upperBd

StatObj.MuDesired := 360; -- desired mean value of 6 minutes

var sigma := 60; -- standard deviation of 1 minute


StatObj.ShapeParam := sigma

StatObj.DetermParam; -- calculation
var mu := StatObj.DetParam

singleProc.procTime.setParam(distrType, mu, sigma, lowerBd, upperBd);

Example: -- SimTalk 1.0 notation


local StatObj := TruncDistribution;
local distrType := "Normal";
StatObj.distribution := distrType;

local lowerBd := 240; -- lower bound 4 minutes


StatObj.a := lowerBd;

local upperBd := 600; -- upper bound 10 minutes


StatObj.b := upperBd;

StatObj.MuDesired := 360; -- desired mean value of 6 minutes

local sigma := 60; -- standard deviation of 1 minute


StatObj.ShapeParam := sigma;

StatObj.DetermParam; -- calculation
local mu := StatObj.DetParam;

singleProc.procTime.setParam(distrType, mu, sigma, lowerBd, upperBd);

You may ask yourself why the triangular distribution is not considered. Firstly, you can compute it yourself, secondly in some cases the desired mean
value can never be reached. The lower and upper bounds are a, b, respectively. We want to determine the remaining parameter c such that a desired mean
value m is reached. Naturally c can be calculated by the known formula . If we set a = 0, b =10 and µ = 3 we receive an impossible value for
c, which does not lie between the bounds a and b.

Add-Ins Reference Help > Statistics Tools > Find the Parameters of Truncated Distributions

Add-Ins Reference Help > Statistics Tools > Run an Analysis of Variance (ANOVA)

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 564 of 570

Run an Analysis of Variance (ANOVA)

The application object ANOVA (ANalysis Of VAriance) performs a one way analysis of variance.

Given are k groups of data. We want to investigate the hypothesis whether the k mean values are equal. The j-th group contains items
. The j-th group must be contained in the j-th row of the table DataX. To insert the data, drag the table onto the object ANOVA and drop it
there.

Input data
Our sample young men of different religious denominations are examined. The measured value is the age, at which a man leaves home. We are interested
in the hypothesis that this age depends on the religious denomination, contained in: R.D. Mason, D.A. Lind, W.G. Marchal: Statistics An Introduction, 1988,
p.355 ff. Harcourt Brace Jovanovich, Publishers

Let . The grand mean (of all values) is µ. The total sum of mean squares is .

This sum is partitioned into two addend TSS = SST + SSE, where is the sum of squares between the mean values of the groups

(sum of squares of treatments; traditionally, a group develops by distinct treatments of individuals of a whole population) and is
the sum of squares in a group (error sum of squares). SSE measures the variability within the groups. SST measures the variability between the groups.

Dialog of the object ANOVA

The test determines at the given level of significance whether the hypothesis = =...= holds true. The test executes these steps:

1. It determines the test statistic: F statistic


2. It computes the critical value F value using the level of significance.
3. It accepts the hypothesis if F statistic < F value.

— Degree of freedom Sum of squares Mean squares

between groups k-1 SST

within groups n-k SSE

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 565 of 570

total n-1 TSS

Explanation of the results table of ANOVA

The table file containing the results for the test data
You can compare the confidence intervals with the same level of significance of all groups in a diagram. An assumption about the decision of the test can be
found. In the following diagram the red bars on top show the confidence intervals of the four groups. Since the intersection of these confidence intervals is
empty, the hypothesis that the mean values are equal will certainly be rejected.

Comparison of the confidence intervals of the groups


The hypothesis is rejected. With a probability of 95 percent we must thus assume that a connection between the age, at which a man leaves home, and the
religious denomination exists. Click Open to open the input data table. Delete the group of the catholic men. Now the hypothesis that the mean values are
equal, is accepted with a probability of 95 percent (confidence level = 5 percent).

Add-Ins Reference Help > Statistics Tools > Run an Analysis of Variance (ANOVA)

Add-Ins Reference Help > Statistics Tools > Run an Independence Test

Run an Independence Test

With the object Independence you can investigate the hypothesis whether two random numbers are independent of each other or not. The test is based on
the Chi-square test. The frequencies of two independent random numbers are compared with the frequencies of the observed data of the sample under
consideration.
A sample consists of two groups of data, which must be contained in the table DataX. To insert the data into the object Independence, you can:
1. Drag a table object onto the object Independence and drop it there.
2. Use the object FileInterface.
3. Paste the data from the Windows clipboard.
Be sure to keep the decimal separator in mind. Since the test for continuous and discrete data is different, you must specify the Type of data on the tab
Input of data.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 566 of 570

Input data for the Chi-square independence test


The data in the first column are the x-values, the values in the second column are the y-values. Continuous data is divided into classes. Type in the number
of classes for the x-values and the y-values on the tab Test for Continuous Data. After selecting these settings and clicking Apply, you can open the
contingency table and the corresponding scatter diagram.
The following figures show a sample of two independent uniformly distributed samples. The black numbers on the right hand side and on the bottom of the
contingency table are the observed frequencies of the classes of the x-values and y-values. The blue numbers are the observed frequencies at which these
classes cross. The hypothesis about the independence is true, when the observed crossing frequencies are approximately equal to the expected
2
frequencies which result from the (black) frequencies of the classes. In this very simple example all 10 expected frequencies are 5*5/50 = 0.5.

To check the hypothesis, whether the two samples belong to independent random numbers, you have to type in the confidence level of the test on the tab
Test for Continuous Data. Click Start. The tab then shows the result of the test.

Dialog window of the object Independence

Add-Ins Reference Help > Statistics Tools > Run an Independence Test

Add-Ins Reference Help > Statistics Tools > Use the VariantsGenerator

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 567 of 570

Use the VariantsGenerator


The VariantsGenerator wizard creates frequency tables for attribute variants, which objects of type Source with the setting Attributes > MU selection >
Random utilize. You can enter the Source objects and the mobile object into the VariantsGenerator, by dragging them onto the VariantsGenerator and by
dropping them onto it. The VariantsGenerator computes the frequency table and enters it into all Sources. The mobile objects (MUs), which the Source
produces, have user-defined attributes of data type string. Each attribute can take on a limited number of values, the frequencies of which are given. For
each individual attribute the sum of the frequencies of all values is 1. Select an attribute on the tab Attributes and double-click the table below. Enter the
attribute values the desired frequencies into the table, which opens.

When all combinations of attribute values of all attributes are permitted, the probability of an attribute combination is the product of the frequencies of the
individual attribute values. In practice some attribute combinations might not be permitted. To exclude attribute combinations from being used, click Show on
the tab Constraints and select the combinations in the table Variants. Click Start on the tab Constraints to compute the frequencies. Depending on the
size of the problem this might take some time. As the calculations utilize random components, the program produces different results, when you run the
calculation several times. To check how well the constraints are met, click Validation of desired frequencies > Show on the tab Constraints to open the
table Validation.

Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Add-Ins Reference Help > Statistics Tools > Use the VariantsGenerator

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 568 of 570

Take Sequential Samples

The SequentialSampler wizard starts a simulation study, which consists of a single, non-terminating simulation run. It analyzes a single target value. Insert
the SequentialSampler into the root frame of the simulation model. It does not change any model parameters.
The SequentialSampler determines a confidence interval of a target value, provided the confidence level and the width of the confidence interval are given.
The SequentialSampler automatically determines the required number of observations of the target value and terminates the simulation, when the
confidence interval has the desired width. The target value is recorded at the end of certain time intervals, the so-called batches. At the beginning of these
batches the statistics of the target value is reset. You can also reset the statistics of the target object in a user-defined method.
These books and articles provide an easy-to-read introduction to sequential sampling:
Bratley, P., Fox; B.L. Schrage, L.E.: A Guide to Simulation, Springer 1987, page 81
Robinson, S.: Simulation. The Practice of Model Development and Use. John Wiley & Sons, Ltd. England 2004, pages 174-175
Compare the sample models: Click the Window ribbon tab, click Start Page > Getting Started > Example Models, and click Small Examples. Then,
select the respective Category, the Topic, and the Example in the dialog Examples Collection and click Open Model.

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Settings

Tab Settings
The tab Settings provides these dialog items:

Target value

Enter the target value, i.e., the name of a material flow object and the name of a method. The data type of the target value of the simulation study has to
be convertible into the type real (such as length, but not string or boolean). The data type time is displayed in the time format.
Note that there is only one target value, which the object evaluates several times during a single simulation run.
You can also define the target value by dragging an object onto the wizard and dropping it there and by then selecting one of the statistics methods of the
dropped object.

Method for resetting statistics

When you select this check box, the user-defined method prepareBatch resets the statistics of the target value and prepares the model for the next batch.
Click Edit and enter your source code. You will typically enter an instruction such as Drain.initStat;.

Confidence level

Enter the confidence level. The unknown expected value of the random number of the target value is contained in the confidence interval with the
probability of the confidence level. We want to determine the confidence interval for a given precision and confidence level, using as few observations as
possible during a simulation run. Enter a value greater than 50 and less than 100.

Half-width of the confidence interval

Enter the half-width of the confidence level. The half-width of the confidence interval is measured like the Target value.

Warm-up time

Enter the warm-up time. After this time span has passed, the simulation model should be in a steady state.

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 569 of 570

Batch duration

Enter the batch duration. The target value is measured at the end of this time span. It is an observation for the calculation of the confidence interval.

Minimum number of observations

Enter the minimum number of observations. Plant Simulation simulates this number of batches at least. This number must be greater than 1.

Maximum number of observations

Enter the maximum number of observations. Plant Simulation terminates the simulation is after this number of batches. Enter -1 to only terminate the
simulation when the desired width is reached.

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Settings

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Control

Tab Control
The tab Control provides these dialog items:

Click Start to start the simulation run. Click Reset to reset the wizard and to thus delete all results. Resetting the wizard also resets the EventController.
During the simulation all results are updated after each batch.
Plant Simulation stores all observations in the table file Observations, which you can open by clicking Show.
The statistical output analysis is contained in the Results table. Click Show to access the exact output values of the statistical analysis.

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Control

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Results

Tab Results
The tab Results provides these dialog items:

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018
Add-Ins Reference Help Page 570 of 570

The most important result is the number of evaluated batches. All results contained in the table Results are also displayed on this tab. In addition, the
confidence interval is shown as an interval.

Add-Ins Reference Help > Statistics Tools > Take Sequential Samples > Tab Results

file:///C:/Users/jacie/AppData/Local/Temp/~hhE989.htm 27/11/2018

Potrebbero piacerti anche