4D v13.4Tipos de datos |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v13.4
Tipos de datos
|
Tipos de datos | Campo | Variable | Expresión |
Cadena (ver nota 1) | Sí | Sí | Sí |
Numérico (ver nota 2) | Sí | Sí | Sí |
Fecha | Sí | Sí | Sí |
Hora | Sí | Sí | Sí |
Booleano | Sí | Sí | Sí |
Imagen | Sí | Sí | Sí |
Puntero | No | Sí | Sí |
BLOB (ver nota 3) | Sí | Sí | No |
Array (ver nota 4) | No | Sí | No |
Entero 64 bits (ver nota 5) | Sí | No | No |
Flotante (ver nota 5) | Sí | No | No |
Indefinido | No | Sí | Sí |
Notas
1. Una cadena puede ser un campo alfanumérico, una variable de longitud fija, o un campo o variable tipo Texto.
2. Un numérico puede ser una variable o campo de tipo Real, Entero, y Entero largo.
3. BLOB es la abreviación de Binary Large OBject. Para mayor información sobre BLOBs, consulte la sección .
4. Los arrays pueden ser de todo tipo. Para mayor información, consulte la sección .
5. Los tipos Entero 64 bits y Flotante, sólo son manejados vía SQL. No es recomendable trabajar con ellos vía el lenguaje 4D, porque en este caso ellos se convierten en tipo Real lo cual puede producir pérdida de precisión.
Cadena es término genérico que se utiliza para:
Una cadena se compone de caracteres. La gestión de cadenas de caracteres varia dependiento de si 4D se ejecuta en modo Unicode o en modo no Unicode (Modo de compatibilidad). Este modo se define vía las Preferencias de la aplicación (ver las sección Códigos ASCII ).
Modo Unicode
Modo no Unicode (compatibilidad)
Cada carácter puede ser uno de los 256 carácteres ASCII soportados por Windows y Mac OS. Para mayor información sobre los códigos ASCII, consulte la sección Códigos ASCII.
Sin importar el modo, puede asignar una cadena a un campo tipo texto o viceversa; 4D efectúa la conversión, truncando los valores si es necesario. Puede mezclar cadena y texto en una expresión.
Nota: en el manual del Lenguaje 4D, los parámetros de tipo Alfa y Texto en las descripciones de comandos son llamados Cadena, excepto cuando se especifique de otra forma.
Númerico es un término genérico que se utiliza para:
El rango de números de tipo Real es ±1.7e±308 (15 dígitos)
El rango de números de tipo Entero ( 2-bytes) es -32,768..32,767 (2^15..(2^15)-1)
El rango de números de tipo Entero largo (4-bytes) es -2^31..(2^31)-1
Puede asignar todo número de tipo numérico a otro número de otro tipo numérico; 4D hace la conversión, truncando o redondeando si es necesario. Sin embargo, cuando los valores se salen del rango, la conversión no devolverá un valor válido. Puede mezclar tipos de datos numéricos en expresiones.
Nota: en el Manual del lenguaje 4D, sin importar el tipo de dato, los parámetros de tipo Real, Entero, y Entero largo en descripciones de los comandos son llamados Numéricos, excepto cuando se establezca de otra manera.
Nota: en el Manual del lenguaje de 4D, los parámetros de tipo Fecha en las descripciones de los comandos son llamados Fecha, excepto cuando se establezca de otra forma.
Nota: en el Manual del lenguaje de 4D, los parámetros de tipo Hora en las descripciones de los comandos son llamados Hora, excepto cuando se establezca de otra forma.
Un campo, variable o expresión booleano puede ser VERDADERO o FALSO.
Nota: en el Manual de lenguaje, los parámetros de tipo Booleano en las descripciones se llaman Booleanos, a menos de que establezca de otra forma.
Un campo, variable o expresión de tipo Imagen puede contener imágenes Windows o Macintosh. En general, esto incluye cualquier imagen que se pueda colocar en el Portapapeles o leer desde el disco utilizando comandos de 4D o de un plug-in.
Nota: en el Manual del lenguaje 4D, los parámetros de tipo imagen en las descripciones de los comandos son llamados Imagen, a menos de que se establezca de otra forma.
Una variable o expresión de tipo puntero es una referencia a otras variables (incluyendo arrays y elementos de array), tablas o campos. No hay campos de tipo Puntero.
Para mayor información sobre Punteros, consulte la sección Punteros.
Nota: en el Manual de lenguaje, los parámetros de tipo Puntero en las descripciones de comandos son llamados Puntero excepto cuando se establezca de otra forma.
Un campo o variable de tipo BLOB es una serie de bytes (de un lago de 0 a 2 GB) que puede direccionar individualmente o utilizando los . No hay expresiones de tipo BLOB.
Nota: en el Manual de lenguaje de 4D, los parámetros BLOB en las descripciones de los comandos se llaman BLOB.
Un array no es realmente un tipo de datos. Los diferentes tipos de arrays (como Array entero, Array texto, etc.) se agrupan bajo este título. Los arrays son variables, no hay campos ni expresiones de tipo Array. Para mayor información sobre arrays, consulte la sección Arrays.
Nota: en el Manual de lenguaje, los parámetros de tipo Array en las descripciones de comandos son llamados Arrays, excepto cuando se establezca de otra forma (por ejemplo Array cadena, Array numérico, ...).
Indefinido no es realmente un tipo de datos. Denota una variable que no ha sido definida aún. Una función (un método de proyecto que devuelve un resultado) puede devolver un valor indefinido, dentro del método, el resultado de la función ($0) se asigna a una expresión indefinida (una expresión calculada con por lo menos una variable indefinida). Un campo no puede ser indefinido.
El lenguaje de 4D contiene operadores y comandos para convertir tipos de datos en otros tipos, en la medida en que las conversiones tengan sentido. El lenguaje 4D se asegura de la verificación de los tipos de datos. Por ejemplo, no puede escribir: "abc"+0.5+!12/25/96!-?00:30:45?. Esto generará errores de sintaxis.
La siguiente tabla lista los tipos de datos básicos, los tipos de datos en los que se pueden convertir y los comandos a utilizar para hacerlo:
Tipos a convertir | Convertir en cadena | Convertir en número | Convertir en fecha | Convertir en Hora |
Cadena | Num | Date | Time | |
Numérico (*) | String | |||
Fecha | String | |||
Hora | String | |||
Booleano | Num |
Nota: además de las conversiones de datos listadas en esta tabla, se pueden obtener conversiones de datos más sofisticadas combinando operadores y otros comandos.
Producto: 4D
Tema: Presentación del lenguaje
Arrays
Cadenas de caracteres
Condiciones y bucles
Constantes
Convenciones
Métodos
Operadores
Punteros
Símbolos de referencia de caracteres
Type
Variables