Declaraciones

La información de esta página de ayuda aplica tanto a Studio como a Desktop Studio.

Las declaraciones le permiten introducir nuevas variables, objetos o funciones en su script. Las palabras clave para estas declaraciones son:

  • ASSIGN: Utilice esta declaración cuando necesite crear una variable o un arreglo de cadenas.
  • DYNAMIC: Utilice esta declaración cuando necesite crear un objeto dinámico de datos.
  • FUNCTION: Utilice esta declaración para crear una nueva función en su script.

El análisis de cada tipo de declaración incluye un resumen de sintaxis. Estos resúmenes utilizan ciertas convenciones que indican las partes de la declaración y si es obligatoria u opcional cada parte.

ASSIGN Declaraciones

Description: ASSIGN statements create a variable with the name and value you specify.

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

Studio Action:  Assign

Details: ASSIGN statements create a <variable> and assigns a <value> to it. You don't need to declare a data type when you create a variable, unless it's a date/time type. Variables in Studio are implicity typed, which means you can create and assign a value in one step. For example: 

ASSIGN oneName = "Odin"

Si es numérico el valor que está asignando a una variable, no es necesario ponerlo entre comillas dobles. Si el valor es una cadena, debe estar entre comillas dobles.

You can use ASSIGN statements to create a string array:

ASSIGN manyNames = "Odin|Freya|Thor"

You can assign one variable as the value for another variable: 


ASSIGN x =  1
ASSIGN y = x 
ASSIGN var1 = z

The variable on the right side of the equal sign doesn't need to be enclosed in curly braces and double quotes if the variable is already declared. The script evaluates the term on the right side of the equal sign. If it's not in curly braces and double quotes and it's not numeric, the script assumes it's a variable. If it already exists, the script assigns its value to the second variable. If it isn't declared, the script creates it with a null value.

You can assign a value to a dynamic object member using ASSIGN. After you declare the object with DYNAMIC, use ASSIGN to assign values to the object's members. If the member doesn't already exist, it's created when you assign a value to it. Use this syntax: ASSIGN <name>.<key> = <value>

No es necesario utilizar la palabra clave ASSIGN al declarar una variable o una matriz de cadenas. Sin embargo, es útil usarla. Incluir ASSIGN hace que sea más fácil localizar en su script el lugar donde introdujo la variable o matriz usando la Búsqueda avanzada. Sin ASSIGN, debe buscar el nombre de la variable o matriz. Los resultados de la búsqueda contendrán todas las referencias a la variable o matriz en su script. Cuando incluye ASSIGN en su término de búsqueda, la búsqueda devuelve únicamente los resultados donde está asignada explícitamente la variable. Para declarar una variable sin ASSIGN, utilice esta sintaxis: <name> = "<value>"

Naming Guidelines: Follow these guidelines when naming variables:

  • Utilice caracteres alfanuméricos (a-z, A-Z, 0-9).

  • El primer carácter del nombre debe ser una letra.
  • Utilice el carácter de guión bajo ( _ ) y el signo de dólar ( $ ) en cualquier parte del nombre.
  • Si el último carácter en el nombre de una variable es un signo de dólar, elel valor se trata como texto.
  • No utilice los nombres de variables predefinidas o palabras reservadas.

Learn More: More information about variables is available on the Variables help page.

DYNAMIC Declaraciones

Descripción: las declaraciones DYNAMIC crean una variable de objeto dinámico de datos con el nombre especificado.

Sintaxis: DYNAMIC <name>

Detalles: Un objeto dinámico de datos es una variable que puede contener múltiples valores. Son similares a los arreglos, pero tienen algunas diferencias clave.

Los valores que contienen los objetos dinámicos de datos se denominan parámetros. Se definen como pares clave-valor, donde cada parámetro tiene una clave (nombre) y un valor. Después de declarar el objeto con la palabra clave DYNAMIC, usted puede definir los miembros del objeto.

Por ejemplo:

DYNAMIC beowulfCharacteristics
beowulfCharacteristics.name = "Beowulf"
beowulfCharacteristics.occupation= "Hero" 
beowulfCharacteristics.foe = "Grendel" 

El caso importa cuando se hace referencia a objetos dinámicos de datos y sus parámetros. BeowulfCharacteristics no es lo mismo que beowulfCharacteristics.

Si es numérico el valor que está asignando a un objeto, no es necesario ponerlo entre comillas dobles. Si el valor es una cadena, debe estar entre comillas dobles.

Utilice DYNAMIC para declarar cualquier objeto que se transfiera a su secuencia de comandos desde otras secuencias de comandos o integraciones. Deben declararse los objetos en cada script o se causará un error de validación en el script al guardarlo.

Directrices para la Nomenclatura: Al nombrar objetos dinámicos de datos, siga estas directrices:

  • Utilice caracteres alfanuméricos (a-z, A-Z, 0-9).

  • El primer carácter del nombre debe ser una letra.
  • Utilice el carácter de guión bajo ( _ ) y el signo de dólar ( $ ) en cualquier parte del nombre.
  • No utilice los nombres de variables predefinidas o palabras reservadas.

Más información: Hay más información sobre objetos dinámicos de datos en las páginas de ayuda de Objetos y Estructuras de datos.

DYNAMIC tiene otro uso importante, que es crear declaraciones para objetos que se transfieren al script desde otras fuentes. Si no declara estos objetos, se produce un error cuando se guarda el script. .

FUNCTION Declaraciones

Descripción: Crea una función personalizada.

Sintaxis para declarar: FUNCTION <name><([parameter], [...])> <{ ... [RETURN [data]]}>

Sintaxis para llamar: <functionName><([parameter], [parameter], [...])><{<varName>.<functionName><([parameter], [parameter], [...])>}>

Detalles: Declare una función dándole un <name> con un conjunto de paréntesis abiertos y cerrados al final. Por ejemplo, FUNCTION functionName(). Agregue el [parameters] opcional entre paréntesis. Los parámetros le permiten pasar datos, argumentos llamados, dentro y fuera de la función.

Entre las llaves { RETURN <data>} después del encabezado de declaración, incluya el código que desee que ejecute el script cuando se llame a la función. Finalice el código con la palabra clave RETURN seguida de la variable <data> que desee que contenga la salida de la función. Solo es necesario incluir una variable después de RETURN si necesita devolver datos al script que hace la llamada.

Los nombres de las funciones siempre deben incluir paréntesis, incluso si la función no tiene parámetros. Por ejemplo:

FUNCTION noParams()

FUNCTION twoParams(name, accountNum)

Puede llamar a una función en su script cuando necesite usar el código que ésta contiene. La sintaxis que utilice para llamar a la función depende de si la función devuelve un valor.

Si la definición de función tiene <parameters>, el script debe pasar la información adecuada a la función. Debe incluir los parámetros en la llamada a la función. Incluya todos los parámetros en el mismo orden en que aparecen en la definición de la función. Por ejemplo, callVar.twoParams('Beowulf', 349839)

Si desea que se asigne a una variable el resultado de la función, puede llamar a la función como parte de una declaración ASSIGN. Por ejemplo, ASSIGN var = otherVar.function(). Sin embargo, hay un caso en el que esto no funciona, y es llamar a una función miembro de la GetRESTproxy() función.

Agregue un comentario después del nombre de la función en la definición de ésta para ofrecer ayuda en línea para la función. La ayuda en línea ofrece sugerencias en los menús emergentes a medida que escribe en la ventana Snippet editor.

Directrices para la Nomenclatura: Al nombrar funciones, siga estas directrices:

  • Utilice caracteres alfanuméricos (a-z, A-Z, 0-9).

  • El primer carácter del nombre debe ser una letra.
  • Utilice el carácter de guión bajo ( _ ) y el signo de dólar ( $ ) en cualquier parte del nombre.
  • No utilice palabras reservadas ni nombres de funciones integradas.

Más información: Hay más información sobre funciones en la página de ayuda Funciones.

Ejemplo

FUNCTION TimerRound(Timer)
{
  IF Timer = "-1"
  {
    ASSIGN Timer = Timer
  }
  ELSE
  {
    ASSIGN PeriodLocation = Timer.indexof('.')
	IF PeriodLocation = 0
	{
	  ASSIGN Timer = Timer
	}
	ELSE
	{
	    ASSIGN DataLength = Timer.length
	    IF DataLength - PeriodLocation <= 2
	        {
	          ASSIGN Timer = Timer
            }   
	    ELSE
	     {
            ASSIGN DigitCheck = Timer.substr(PeriodLocation + 3, PeriodLocation + 3)
            IF DigitCheck >=5 && DigitCheck <= 9
               {
                  ASSIGN Timer = Timer + .01
               }
            ELSE
              {
                 ASSIGN Timer = Timer
              }
		
            ASSIGN Timer = Timer.substr(1, PeriodLocation + 2)
         }
      }
   }
  
   TRACE "{Timer}"
   RETURN Timer
}

IF TEST = 1
   {
      ASSIGN DC1 = "1.931876668494874"
   }   

   ASSIGN DC1 = TimerRound(DC1)