Type: BCS.Sym3.IEquipmentManager

Represents the equipment manager

Properties


BarcodeScanners

  • Description: Gets a list of all existing barcode scanners
  • Type: List`1
  • Access: Read

BaseProject

  • Description: Gets the project
  • Type: IBaseProject
  • Access: Read

BasicShapes

  • Description: Gets a list of all existing basic shapes
  • Type: List`1
  • Access: Read

CamPushers

  • Description: Gets a list of all existing cam pushers
  • Type: List`1
  • Access: Read

Chutes

  • Description: Gets a list of all existing chutes
  • Type: List`1
  • Access: Read

ConveyorControllers

  • Description: Gets a list of all existing Conveyor Controllers
  • Type: List`1
  • Access: Read

Conveyors

  • Description: Gets a list of all existing conveyors
  • Type: List`1
  • Access: Read

Count

  • Description: Get number of objects
  • Type: Int32
  • Access: Read

CrossBeltSorters

  • Description: Gets a list of all existing cross belt sorters
  • Type: List`1
  • Access: Read

DisplayTypeName

  • Description: Gets the display name of the type name of the object. It returns the english display name of the type name.
  • Type: String
  • Access: Read

Diverges

  • Description: Gets a list of all existing diverges
  • Type: List`1
  • Access: Read

Diverters

  • Description: Gets a list of all existing diverters
  • Type: List`1
  • Access: Read

EStops

  • Description: Gets a list of all existing E-Stops
  • Type: List`1
  • Access: Read

FreeRollerConveyors

  • Description: Gets a list of all existing free roller conveyors
  • Type: List`1
  • Access: Read

Grids

  • Description: Gets a list of all existing grids
  • Type: List`1
  • Access: Read

HighSpeedDiverters

  • Description: Gets a list of all existing high speed diverters
  • Type: List`1
  • Access: Read

Id

  • Description: Gets the globally unique identifier (GUID) id of the object. This unique identifier is generated once at the object creation. This id will be kept unique for the entire life of the object, event after saving/loading the project.
  • Type: Guid
  • Access: Read and Write
  • Example:
This example shows how to get the id of an object in a string format. The following script will output a string like 'b3122ae0-dcf7-43b6-b17c-5381afaca5cb'

            strid = Project.Colors.Get("myColor").Id.ToString();
            print(strid)
            

IsLoading

  • Description: Get / Set loading flag while internaly creating / removing components
  • Type: Boolean
  • Access: Read and Write

IsMultiSelection

  • Description: Get / Set selection flag while selecting multiple equipments
  • Type: Boolean
  • Access: Read and Write

IsPasting

  • Description: Get / Set pasting flag while pasting components
  • Type: Boolean
  • Access: Read and Write

Labels

  • Description: Gets a list of all existing labels
  • Type: List`1
  • Access: Read

Merges

  • Description: Gets a list of all existing merge equipment
  • Type: List`1
  • Access: Read

Name

  • Description: Gets or sets the name of the object. All objects of the same type have a unique name.
  • Type: String
  • Access: Read and Write
  • Example:
This example shows how to get and set the name of an object.

            // get the color name
            colorname = Project.Colors.Get("myColor").Name;
            
            // set the color name
            Project.Colors.Get("myColor").Name = "myNewName";
            

NameSuffix

  • Description: The project explorer will display this after the Name of this object.
  • Type: String
  • Access: Read

Objects

  • Description: Gets the list of objects
  • Type: ObservableCollection`1
  • Access: Read
  • Example:
This example shows how to loop through every object of the manager

            count = Project.Colors.Count;
            for(i=0; i<count; i++)
            {
                print(Project.Colors.Objects[i].Name);
            }
            
            print("USING INDEXERS:")
            for(i=0; i<count; i++)
            {
                // a better practive to access an object is by using indexers:
                print(Project.Colors[i])
            }
            

Paths

  • Description: Gets a list of all existing Paths
  • Type: List`1
  • Access: Read

PESensors

  • Description: Gets a list of all existing PE sensors
  • Type: List`1
  • Access: Read

PhysicsBasicShapes

  • Description: Gets a list of all physics basic shapes.
  • Type: List`1
  • Access: Read

PhysicsPESensors

  • Description: Gets a list of all existing Physics PE sensors
  • Type: List`1
  • Access: Read

Polylines

  • Description: Gets a list of all existing polylines
  • Type: List`1
  • Access: Read

ProductGenerators

  • Description: Gets a list of all existing Product Generators
  • Type: List`1
  • Access: Read

ProductSchedules

  • Description: Gets a list of all existing product schdules
  • Type: List`1
  • Access: Read

Racks

  • Description: Gets a list of all existing Racks
  • Type: List`1
  • Access: Read

ShoeDiverters

  • Description: Gets a list of all existing shoe diverters
  • Type: List`1
  • Access: Read

ShoeSorters

  • Description: Gets a list of all existing shoe sorters
  • Type: List`1
  • Access: Read

StaticModels

  • Description: Gets a list of all existing shoe static models
  • Type: List`1
  • Access: Read

TiltTraySorters

  • Description: Gets a list of all existing shoe tilt tray sorters
  • Type: List`1
  • Access: Read

TransferUnits

  • Description: Gets a list of all existing Transfer Units
  • Type: List`1
  • Access: Read

TypeName

  • Description: Gets the typename of the object. A type name doesn’t contain any space characters.
  • Type: String
  • Access: Read

UserPropertyInstances

  • Description: Gets a list of all the instances of user properties.
  • Type: ObservableCollection`1
  • Access: Read

VerticalSorters

  • Description: Gets a list of all existing vertical sorters
  • Type: List`1
  • Access: Read

XRayMachines

  • Description: Gets a list of all existing X-Ray machines
  • Type: List`1
  • Access: Read

Methods


Add(BCS.IBaseObject)

Adds an object in the manager. The object has to be of the correct type.

  • Parameters:
    • value: Object to add

CountByType(System.String)

Gets the number of object of a particular type

  • Parameters:
    • typeName: the typename of object. Example: ‘Conveyor’ or ‘Diverter’
  • Returns:
    • Returns the number of object of this type
  • Example:
This examples shows how to get the number of conveyor in the system.

            // get number of conveyor
            count = Project.Equipment.CountByType("Conveyor");
            
            // this will print the number of conveyor in the output console.
            print(count)
            

EquipmentByInterface(System.String)

Returns a list of equipment that implements a specific interface

  • Parameters:
    • interfaceName: interface name
  • Returns:
    • list of equipment

EquipmentByInterfaces(System.String[])

Returns a list of equipment that implements given interfaces

  • Parameters:
    • interfaceNames: interface names
  • Returns:
    • list of equipment

EquipmentByTypeName(System.String)

Returns a list of equipment by type name

  • Parameters:
    • typeName: type name
  • Returns:
    • list of equipment

ForceRename(System.String,System.Boolean)

Rename the object.

  • Parameters:
    • value: The new name.
    • fireChangingEvent: If false, no change event will fire. In particular, this disables the check for duplicate names, which can be costly as it has to check every equipment. The caller is responsible for ensuring that value is a unique name, or Bad Things will happen.

FromXmlString(BCS.IToolXmlToObjectHelper)

Init object from IToolXmlToObjectHelper. All properties found in the RootElement of IToolXmlToObjectHelper will be set with the value in the rootElement

  • Parameters:
    • xmlHelperObj: xmlHelperObj IToolXmlToObjectHelper

FromXmlString(System.String)

Init object from xml. All properties found in the xml will be set with the value in the xml file

  • Parameters:
    • xmlText: Xml string

FromXmlString(System.Xml.Linq.XElement)

Init object from root element. All properties found in the XElement will be set with the value in the XElement

  • Parameters:
    • objXml: objXml XElement

Get(System.String)

Gets an object by its name. A better way to access an object is by using indexer. See example.

  • Parameters:
    • id: Name of the object to find
  • Returns:
    • Returns the object. Will return null if the object is not found.
  • Example:
This example shows how to find an object by its name. This example is using the 'Get' method but also shows how to use indexer operator.

            myManager = Project.Colors;
            myColor = myManager.Get("Sym3 Red");
            
            // using the indexer. It is shorter but executes the same code behind the scene.
            myColor = myManager["Sym3 Red"];
            

GetById(System.Guid)

Gets an object by its unique ID. A better way to access an object is by using indexer. See example.

  • Parameters:
    • id: Unique ID of the object to find
  • Returns:
    • Returns the object. Will return null if the object is not found.
  • Example:
This example shows how to find an object by its id. This example is using the 'GetById' method but also shows how to use indexer operator.

            id = ... // lets say we have an Id
            myManager = Project.Colors;
            myColor = myManager.GetById(id);
            
            // using the indexer. It is shorter but executes the same code behind the scene.
            myColor = myManager[id];
            

GetByType(System.String,System.String)

Gets the object of a particular type

  • Parameters:
    • typeName: the typename of object. Example: ‘Conveyor’ or ‘Diverter’
    • name: the name of object. Example: ‘Conveyor1’ or ‘Diverter1’
  • Returns:
    • Returns the object of this type
  • Example:
This examples shows how to get the conveyor in the system.

            // get Conveyor1
            conv = Project.Equipment.GetByType("Conveyor", "Conveyor1");
            
            // this will print the Conveyor1 in the output console.
            print(conv)
            

GetCopyPasteXml

Converts the object into an XML string including overrides for for copy/paste functionality

  • Returns:
    • the string that contains xml version of the object for copy/paste

GetUserPropertyInstance(System.String)

Gets the user property instance of the specified name

  • Parameters:
    • userPropertyName: The user property name.
  • Returns:
    • Returns the user property instance object. If not found, the methods returns null.
  • Example:
This example shows how to set the value of a user property by using this method

            cc1 = Project.Equipment.Get("CC1");
            
            // get the value of a user property using the method
            userPropertyInstance = cc1.GetUserPropertyInstance("UserProperty1");
            if(userPropertyInstance != null) {
               userPropertyInstance.Value = 3;
            }
            

GetUserPropertyValue(System.String)

Gets the value of a user property. A better way to get the value of a user property is to use the indexer operator [], see example. Instead of using the method ‘GetUserPropertyInstance’ and then access the ‘Value’ property of the returned value, this method simplifies the way we get the value of a user property.

  • Parameters:
    • userPropertyName: The name of the user property to set.
  • Returns:
    • Returns null if user property is not found. Otherwise returns the value of the user property.
  • Example:
This example shows how to get the value of a user property using this method and also by using the indexer

            cc1 = Project.Equipment.Get("CC1");
            
            // get the value of a user property using the method
            val = cc1.GetUserPropertyValue("UserProperty1");
            
            // get the value of a user property using the indexer operator
            val = cc1["UserProperty1"];
            

IsUserProperty(System.String)

Indicates if the object contains a user property with the name you specify

  • Parameters:
    • userPropertyName: user property name
  • Returns:
    • Returns true if the object contains a user property with the name you specified in parameter.

LoadFromXmlFile(System.String)

Load equipment from XML file

  • Parameters:
    • file:

New(System.String)

Create a new object of a specified type name and loading. The type name must exist.

  • Parameters:
    • typeName: Typename of the object. See example
  • Returns:
    • The newly created object. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates a conveyor
            c1 = Project.Equipment.New("Conveyor")
            c1.Name = "MyConveyor1";
            
            // creates a diverter
            d1 = Project.Equipment.New("Diverter")
            d1.Name = "MyDiverter1";        
            

New(System.String,BCS.Sym3.IBaseEquipment)

Create an equipment on another equipment

  • Parameters:
    • typeName: Typename of the equipment to create
    • parent: Parent equipment
  • Returns:
    • the created equipment
  • Example:
This examples shows how to create a PESensor on a conveyor

            // Create a conveyor:
            cc1 = Project.Equipment.New("Conveyor")
            
            // Create a PE Sensor on this conveyor
            Project.Equipment.New("PESensor", cc1)
            

New(System.String,System.Boolean)

Create a new object of a specified type name and loading. The type name must exist.

  • Parameters:
    • typeName: Typename of the object. See example
    • loading: loading is false by default to generate new name
  • Returns:
    • The newly created object. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates a conveyor
            c1 = Project.Equipment.New("Conveyor",true)
            c1.Name = "MyConveyor1";
            
            // creates a diverter
            d1 = Project.Equipment.New("Diverter")
            d1.Name = "MyDiverter1";        
            

New(System.String,System.Double,System.Double,System.Double,System.Boolean)

Create a new object of a specified type name position(x y z) and loading. The type name must exist.

  • Parameters:
    • typeName: Typename of the object. See example
    • x: x position of the object. See example
    • y: y position of the object. See example
    • z: z position of the object. See example
    • loading: loading is false by default to generate new name
  • Returns:
    • The newly created object. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates a conveyor
            c1 = Project.Equipment.New("Conveyor",1.0,2.1.3.0,true)
            c1.Name = "MyConveyor1";
            

NewBarcodeScanner

Creates a new barcode scanner with default values;

  • Returns:
    • the created equipment

NewBasicShape

Creates a new basic shape with default values;

  • Returns:
    • the created equipment

NewBasicShape(System.Double,System.Double,System.Double)

Creates a new basic shape with default values on the given X, Y, Z cordinates;

  • Returns:
    • the created equipment

NewBasicShapes(System.UInt32)

Creates a list of Basic Shape with default values; Designer/Integrator only

  • Parameters:
    • total: Total number of shapes to create. See example
  • Returns:
    • List of created equipment. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates any number of basic shape
            var convs = Project.Equipment.NewBasicShapes(100)
            for (var obj in convs) {
            print(obj.Name);
            }
            

NewCamPusher

Creates a new cam pusher with default values;

  • Returns:
    • the created equipment

NewChute

Creates a new chute with default values;

  • Returns:
    • the created equipment

NewComposite

Creates a new Composite with default values;

  • Returns:
    • the created equipment

NewConveyor

Creates a new conveyor with default values;

  • Returns:
    • the created equipment

NewConveyor(System.Double,System.Double,System.Double)

Creates a new conveyor with default values on the given X, Y, Z cordinates;

  • Returns:
    • the created equipment

NewConveyorController

Creates a new Conveyor Controller with default values;

  • Returns:
    • the created equipment

NewCrossBeltSorter

Creates a new cross belt sorter with default values;

  • Returns:
    • the created equipment

NewDiverge

Creates a new diverge with default values;

  • Returns:
    • the created equipment

NewDiverter

Creates a new diverter with default values;

  • Returns:
    • the created equipment

NewEStop

Creates a new E-Stop with default values;

  • Returns:
    • the created equipment

NewFreeRollerConveyor

Creates a new free roller conveyor with default values;

  • Returns:
    • the created equipment

NewFromComponent(System.String,BCS.Sym3.IBaseEquipment)

Creates a new equipment attacged to its parent.Example a PE Sensor can have a conveyor as parent.

  • Parameters:
    • typeName: type name of equipment to create
    • parentEquipment: Parent equipment
  • Returns:
    • Returns the newly created equipment, null if not created.

NewFromDefinition(BCS.Sym3.ITypeEquipment,System.Double,System.Double,System.Double,BCS.Sym3.IMComponent3D,BCS.Sym3.IBaseEquipment,System.Boolean,System.Boolean,System.Boolean)

Creates a new equipment.

  • Parameters:
    • userType: userType can be a standard type or user defined type
    • x: x position where to create new equipment
    • y: y position where to create new equipment
    • z: z position where to create new equipment
    • targetComponent: Target component
  • Returns:
    • new equipment

NewGrid

Creates a new grid with default values;

  • Returns:
    • the created equipment

NewHighSpeedDiverter

Creates a new high speed diverter with default values;

  • Returns:
    • the created equipment

NewLabel

Creates a new conveyor with default values;

  • Returns:
    • the created equipment

NewMerge

Creates a new merge with default values;

  • Returns:
    • the created equipment

NewMyEquipments(System.String,System.UInt32)

Creates a list of my equipment with default values; Designer/Integrator only

  • Parameters:
    • typeName: Type name of myequipment to create. See example
    • total: Total number of my equipment to create. See example
  • Returns:
    • List of created equipment. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates any number of my equipment
            var myequip = Project.Equipment.NewMyEquipments("SRSLifter", 100);
            for (var obj in myequip) {
            print(obj.Name);
            }
            

NewPaths(System.UInt32)

Creates a list of Path with default values; Designer/Integrator only

  • Parameters:
    • total: Total number of paths to create. See example
  • Returns:
    • List of created equipment. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates any number of path
            var path = Project.Equipment.NewPaths(100)
            for (var obj in path) {
            print(obj.Name);
            }
            

NewPESensor(BCS.Sym3.IBaseEquipment)

Creates a new PE sensor with default values;

  • Returns:
    • the created equipment

NewPhysicsBasicShape

Create a new physics basic shape with default values.

  • Returns:
    • The newly created equipment.

NewPhysicsChute

Create a new physics chute with default values.

  • Returns:
    • The newly created equipment.

NewPhysicsConveyor

Creates a new physics conveyor with default values;

  • Returns:
    • the created equipment

NewPhysicsConveyor(System.Double,System.Double,System.Double)

Creates a new physics conveyor;

  • Parameters:
    • x: The X position of the conveyor
    • y: The Y position of the conveyor
    • z: The Z position of the conveyor

NewPhysicsPESensor(BCS.Sym3.IBaseEquipment)

Create a new physics PE sensor with default values.

  • Parameters:
    • parentEquipment: The equipment that will be this sensor’s parent. Cannot be null.
  • Returns:
    • The newly created equipment.

NewPolyline

Creates a new polyline with default values;

  • Returns:
    • the created equipment

NewPolylines(System.UInt32)

Creates a list of Polyline with default values; Designer/Integrator only

  • Parameters:
    • total: Total number of polylines to create. See example
  • Returns:
    • List of created equipment. Returns null if an error occrued.
  • Example:
This example shows how to create some equipment

            // creates any number of polyline
            var poly = Project.Equipment.NewPolylines(100)
            for (var obj in poly) {
            print(obj.Name);
            }
            

NewProductGenerator

Creates a new Product Generator with default values; Designer/Integrator only

  • Returns:
    • the created equipment

NewRack

Creates a new Rack with default values;

  • Returns:
    • the created equipment

NewShoeDiverter

Creates a new shoe diverter with default values;

  • Returns:
    • the created equipment

NewShoeSorter

Creates a new shoe sorter with default values;

  • Returns:
    • the created equipment

NewStaticModel

Creates a new static model with default values;

  • Returns:
    • the created equipment

NewTiltTraySorter

Creates a new tilt tray sorter with default values;

  • Returns:
    • the created equipment

NewTransferUnit

Creates a new Transfer Unit with default values;

  • Returns:
    • the created equipment

NewVerticalSorter

Creates a new vertical sorter with default values;

  • Returns:
    • the created equipment

NewXRayMachine

Creates a new X-Ray machine with default values;

  • Returns:
    • the created equipment

Remove(BCS.IBaseObject)

Removes an object from the manager

  • Parameters:
    • value: Object to remove

RemoveAll

Remove all objects from the manager. The manager will be empty after execution.


RemoveMultiple(System.Collections.ICollection)

Removes an collection of object from the manager

  • Parameters:
    • value: The collection of object to remove

RemoveSilentlyBecauseSomethingIsNotRight(BCS.IBaseObject)

Removes an object from the manager without calling events

  • Parameters:
    • value: Object to remove

Select(BCS.Sym3.IBaseEquipment)

Select an equipment (will be selected in 3D with yellow contour)

  • Parameters:
    • equipment:

SetUserPropertyValue(System.String,System.Object)

Sets the value of a user property. A better way to set the value of a user property is to use the indexer operator [], see example. Instead of using the method ‘GetUserPropertyInstance’ and then access the ‘Value’ property of the returned value, this method simplifies the way we set the value of a user property.

  • Parameters:
    • userPropertyName: The name of the user property to set.
    • value: If the user property is not found, this methods does nothing.
  • Example:
This example shows how to set the value of a user property using this method and also by using the indexer

            cc1 = Project.Equipment.Get("CC1");
            
            // set the value of a user property using the method
            cc1.SetUserPropertyValue("UserProperty1", 3);
            
            // set the value of a user property using the indexer operator
            cc1["UserProperty1"] = 3;
            

ToCSVString(System.Char)

Returns the object in a CSV string.

  • Returns:
    • A string that contains properties of the object in a CSV format.

ToXmlString

Converts the object in an xml string

  • Returns:
    • the string that contains xml version of the object

Examples:

//******************************************************************************
// HOW TO : Equipment - General and common properties
//******************************************************************************


//------------------------------------------------------------------------------
// How to create equipment
//------------------------------------------------------------------------------

// create a new barcode scanner (also called ATR)
var newEntity = Project.Equipment.NewBarcodeScanner()

// create a new basic shape
var newEntity = Project.Equipment.NewBasicShape()

// create a new cam pusher
var newEntity = Project.Equipment.NewCamPusher()

// create a new chute
var newEntity = Project.Equipment.NewChute()

// create a new conveyor
var newEntity = Project.Equipment.NewConveyor()

// create a new cross belt sorter
var newEntity = Project.Equipment.NewCrossBeltSorter()

// create a new diverter
var newEntity = Project.Equipment.NewDiverter()

// create a new grid
var newEntity = Project.Equipment.NewGrid()

// create a new label
var newEntity = Project.Equipment.NewLabel()

// create a new PE sensor
var conveyor = Project.Equipment.Get("CC1")
var newEntity = Project.Equipment.NewPESensor(conveyor)

// create a new polyline
var newEntity = Project.Equipment.NewPolyline()

// create a new shoe diverter
var newEntity = Project.Equipment.NewShoeDiverter()

// create a new static model
var newEntity = Project.Equipment.NewStaticModel()

// create a new tilt tray sorter
var newEntity = Project.Equipment.NewTiltTraySorter()

// create a new vertical sorter
var newEntity = Project.Equipment.NewVerticalSorter()

// create a new x-ray machine
var newEntity = Project.Equipment.NewXRayMachine()


//------------------------------------------------------------------------------
// How to access equipment
//------------------------------------------------------------------------------

// get by name using method 'Get'
var entity1 = Project.Equipment.Get("CC1")
print("Get entity by name: " + entity1.Name)

// get by name using operator []
var entity2 = Project.Equipment["CC1"]
print("Get entity by name: " + entity2.Name)

// get by index:
var entity3 = Project.Equipment[0]
print("Get entity by index: " + entity3.Name)


// get all barcode scanners
var entities = Project.Equipment.BarcodeScanners;
if (entities != null) { print(entities.Count); }

// get all basic shapes
var entities = Project.Equipment.BasicShapes;
if (entities != null) { print(entities.Count); }

// get all Chutes
var entities = Project.Equipment.Chutes;
if (entities != null) { print(entities.Count); }

// get all conveyors
var entities = Project.Equipment.Conveyors;
if (entities != null) { print(entities.Count); }

// get all cross belt sorters
var entities = Project.Equipment.CrossBeltSorters;
if (entities != null) { print(entities.Count); }

// get all diverters
var entities = Project.Equipment.Diverters;
if (entities != null) { print(entities.Count); }

// get all EStops
var entities = Project.Equipment.EStops;
if (entities != null) { print(entities.Count); }

// get all Grids
var entities = Project.Equipment.Grids;
if (entities != null) { print(entities.Count); }

// get all High speed diverters
var entities = Project.Equipment.HighSpeedDiverters;
if (entities != null) { print(entities.Count); }

// get all Labels
var entities = Project.Equipment.Labels;
if (entities != null) { print(entities.Count); }

// get all PE sensors
var entities = Project.Equipment.PESensors;
if (entities != null) { print(entities.Count); }

// get all cam pushers
var entities = Project.Equipment.CamPushers;
if (entities != null) { print(entities.Count); }

// get all shoe sorters
var entities = Project.Equipment.ShoeSorters;
if (entities != null) { print(entities.Count); }

// get all tilt tray sorters
var entities = Project.Equipment.TiltTraySorters;
if (entities != null) { print(entities.Count); }

// get all vertical sorters
var entities = Project.Equipment.VerticalSorters;
if (entities != null) { print(entities.Count); }

// get all x-ray machines
var entities = Project.Equipment.XRayMachines;
if (entities != null) { print(entities.Count); }



//------------------------------------------------------------------------------
// How to loop
//------------------------------------------------------------------------------

// loop through all equipment types:
var entities = Project.Equipment.Objects;
for (var i = 0; i < entities.Count; i++) {

    print(entities[i].Name);
}

// loop through all conveyors
var entities = Project.Equipment.Conveyors;
if (entities != null) {

    for (var i = 0; i < entities.Count; i++) {

        print(entities[i].Name);
    }
}




//------------------------------------------------------------------------------
// How to delete
//------------------------------------------------------------------------------

// remove entity
var equipment = Project.Equipment.Get("CC1")
Project.Equipment.Remove(equipment)


//------------------------------------------------------------------------------
// How to edit common properties
//------------------------------------------------------------------------------


equipment.Alias = "the alias";


equipment.X = 1;
equipment.Y = 2;
equipment.Z = 3;
equipment.Direction = 4;
equipment.Tilt = 5;
equipment.Roll = 6;
equipment.Selectable = false;
equipment.Layer = Project.Layers.Get("Layer1");
equipment.DisplayBackFace = false;
equipment.XOffset = 1;
equipment.YOffset = 1;
equipment.ZOffset = 1;
equipment.DirectionOffset = 1;
equipment.TiltOffset = 1;
equipment.RollOffset = 1;

// get parent name
print(equipment.Parent);

// set operation mode:
equipment.OperationMode = "ScreeningStationController";
equipment.OperationMode = "CascadeController";
equipment.OperationMode = "MergeSourceController";
equipment.OperationMode = "InductorController";
equipment.OperationMode = "ExternalController";