4D v16.3

Utilizar tokens en fórmulas

Inicio

 
4D v16.3
Utilizar tokens en fórmulas

Utilizar tokens en fórmulas  


 

El lenguaje de 4D incluye un sistema de tokenización único para todos los nombres de los objetos del lenguaje que se utilizan en el código (constantes, comandos, tablas, campos y palabras claves). Tokenizar estos nombres significa almacenarlos internamente como referencias absolutas (números) y luego se restauran durante la ejecución o visualización en función del contexto. Esto le permite garantizar que el código siempre será interpretado correctamente, incluso si cambia el nombre de las tablas o campos, o cuando los comandos del lenguaje 4D cambian de nombre a lo largo de las diferentes versiones de la aplicación.

Nota: esto también garantiza la traducción automática del código cuando se ha activado la opción "Usar configuración del sistema regional" en la Página Métodos de las Preferencias y abrir sus bases con las versiones de 4D en diferentes idiomas.

La Tokenización es completamente transparente para los desarrolladores 4D al trabajar en el editor de código. Sin embargo, este mecanismo no se aplica de forma automática en las fórmulas 4D ya que consisten en texto que se interpreta durante la ejecución y no cuando se escribe.  De hecho, este es el caso tan pronto como el código 4D se expresa en forma de texto sin formato, más específicamente cuando se exporta código y luego se importa utilizando los comandos METHOD GET CODE y METHOD SET CODE, copiar/pegar o interpretado desde Etiquetas HTML 4D.
Para seguir beneficiándose de los mecanismos de tokenización en estos contextos, sólo tiene que utilizar una sintaxis explícita (descrita más adelante), que consiste en preceder los nombres de los objetos del lenguaje de su token.

Por defecto, el mecanismo de tokens no se implementa automáticamente en las fórmulas 4D (así como en los contextos donde el código 4D se expresa en forma de texto sin formato, ver abajo). Por consiguiente, 4D propone, para los elementos llamados contenidos en las expresiones, una sintaxis especial que puede utilizar para referenciar directamente los tokens: sólo tiene que añadir un sufijo específico después el nombre del elemento para indicar su tipo (comando, campo, etc.), seguido por su referencia. La sintaxis tokenizada se detalla en la siguiente tabla:

ElementoEjemplo (sintaxis estándar)SufijoEjemplo (sintaxis tokenizada)Comentarios
Comando 4DCadena:CxxString:C10(a)xx es el número del comando
Tabla[Employees]:xx[Employees:1]xx es el número de la tabla
Campo[Employees]Name:xx[Employees:1]Name:2xx es el número del campo
Plugin 4DPV PRINT(area):Pxx:yyPV PRINT:P13000:229(area)xx es el ID del plug-in y yy es el índice del comando

Nota: las letras mayúsculas (C, P) deben utilizarse en los sufijos; de lo contrario, no se interpretarán correctamente.

Cuando se utiliza esta sintaxis, usted garantiza que sus fórmulas se interpretarán correctamente incluso en caso de cambio de nombre o cuando la base de datos se ejecuten en un lenguaje diferente.

Nota: las constantes también se tokenizan en el lenguaje sin embargo, en las fórmulas sólo puede pasar su valor con el fin de hacerlas independientes del contexto.

Esta sintaxis es aceptada en todas las fórmulas 4D (o expresiones 4D), independientemente del contexto de llamada:

La sintaxis tokenizada requiere la adición de los números de referencia de los elementos. La ubicación de estas referencias depende del tipo del elemento.

Los números de los comandos se pueden encontrar en este manual Lenguaje (área "Propiedades"), así como en la página Comandos del Explorador:

Los números de tablas y de campos se pueden obtener utilizando los comandos Table y Field.

También se muestran en la Inspector del editor de estructura:

Para saber cuáles son los tokens de los comandos de plug-ins 4D, el truco consiste en introducir el código deseado en el editor de métodos y reiniciar 4D después de desactivar el plug-in (por ejemplo, moviendo su carpeta). Esto significa que sólo los tokens se mostrarán en el editor de métodos, y a continuación, puede copiar los que necesite.

Código con plug-in instalado:

El mismo código con inactivación del plug-in:



Ver también 

METHOD GET CODE

 
PROPIEDADES 

Producto: 4D
Tema: Fórmulas

 
HISTORIA 

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)