LanguageOptions (Propiedad)
Esta propiedad del objeto de aplicación ofrece la capacidad de controlar las configuraciones generales del lenguaje Visual FoxPro. Incluye la capacidad de comprobar la declaración incorrecta de variables de memoria.
_VFP.LanguageOptions [= eValue]
Parámetros
eValue
Valor de bit | Descripción |
---|---|
1 | Es necesaria la declaración estricta de tipos para las variables de memoria. |
Observaciones
Cuando se establece el valor de LanguageOptions a 1, habrá que declarar todas las variables de memoria y matrices como LOCAL o PUBLIC antes de utilizarlas. Si se intenta utilizar una variable o matriz no declarada, se generan resultados en la ventana DEBUG OUTPUT. No se genera ningún error. Puede registrar estos resultados en un archivo, como en el código siguiente:
SET DEBUGOUT TO MyErrorFile
Los resultados de las variables no declaradas en LanguageOptions se delimitan con comas, con el formato siguiente:
LangOptionsErr, DateTime, cLineNo, cProcedure|cMethod, cFileName, cVarName
Elemento | Descripción |
---|---|
LangOptionsErr | Especifica el nombre del tipo resultante para búsquedas y filtros |
DateTime | Especifica la marca de tiempo en el momento de la ejecución (= DATETIME( )) |
cLineNo | Especifica el número de línea donde se produjo el error (=LINENO( )) |
cProcedure|cMethod | Especifica el nombre del procedimiento o método en el que se produjo el error ( = PROGRAM( )) |
cFileName | Especifica el nombre del archivo en el que se produjo el error. (=SYS(16( )) |
cVarName | Especifica el nombre de la variable no declarada. |
Al declarar las variables como PRIVATE no se crea una variable (a diferencia de lo que ocurre al declararlas como PUBLIC o LOCAL), así que el código siguiente genera una entrada en el registro:
PRIVATE myvar
myvar = 1
Los comandos que crean variables instantáneamente, tales como SCATTER … NAME, REPORT… NAME y otros, generan entradas de registro, porque tales variables se crean como PRIVATE.
Ejemplo
El código siguiente muestra los resultados de depuración consecuencia de escribir una variable no declarada, RR.
example:
vfp.LanguageOptions=1
RR=4
LangOptionsErr,01/23/01 03:02:41 PM,11,TTT,C:\VFP\TEST\TTT.FXP,RR
En Visual FoxPro sólo se exige el uso estricto de tipos en tiempo de ejecución; deberá ejecutar el código para detectar errores. El uso estricto de tipos afecta a las versiones de desarrollo y de tiempo de ejecución de Visual FoxPro.
Nota El uso de variables privadas como las declaradas con el comando PRIVATE o las creadas mediante la cláusula NAME de determinados comandos generarán errores. Cuando distribuya código que pueda verse afectado si los programadores establecen el valor de esta propiedad en 1, deberá protegerlo de forma que restaure el valor de esta propiedad en 0 cuando sea necesario.
Vea también
PUBLIC | PRIVATE | LOCAL | Establecer propiedades en tiempo de ejecución | Declaración de variables
Se aplica a: Application (Objeto) | _VFP (Variable del sistema)