ExecuteScript: Ejecutar comandos de script

Descripción de bloques de funciones

Este bloque de funciones puede ejecutar los siguientes comandos de USB:

oDownload

oUpload

oSetNodeName

oDelete

oReboot

Consulte Generación de scripts y archivos con el almacenamiento masivo en USB

Representación gráfica

G-SE-0017244.2.jpg

 

 

Representación IL y ST

Para ver la representación general en lenguaje IL o ST, consulte el capítulo Representación de funciones y de bloques de funciones.

Descripción de variables de E/S

En esta tabla se describen las variables de entrada:

Entrada

Tipo

Comentario

xExecute

BOOL

Cuando se detecta un flanco ascendente, inicia la ejecución del bloque de funciones.

Cuando se detecta un flanco descendente, restablece las salidas del bloque de funciones cuando finaliza cualquier ejecución en curso.

NOTA: Con el flanco descendente, la función continúa hasta que concluye su ejecución y actualiza sus salidas. Las salidas se conservan durante un ciclo y se restablecen.

sCmd

STRING

Sintaxis de comando de secuencia de comandos de USB.

No se permiten ejecuciones de comando simultáneas: si se ejecuta un comando desde otro bloque de funciones o desde una secuencia de comandos de USB, el bloque de funciones pone el comando a la cola y no lo ejecuta inmediatamente.

NOTA: Una secuencia de comandos de USB ejecutada desde una llave de memoria USB se considerará que se está ejecutando hasta que se extraiga la llave USB.

En esta tabla se describen las variables de salida:

Salida

Tipo

Comentario

xDone

BOOL

TRUE indica que la acción se ha completado correctamente.

xBusy

BOOL

TRUE indica que se está ejecutando el bloque de funciones.

xError

BOOL

TRUE indica que se ha detectado un error; el bloque de funciones interrumpe la acción.

eError

ExecuteScriptError

Indica el tipo de error detectado de la secuencia de comandos de ejecución.

Ejemplo

En este ejemplo se describe cómo ejecutar un comando de script Upload:

VAR
EXEC_FLAG: BOOL;
ExecuteScript: ExecuteScript;
END_VAR
ExecuteScript(
xExecute:= EXEC_FLAG,
sCmd:= 'Upload "/usr/Syslog/*"',
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );