# Tipos de bloques

Los bloques se clasifican como: Bloque de disparadores, Bloque de operación, Bloque de valores, Bloque lógico, y Expresión. Puede arrastrar y soltar estos bloques desde la Biblioteca de activos para generar un script.

El bloque se utiliza en un Script/Script global.

Categoría | Script | Script global
Disparadores |  |
Operaciones |  |
Valores |  |
Lógicas |  |
Expresión |  |

#### Limitaciones

- Un máximo de 1000 acciones por pantalla, contenido y script global.

- Un máximo de 1000 operaciones por acción o sección de script.

## Bloque de disparadores

Un disparador es un evento que ejecuta la operación. También puede definir varias operaciones que se ejecuten para un disparador.

Para más detalles, véaseLista de disparadores.

Nota: Cada script puede utilizar sólo un disparador.

Bloques | Descripción
| [When] - Defina la condición del disparador [Do] - Agregue el bloque de operaciones a ejecutar. Nota: Los bloques son diferentes para cada disparador Según el bloque de disparadores, establezca el contenido del bloque de valores en la condición.

(Ejemplo 1)

Ejecute la operación cada 5 segundos.

(Ejemplo 2)

Ejecute la operación cuando se realice un cambio en el valor de Var1.

## Bloque Operation

El bloque de operaciones sirve para ejecutar la función definida.

Para más detalles, véase Lista de operaciones.

Bloques | Descripción
| Defina la operación a ejecutar. Nota: Los bloques son diferentes para cada operación. Según el bloque de operaciones, puede combinar y ejecutar bloques de valores y bloques lógicos.

(Ejemplo 1)

Cuando se ejecuta la operación, un timbre emite un pitido.

(Ejemplo 2)

Cuando se ejecuta la operación, se asigna 1 a Var1.

Nota:

- En un bloque de operación, si utiliza un bloque de valores o un bloque lógico que incluye una variable de mala calidad, la operación funciona como sigue:

- Si la variable se utiliza como el destino de una operación de escritura, la operación se ejecuta y el resultado de la operación es True.

- Si el valor de la variable se utiliza en una operación de lectura, la operación se salta y el resultado de la operación es False.

- Las operaciones de script se ejecutan, en orden, de una en una. Sin embargo, dado que las siguientes operaciones pueden tardar algún tiempo en completarse, pueden ser interrumpidas por otra operación de disparo para que las operaciones se ejecuten simultáneamente.

- [Exportar datos de alarma]

- [Exportar datos del registro]

- [Exportar registro de operaciones]

- [Registro de datos] - [Borrar registro]

- [Receta]

- [Seguridad] - [Export]

- [Seguridad] - [Import]

- [Matriz]*

- [Azbil]

- [Administración de archivos]

- [Administración remota de archivos]

- [Retraso]

- [Tendencia de bloque] - [Clear And Draw]*

- [Tendencia de bloque] - [Draw]*

- [Equipo]

*Cuando se utilizan sólo variables locales, la operación se completa sin ser interrumpida por otra operación de disparo.

- En general, las siguientes operaciones no pueden ser interrumpidas. Sin embargo, cuando una de estas operaciones se utiliza con un elemento de la matriz que se especifica indirectamente, la operación puede ser interrumpida por otra operación de disparo para que las operaciones se ejecuten simultáneamente.

- [Cambio de valor]

- [Cambio de valor de la cadena]

- [Convertir numérico a cadena]

- [Convertir flotante a cadena]

- [Convertir cadena a numérico/flotante]

- [Obtener longitud de cadena]

- [Extraer izquierda/derecha de cadena]

- [Extraer medio de cadena]

- [Cadena de búsqueda]

- [Cambio de pantalla]

- [Cambio de contenido]

- [Registrar mensaje personalizado]

- [Cambio de idioma]

- [Administración de archivos]

- [Mostrar depuración]

Cuando hay varios disparadores que ejecutan la misma operación, una operación interrumpida por otra operación de disparo podría cambiar el orden de la operación, dando lugar a una salida diferente.

Por ejemplo, en el diagrama siguiente, Operation 2 en Trigger 2 se ejecuta antes de Operation 2 en Trigger 1. Operation 2 en Trigger 1 se ejecuta sólo después de que se completa Export Log.

## Bloque de valores

El bloque de valores se refiere al valor de una variable o propiedad especificada. Puede leer o sobrescribir los valores almacenados usando un bloque de valores.

Para más detalles, véase Valores.

Nota: Para especificar una propiedad en un bloque de valores, utilice un punto (.). Por ejemplo, para especificar el color del texto en NumericDisplay1, defina "NumericDisplay1.TextColor".

## Bloques de lógica

El bloque If / If Else ejecuta una operación según la condición especificada.

El siguiente bloque lógico ejecuta el cálculo o la comparación lógica definida y produce el resultado.

- Math
- Condición de comparación
- Condición lógica
- Not

Para más detalles, véase Lógica.

## Expresión

El bloque de expresiones devuelve el resultado de la expresión. Para más detalles sobre los bloques de expresión, véase Expresión.

Para más detalles sobre el convertidor de expresiones, véase Expresión.