Novedades de 4D v18 R3

Traducido automáticamente de Deepl

Funciones relacionadas con la programación

Clases

4D v18 R3 introduce un nuevo concepto en el lenguaje 4D: las clases. Una clase le permite definir el comportamiento de un objeto mediante propiedades y funciones. Una vez definida una clase, puede instanciar objetos de esta clase en cualquier parte de su código. Cada objeto es una instancia de su clase. Las clases pueden extender otras clases y heredar sus funciones.

Hay dos tipos de clases disponibles en 4D: las clases incorporadas a 4D (devueltas por el comando 4D ) y las clases de usuario (devueltas por el comando cs ).

Para crear un objeto como instancia de una clase, utilice el comando cs con la función miembro new. Otro término importante a conocer es: constructor. El constructor se utiliza para crear e instanciar un objeto con atributos por defecto. Se llama automáticamente cuando se inicializa un objeto. La creación de una clase se realiza desde el menú «Nuevo» de la barra de herramientas, o desde el diálogo «Explorador». Aparecerá un editor de clases en el que podrás crear el constructor y las funciones de la clase.

Herencia de clases

La herencia permite que una clase herede el comportamiento de otra clase (la clase padre ). Para heredar de una clase de usuario a otra, utilice la palabra clave Class extends y se llamará automáticamente al constructor de la clase padre (si no ha definido un constructor específico para la clase hija ). También puedes utilizar el comando Super para llamar al constructor de la clase padre.

Múltiples servidores web en una sola instancia 4D

4D v18 R3 le permite iniciar y monitorear un servidor web para la base de datos principal (host), así como para cada componente alojado. El nuevo comando del servidor WEB permite administrar los servidores web dentro de objetos separados para cada servidor. También acepta un parámetro opcional para definir qué servidor utilizar:

  • Servidor de base de datos web – para manipular el servidor web de la base de datos actual (la base de datos anfitriona o la base de datos del componente, dependiendo de dónde se llame el comando)
  • Servidor web de la base de datos anfitriona – para manipular el servidor web de la base de datos anfitriona desde un componente
  • Servidor de recepción de solicitudes web – para manipular el servidor web que recibe una solicitud, en un método común de gestión del servidor web, por ejemplo.

Existen dos métodos miembros para iniciar y detener el servidor web: start() y stop(). Para obtener una lista de servidores web disponibles, el nuevo comando WEB Server list devuelve una colección de objetos correspondientes a todos los servidores web disponibles para la base de datos anfitriona.

Soporte mejorado de XPath

A partir de 4D v18 R3, la implementación de XPath es más compatible y simplifica sus búsquedas al permitir el soporte de expresiones como //, @, * y last(). Por razones de compatibilidad, la implementación anterior, no estándar, se mantiene por defecto en las bases de datos convertidas. Para aprovechar las funciones ampliadas en sus bases de datos convertidas, seleccione la opción Usar compatibilidad con XPath estándar en la página de compatibilidad.

Mejoras en los objetos y colecciones

El comando OB Copy() y el método miembro collection.copy() han sido mejorados en 4D v18 R3. Ahora ofrecen la posibilidad de añadir un objeto estándar en un objeto compartido o en una colección con el fin de evitar código complejo para copiar el contenido del objeto estándar en el objeto compartido o en la colección. Además, están disponibles nuevos comandos para manejar objetos como mapas hash:

  • OBKeys: devuelve los nombres de las propiedades de un objeto como una colección.
  • OBValores: devuelve los valores de las propiedades de un objeto como una colección
  • OBEntradas: devuelve una colección de objetos con propiedades clave (nombre de la propiedad) y valores (valor de la propiedad).

Crear un área web fuera de la pantalla

4D v18 R3 le permite utilizar un área web en modo offscreen con el comando WA Run offscreen area. Crea un área web en la memoria y toma, en parámetro, toda la información pertinente para el área web como :

  • La URL a cargar
  • El nombre del área
  • La fórmula llamada cuando un evento es lanzado por el área web

Y para simplificar la depuración de un área web fuera de la pantalla, se ha añadido un nuevo comando: WA OPEN WEB INSPECTOR. Abre el inspector web y le permite verificar si la página se carga correctamente o si su código JavaScript arroja errores.

Administración de 4D Server

Monitorizar la actividad del servidor 4D

Para descubrir qué operaciones están causando que un servidor sea lento, 4D v18 R3 proporciona un nuevo comando INICIAR EL MONITOREO DE LA ACTIVIDAD. Registra las operaciones que exceden una duración especificada usando dos parámetros: la duración y la operación a monitorear. Basado en las especificaciones establecidas por este comando, también puede obtener todas las actividades registradas con el comando Get Monitored Activity(). Cuando decida dejar de grabar la actividad de su aplicación 4D o vaciar la lista de actividades, llame al comando STOP MONITORING ACTIV ITY.

ORDA

Nuevos métodos de selección de entidades

Nuevos métodos miembros están a su disposición en 4D v18 R3:

  • extract(): para extraer datos de una selección de entidades. Esto le permite construir una colección totalmente personalizada con los datos de su selección de entidades. Puede especificar los atributos de la clase de datos que desea extraer y sus nombres en la colección resultante.
  • refresh(): invalida los datos de la selección de entidades en la caché de ORDA. Provoca una actualización desde el servidor la próxima vez que se utilicen los datos. Por defecto la caché de ORDA expira después de 30 segundos, así que usa este método miembro en caso de que necesites datos actualizados inmediatamente.

Selección de filas de la caja de lista

4D v18 R3 proporciona un nuevo comando que facilita la selección de filas en una selección de entidades: LISTBOX SELECT ROWS. Acepta una selección de entidades como parámetro y las filas que coinciden con la selección de entidades pueden ser seleccionadas intuitivamente (incluyendo filas añadidas o eliminadas de la selección). Y para los cuadros de lista de colección, puede pasar una colección que contenga las referencias de los objetos que desea seleccionar.

Base de datos de proyectos

Documentación del método

A partir de 4D v18 R3, puede escribir su propia documentación para los métodos del proyecto, de la base de datos, del trigger, del proyecto y del formulario de la tabla. La documentación se guarda en un archivo Markdown con el mismo nombre que el método o formulario en una carpeta de documentación. Markdown es un formato estándar para la documentación y permite mejorar los estilos de formato. El formato puede ser mostrado en 4D Explorer, en GitHub, o en otras herramientas. La documentación puede contener una descripción de un elemento, así como cualquier información necesaria para entender cómo funciona el elemento en la base de datos. Para crear o editar el archivo de documentación en la base de datos de un proyecto, desde el Explorador haga clic en el botón «Crear» o seleccione la opción de menú «Editar documentación». 4D crea el archivo correspondiente y lo abre en su editor por defecto con una plantilla preestablecida.

Definir el tamaño de las fuentes automáticas

4D ofrece tres temas de fuentes automáticas que respetan las pautas de cada plataforma. 4D v18 R3 le permite anular el tamaño de estos temas automáticos y tener más control sobre cómo se muestra su texto.

4D para iOS

Plantillas listas para usar

Más de 40 plantillas listas para usar están a su disposición, accesibles desde el editor de proyectos. La galería se basa en una lista dinámica de plantillas actualizadas disponibles en GitHub. Para utilizar una plantilla, un icono «Más» está disponible tanto para los formularios de lista como para los detallados, que mostrará toda la lista de plantillas de la sección Formularios. Seleccione la plantilla y 4D para iOS se encargará de la instalación. Como paso final, puede mejorarla para adaptarla a sus necesidades.

Correos electrónicos

Descargar correos electrónicos en formato MIME

4D v18 R3 proporciona un comando que le permite almacenar los correos electrónicos en su formato original, no convertido, recibido. Usando el método POP3_transporter.getMIMEAsBlob( ), usted puede obtener un BLOB que contiene el contenido MIME para un mensaje específico, que puede ser guardado en su base de datos o en algún otro lugar.

4D Write Pro

Nuevas acciones estándar para las tablas y sus elementos

4D v18 R3 añade nuevas acciones estándar a 4D Write Pro, dirigidas a tablas, filas y celdas. Permiten definir el tipo de borde de una tabla, el color de fondo de una celda, la alineación vertical del texto en una fila, la alineación de la propia tabla dentro del documento, los márgenes, el relleno y más de 40 opciones. En consecuencia, la interfaz de 4D Write Pro ha sido mejorada en términos de capacidades de procesamiento de tablas. Se han añadido cuatro nuevos botones para cambiar la apariencia de las tablas, filas, columnas y celdas.

Soporte de atributos protegidos

En 4D v18 R3, partes designadas de los documentos de 4D Write Pro (o todas las partes) pueden ser «no editables». Hay dos niveles de protección disponibles. Primero, defina qué parte de los documentos estará protegida (por defecto, todas las partes están protegidas). A continuación, active el indicador de protección del documento para que se tengan en cuenta los ajustes realizados. Para ello, existen dos nuevos atributos que se pueden utilizar con el comandoWPSET ATTRIBUTES : wk protected (puede establecerse para casi cualquier tipo de objetivo perteneciente a un documento), y wk protection enabled (activa o desactiva la protección global del documento).

4D View Pro

Más opciones para personalizar las hojas de trabajo

Un nuevo comando, VP SET SHEET OPTIONS, está disponible para definir varias opciones de hoja de un área de 4D View Pro. Por ejemplo, este comando le permite

  • proteger una hoja de trabajo impidiendo que se editen las celdas que contiene,
  • personalizar los colores de las pestañas de la hoja de trabajo, las líneas congeladas, las líneas de cuadrícula o el fondo y el borde de una selección,
  • gestionar la visibilidad de las líneas de cuadrícula de una hoja de trabajo y de los encabezados de las filas y columnas.

¿Quiere saber más? Lea todas las entradas del blog sobre 4D v18 R3