 Utilización del editor de diccionarios

El diccionario ISaGRAF es una herramienta de edición para la declaración de variables internas, variables de E/S, instancias de bloques de función y "palabras definidas" de la aplicación. El diccionario agrupa a las variables declaradas e instancias de bloques de función de la aplicación, junto con las palabras definidas como cadenas constantes.

Básico

Ventana principal del diccionario

Gestión de variables

Descripción de objetos

Declaración rápida

Mapa de direcciones Modbus SCADA

Intercambio de información con otras aplicaciones

Enlace con otras herramientas de ISaGRAF

Configuración de protecciones individuales


Básico

Las variables, los bloques de función y las palabras definidas deben declararse en el diccionario antes de ser utilizados en el código fuente. Se pueden utilizar las variables y las palabras definidas con cualquiera de los lenguajes de automatización: SFC, FBD, LD, ST e IL. Los bloques de función utilizados en el lenguaje FBD no tienen que ser declarados, ya que los editores FBD y Quick LD de ISaGRAF declaran las instancias de los bloques utilizados de forma automática.

Variables

Palabras definidas

Instancias de bloques de función

Direcciones de red


Variables

Las variables están clasificadas por rango y por tipo. Sólo se pueden introducir variables del mismo tipo y rango en una misma plantilla de entrada. Los rangos básicos para variables son:

 GLOBALES	pueden ser utilizadas por cualquier programa del proyecto actual

 LOCALES	pueden ser utilizadas por un único programa

Los tipos básicos de variables son:

 BOOLEANAS	valores binarios verdaderos/falsos

 ANALÓGICAS	valores reales o enteros

 TEMPORIZADOR	valores de tiempo

 MENSAJE	cadenas de caracteres

Una variable está identificada por un nombre, un comentario, un atributo, una dirección de red y por otros campos específicos. A continuación se muestran los atributos básicos de una variable:

INTERNA	variable de memoria

ENTRADA	variable asociada a un dispositivo de entrada

SALIDA	variable asociada a un dispositivo de salida

CONSTANTE	variable interna de sólo lectura (con valor inicial)

Nota:	Los Temporizadores siempre son variables internas. Las variables de Entrada y Salida siempre tienen el rango GLOBAL.


Palabras definidas

Una 'palabra definida' es un alias que puede utilizarse en cualquier lenguaje para reemplazar una cadena de texto. El texto reemplazado puede ser el nombre de una variable, una expresión constante o una expresión compleja. Se clasifica las palabras definidas de acuerdo con su rango. Sólo se pueden introducir palabras definidas del mismo tipo y rango en una misma plantilla de entrada. Los rangos básicos son:

 COMUNES…..	pueden ser utilizadas por cualquier programa de cualquier proyecto

 GLOBALES….	pueden ser utilizadas por cualquier programa del proyecto actual

 LOCALES…..	pueden ser utilizadas por un único programa

Una palabra definida está identificada por un nombre, un bloque bien definido de equivalencias en texto ST y un comentario libre.


Instancias de bloques de función

Las instancias de los bloques de función utilizados en los lenguajes ST e IL deben declararse en el diccionario. Teniendo en cuenta que los bloques de función tienen datos internos "ocultos", se tiene que identificar cada copia de un bloque de función. En el siguiente ejemplo se muestra el bloque de función "R_TRIG" (detección de flanco de subida), que está definido en el diccionario y que se utiliza para la detección de flancos en diversas variables. Se tiene que identificar cada copia del bloque con un nombre único. Se efectúa la denominación del tipo de bloque y la definición de sus parámetros mediante la utilización del gestor de librerías:

Nombre del bloque:	R_TRIG

Parámetros:	Input=CLK

Output=Q

Se lleva a cabo la denominación de instancias mediante la utilización del editor de diccionarios:

Nombre instancia: TRIG_B1	Nombre bloque: R_TRIG

Nombre instancia: TRIG_B2	Nombre bloque: R_TRIG

Se pueden utilizar las instancias declaradas en programas ST:

TRIG_B1 (b1);

edge_b1 := TRIG_B1.Q;	(* b1 variable detección de flanco *)

TRIG_B2 (b2);

edge_b2 := TRIG_B2.Q;	(* b2 variable detección de flanco *)

Las instancias declaradas de bloques de función pueden ser GLOBALES (conocidas por cualquier programa del proyecto) o LOCALES para un único programa. Los bloques de función utilizados en los lenguajes FBD y LD no tienen que ser declarados, ya que los editores FBD de ISaGRAF declaran las instancias de los bloques utilizados de forma automática.

(* los bloques de función siempre tienen el nombre del bloque que se haya definido en la librería. Los editores FBD y Quick LD de ISaGRAF declaran una instancia automáticamente cada vez que se inserta un bloque en el diagrama *)

Las instancias de bloques de función declaradas por los editores FBD y Quick LD siempre son LOCALES para el programa editado.


Direcciones de red

Las direcciones de red son opcionales. Una variable con una dirección de red 'no cero' puede ser espiada por un sistema externo (por ejemplo, un sistema de visualización de procesos) durante el tiempo de proceso. En términos más generales, la dirección de red facilita un mecanismo de identificación para cada sistema de comunicaciones que no puede manejar nombres simbólicos. Se puede introducir una dirección de red para cada variable, durante su descripción completa, cuando se crea o se modifica una variable.


Ventana principal del diccionario

La ventana de edición muestra únicamente los campos principales de descripción de variables: nombre, atributo y dirección de red, junto con un comentario de texto. La descripción completa de la variable seleccionada está presente en todo momento en la barra de estado.

Utilizar los siguientes botones de la barra de herramientas para seleccionar el rango de la variable que se desea editar:

 COMUNES…..	los puede utilizar cualquier programa de cualquier proyecto

 GLOBALES….	los puede utilizar cualquier programa del proyecto actual

 LOCALES…….	los puede utilizar un único programa

Utilizar el control de tabulación desplegado con la barra de títulos para seleccionar el tipo de objeto que se desea editar:

Utilizar el campo de introducción de textos situado a la izquierda de la barra de herramientas para buscar un prefijo de nombre de variable. En este caso, se efectúa la búsqueda en toda la lista, desde el principio, con base en la selección actual. También se dispone de los comandos del menú "Edición / Buscar" para buscar una cadena de texto en nombres variables y comentarios, y desplazar la selección a esta variable. La búsqueda es siempre insensible al uso de mayúsculas o minúsculas.


Gestión de variables

Los comandos del menú "Fichero" actúan sobre toda la clase seleccionada de variables, instancias de bloques de función o palabras definidas. Utilizar el comando "Otro" para seleccionar el tipo y rango de los objetos que se desea editar..

Impresión de variables

Creación de variables nuevas

Modificación de variables existentes

 	Cortar y pegar

Clasificación de variables

Definir direcciones de red

Importación de cadenas booleanas "verdadero/falso"


Impresión de variables

Utilizar el comando "Fichero / Imprimir" para imprimir la lista que se está editando de variables o palabras definidas, en una impresora estándar de Windows™. La impresión se realiza utilizando el generador de documentos de ISaGRAF. Se incluye la descripción completa de cada variable o palabra definida del grupo que se está editando en ese momento.


Creación de variables nuevas

El comando "Edición / Nuevo" le permite al usuario la creación de nuevas variables, instancias de bloques de función o palabras definidas para el rango y tipo seleccionados. Se insertan las variables nuevas justo delante de la variable señalada por la barra de selección. Cuando se ejecuta este comando, se abre una ventana para introducir la descripción de la variable. Cuando se completa la descripción, se pulsa el botón  "Almacenar" para incorporarla en la lista. Se vuelve a abrir la ventana de entrada de forma automática para que el usuario pueda introducir otras variables con el mismo comando "Edición". Al pulsar el botón "Cancelar" de la ventana de diálogo, se interrumpe el proceso de creación de variables.


Modificación de variables existentes

El comando "Editar" del menú "Edición" le permite al usuario modificar la descripción de la variable que en ese momento está señalando la barra de selección. Cuando se ejecuta este comando, se abre una ventana de introducción de textos para modificar la descripción de la variable. Cuando se completa la descripción, se pulsa el botón "Almacenar" para habilitar la modificación. El usuario también puede pulsar los botones "Siguiente" y "Anterior" para hacer extensivo el comando de modificación a las variables adjuntas. Para cerrar la ventana de diálogo sin guardar las modificaciones, pulsar el botón "Cancelar".


 	Cortar y pegar

La herramienta de edición de diccionario de ISaGRAF permite la selección de líneas múltiples. Existen muchos comandos para trabajar con la lista de variables que se está editando en un momento dado. Se dispone de los siguientes comandos del menú "Edición":

COPIAR	Copia el grupo seleccionado de variables al portapapeles del diccionario

CORTAR	Copia el grupo seleccionado de variables y lo elimina de la lista editada

PEGAR	Insertar el contenido del portapapeles del diccionario delante de la variable seleccionada.

Se pueden utilizar las funciones de Copiar/Cortar/Pegar entre una lista de variables y otra. No se pueden utilizar entre listas compuestas por tipos de objetos diferentes.


Clasificación de variables

El comando "Herramientas / Ordenar" clasifica las variables o palabras definidas de la lista que en ese momento se está editando. El orden de clasificación está determinado por los atributos de las variables:

- primero, las variables internas

-después, las variables de entrada

- por último, las variables de salida

Las variables con el mismo atributo están clasificadas en orden alfabético. Las palabras definidas siempre están clasificadas en orden alfabético.


Establecimiento de direcciones de red
Definir direcciones de red

Las direcciones de red son opcionales. Las variables con direcciones de red 'no cero' pueden ser espiadas por un sistema externo (por ejemplo, un sistema de visualización de procesos) durante el tiempo de proceso. Se puede introducir una dirección de red para cada variable, durante el proceso de descripción completa, cuando se crea o se modifica una variable. El comando "Herramientas / Renumerar direcciones" le permite al usuario definir las direcciones de red de un grupo entero de variables. Cuando se ejecuta este comando, actúa sobre el grupo de variables que está seleccionado en la lista. La introducción de una dirección básica hexadecimal (dirección para la primera variable del grupo) resulta en la definición de direcciones de red consecutivas para todas las variables del grupo. La introducción de una dirección básica nula restablece en cero las direcciones de red de todas las variables seleccionadas.


Importación de cadenas booleanas "verdadero/falso"

Cuando se editan palabras definidas, el comando "Herramientas / Importar definiciones verdadero/falso" le permite al usuario definir automáticamente como palabras clave del lenguaje a las cadenas asociadas a las variables booleanas para representar estados TRUE y FALSE. Normalmente se define este tipo de cadena para formatear la depuración. Tienen que estar especificadas como palabras definidas si se van a utilizar en un programa. Este comando realiza una búsqueda de cadenas booleanas verdadero/falso en las declaraciones con el mismo rango que aquella que está seleccionada en la actualidad para la edición de las palabras definidas.


Descripción de objetos

Se introduce una descripción completa para cada variable, instancia de bloque de función o palabra definida. Los campos de descripción son distintos para cada tipo de objeto. Los siguientes campos son comunes para cualquier tipo de variable:

Nombre	Nombre de la variable: el primer carácter tiene que ser una letra y los restantes caracteres tienen que ser letras, dígitos o el símbolo '_'.

Dirección de red	Dirección de red hexadecimal (opcional). Cuando este campo no equivale a cero, la variable puede ser espiada por sistemas externos durante el tiempo de proceso.

Comentario	Comentario libre para la descripción de variables.

Retener	Esta opción indica que se tiene que guardar la variable en la memoria de seguridad.

 Estos son otros campos de descripción para una variable booleana:

Atributo	Especifica una variable interna, constante, de entrada o de salida.

Cadena "Falso"	Cadena utilizada para el valor falso durante la depuración.

Cadena "verdadero"	Cadena utilizada para el valor falso durante la depuración.

Establecer "verdadero" al inicio	El valor inicial es TRUE si se selecciona esta opción. En caso contrario, el valor inicial es FALSE.

 Estos son otros  campos de descripción para una variable analógica entera o real:

Atributo	Especifica una variable interna, constante, de entrada o de salida.

Formato	Especifica una variable entera o real (flotante). Se puede seleccionar el formato de visualización que se vaya a utilizar durante el proceso de depuración.

Cadena unidad	La cadena utilizada para identificar a la unidad física durante el proceso de depuración.

Conversión	El nombre de la tabla de conversión o la función de conversión asociada a la variable (sólo para variables de entrada o salida).

Valor inicial	Valor inicial de la variable (tiene que tener el mismo formato que la variable). Si no se especifica lo contrario, el valor inicial es 0.

 Estos son otros campos de descripción para una variable temporizador:

Atributo	Especifica una variable interna o constante.

Valor inicial	Valor inicial de la variable (valor de tiempo). Si no se especifica lo contrario, el valor inicial es time#0s.

 Estos son otros campos de descripción para una variable mensaje:

Atributo	Especifica una variable interna, constante, de entrada o de salida.

Longitud máx.	Especifica el número máximo de caracteres que pueden almacenarse en el mensaje.

Valor inicial	Valor inicial de la variable (la longitud no puede superar la capacidad del mensaje). Si no se especifica lo contrario, el valor inicial es una cadena vacía.

 Los campos de descripción para una palabra definida son:

Nombre	El nombre utilizado en los ficheros fuente ST: el primer carácter tiene que ser una letra, los siguientes caracteres tienen que ser letras, dígitos o el símbolo '_'.

Definición	Cadena de acuerdo con la sintaxis ST, que sustituye la palabra definida durante la compilación. Ejemplo: Nombre = PI - Equivalencia = 3.14159

Comentario	Comentario libre para la equivalencia definida

 Los campos de descripción para una instancia de bloque de función son:

Nombre	Nombre de la instancia, utilizado en ficheros fuente ST: el primer carácter tiene que ser una letra, los siguientes caracteres tienen que ser letras, dígitos o el símbolo '_'.

Tipo	Nombre del correspondiente bloque de función en la librería.

Comentario	Comentario libre para la instancia del bloque de función.


Intercambio de información con otras aplicaciones

La herramienta de edición del diccionario de ISaGRAF incluye funciones de importación/exportación que permiten el intercambio de información con otras aplicaciones, tales como procesadores de texto, hojas de cálculo, gestores de bases de datos, etc. Estos comandos están agrupados en el menú "Herramientas". El comando "Exportar texto" crea una descripción en texto ASCII puro de los campos que describen un conjunto de objetos editados, y almacena este texto bien en el portapapeles de Windows o bien en un fichero. Por lo general, la información de este tipo es utilizada por otras aplicaciones. El comando "Importar  texto" importa campos de descripción de declaraciones variables, descritos en formato de texto ASCII puro y almacenados bien en el portapapeles de Windows o bien en un fichero, y actualiza la lista que en ese momento se está editando con los campos importados. Por lo general, la información de este tipo está producida por otra aplicación.

Exportación de datos

Importación de datos

Formatos de texto disponibles

Palabras clave


Exportación de datos

La ventana de diálogo "Exportar variables" aparece cuando se ejecuta el comando "Exportar texto". Esta permite al usuario controlar el mecanismo de exportación.

Marcando la opción "Lista completa" indica que se tiene que exportar la lista editada completa. En este caso, se ignora la selección actual. Marcando la opción "Variables seleccionadas" se indica que sólo se exportarán las variables seleccionadas.

Al seleccionar la opción "Portapapeles", se guarda la información exportada en el portapapeles de Windows en formato de texto ASCII puro, quedando a disposición de los comandos de "pegar" de otras aplicaciones. Al seleccionar la opción "Fichero", el texto exportado se guarda en un fichero ASCII. Tiene que introducirse el nombre completo de la ruta de acceso de este fichero. Se puede utilizar el comando "Explorar" para encontrar un nombre de ruta existente.

Seguidamente, el usuario elige un formato para el texto exportado. Los formatos disponibles están descritos en secciones posteriores. Pulsar el botón "Aceptar" para ejecutar la función de exportación. Pulsar el botón "Cancelar" para cerrar la ventana de diálogo y salir del comando de exportación.

Todos los campos de los objetos seleccionados están almacenados en el texto exportado, en el orden estándar de declaración. La primera línea del texto exportado contiene los nombres de los campos. Cada objeto se describe en una línea de texto. El separador de "fin de línea" es la secuencia estándar de MS-DOS "0d-0a". Se pueden cambiar los nombres que se emplean para identificar los campos de la primera línea exportada, pulsando el botón "Palabras clave". Se describe este comando en secciones posteriores.


Importación de datos

La ventana de diálogo "Importar variables" aparece cuando se ejecuta el comando de "Importar  texto". Permite al usuario controlar el mecanismo de importación.

Si se selecciona la opción "Portapapeles", la información importada se toma del portapapeles de Windows, en formato de texto ASCII puro. Si se selecciona la opción "Fichero", se lee el texto exportado en un fichero ASCII. Se tiene que introducir la ruta de acceso completa del fichero. Se puede utilizar el comando "Explorar" para localizar un nombre de ruta de acceso existente.

La función de importación reconoce automáticamente el formato (los separadores) que se utiliza en el texto importado. Los formatos disponibles están descritos en secciones posteriores. Pulsar el botón "Aceptar" para ejecutar la función de importación. Pulsar el botón "Cancelar" para cerrar la ventana de diálogo y salir del comando de importación. Se pueden cambiar los nombres que se emplean para identificar los campos de la primera línea importada, pulsando el botón "Palabras clave". Se describe este comando en secciones posteriores.

La primera línea del texto tiene que contener los nombres de los campos, de acuerdo con el orden que se utilice para las líneas posteriores. Cada objeto se describe en una línea de texto. El separador de "fin de línea" es la secuencia estándar de MS-DOS "0d-0a". Los campos pueden aparecer en cualquier orden. En el caso de que falten campos, se rellenan automáticamente en la descripción de objeto importada con valores por defecto. Si un objeto importado ya existe en la lista editada, el usuario tiene que confirmar su sobrescritura y se actualiza la descripción del objeto con los campos importados. En el caso de que falten campos, no se actualizan en la descripción del objeto.


Formatos de texto disponibles

A continuación aparece una lista de los formatos que están disponibles para el comando de exportación. El comando de importación reconoce estos formatos automáticamente.

- separación por tabuladores

Descripción:	Los campos se separan mediante caracteres de tabulación.

Ejemplo:	Nombre	Atributo	Comentario

nivel	interno	cálculo interno nivel de agua

alrm1	salida	salida de alarma principal

- separación por comas

Descripción:	Los campos se separan mediante comas.

Ejemplo:	Nombre,Atributo,Comentario

nivel,interno,cálculo interno nivel de agua

alrm1,salida,salida de alarma principal

- separación por punto y coma

Descripción:	Los campos de separan mediante puntos y comas.

Ejemplo:	Nombre;Atributo;Comentario

nivel;interno;cálculo interno nivel de agua

alrm1;salida;salida de alarma principal

- comas y comillas

Descripción:	Los campos están separados por comas.

Cada campo aparece entre comillas.

Ejemplo:	"Nombre","Atributo","Comentario"

"nivel","interno","cálculo interno nivel de agua "

"alrm1","salida"," salida de alarma principal"


Palabras clave

Para cambiar los nombres utilizados para identificar los campos de la primera línea importada o exportada, pulsar el botón "Palabras clave". La ventana muestra la lista de campos de objetos y las palabras clave asociadas. Para modificar una palabra clave, el usuario tiene que seleccionar un campo de la lista y pulsar el botón "Modificar". Pulsar el botón "Por defecto" para restaurar la lista original de palabras clave. Los nombres de las palabras clave tienen que cumplir con las siguientes normas:

- el nombre no puede superar los 16 caracteres

- el primer carácter tiene que ser una letra

- los restantes caracteres pueden ser letras, dígitos o el símbolo '_'

- no se puede usar el mismo nombre para palabras clave diferentes

Las palabras clave estándares utilizadas en ISaGRAF son:

Nombre de objeto	Name

Comentario de texto	Comment

Dirección de red	Address

Atributos (interno, entrada, salida)	Attribute

Cadena booleana 'Falso'	False

Cadena booleana 'Verdadero'	True

Formato analógico (real o entero)	Format

Cadena unidad analógica	Unit

Nombre conversión analógica	Conversion

Longitud máxima mensaje	MaxLength

Bloque funciones, tipo librería	Library

Equivalencia palabra definida	Equivalence

Atributo interno	Internal

Atributo de entrada	Input

Atributo de salida	Output

Atributo constante	Constant

Formato analógico real	Real

Formato valor analógico entero	Integer


Enlace con otras herramientas de ISaGRAF

El menú de "Herramientas" contiene comandos para ejecutar otras herramientas útiles de ISaGRAF para la gestión de variables:

El comando "Conexión E/S" le permite al usuario ejecutar el editor de conexiones de ISaGRAF para el proyecto que está abierto. Si la variable de E/S actualmente seleccionada en la ventana de edición del diccionario ya se encuentra conectada, se muestra la correspondiente tarjeta de E/S cuando se abre la ventana de conexión de E/S.

El comando "Tablas de conversión" ejecuta el editor de Tablas de Conversión. Las tablas pueden ser asignadas a variables de E/S reales o enteras en el diccionario.

El comando "Referencias cruzadas" ejecuta el editor de Referencias Cruzadas para el proyecto que está abierto


Declaración rápida

El comando "Herramientas / Declaración rápida" permite declarar varias variables al mismo tiempo. Las variables creadas mediante declaración rápida se nombran usando una convención numérica. Para eso hay que definir:

- El índice (numero) de la primera y de la última variable,

- El texto a añadir, antes y después del número, en caracteres de la variable

- El número de dígitos que se utilizan para expresar el número en caracteres de la variable

Además se pueden especificar atributos básicos de las variables creadas (internas, entrada o salida…), y algunas propiedades dependiendo del tipo de variable (atributo de "Retención", formato entero o real, longitud máxima de la cadena de mensaje).

Siempre se necesita definir un texto para insertar antes de un número de variable, ya que el símbolo de una variable no puede empezar con un dígito. Cuando el número de dígitos se configura a "Auto", ISaGRAF formatea el número de variable al mínimo número de dígitos necesario. Cuando se especifica el número de dígitos, ISaGRAF formatea todos los números a la longitud especificada añadiendo caracteres '0' por delante. Configurar un número fijo de dígitos para los números de variable puede ser muy útil para prevenir contra una mala clasificación alfabética. Aquí están algunos ejemplos:

Ejemplo 1: Esta configuración para declaración rápida:

creará las siguientes tres variables:

Var9xx      Var10xx      Var11xx

Ejemplo 2: Esta configuración para declaración rápida:

creará 100 variables con nombres desde MiVar001 a MiVar100


Mapa de direcciones Modbus SCADA

Las "direcciones de red" de ISaGRAF se usan a menudo para establecer enlaces entre el sistema ISaGRAF y un SCADA basado en una comunicación MODBUS. EN este caso, el SCADA es un MODBUS maestro y el sistema ISaGRAF es un Modbus esclavo. Las direcciones de red se usan para crear un mapa virtual Modbus para todas las variables ISaGRAF que deben ser controladas por el SCADA. El comando "Herramientas / Mapa de direcciones Modbus SCADA" es muy potente para crear rápidamente un mapa virtual Modbus con las variables de la aplicación.

Las herramientas de mapeo muestran dos listas. La superior es un segmento del mapa Modbus (4096 posiciones), con las variables mapeadas (las que tienen dirección de red). La lista inferior muestra las variables no mapeadas (sin dirección de red definida). la dirección "0" no puede ser usada para mapear una variable.

Utilizar  los comandos "Mapear" y "Eliminar" del menú "Edición" para mover una variable de una lista a otra, y de este modo construir el mapa. las mismas acciones pueden realizarse haciendo doble click en un símbolo de una variable de la lista, para mandarla a la otra lista. En cualquier momento se puede desplegar la lista "Segmento" para ver otro segmento del mapa.

Los comandos del menú "Opciones" se pueden utilizar en cualquier momento para ver las direcciones en decimal o en hexadecimal.

Los comandos "Edición / Buscar" se usan para buscar una variable declarada, ya esté mapeada o no.


Configuración de protecciones individuales

El banco de trabajo de ISaGRAF proporciona un sistema completo de protección de datos basado en una jerarquía de contraseñas. La declaración de variables se puede proteger globalmente mediante una contraseña. Además ISaGRAF permite establecer protecciones individuales para cualquier variable declarada. esto supone que:

- las contraseñas ya están definidas en el sistema de definición de contraseñas (utilizar el comando "Proyecto / Establecer contraseña" de la ventana del gestor de proyectos) de modo que los niveles de protección estén disponibles para protección individual.

- Los niveles de protección para protección individual son de mayor prioridad que los de protección global de variables.

Cuando una variable tiene una protección individual, se dibuja un pequeño icono junto a su nombre en la lista de variables de la ventana del diccionario:

Utilizar los comandos del menú "Edición" "Establecer protección" y "Eliminar protección" para poner o quitar una protección individual a la variable seleccionada. Ambos comandos piden la introducción de una contraseña valida de modo que un nivel de protección pueda asociarse a la variable. Entonces cada vez que se quiera cambiar una variable con una protección individual se debe introducir una contraseña valida con suficiente nivel de prioridad.

Advertencia: si una variable se protege con un nivel y la contraseña correspondiente se elimina del sistema de protección, y si no hay definida una contraseña de nivel superior, la variable no puede cambiarse nunca más, a menos que se defina una contraseña con suficiente nivel.