BeasScript variables are containers for storing data values.
Variables can be defined with setvar or can be declared with int, number,date.
Variables defined with setvar is always data type String.
Many functions support only variables defined with setvar, example userevents.
In this example, x, y, and z, are variables:
Example
setvar=x=3
setvar=y="6"
Operators not working with variables defined with setvar
To read a variable, you must insert the variable in brackets <..>
setvar=x=3
setvar=y=<x>
Alternatively, you can work with declared local variable
The following variable types supported: Decimal, Integer, String, Boolean, Datetime
decimal x=3.5
x=<x>+5
// return 8.5
messagebox=<x>
If you need a variable which is visible outside the current function, you can define this as instance variable:
instance decimal x=3.5
x=<x>+5
// return 8.5
messagebox=<x>
Much Like Algebra:
In this example, price1, price2, and total, are variables:
Example
decimal price1=5
decimal price2=3.5
decimal total
total= <price1> + <price2>
messagebox=<total>
In programming, just like in algebra, we use variables (like price1) to hold values.
In programming, just like in algebra, we use variables in expressions (total= <price1> + <price2>).
From the example above, you can calculate the total to be 8.5.
BeasScript variables are containers for storing data values.
BeasScript Identifiers
All BeasScript variables must be identified with unique names.
These unique names are called identifiers.
Identifiers can be short names (like x and y) or more descriptive names (age, sum, totalVolume).
Write all names in lower case!
The general rules for constructing names for variables (unique identifiers) are:
Names can contain letters, digits, underscores, and dollar signs.
Names must begin with a letter
Names can also begin with _ (but we will not use it in this tutorial), but not with $
Names are case sensitive (y and Y are different variables, write always all in lower case)
The Assignment Operator
In BeasScript, the equal sign (=) is an "assignment" operator and an "equal to" operator.
decimal x=3.5
x=<x>+3
messagebox=<x>
(It calculates the value of x + 3 and puts the result into x. The value of x is incremented by 6.)
The "equal to" operator is written like = in BeasScript
BeasScript Data Types
BeasScript variables can hold numbers like 100 and text values like "Martin".
In programming, text values are called text strings.
BeasScript can handle many types of data, but for now, just think of numbers and strings.
In BeasScript you can use single or double quote for define Text, but this is not mandatory
You must declare variables with decimal, string or you can define string variables with setvar.
Example
// save 3.14 in String variable "pi"
setvar=pi=3.14
// Save text "Martin" in variable "person"
setvar=person="Martin"
// Save text "Yes I am!" in variable "answer". quotes not mandatory
setvar=answer=Yes I am!
Declaring (Creating) BeasScript Variables
You can define variables with
setvar=myVariable=<value>
This is always from type String and used in most of places in Beas.
Note: UserEvents support only variables declared with setvar.
Or you define Variables
Decimal pi=3.14
String person="Martin"
If variable type is defined as string, quotes are mandatory
Note: it's not possible to declare more than one variable in one line.
WRONG:
Decimal a=3.14,b=2.4
Correct:
Decimal a=3.14
Decimal b=2.4
Visibility of variables
BeasScript is always window-based. It is possible to declare "global" variables, but it's not recommended to use them.
Declaration |
Description |
---|---|
setvar |
Variable is visible inside the current window from the moment of declaration. |
decimal, string, datetime, boolean |
Variable is visible only inside the current function. Variable is not visible in functions that are called from the current function. |
instance decimal instance string |
Variable is visible inside current window from the moment of declaration. |