|
|
|
|
- Declaración de las enumeraciones
- Pasar una enumeración como parámetro a una Procedure
- Casos especiales
- extension de enumeración
- Creación de alias en una enumeración
- Los valores de associated
- Propiedades de la associated
- Funciones disponibles de WLanguage
- Límites
Enumeración (Tipo de Variable)
Una enumeración es una set de valores. Una Enumeración Variable o parámetro sólo puede ser asignado con un valor de la enumeración. // Declaration code // Declare an enumeration RobotType is Enumération Walk Stopped InMaintenance OutOfOrder END
// Declare an Enumeration variable Post1 is RobotType // Assign the variable Post1 = Walk // Post1 = 1 // Displays a compilation error // Post1 = "Walk" // Displays a compilation error
Sintaxis
Declarar una enumeración Ocultar los detalles
<Enumeration name> is Enumeration <Enumeration values> END
<Enumeration name>: Nombre de la enumeración a declarar <Enumeration values>: Diferentes valores que pueden ser tomados por la enumeración. <END>: Fin de la declaración. <Variable name>: Nombre de la Enumeración Variable a declarar. <Enumeration name>: Nombre de la enumeración que se declaró de antemano. El valor de enumeración de Default corresponde al primer valor de enumeración. Observaciones Declaración de las enumeraciones Se debe declarar una enumeración en: - El código de inicialización del proyecto para ser utilizado en todos los procesos del proyecto (código de proyecto, código de ventanas, código de controles, procedimientos, etc.).
- El código de declaración de las variables globales de una ventana para ser utilizadas en todos los procesos de la ventana (código de ventana, código de controles que se encuentran en la ventana, procedimientos locales, etc.).
- El código de apertura de un reporte para ser utilizado en todos los procesos del reporte (código del reporte, código de controles que se encuentra en el reporte, procedimientos locales, etc.).
- El código de declaración de una clase para ser utilizado en la clase.
- Para acceder a esta enumeración desde un método de clase, utilice la siguiente sintaxis:
- Para acceder a esta enumeración desde un código externo a la clase, utilice la siguiente sintaxis:
"<Class name>::<Enumeration name>"
- El código de declaración de la set s de procedimientos para ser usado en todos los procedimientos de la set.
Observación: Una enumeración es siempre global: - a un proyecto,
- a una ventana,
- a un reporte,
- a una clase.
Pasar una enumeración como parámetro a una Procedure Una variable de Enumeración puede ser pasada como parámetro a una Procedure. Para ello, utilice la siguiente sintaxis: <Procedure name>(<Name of enumeration variable>) Por ejemplo: // Procedure with an Enumeration parameter PROCÉDURE OperatingMode(p is RobotType)
// Calls with an Enumeration parameter OperatingMode(Walk) OperatingMode(1) // Displays a compilation error OperatingMode("A") // Displays a compilation error
Casos especiales - Entrada asistida: La entrada asistida para un parámetro de enumeración propone los diferentes valores de enumeración.
- Orden de los valores: Los operadores <, <=, >, >= están disponibles para las enumeraciones así como para las operaciones de ordenación automatic (ArraySort, ArraySeek, etc.). El orden de los valores en la enumeración es el orden en que se declaran los valores.
Ejemplo:
// Declaration code // Declare an enumeration RobotType is Enumération Walk Stopped InMaintenance OutOfOrder END
// Declare an Enumeration variable Post1 is RobotType // Assign the variable Post1 = Walk
...
IF Post1>Stopped THEN Info("The robot encounters a problem") END
extension de enumeración Una enumeración puede extender los valores de una o más enumeraciones tomando los valores de éstas y añadiendo nuevos valores. Se utiliza la siguiente sintaxis: <Enumeration name> is Enumeration [Base Enumeration] <Additional values of enumeration> END donde: - Nombre de la enumeración: Nombre de la enumeración que se declaró de antemano.
- Enumeración de la base: Nombre de la enumeración de la base a utilizar.
- Valores adicionales de enumeración: Valores adicionales que se tendrán en cuenta en la enumeración.
Ejemplo: // Declaration code // Declare an enumeration RobotType is Enumération Walk Stopped InMaintenance OutOfOrder END
AdvancedRobotType is Enumération [RobotType] InLoop END
No se permite la asignación de un valor extendido en una enumeración de base. Creación de alias en una enumeración Usted tiene la capacidad de declarar alias para asegurar una compatibilidad temporal, por ejemplo. Se utiliza la siguiente sintaxis: <Enumeration name> is Enumeration <Value 1 of enumeration> <Value 2 of enumeration> <Value 3 of enumeration> = <Value 1 of enumeration> END Ejemplo: // Declaration code // Declare an enumeration RobotType is Enumération Walk Stopped InMaintenance OutOfOrder // Declare the temporary aliases Maintenance = InMaintenance Breakdown = OutOfOrder END
Los valores de associated En WLanguage, un valor constante de tipo simple puede ser associated con cada valor de una enumeración. Este valor es associated con el valor de enumeración en la declaración de enumeración. // Declare the enumeration with associated values RobotType is Enumération Walk = "Running the robot" Stopped = "Robot stopped" InMaintenance = "Robot under maintenance" OutOfOrder = "Robot breakdown" END
Entonces, tendrá la posibilidad de leer el valor asociado de una Enumeración Variable a través de Valor. // Access to the associated value e is RobotType RobotMessage is string = e..Value
El valor de associated no tiene incidencia en los otros comportamientos de las enumeraciones. Especialmente si el orden de clasificación es idéntico al orden de declaración de los valores de la enumeración. Propiedades de la associated Las siguientes propiedades son associated con las variables de Enumeración: | | denominar | Permite conocer el nombre de una Enumeración Variable. | Valor | Permite conocer el valor asociado de una Enumeración Variable. |
Funciones disponibles de WLanguage Una enumeración puede ser almacenada en un elemento HFSQL o en otro formato de archivo. Dependiendo de sus necesidades, puede almacenar el nombre o el valor de la enumeración (propiedades denominar o Valor, respectivamente). Las siguientes funciones de WLanguage le permiten averiguar las características de una enumeración almacenada:
Límites - Las enumeraciones no están disponibles en la compilación dinámica.
- Las enumeraciones no pueden utilizarse fuera del proyecto.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|