Novedades de 4D v19 R4

LENGUAJE 4D

retornar, CONTINUAR, saltar ¡Y MÁS!

Hemos escuchado y seguido sus peticiones de funcionalidades en 4D Forum con varias mejoras en el lenguaje 4D.

  • Empezando por las instrucciones que permiten saltar un bloque de código:
    • La palabra clave return termina la ejecución del método o función en la que aparece y devuelve el control al método que lo llama. También puede devolver un valor opcional.
    • La palabra clave break termina el bucle que la contiene. La siguiente instrucción que se ejecuta es la que está inmediatamente después del cuerpo del bucle.
    • La instrucción continue termina la ejecución de las instrucciones en la iteración actual del bucle y continúa la ejecución del bucle con la siguiente iteración.
  • Seguido de la evaluación de cortocircuito: en una expresión que utiliza un operador AND u OR, una evaluación de cortocircuito significa que el segundo argumento se ejecuta o evalúa sólo si el primer argumento no es suficiente para determinar el valor de la expresión. Para ello, añadimos dos nuevos operadores:
    • && para el operador AND:
    • || para el operador OR
  • Y luego tenemos un operador ternario, que es una condición seguida de un signo de interrogación ( ? ), una expresión a evaluar si la condición es verdadera seguida de dos puntos (:), y finalmente la expresión a evaluar si la condición es falsa:
    expresión booleana ? valor si cierto : valor si falso.

 

NUEVO COMANDO PARA OBTENER INFORMACIÓN DETALLADA SOBRE LAS LICENCIAS

4D v19 R4 se entrega con un nuevo comando que da toda la información sobre el uso de las licencias: Get License Usage. También hemos ampliado nuestros registros de diagnóstico. Gracias a esta función, podrá revisar el consumo de licencias en su servidor, optimizar su uso y planificar sus necesidades futuras.

 

MÁS OPCIONES PARA EL COMANDO OBJECT SET ENTERABLE

El comando OBJECT SET ENTERABLE ha sido mejorado, permitiéndole gestionar mejor un campo que no es editable. Como tercer parámetro, el comando soporta un booleano o un entero. 

  • Así que puede utilizar el comando como antes sin cambiar su código pasando un booleano. Sólo se modificará la propiedad editable (Falso o Verdadero).
  • O puede pasar un entero. De este modo, puede definir la propiedad editable y enfocable para su campo.

 

INTERFAZ DE USUARIO

High DPI En Windows: soporta pantallas de alta resolución

High DPI significa “High Dots Per Inch” (altos puntos por pulgada). Representa la densidad de píxeles; cuanto mayor sea el DPI, mayor será la densidad de píxeles. En las pantallas 4K, la densidad de píxeles puede ser tan alta que la visualización, como es habitual, haría que todos los iconos y controles fueran extremadamente pequeños. Por ello, Windows permite cambiar la escala del texto, los iconos y los controles. En las pantallas 4K, está activado por defecto. Primero soportamos altos DPI en Mac, y con la v19R4, 4D es ahora totalmente compatible en Windows, también. El resultado es una mejor calidad de texto e imagen.

 

workers SISTEMA

LANZAR UN PROCESO EXTERNO DE FORMA ASÍNCRONA

Otra funcionalidad muy solicitada está disponible para usted. A veces, necesita ejecutar procesos en segundo plano y realizar acciones específicas basadas en su código de salida tan pronto como esté disponible, mientras el proceso sigue en marcha. Por ejemplo, para mostrar una barra de progreso. 4D le permite iniciar un proceso en segundo plano con la nueva clase 4D.SystemWorker y ejecutar automáticamente métodos de retrollamada cuando el proceso devuelva información. Por lo tanto, si lo utiliza con una interfaz, ésta sigue respondiendo a su usuario mientras el proceso externo se está ejecutando, y cuando termina, puede mostrar el resultado a su cliente.

 

ORDA

DIGA HOLA A LOS ALIAS

4D v19 R4 se entrega con un nuevo concepto de ORDA: los alias. Son la continuación lógica y complementaria de los atributos calculados. Como su nombre lo indica, un alias es, de hecho, un acceso directo a un objeto del datastore existente. Se definen en la “clase de datos de la entidad” como los atributos calculados. Mientras que un atributo calculado puede procesar cualquier cálculo o fórmula, un alias es sólo un acceso directo, lo que hace que el desarrollo sea más rápido y sencillo. Un ejemplo de uso es dar un acceso fácil a los atributos relacionados (lo que significa ocultar la complejidad de una base de datos relacionada).

 

DESACTIVAR LA ASIGNACIÓN POR DEFECTO DE UN VALOR NULO A UN VALOR vacío

Cuando crea un nuevo campo en su base de datos, 4D le permite elegir o no mapear valores NULO a valores vacíos. A partir de 4D v19 R4, en los nuevos proyectos, 4D ya no mapeará por defecto el valor NULO a datos ausentes.

Esto es beneficioso porque ORDA está perfectamente diseñado para trabajar con valores NULOS, y le evitará muchas soluciones poco elegantes.

 

GESTIÓN DE BLOQUEO PESIMISTA A TRAVÉS DE REST

Con 4D v19 R4, puede utilizar la API REST para bloquear o desbloquear una entidad. Esto es particularmente útil para:

  • Mantener un código consistente si está acostumbrado a trabajar con la API REST. No hay necesidad de escribir una función en las Clases del Modelo de Datos ORDA para bloquear/desbloquear una entidad.
  • Utilizar sin problemas el bloqueo pesimista con la API REST.

 

4D for Mobile

ATRIBUTOS OBJETO PARA APLICACIONES AVANZADAS

Hasta ahora, puede utilizar casi todos los tipos de atributos en sus proyectos móviles: texto, fechas, hora, enteros. 4D v19 R4 trae otro más: los atributos objeto. Permitiéndole mostrar campos de objeto en su aplicación móvil en formato legible por humanos o en formato JSON. Los campos objeto se utilizan para almacenar varios datos en su aplicación 4D; ahora, son fácilmente utilizables en las aplicaciones móviles. ¿Qué significa? Construir aplicaciones iOS y Android aún más avanzadas está al alcance de su mano.

 

MEJORAS EN LA GESTIÓN DE DATOS

Con 4D v19 R4, la sección de datos se ha mejorado para darle más información sobre los datos que empaquetará con su aplicación móvil. Por ejemplo, obtendrá el número exacto de entidades y el tamaño de los datos para cada clase de datos, evitando obtener demasiados datos en su aplicación móvil. Esta mejora también le ayudará a comprobar la validez de su consulta haciendo clic en el botón Validar. Obtendrá más información visual sobre la validación de sus consultas con mensajes de error si la consulta es incorrecta.

 

NOVEDADES EN 4D for Android 

Muchas mejoras fueron traídas a 4D for Android, permitiéndole disfrutar de la misma experiencia premium que ofrece 4D for iOS. 4D v19 R4 trae:

  • El soporte de relaciones Uno a N: mostrar los datos relativos a un registro en el formulario listado y detallado.
  • Acciones en línea: posibilidad de modificar una entidad o selección de entidades en modo en línea.
  • Y Campo objeto formateado: mostrar el campo objeto en su aplicación móvil en formato legible por humanos o en formato JSON.

 

4D Write Pro

SALTO DE PÁGINA DENTRO DE LAS LÍNEAS DE LA TABLA

4D v19 R4 trae nuevos atributos para definir mejor el diseño de las tablas. Permitiéndole crear documentos complejos de 4D Write Pro con facilidad, pero sobre todo, documentos visualmente atractivos: diga hola a los saltos de página dentro de las líneas de la tabla. Esto es útil cuando las celdas tienen un texto más largo (o varios párrafos). Puede ser interesante definir que una celda (y por lo tanto una línea de la tabla) también puede dividirse en dos para llenar el espacio disponible en las páginas de los documentos:

  • wk page break inside paragraph puede aplicarse, por supuesto, a los párrafos, pero también a cualquier objetivo, como el propio documento, una sección concreta, un rango de texto, etc. En todos los casos, el atributo se asignará a los párrafos dentro del objetivo. Se trata simplemente de una facilidad de programación.
  • wk page break inside table permite dividir una tabla en dos (o más) partes, la separación se realiza entre dos líneas de la tabla (como es habitual)
     
  • wk page break inside row también permite dividir una tabla, pero esta vez dentro de las líneas. Tenga en cuenta que esta opción depende de la anterior. Si una tabla no se puede dividir, tampoco sus líneas.

 

Tenga en cuenta que la opción de salto de página dentro de las líneas de la tabla está disponible en los widgets de la barra de herramientas y de la barra lateral.

Soporte modo oscuro

Con 4D v19 R4, 4D Write Pro se vuelve oscuro. En última instancia, puede desarrollar y desplegar en modo claro u oscuro en macOS. Los últimos widgets de la librería son compatibles con el modo oscuro (en macOS):

  • Barra de herramientas de 4D Write Pro Interface
  • Interfaz de 4D Write Pro
  • Barra lateral Área de texto enriquecido

4D View Pro

OPCIONES DEL LIBRO DE TRABAJO

Cuando crea un documento con 4D View Pro, a menudo necesita afinar su experiencia de usuario ocultando las pestañas de las hojas, las barras de desplazamiento, desactivando el menú contextual, o el arrastrar y soltar… Todas estas funcionalidades y más son posibles con el comando VP SET WORKBOOK OPTIONS.

 

ACELERE SU PROCESO DE DESARROLLO CON “PLANTILLAS”.

La creación de informes u hojas de cálculo a partir de plantillas existentes acelera el desarrollo. Al igual que un usuario final que utiliza la acción Copiar y Pegar, como desarrollador puede, con 4D v19 R4, simplemente “copiar” un rango de celdas desde otra ubicación o incluso desde otra área. El comando VP MOVE CELLS le permite copiar/cortar y pegar un rango de celdas en otra ubicación, incluso entre dos áreas. Otra forma de copiar un rango es copiarlo en un objeto con el comando VP Copy to object, por ejemplo, para guardarlo en su base de datos, Así podrá pegar este objeto cuando lo necesite con el comando VP PASTE FROM OBJECT.

EDITOR DE CÓDIGO

SALTAR RÁPIDAMENTE A LAS DIFERENTES FUNCIONES DE UNA CLASE.

Las clases fueron introducidas con 4D v18 R3. Le permiten organizar su lógica de negocio y separarla de la interfaz de usuario más rápidamente.

Las clases se componen de varias funciones de diferente longitud. Así que no siempre es fácil encontrar la función a modificar o pasar de una función a otra. Es posible utilizar el explorador, que muestra las clases y las funciones, pero cuando se está codificando en la ventana del editor, no se quiere perder tiempo cambiando de ventana.

Con 4D v19 R4, la lista de funciones de su clase se muestra en la barra de herramientas del editor de código, lo que le permite saltar rápidamente a una función específica. 

 

ETIQUETAS DE COMENTARIOS

4D v19 R4 lleva los comentarios a un nuevo nivel con etiquetas de comentarios para organizar mejor sus comentarios. Las etiquetas se utilizan para clasificar los comentarios simplemente poniendo la etiqueta al principio de la línea de comentario. Hemos puesto tres etiquetas a su disposición:

  • MARK
  • TODO
  • FIXME

La etiqueta MARK le permite dividir su código en secciones. Puedes escribirlo de tres maneras diferentes. Las otras dos etiquetas TODO y FIXME, se escriben de la misma manera. El interés es que tienen diferentes iconos en la lista, lo que le permite organizar su código para priorizar sus futuras acciones.

 

PRODUCTIVIDAD MEJORADA CON LA SINTAXIS DE VERIFICACIÓN DE OBJETOS

El autocompletado de clases está disponible desde 4D v18 R4. Esta funcionalidad simplifica la escritura de código y limita los errores en los nombres de las funciones. Pero no los evita del todo; es fácil invertir dos letras, olvidar una mayúscula. Y luego perder tiempo buscando por qué su código no funciona. Así que, ¿qué mejor manera que pedir a 4D que compruebe si las clases o funciones existían antes? A partir de 4D v19 R4, se muestra una advertencia en el editor de código si llama a una función que no existe.

 

NUEVAS POSIBILIDADES DE PERSONALIZACIÓN DEL EDITOR DE CÓDIGO

Además de personalizar la ventana y el área de código, 4D v19 R4 trae dos nuevas opciones de personalización:

  • Mostrar u ocultar los diez portapapeles.
  • El icono “mostrar/ocultar listas” se ha movido a la parte inferior derecha junto a las listas.
DESPLIEGUE  

UTILIZAR APLICACIONES CLIENTE FUSIONADAS DUPLICADAS.

Como editor de software, algunos de sus clientes tienen a veces muchas instancias de su aplicación de servidor fusionado, por ejemplo, una aplicación de servidor fusionado para cada empresa de un grupo. En este tipo de arquitectura de despliegue, los responsables de su cliente suelen pedirle que instale una aplicación cliente fusionada para cada aplicación servidor fusionada en su ordenador porque quieren utilizar el software para cada empresa. A partir de ahora, tiene una nueva llave buildApp en sus manos para hacer que cada aplicación cliente fusionada duplicada utilice su propia carpeta de preferencias de usuario (basada en su ruta de aplicación): ClientUserPreferencesFolderByPath.

¿Quiere saber más? Lea todas las publicaciones del blog sobre 4D v19 R4