An EGL assignment copies data from one area of memory to another and can copy the result of a numeric or text expression into a source field.
The behavior of an EGL assignment statement is different from that of a move statement; for more information, see move
For information about assignment rules, see Assignment compatibility in EGL.

Each of the following EGL statements is an assignment:
z = a + b + c;
myDate = vgVar.currentShortGregorianDate;
myUser = sysVar.userID;
myRecord01 = myRecord02;
myRecord02 = "USER";
a = a + b
The following table shows the complex assignment operators available in EGL.
| Operator | Meaning |
|---|---|
| a += b | a = a + b |
| a –= b | a = a – b |
| a *= b | a = a * b |
| a /= b | a = a / b |
| a **= b | a = a ** b |
| a %= b | a = a % b |
| a |= b | a = a | b |
| a &= b | a = a & b |
| a xor= b | a = a xor b |
| a ::= b | a = a :: b |
| a?:= b | a = a ?: b |