Declaraciones

Las declaraciones definen las acciones que realiza un script al ejecutarse. Esto incluye crear variables, asignar nuevos valores, realizar cálculos y tomar decisiones lógicas con base en una condición determinada. Algunas declaraciones únicamente realizan una tarea, como asignar un valor a una variable. Otras declaraciones afectan el flujo del script. Las declaraciones se ejecutan en un orden lógico, pero puede cambiarse ese orden cada vez que se ejecute el script.

Las declaraciones en los snippets constan de una o más líneas de código. Una declaración simple de una línea podría crear una variable y asignarle un valor, como esta:

ASSIGN firstName = "Beowulf"

Una declaración compleja puede tener muchos grupos de líneas anidadas, como esta:

ASSIGN Names="Odin|Freya|Thor|Loki" ASSIGN SubCounter=1 FOREACH Name IN Names { IF Name = "Odin" | Name = "Freya" { ASSIGN NewNames[SubCounter]= "{Name}" ASSIGN SubCounter=SubCounter + 1 } }

Se puede cambiar el orden lógico de ejecución de una declaración en un snippet si hay un error en el snippet. Cuando se presenta un error, finaliza inmediatamente la acción Snippet. No se ejecutan las instrucciones restantes del snippet. Por el contrario, se guarda un mensaje de error en una variable _ERR que indica cuál es el problema.

Tipos de declaraciones

Puede utilizar los siguientes tipos de declaraciones en los snippets:

  • Declaración: Use las declaraciones para declarar o crear nuevas variables, objetos y funciones.
  • Toma de decisiones: Utilice instrucciones de toma de decisiones para que el snippet de código seleccione una tarea a realizar según las condiciones que usted especifique. Las puede utilizar para controlar el flujo lineal de lo que sucede en el script.
  • Ciclos: Use las declaraciones en ciclo para hacer que el script realice una tarea o un conjunto de tareas hasta que se cumpla la condición final especificada.
  • Otros: Estas declaraciones le permiten finalizar funciones, mostrar resultados en la ventana Snippet Editor durante la depuración e incluir archivos DLL proxy de servicios web en sus snippets.

Palabras clave

Las palabras clave son comandos que dan inicio a las declaraciones. Son términos reservados y predefinidos. El compilador reconoce la palabra clave y luego realiza la tarea asociada a ésta.

Cada tipo de declaración que usted puede utilizar en un snippet tiene una palabra clave asociada. Por ejemplo, para declarar una variable, puede utilizar la palabra clave ASSIGN. O bien, para hacer una declaración de selección, puede utilizar la palabra clave IF. Tanto la declaración como la palabra clave comparten el mismo nombre, por lo que una declaración IF utiliza la palabra clave IF.

Se describen las palabras clave disponibles en el lenguaje Snippet junto con la declaración asociada a cada una. También está disponible una lista completa de palabras clave.

Sintaxis de una declaración

Todas las declaraciones comienzan con una palabra clave y van seguidas de palabras o código que definen lo que hace la declaración. Cada declaración tiene su propia sintaxis. La sección de resumen de la sintaxis de esta página describe cómo leer la sintaxis de las declaraciones.

Algunas declaraciones requieren código condicional. Este es un código que plantea una condición y define qué sucede si se cumple o no la condición. El código condicional puede ser una sola declaración o varias declaraciones. Siempre debe estar entre llaves ({ }), incluso si es una sola línea. El código condicional se denomina a veces bloque.

Cuando el compilador encuentra una nueva línea o una llave abierta, reconoce el final de una declaración. Es un tanto flexible la colocación de las llaves. Son válidos todos los siguientes formatos:


IF x=1 {TRACE "one" } 

IF x=1 {TRACE "one" } IF x=2 {TRACE "two" }
IF x=1 {
  TRACE "one"
}

IF x=1
{
  TRACE "one"
}

Cuando el código incrustado requiera más de una declaración, siga estas reglas:

  • Coloque una declaración por línea.
  • Si se requieren varias declaraciones, colóquelas en líneas por separado. Esto facilita la lectura del código.
  • Las declaraciones incrustadas que requieren su propio código incrustado pueden ocupar varias líneas, siguiendo los formatos válidos para usar llaves.

Resúmenes de la sintaxis

En las páginas de ayuda en línea que abarcan cada tipo de declaración, cada tipo de declaración tiene un resumen de sintaxis. El resumen le muestra el formato que utiliza ese tipo de declaración. Le muestra qué elementos son necesarios y cuáles son opcionales. También demuestra cómo se deben anidar los elementos de la sintaxis.

La siguiente tabla define cada elemento en los resúmenes de sintaxis. No todas las dec laraciones incluyen todos los elementos. Al descifrar un resumen de sintaxis, preste mucha atención al anidamiento de los elementos.

Elemento

Detalles

COMMAND

Este es el nombre de la palabra clave que se utilizará con la declaración. Reemplace COMMAND con la palabra clave de la declaración que esté creando.

Las palabras clave no distinguen entre mayúsculas y minúsculas. Por ejemplo: para el compilador, FOREACH es lo mismo que foreach. Sin embargo, la acción Snippet convierte automáticamente todas las palabras clave a mayúsculas la próxima vez que abra el snippet.

En la ayuda en línea, las palabras clave siempre están en letras mayúsculas.

<required>

Los corchetes angulares indican un elemento necesario. El texto entre corchetes indica el tipo de elemento, como una expresión, una variable o un valor literal.

Por ejemplo, en un resumen de sintaxis de las declaraciones FOREACH, hay dos elementos necesarios:

FOREACH <var> in <array> { ... [ BREAK]}

Nunca deben usarse literalmente en su script los corchetes angulares y el texto dentro de ellos. Reemplace esa parte con el elemento de código que éste describe. Por ejemplo, reemplace <expression>con una expresión como i = 0.

[optional]

Los corchetes indican un elemento opcional. El texto entre corchetes indica el tipo de elemento que puede utilizar. Por ejemplo, en el resumen de sintaxis IF, la cláusula opcional ELSE va entre corchetes: [ELSE { ... }.

Si usa un elemento opcional, debe aparecer en la ubicación que se indica en el resumen de sintaxis en relación con los demás elementos.

Nunca deben usarse literalmente los corchetes en su script.

{ ... } Las llaves indican que se puede utilizar un bloque de código.

Las llaves son diferentes de los corchetes angulares y cuadrados que se utilizan en el resumen de sintaxis. No deben incluirse en su código los corchetes angulares y los corchetes cuadrados, pero las llaves deben incluirse literalmente en su código. Sin embargo, debe reemplazar los puntos suspensivos (...) dentro de las llaves en el resumen de sintaxis con las declaraciones Snippet.

Barra vertical ( | )

El carácter de barra vertical indica cuando puede elegir qué incluir en la declaración. Por ejemplo, en el resumen de sintaxis de la declaración ASSIGN , el carácter de barra vertical indica que tiene la opción de encerrar el valor entre comillas dobles:

ASSIGN <variable> = "<value>" | <value>

La explicación de la sintaxis explica la elección.

Puntos suspensivos (...)

Los puntos suspensivos indican una de dos cosas:

  • Dónde va el código en un bloque, si se encuentra entre llaves.
  • Un patrón continuo, si se encuentra entre corchetes cuadrados con una palabra clave.

Un ejemplo de los puntos suspensivos que se utilizan para indicar un patrón continuo se encuentra en el resumen de sintaxis SELECT:

SELECT <{ CASE <expression> [{ ... }] [CASE <expression> <{ ... }>] [CASE ...] [DEFAULT <{ ... }>] }>

El [CASE ...] indica que puede seguir añadiendo tantas cláusulas CASE como necesite siguiendo el patrón definido.

Por ejemplo, el resumen de sintaxis de las declaraciones IF que se utilizan en esta página es:

IF <expression> <{ ... }>

Este resumen muestra que:

  • La palabra clave es IF.
  • El siguiente elemento es una expresión necesaria.
  • El último elemento es un bloque de código necesario que debe estar encerrado entre llaves.

El resumen de la sintaxis para las declaraciones SWITCH es más complejo:

SWITCH <var> <{CASE <literal> [{ ... }] [CASE <literal> [{ ... }]] [CASE ...] [DEFAULT [{ ... }]] }>

Este resumen muestra que:

  • La palabra clave es SWITCH.
  • El siguiente elemento es la necesidad del nombre de una variable.
  • Es obligatorio el bloque de código y debe contener una cláusula CASE con un valor literal.
  • La cláusula CASE necesaria puede contener un bloque de código opcional.
  • El bloque de código de la declaración SWITCH puede incluir cláusulas CASE opcionales adicionales siguiendo el patrón que se define en el resumen.
  • El bloque de código de la declaración SWITCH puede contener una cláusula DEFAULT opcional con un bloque de código opcional.