Sepasoft MES Module Suite
Data Types and Formats
Reference to the various data types and formats that are used while scripting.
In this section:
On this page:
- Data Types and Formats
- int
- ENUM
- long
- float
- double
- boolean
- String
- DateTime
- List
- Material In
- Material Out
- PyDictionary
- Serializable (for Artifacts)
int
Int data type is a 32-bit signed two's complement integer
Minimum value is - 2,147,483,648 (-2^31)
Maximum value is 2,147,483,647(inclusive) (2^31 -1)
Integer is generally used as the default data type for integral values unless there is a concern about memory
The default value is 0
Example: int a = 100000, int b = -200000
ENUM
See MES Enum Manager - Perspective and Vision Enum Manager
long
- Long data type is a 64-bit signed two's complement integer
- Minimum value is -9,223,372,036,854,775,808(-2^63)
- Maximum value is 9,223,372,036,854,775,807 (inclusive)(2^63 -1)
- This type is used when a wider range than int is needed
- Default value is 0L
- Example: long a = 100000L, long b = -200000L
float
Float data type is a single-precision 32-bit IEEE 754 floating point
Float is mainly used to save memory in large arrays of floating point numbers
Default value is 0.0f
Float data type is never used for precise values such as currency
Example: float f1 = 234.5f
Duration values are in minutes plus fractions of minutes (not seconds).
Example: 5.40 = 5 minutes and 24 seconds (because 0.40 = 24sec/60sec).
double
double data type is a double-precision 64-bit IEEE 754 floating point
This data type is generally used as the default data type for decimal values, generally the default choice
Double data type should never be used for precise values such as currency
Default value is 0.0d
Example: double d1 = 123.4
Duration values are in minutes plus fractions of minutes (not seconds).
Example: 5.40 = 5 minutes and 24 seconds (because 0.40 = 24sec/60sec).
boolean
- boolean data type represents one bit of information
- There are only two possible values: true and false
- This data type is used for simple flags that track true/false conditions
- Default value is false
- Example: boolean one = true
String
String types of literals can contain any Unicode characters
- Example: String a = "\u0001"
DateTime
See the Ignition documentation for various date functions: DateTime
- Months start at 0 (January = 0 and December = 11).
- The first day of any month starts at 1.
List
The list can be written as comma-separated values (items) between square brackets.
- Items in a list need not be of the same type.
- List indices start at 0, and lists can be sliced, concatenated and so on.
- Example:
list l1 = ['Sarah', 'process segment', 100, 2018]
list l2 = [1, 2, 3, 4, 5 ]
list l3 = ["a", "b", "c", "d"]
Material In
Material Out
PyDictionary
A Python Dictionary is a collection of key-value pairs within curly braces that is unordered, changeable and indexed.
In the following example the Date and Value pairs is passed as a python dictionary.
values={dateTime1:4, dateTime2:3}
Serializable (for Artifacts)
Various Pythonic data types (including Integer, String, Long, Float, Double and Boolean), as well as many similar Java data types, are considered 'serializable' for saving and retrieving as Artifact values that can be created for MES Objects.
Files are also 'serializable' when used with Artifacts. Artifacts serialize the file as an array of bytes. Add "from java.io import File" to script and use File (fileName) where fileName contains the path to the file (with filename and extension). Refer to the Java Class File page.
Sepasoft MES Module Suite