PC SOFT

AYUDA EN LÍNEA
DE WINDEV, WEBDEV Y WINDEV MOBILE

¡Nueva funcionalidad WEBDEV 25!
Este contenido proviene de una traducción automática.. Haga clic aquí para ver la versión original en inglés.
  • Esta lección le enseñará los conceptos siguientes
  • ¿Qué es una variable?
  • Declarar una variable
  • Asignación y uso
  • Los tipos de variables
  • El alcance de las variables
  • Alcance global
  • Alcance local
  • Diagrama resumen del alcance
  • Operaciones simples sobre las variables
  • Consejos
  • Detalles de tipo variable: las variables String
  • El tipo de cadena
  • Ejemplo práctico
  • Detalles de otro tipo de variable: los arrays
  • Declaración
  • Llenado de una array y acceso a los elementos
  • arrays avanzada
Apéndice 2. Las variables
Esta lección le enseñará los conceptos siguientes
  • ¿Qué es una variable?
  • Los diferentes tipos de variables.
  • El alcance de las variables.
  • El tipo de cadena en los detalles.
  • El tipo Array en detalles.
Duración de las clases

Tiempo estimado: 30 mn
Lección anteriorTabla de contenidoSiguiente lección
¿Qué es una variable?
En un lenguaje de programación, se utiliza una variable para almacenar datos. Estas secciones de memoria contienen cadenas, números, etc.
Las variables se utilizan para realizar cálculos, realizar comparaciones o almacenar información que se utilizará posteriormente.. La variable
Declarar e inicializar una variable
A está representada por:
  • un nombre: Nombre dado a la variable para que pueda ser utilizada por el lenguaje.
  • un tipo: Naturaleza de los datos almacenados en la variable (véase Los tipos de variables).
  • un valor: Información almacenada en la variable.
  • una escoba: Límite de utilización de la variable en el programa (ver El alcance de las variables). El ámbito de aplicación se define principalmente por la ubicación en la que se declara la variable.

Declarar una variable

La variable debe ser declarada (lo que significa creada) antes de que pueda ser utilizada.
  • Ejemplo de declaración simple:
    Price is currency
    • Price representa el nombre de la variable.
    • is se utiliza para declarar la variable. El lenguaje cotidiano se utiliza en WLanguage.
    • currency corresponde al tipo de variable.
  • Ejemplo de declaración múltiple:
    LastName, FirstName are strings
    • LastName, FirstName representan los nombres de las variables.
    • are se utiliza para declarar un conjunto de variables.
    • strings representa el tipo de variables.

Asignación y uso

Cuando se declara la variable, usted tiene la capacidad de asignarla (o de darle un valor).
Por ejemplo:
// Assign a currency variable
Price = 1256.67
// Assign a string variable
LastName = "Doe"
El operador = se utiliza para realizar esta asignación.

Observación

En WLanguage, el carácter " (doble comilla) es el carácter utilizado para delimitar una cadena de caracteres. En el ejemplo anterior, las comillas de dobles se utilizan para asignar el valor Doe a la variable LastName.
El contenido variable puede ser leído y manejado: todo lo que tienes que hacer es usar el nombre dado a la variable para acceder a ella.
El siguiente ejemplo se utiliza para leer y mostrar el contenido de la variable Precio en la pantalla:
Info(Price)
Los tipos de variables
El tipo de variable se utiliza para especificar el tipo de información que se almacenará en la variable. Los tipos más comunes son:
  • booleano (True o False),
  • ("Doe"),
  • entero (1234),
  • moneda (12,32),
  • reales (7.766.666),
  • etc.

Importante

Utilice el tipo correspondiente a la información que debe almacenarse. Por lo tanto, optimizará la memoria y evitará errores de cálculo o de proceso al utilizar variables en las funciones WLanguage.
Para más detalles, ver la ayuda sobre el tipo deseado (ver Los diferentes tipos de variables).

Observación

Otros tipos están disponibles, como arrays, estructuras, fechas, horas, ...
Las variables avanzadas también están disponibles. Estos tipos avanzados agrupan todas las características del elemento actualmente utilizado en una sola variable.
Se pueden utilizar tipos avanzados para documentos XML de manipular, correos electrónicos, archivos XLS, ... Este tipo de variable se utilizará más adelante en este tutorial.
El alcance de las variables
Las variables pueden ser declaradas en cualquier parte del código. Sin embargo, según la posición de su declaración, la variable no puede utilizarse para realizar procesos o cálculos.. Hablamos de un alcance variable.
Hay dos tipos de alcance disponibles:
  • Global.
  • Local.

Alcance global

Global significa que la variable tiene una visibilidad extendida en el código. La variable es visible fuera del lugar donde fue declarada. Hay varios niveles disponibles:
  • Proyecto y conjunto de procedimientos,
  • Ventana, Ventana móvil, Página, Reporte.
Una variable declarada a nivel de proyecto tiene la mayor visibilidad en el programa. La variable es visible en cualquier lugar, en todos los procesos del programa. Sin embargo, no debe declarar demasiadas variables con este alcance; de hecho, la memoria ocupada por la variable siempre está reservada, incluso si la variable no se utiliza.. La utilización de un gran número de variables globales no es recomendable en la arquitectura del programa.. Para pasar variables a un proceso, se recomienda utilizar parámetros (véase "Parámetros y resultado de un procedimiento") para más detalles.
Una variable declarada at Nivel de conjunto de procedimientos y una variable declarada a nivel de proyecto tienen la misma visibilidad.. La ventaja de declarar una variable a nivel de Set es agrupar (o clasificar) las variables por tema para hacer más legible el evento "Inicializar" del proyecto.
Una variable declarada en una ventana, ventana móvil, página o reporte limita el alcance de la variable a los eventos del elemento (ventana, ventana móvil, página o reporte) y a sus controles. Esto permite encapsular y limitar los usos.

Alcance local

Local significa que la variable tiene una visibilidad limitada en el código. La variable es visible en el proceso en el que fue declarada. Esto permite restringir el uso de variables al proceso.

Diagrama resumen del alcance

Alcance de las variables
Una variable es global cuando se declara:
  • en el código de inicialización del proyecto (o en el código de declaración del conjunto de procedimientos). La variable es global al proyecto.
  • En el código de declaración de variables globales de ventana, página o reporte. La variable es global al elemento (ventana, página o reporte) donde fue declarada.
En todos los demás casos, una variable es local al proceso en el que se declara.
Operaciones simples sobre las variables
Se pueden utilizar varios operadores matemáticos para realizar cálculos sobre variables:
  • + para realizar una suma.
  • - para realizar una resta.
  • * para realizar una multiplicación.
  • / para realizar una división.
Se pueden utilizar otros operadores para realizar los cálculos:
  • ++ para incrementar de 1 (suma 1 a la variable).
  • - para disminuir de 1 (restar 1 de la variable).
  • += para asignar sumando un valor.
  • += para asignar restando un valor.
Ejemplos:
// Declaration of variables
Cnt is int
V1 is int
Res is numeric

// Assignment
Cnt = 10
V1 = 3

// Use of operators
Cnt = Cnt + 3   // Cnt is equal to 13
Cnt ++ // Cnt is equal to 14
Cnt -= 8 // Cnt is equal to 6
Cnt = Cnt * V1 // Cnt is equal to 18
Res = Cnt / 5 // Res is equal to 3.6
Los operadores de comparación también están disponibles:
  • < Menos de,
  • > mayor que,
  • <= menor que o igual a,
  • >= mayor que o igual a,
  • <> diferente de,
  • = igual a.
Otros operadores están disponibles. Para obtener más información, consulte Lista de operadores.

Consejos

  • Es muy conveniente nombrar las variables con nombres largos (y evitar nombres cortos como i, j, k, ....). Cuando vuelva a leer el programa, podrá recordar fácilmente el propósito de la variable.
  • Para definir el nombre de las variables, se aceptan todos los caracteres Unicode (incluidos los caracteres acentuados).. Esto significa una legibilidad mejorada! Precaución: algunos caracteres no están permitidos: espacio, =, punto, coma,....
  • Es muy importante dar el tipo adecuado a la variable de acuerdo a su uso. Por ejemplo, para almacenar varios dígitos, puede que tenga que hacerlo:
    • utilizar una variable numérica si esta variable debe utilizarse para los cálculos.
    • utilizar una variable de cadena si esta variable debe utilizarse para almacenar dígitos sin realizar cálculos (por ejemplo, para almacenar el número de seguridad social).
Detalles de tipo variable: las variables String
Las variables String son los tipos de variables más utilizados.
Presentemos en detalle algunas características disponibles para este tipo de variables.

El tipo de cadena

El tipo String se utiliza para almacenar y manipular caracteres y strings.
Ya hemos visto cómo inicializar una variable de cadena:
LastName is string
// Assign a string variable
LastName = "Doe"

No hay necesidad de declarar la longitud de la cadena: esta longitud se adapta automáticamente cuando se utiliza la variable.

Consejo

Para inicializar una variable de cadena con un texto en varias líneas, utilice la siguiente sintaxis:
<Variable name> = [
               <Text of line 1>
               <Text of line 2>
               ]
Por ejemplo:
MyString is string
MyString = [
Example of
multi-line string
]
También tiene la capacidad de asignar una variable de cadena con el contenido de un control que maneja cadenas.. El siguiente código se utiliza para asignar una variable de cadena con el contenido de una control Campo de entrada:
LastName is string
// Assign a string variable
// with the content of EDT_LastName edit control
LastName = EDT_LastName

Además de los principales operadores de comparación, se utilizan varios operadores potentes para gestionar las extracciones y concatenaciones en modo avanzado.
Por ejemplo:
  • " + ": Para concatenar cadenas
  • " ~= ": Para comprobar la igualdad flexible
Se utilizan funciones específicas de WLanguage para realizar varias operaciones: búsqueda, extracción, tamaño, cambio a caracteres en mayúsculas, ....
Ejemplos:
str is string
str = "WEBDEV is a great tool"
// Extract a sub-string from left
Info(Left(str,6))  // Displays "WEBDEV"
// Extract a sub-string from right
Info(Right(str,4))  // Displays "tool"

Observación

Las diferentes funciones de WLanguage pueden ser anidadas. Una función WLanguage puede utilizarse como parámetro de otra función WLanguage.
Por ejemplo:
Info(Middle(Left(str,13),8,2)) // Displays "is"
Consulte las siguientes páginas de ayuda para obtener más detalles:

Ejemplo práctico

A manipular los diferentes conceptos de esta lección, vamos a crear diferentes ventanas. Estas ventanas se crearán en el proyecto "My_First_Pages".
  • Abra el proyecto "My_First_Pages" si es necesario.
    1. Abrir la página web de WEBDEV (Ctrl + <).
    2. Haga clic en "Tutorial" y, a continuación, en "Mis primeras páginas (Ejercicio)".
Para manipular las variables Character String, vamos a crear la siguiente página:
Página de prueba
TEsta página está acostumbrada a:
  • encontrar una cuerda dentro de otra.
  • comparar dos cuerdas.
  • Cree una nueva página en blanco:
    1. Haga clic en Crear un elemento en los botones de acceso rápido. La ventana para crear nuevos elementos se abre: haga clic en "Página", y luego en "Página". Aparece el asistente para la creación de páginas.
    2. Seleccione "En blanco".
    3. Validar. La página se crea automáticamente en el editor. Aparece la ventana para guardar un elemento.
    4. Especifique el título de la página: "Variables". El nombre de la página ("PAGE_Variables") se propone automáticamente.
    5. Haga clic en "OK" para validar la información mostrada en la ventana de guardar.
  • Para crear la control Campo de entrada que contiene la cadena:
    1. En la pestaña "Creación", en el grupo "Controles frecuentes", haga clic en Creación de una control Campo de entrada.
    2. Haga clic en el lugar donde se creará el control Campo de entrada (en la parte superior, en el centro de la página, por ejemplo).
    3. Haga clic con el botón derecho del ratón en el control y seleccione "Descripción".
    4. En la pestaña "General", especifique:
      • El nombre del control: "EDT_Texto.
      • El título de control: "Texto".
    5. Seleccione la pestaña "Contenido. Esta pestaña se utiliza para definir el valor por defecto de control Campo de entrada. Escriba "WEBDEV es una gran herramienta".
    6. Valide la ventana de descripción. El texto escrito se muestra directamente en el control.
Buscar una cadena
  • Para crear la control Botón "Buscar una cadena":
    1. En la pestaña "Creación", en el grupo "Controles frecuentes", haga clic en Crear un control Botón.
    2. Haga clic en la ubicación donde se creará el control Botón (por ejemplo, debajo del control Campo de entrada).
    3. Haga clic en el control que acaba de crear. El texto que se muestra en el control se puede editar. Escriba el título: "Encuentra una cuerda".
    4. Pulse Intro para validar la entrada.
    5. Visualizar los eventos asociados a la control Botón (pulsar F2).
    6. Escriba el siguiente código en el evento "Click" del servidor del botón:
      sSoughtString is string = "WEBDEV"
      nPos is int
      nPos = Position(EDT_Text, sSoughtString)
      IF nPos = 0 THEN
      Info(sSoughtString + " not found in the text")
      ELSE
      Info(sSoughtString + " found at position " + nPos)
      END
      Vamos a estudiar este código:
      • Se declaran dos variables: una variable String correspondiente a la cadena buscada y una variable Integer correspondiente a la posición de la cadena buscada.
      • Posición se utiliza para encontrar una cadena dentro de otra. En nuestro ejemplo, buscamos el contenido de sSoughtString en el contenido del control EDT_Text.
      • La sentencia IF se utiliza para verificar el resultado de Posición. Este tipo de declaración se presentará más adelante en esta sección de WLanguage.
      • Si Posición devuelve 0, significa que la cadena buscada no fue encontrada. Info muestra un mensaje.
    7. Cierre la ventana de código (haga clic en X en la esquina superior derecha del editor de código).
  • Ahora vamos a hacer la prueba de página:
    1. Haga clic en Ejecutar la prueba de una página entre los botones de acceso rápido (o pulse F9).
    2. La ventana que se acaba de modificar se guarda automáticamente y luego se inicia en ejecución.. Haga clic en el botón. La palabra WEBDEV se encuentra.
      Palabra encontrada
    3. Modifique el contenido de control Campo de entrada (reemplazando WEBDEV por WB por ejemplo) y haga clic en el botón. La palabra WEBDEV no se encuentra.
    4. Cierre el navegador.
Comparando dos cadenas
  • Para crear la control Botón "Comparar dos cuerdas":
    1. En la pestaña "Creación", en el grupo "Controles frecuentes", haga clic en Crear un control Botón.
    2. Haga clic en la ubicación donde se creará la control Botón (por ejemplo, a la derecha de la control Botón existente).
    3. Haga clic en el control que acaba de crear. El texto que se muestra en el control se puede editar. Escriba el título: "Compara dos cuerdas".
    4. Pulse Intro para validar la entrada.
    5. Adaptar el tamaño del control.
    6. Visualizar los eventos asociados a la control Botón (pulsar F2).
    7. Escribe el siguiente código en el evento "Click on (Server)":
      sStringToCompare is string = "WEBDEV"

      IF EDT_Text ~= sStringToCompare THEN
      Info("The displayed text corresponds to " + sStringToCompare)
      ELSE
      Info("The displayed text does not correspond to " + sStringToCompare)
      END
      Vamos a estudiar este código:
      • Se declara una variable String. Esta variable contiene la cadena para comparar.
      • El operador ~= corresponde a una igualdad flexible. Este operador se utiliza para realizar una comparación ignorando el caso, los espacios encontrados antes y después de la cadena y los caracteres acentuados..
        Observación: para escribir el signo "~", pulse AltGr + 2.
      • Si la comparación es verdadera, la control Campo de entrada corresponde a la palabra que se encuentra en la cadena para comparar independientemente del caso utilizado.
    8. Cierre la ventana de código (haga clic en X en la esquina superior derecha del editor de código).
  • Ahora vamos a hacer la prueba de página:
    1. Haga clic en Ejecutar la prueba de una página entre los botones de acceso rápido (o pulse F9).
    2. Haga clic en el botón "Comparar dos cadenas. El mensaje indica que la comparación no es correcta.
      Palabra no encontrada
    3. En la control Campo de entrada, escriba "WEBDEV" en mayúsculas y haga clic en el botón "Comparar dos cadenas".. Se encuentra la palabra WEBDEV.
    4. Modifique el contenido de control Campo de entrada (sustituyendo "WEBDEV" por "WEBDEV" por ejemplo) y haga clic en el botón. También se encuentra la palabra WEBDEV.
    5. Cierre el navegador.
Detalles de otro tipo de variable: los arrays
Los arrays son un tipo común de variable.
Un array es un tipo estructurado que se utiliza para agrupar un conjunto de elementos del mismo tipo. Cada elemento array puede ser accedido directamente por su índice.
Se utilizan funciones específicas de WLanguage para manipular, arrays y sus elementos.. Estas funciones comienzan con "Array".

Declaración

La declaración de una variable Array se realiza de la siguiente manera:
<Array name> is array of <Type of array elements>
Por ejemplo:
arrString is array of strings
arrInt is array of int

Llenado de una array y acceso a los elementos

Durante su declaración, la array está vacía. La función Añadir se utiliza para añadir elementos mediante la siguiente sintaxis:
Add(<Array name>, <Element value>)
Para acceder a los elementos array, utilice la siguiente sintaxis:
<Array name> [<Element subscript>]

Importante

Los subíndices de los elementos array comienzan desde 1.
Ejemplo:
// Create an array of strings
MyArray is array of strings
// Add elements
Add(MyArray, "WINDEV")
Add(MyArray, "WEBDEV")
Add(MyArray, "WINDEV Mobile")
// Display the content of third element
Trace(MyArray[3])  // Displays "WINDEV Mobile"

Consejo

Fast Inicialización de array
Para inicializar un array, también tiene la capacidad de usar la siguiente sintaxis:
// Declares an array
arrDay is array of strings
// Initialization with
// the names of the days of week
arrDay = ["Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday"]
Para obtener más información, consulte Array.

arrays avanzada

arrays avanzado también está disponible: array con varias dimensiones, array de arrays, array asociativo, array de estructuras, array de objetos, ...
Para más detalles, ver Array, Array asociativo, etc.
Lección anteriorTabla de contenidoSiguiente lección
Versión mínima requerida
  • Versión 25
Comentarios
Haga clic en [Agregar] para publicar un comentario