|
|
|
|
- Lección 3 - Fechas, arrays y estructuras
- Presentación
- Variables de tipo Date, Time y Duration
- El tipo Date
- El tipo Time
- El tipo Duration
- Variables de tipo Array
- Declaración
- Rellenar un array y acceder a los elementos
- Recorrer un array
- Array asociativo
- Variables de tipo Structure
- El tipo Structure
- En resumen
Tutorial - Fundamentos de WLanguage
Lección 3 - Fechas, arrays y estructuras Abordaremos los siguientes temas: - Los tipos Date, Time y Duration.
- El tipo Array.
- El tipo Structure.
20 min Además de los tipos simples (boolean, integer, real, etc.), WLanguage propone varios tipos de variables que permiten manipular diferentes casos específicos. Vamos a ver de manera general estos diferentes tipos de variables con un pequeño ejemplo práctico para cada una de ellas. Para obtener más información, consulte la ayuda en línea de cada tipo. Variables de tipo Date, Time y Duration WLanguage propone diferentes tipos de variables para manipular fechas, horas y duraciones. El tipo Date Para las fechas, WLanguage propone el tipo Date. Se pueden utilizar diferentes funciones y propiedades para manipular las fechas. Usaremos un ejemplo de código pequeño para manipular las fechas: - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
Esta línea de código declara una variable de tipo Date. De forma predeterminada, la variable se inicializa con la fecha actual. - Ahora, veamos cómo asignar un valor a una fecha.
MyDate = Yesterday()
MyDate = "20210929"
Este código presenta las diferentes formas de inicializar una variable de tipo Date. La variable se puede inicializar: - mediante una función WLanguage. En este ejemplo, se utiliza la función Yesterday. WLanguage propone un gran número de funciones para determinar el primer o último día de un mes o año, ...
- mediante una cadena que contiene la fecha en formato "AAAAMMDD".
- También es posible cambiar los parámetros de la fecha usando propiedades WLanguage. Escriba el siguiente código:
MyDate.Year = 1985
MyDate.Month = 10
MyDate.Day = 26
- La función <Fecha>.ToString permite definir el formato para mostrar las fechas. También es posible utilizar la función <Fecha>.ToDayInAlpha. Por ejemplo, introduzca el siguiente código:
Trace(MyDate.ToString())
Trace(MyDate.ToString("Dddd Mmmm DD YYYY"))
Trace(MyDate.ToDayInAlpha())
- Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" contiene:
26/10/1985 Saturday October 26 1985 Saturday - la fecha en un formato legible.
- la fecha en un formato legible, utilizando una máscara de visualización.
- el día de la semana que corresponde a la fecha.
- También puede utilizar operadores de comparación entre fechas. Escriba el siguiente código:
IF MyDate < Today() THEN
Trace("The date is earlier than today")
END
La función Today permite obtener la fecha del día actual. - Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" contiene:
26/10/1985 Saturday October 26 1985 Saturday The date is earlier than today
El tipo Time Del mismo modo, se pueden manipular las horas utilizando el tipo Time. - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
MyTime is Time
MyTime = Now()
MyTime = "1525"
MyTime.Hour = 12
MyTime.Minute = 0
MyTime.Second = 0
Trace(MyTime.ToString())
Trace(MyTime.ToString("HH:mm:SS"))
IF MyTime < Now() THEN
Trace("The time is earlier than the current time")
ELSE
Trace("The time is later than the current time")
END
El código toma todas las posibilidades presentadas en las fechas y las aplica a las horas. - Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" muestra la información deseada.
12:00:00:00 12:00:00 The time is earlier than the current time - la hora en un formato legible.
- la hora en un formato legible, utilizando una máscara de visualización.
El tipo Duration Se puede escribir el mismo tipo de código para las duraciones. - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
MyDuration is Duration
MyDuration = 2 min 8 s
MyDuration = 2 min 8 s
MyDuration.InSeconds = 128
Trace(MyDuration.ToString("MM:SS"))
- Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" muestra la información deseada.
Los arrays son uno de los tipos de variable más utilizados. Un array es un tipo estructurado que permite agrupar una serie de elementos del mismo tipo. Se puede acceder directamente a cada elemento del array por su índice. Ciertas funciones específicas de WLanguage permiten manipular los arrays y sus elementos. Declaración Una variable de tipo Array se declara de la siguiente manera: <Array name> is array of <Type of array elements> Por ejemplo:
MyArrayOfStrings is array of strings
MyArrayOfIntegers is array of int
Rellenar un array y acceder a los elementos Al declarar el array, este está vacío. Los elementos se agregan con la función <Array>.Add utilizando la siguiente sintaxis: <Array name>.Add(<Element value>) Para acceder a los elementos de un array, utilice la siguiente sintaxis: <Array name> [<Element index>]
Advertencia
Los índices de los elementos del array comienzan en 1.
Usaremos un pequeño ejemplo de código para agregar elementos a un array: - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
MyArray is array of strings
MyArray.Add("WINDEV")
MyArray.Add("WEBDEV")
MyArray.Add("WINDEV Mobile")
Trace("Value of element 3: [%MyArray[3]%]")
- Probemos este código: haga clic en en los botones de acceso rápido.
- Si es necesario, abra el panel "Traza del depurador" para ver el resultado: en la pestaña "Inicio", en el grupo "Entorno", despliegue "Paneles", seleccione "Paneles" y, a continuación, haga clic en "Traza del depurador".
- El panel "Traza del depurador" contiene la siguiente información:
Value of element 3: WINDEV Mobile
Recorrer un array WLanguage ofrece dos métodos para recorrer los elementos de un array: - Un bucle estándar de tipo FOR .. TO.
- Un bucle FOR EACH.
Bucle estándar de tipo FOR .. TO En un bucle estándar de tipo FOR .. TO, deben especificarse los valores del índice de inicio (1) y fin. - Por ejemplo, agregue el siguiente código en el evento "Inicialización" del proyecto:
FOR Index = 1 TO MyArray.Count
Trace("Value of element [%Index%]: [%MyArray[Index]%]")
END
En este código, el índice de inicio es 1 y el índice de fin es dado por la propiedad Count del array. - Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" contiene la siguiente información:
Value of element 1: WINDEV Value of element 2: WEBDEV Value of element 3: WINDEV Mobile
Bucle FOR EACH WLanguage ofrece un tipo de bucle mucho más simple e igual de efectivo: el bucle FOR EACH. Ya lo hemos visto en las cadenas. Este tipo de bucle también se aplica a los arrays. En este caso, no es necesario especificar el índice de inicio o fin. - Por ejemplo, reemplace el código del bucle FOR por el siguiente código en el evento "Inicialización" del proyecto:
FOR EACH ELEMENT AString, Index OF MyArray
Trace("Value of element [%Index%]: [%AString%]")
END
En este caso, simplemente tuvimos que especificar el nombre de la variable que corresponde al elemento del array y la variable que corresponde al índice. - Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" contiene la siguiente información:
Value of element 1: WINDEV Value of element 2: WEBDEV Value of element 3: WINDEV Mobile
Para obtener más información sobre las variables de tipo Array, consulte la página Array. Array asociativo Un array asociativo es un tipo "avanzado" de array: permite agrupar una serie de elementos del mismo tipo. Cada elemento del array está indexado en cualquier tipo de información (y no solo en un índice numérico, como en otros tipos de arrays). Los Arrays asociativos (con o sin duplicados) se pueden manipular en WLanguage.
Hagamos una prueba rápida. - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
MyArray is associative array of Date
MyArray["Mark"] = "19820201"
MyArray["Anne"] = "19840604"
Trace("Value of element with key ""Mark"": " + MyArray["Mark"])
FOR EACH ELEMENT Value, Key, Index OF MyArray
Trace("Value of element [%Index%] with key [%Key%]: [%Value%]")
END
- Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" contiene la siguiente información:
Value of element with key "Mark": 19820201 Value of element 1 with key Mark: 19820201 Value of element 2 with key Anne: 19840604
Para obtener más información sobre las variables de tipo Associative array, consulte la página Associative array. Variables de tipo Structure El tipo Structure Una estructura es un tipo de datos personalizado. Las estructuras contienen diferentes tipos de variables. Usaremos un ejemplo de código pequeño para manipular las estructuras: - Elimine el código en el evento "Inicialización" del proyecto (presione Ctrl + A para seleccionar todo y "Supr" para eliminar).
- Escriba el siguiente código:
FullName is Structure
LastName is string
FirstName is string
END
Este código declara una estructura compuesta por dos variables, LastName y FirstName. Las variables que forman parte de una estructura se llaman "Miembros". Para manipular los miembros, debe declarar una variable del tipo de la estructura. - Ahora vamos a:
- Declarar una variable de tipo Structure. Agregue el siguiente código WLanguage:
- Asignar valores a los miembros de la estructura. Agregue el siguiente código WLanguage:
Contact.LastName = "POLO"
Contact.FirstName = "MARCO"
- Para leer el contenido de un miembro, utilice la siguiente sintaxis:
<Variable name>.<Member name> En nuestro ejemplo, escriba el siguiente código:
TheLastName is string
TheLastName = Contact.LastName
Trace(TheLastName)
Trace(Contact.LastName)
- Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" muestra:
Al igual que con los otros tipos de variables, también es posible manipular arrays de estructuras. Completemos nuestro ejemplo para probar el uso de arrays de estructuras: - Escriba el siguiente código después del código ya introducido:
MyContacts is array of FullName
Add(MyContacts, Contact)
Trace(MyContacts[1].LastName + " " + MyContacts[1].FirstName)
En este código, se crea un array que contiene la estructura FullName, luego se agrega el contacto creado previamente y finalmente se muestran el apellido y el nombre del contacto. - Probemos este código: haga clic en en los botones de acceso rápido.
- El panel "Traza del depurador" ahora muestra:
Para obtener más información sobre las variables de tipo Structure y Array of structures, consulte la página Structure. En esta lección, vimos algunos de los tipos de variables disponibles en WLanguage: - los tipos Date, Time y Duration,
- el tipo Array,
- el tipo Structure.
En la próxima lección, veremos cómo manipular algunas de estas variables usando declaraciones condicionales disponibles en WLanguage.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|