Notícias

4D 20 R6 ya está aquí

Presentamos 4D 20 R6 – ¡Ya disponible!

He aquí un rápido vistazo a lo que trae esta nueva versión:

Descargar 4D 20 R6 (Hot Fixes mensuales disponibles)

  • Editor de código: personalice las advertencias que se generan para concentrarse en los problemas críticos.
  • Programación:
    • Utilice nuevos operadores de comparación para verificar si los objetos o colecciones comparten la misma referencia.
    • Acceda a clases de otros componentes a través de espacios de nombres para una mayor flexibilidad.
    • Mantenga la coherencia de los datos entre sesiones con el almacenamiento de sesiones por ID.
    • Automatice la extracción de archivos PDF/A3 para la facturación electrónica.
    • Garantice la seguridad por defecto con Force Login for REST API,
    • y aumente el rendimiento con agentes HTTP mediante la reutilización de conexiones.
    • Componentes GitHub: gestione componentes directamente en 4D, con descargas automáticas de repositorios y versionado semántico para una colaboración más fluida.
    • 4D Write Pro: mantenga los documentos limpios con el atributo wk empty datasource, controlando cómo aparecen las tablas cuando las fuentes de datos están vacías.
    • Experiencia del usuario: disfrute de una navegación por subformularios más fluida con un comportamiento de desplazamiento mejorado, mejorando la interacción del usuario.
    • ORDA: utilice la nueva función clean() para eliminar los espacios vacíos y mantener sus interfaces ordenadas con menos esfuerzo.
    Producto blank

    Qodly Studio for 4D: Interfaces de usuario dinámicas con estados de página

    Con 4D 20 R6, Qodly Studio for 4D introdujo una nueva y emocionante funcionalidad: los estados de página. Tal vez ya vio nuestro post anterior, pero vamos a explorar lo que hace esta funcionalidad tan valiosa para las interfaces de usuario dinámicas.

    Imagine UIs que se adaptan instantáneamente a los diferentes pasos del usuario o contextos.

    Estos son algunos casos de uso comunes en los que los estados de página brillan:

    • Activar o desactivar componentes en función de las acciones del usuario (por ejemplo, activar el botón «Guardar» sólo cuando se hayan llenado todos los campos obligatorios).
    • Alternar entre los modos claro y oscuro con un simple toque.
    • Restringir el acceso a las acciones (lectura, actualización, etc.) en función de los privilegios del usuario.

       

      Producto blank

      Extracción de archivos PDF/A3

      Traducido automáticamente de Deepl

      En entradas anteriores, exploramos la incrustación de documentos en archivos PDF/A-3 con 4D Write Pro, incluida la generación de facturas electrónicas. A medida que la facturación electrónica se vuelve obligatoria en varios países europeos, como Francia y Alemania, la capacidad de extraer archivos XML incrustados de estos PDF se vuelve crucial. Pero la utilidad de PDF/A-3 va más allá de las facturas; estos archivos pueden incluir varios tipos de documentos que pueden requerir extracción.

      Mientras que herramientas como Adobe Acrobat Reader ofrecen extracción manual, este post presenta un método eficiente y automatizado que utiliza 4D 20 R6 para manejar fácilmente el proceso.

      Producto blank

      Soporte REST y Qodly de Singletons

      Con 4D 20 R5, liberamos los singletons. Y con 4D 20 R6, ahora le permitimos llamar directamente a las funciones expuestas de sus singletons compartidos a través de llamadas REST. Del mismo modo, puede utilizar las funciones expuestas de sus singletons compartidos en eventos al diseñar sus páginas Qodly. Permítanme profundizar en estas nuevas funcionalidades.

      Producto blank

      Integrar componentes 4D directamente desde GitHub

      Traducido automáticamente de Deepl

      Muchos desarrolladores 4D aprovechan el poder de los componentes de terceros que se encuentran en GitHub, particularmente aquellos listados en el tópico 4d-component. 4D 20 R6 introduce una nueva característica fantástica: la integración directa de estos componentes en el Administrador de componentes.

      Esta entrada de blog se sumerge en los detalles, haciendo su proceso de desarrollo más fácil y eficiente.

      Producto blank

      Permisos: Inspeccionar los privilegios de sesión para facilitar la depuración

      Hoy en día, puede beneficiarse de una poderosa funcionalidad para filtrar el acceso a los datos, que es esencial para evitar el acceso malicioso a su aplicación.

      Esta funcionalidad utiliza privilegios que permiten determinadas acciones sobre sus datos. Estos privilegios son asignados a los usuarios a través de roles y almacenados en la sesión durante la autenticación.

      En 4D 20R6, mejoramos esta funcionalidad permitiéndole inspeccionar los privilegios en la sesión, lo cual es muy útil para la depuración.

      Siga leyendo para saber más.

      Producto blank

      UX: Mejora del comportamiento de desplazamiento en los subformularios

      El objetivo de los formularios usuario es facilitar las cosas a los usuarios. Pero ¿qué ocurre cuando el desplazamiento se convierte en una batalla entre los subformularios y su contenido? Seguro que ya le ha pasado alguna vez: intenta desplazarse por un list box en un subformulario, pero todo el subformulario se mueve en su lugar. O lo que es peor, intenta desplazarse por el subformulario, pero el list box no se mueve.

      Esto ha sido mejorado con 4D 20 R6, haciendo la acción más natural.

      Producto blank

      Parámetros personalizados para inicializar el área web integrada

      Traducido automáticamente de Deepl

      Dado que el área web incrustada utiliza CEF como motor de navegación web, se ha solicitado un método para incorporar conmutadores CEF adicionales, como el conmutador de política de reproducción automática, durante la inicialización del área.

      A partir de 4D 20 R6, puede gestionar sus parámetros personalizados utilizando un archivo de parámetros.

      Producto blank

      Comparación de referencia fácil de objetos y colecciones

      Los objetos se han convertido en una parte esencial del lenguaje 4D y de Qodly.

      Pero cuando se declara una variable de este tipo, se define una referencia. Entonces ¿cómo saber si dos objetos son, de hecho, uno solo y comparten la misma referencia?

      A partir de 4D 20 R6, comparar referencias de objetos es sencillo: ¡introduzca los operadores = y #!

      Esta entrada del blog explora estos operadores y cómo ayudan a determinar si los objetos comparten la misma referencia. Averigüemos más.