(wip)
The blocks are elements used in Logic Builder that, interconnected, build routines and programs.
The blocks are divided in the following categories.
Start routine
Program Variables
Macros
Operation blocks/ Built in blocks
Start Routine
This is a block found on all routines and programs. Its purpose is to mark the start of a routine,
If the routine is set to run On Event, the block will also include a Condition port. This is useful when the routine needs to run if some conditions are met. The condition can be a Get variable, a macro or an operator block
Program Variable Blocks
These are blocks that provide data (for example a temperature sensor).The variables present 2 blocks, a Get and a Set block.
Like variables, variable blocks are color-coded by type as follows:
Number - Purple
Boolean - Green
String - Gold
Time/Date -Teal
Number Blocks
Boolean Blocks
String Blocks
Time/Date Blocks
Macro Blocks
Built in blocks
These are presented in the Block Library. These are used to channel conditions and commands between other types of blocks.
The complete list of built-in blocks is presented below.
Commands
CondDelay- Add delay to condition after a transition from false to true before evaluating to true
Email - Send an email using the configured SMTP connector
SetDelay
SetExternal
Wait
Control Flow
If
Return
Expression
Count - Count number of the items which match a condition
DateTimeAdd
DateTimeSub
GridSelectCol
GridSize
LeadLag
LeadLagStageSelect
Limit
Pid
Random
Language
AlarmBlock -Generate an alarm based on a boolean variable
BoolLatch - Latch a boolean input when it transitions to true after a configurable delay period. Once latched the output remains true until the reset is triggered to true.
CallRoutine - Call a routine within the same program by name
Comment - Comment
ExprStmt - Statement wrapper for expression with side-effects
Reset
Return
Staging
Tag
Tags
delayedOutput - DelayedOutput
DictGet
JobRun
VarCapture
Logical
All - returns if all items in a collection matches a condition
And - Logical-and of boolean values
Any - Returns if any item in a collection matches a condition
CmpEq - Equality comparison
CmpGt -Greater than comparison
CmpGtEq - Greater than or equal comparison
CmpLt - Less than comparison
CmpLtEq - Less than or equal comparison
CmpNotEq - Not equal comparison
InRange -
Not
Or
Xor
IsType
Math
Add - Addition: '∑ vals'. Any val which doesn't evaluate to a number is ignored. If no vals evaluate to a number then return null.
Avg - Fold vals their standard average or arithmetic mean. Any val which doesn't evaluate to a number is ignored. If no vals evaluate to a number then return null.
Div- Multiply: 'vals₀ × vals₁ × vals₂ ...'. Any val which doesn't evaluate to a number is ignored. If no vals evaluate to a number then return null.
IsEven
IsOdd
Max
Min
Modulo
Mult - Multiply: 'vals₀ × vals₁ × vals₂ ...'. Any val which doesn't evaluate to a number is ignored. If no vals evaluate to a number then return null.
Neg
SineWave
Sub - Subtract: 'a - b'. Return null if a or b doesn't evaluate to number.
Threshold
AboveBy - Check if the in number is above base number by a threshold
Abs - Return the absolute value of the number
BelowBy -Check if the in number is bellow the base number by a threshold
Limit
Random
Reset
Within
Others
Invoke
Ternary
Strings
Strings
StrCapitalize
StrConcat
StrContains
StrDecapitalize
StrEndsWith
StrFormat
StrLower
StrMacro
StrReplace
StrSize
StrStartsWith
StrUpper
Time
Date - Get the Date part of a DateTime
DateTimeAdd - Add a duration from a DateTime. If no units are supplied, then minutes will be assumed.
DateTimeSub - Substract a duration from a DateTime. If no units are supplied, then minutes will be assumed.
DateToNumber - Convert a date to a number
DateToString - Convert a portion of a date to a string
DtToDtAdd - Add one dateTime to another -- returns duration (always minutes or seconds).
DtToDtSub - Subtract one dateTime from another -- returns duration (always minutes or seconds).
Now -
SiteDateTime
Time
TimeToMinutes
TimeToTimeAdd
TimeToTimeSub
Weather
WeatherConditions
WeatherInfo
WeatherSunrise
WeatherSunset