Expresiones y operadores
Operadores aritméticos/concatenación
| Operador | Uso |
|---|---|
+ | Suma numérica entre Number, o concatenación entre char/varchar (según el tipo de los operandos). |
- | Resta numérica. |
* | Multiplicación numérica. |
/ | División numérica. |
&Total = &Precio * &Cantidad
&Saludo = "Hola, " + &Usuario
Operadores de comparación
=, <>, <, <=, >, >= — usados en Where, If, While.
Operadores lógicos
And/Or combinan comparaciones (típicamente en If/While): And liga más fuerte que Or.
If &a = 1 And &b = 2 Or &c = 3
...
EndIf
WARP no tiene un tipo booleano propio: cada operando se valida como cualquier otra expresión.
Literales
- Números:
100,9.5. - Texto:
"texto"o'texto'(equivalentes). - Fecha/hora: se obtienen con
TODAY()/TIME(), no hay literal de fecha.
Variables y campos
- Variable: siempre con
&(&Usuario). - Campo de tabla: sin
&, sólo dentro de unFor Each/Newsobre esa tabla (CodCli,Nombre). - Elemento de
list/matrix:&Variable[índice]/&Variable[fila, col](1-based). - Miembro de
struct:&Variable.Miembro(lectura y asignación) — ver Tipos de dato: Struct. - Método de
list:&Variable.Metodo(...)(Add/Clear/Removecomo sentencia,Count()como expresión) — ver Tipos de dato: List.
Llamadas a función/procedimiento como expresión
&variable = NombreFuncion(expr, ...)
Ver Funciones builtin y @Source: sentencias de control para Functions propias.