Nueva forma para las variables localesEntre otras novedades que incluirá la versión definitiva de V7 está la conversión de las variables locales en objetos. Este hecho trae una serie de implicaciones importantes que facilitarán su uso y le darán mayor potencia.Al tratarse de objetos, ciertos aspectos problemáticos como la redundancia de variables, el seguimiento de los inspectores, etc., se ven solucionados ya que al tratarse de un objeto, la unicidad del identificador, la accesiblidad, etc., están garantizados. La creación de variables locales continuará siendo igual de sencilla, pero con la potencia que da crear un objeto.Unificación de las variablesEl siguiente paso, lógico por otra parte, ha sido unificar el objeto Variable Global con el objeto Variable Local. Van a ser por tanto una única cosa, un único objeto, y lógicamente se van a beneficiar de las mejoras que introduzcamos en cada uno. La diferencia radicará en el contexto en el que se desenvuelven.La variable local estará acotada al objeto desde el que se crea y su persistencia será en memoria independiente de las tareas en segundo plano. La variable global, sin embargo, continuará estando accesible según la persistencia definida y permitirá la herencia per sé, pudiendo ser por tanto usada desde las cajas que tengan conocimiento de la caja en que se encuentre.
Variables locales en objetosDecimos que la variable local estará acotada al objeto desde el que se crea porque trae otra novedad que se introducirá en V7 y que afectará en gran medida a su funcionamiento: además de los procesos, funciones, triggers y demonios, que ya tenían la posibilidad de crear una variable local, también los formularios y las rejillas tendrán la posibilidad de tener las variables locales como subobjeto,Desde los procesos que estén asociados con el objeto se tendrá acceso a las variables locales del objeto. Estas variables podrán estar alimentadas, por ejemplo, con el valor de los campos o con los totales de una columna en una rejilla.Mejoras en las variablesPero las novedades que aporta V7 en el ámbito de las variables son más todavía. Convergerán todos los tipos alfabéticos en uno único, válido para todos ellos. Así, los tipos de variable, tanto global como local, de tipo Alfa128, Alfa64, Alfa40, ya existentes en V6, y Alfa256, Latin1 y UTF-16, ya implementados en V7, se reducirán a un único tipo Alfabético.Además, ya no necesitaremos definir el tamaño de la variable, ya que este crecerá en consonancia con el contenido, incluidas las variables en disco. Únicamente las limitaciones de memoria, física y virtual, determinarán el tamaño de las variables.Nuevos tipos de variablesPero aún hay más. Una vez vista la necesidad de incorporar un nuevo tipo de variable local, al haberla unificado con las variables globales, aparece una nueva propiedad válida por tanto para ambas que se denominará Array, y que permitirá definir el número de dimensiones del array.Estarán por tanto disponibles en V7 variables de array multi-dimensionales, que podremos definir como numéricas, alfabéticas, booleanas, fecha, hora y tiempo.Las variables protagonizan una nueva revolución dentro de V7.