Novedades de 4D v18

Traducido automáticamente de Deepl

Este documento es una recopilación de todas las nuevas funcionalidades disponibles en 4D v18. Tenga en cuenta que cada funcionalidad tiene una entrada de blog relacionada para guiarle a través de ejemplos concretos. Se puede acceder a estas entradas de blog haciendo clic en el título de la funcionalidad.

Además, las secciones con la etiqueta blank están relacionadas con todas las nuevas funcionalidades lanzadas entre 4D v17 R6 y 4D v18.

Este documento está dividido en siete secciones:

Base de datos del proyecto – Control de versionesblank

La solución que se entrega con 4D v18 facilita el trabajo colaborativo de los equipos distribuidos, almacenando el código fuente en un sistema de control de fuentes mediante archivos de texto plano. Permite aprovechar la potencia combinada de la plataforma de desarrollo 4D con la versatilidad de los archivos ligeros y distribuidos:

Arquitectura

Una base de datos de proyecto contiene todo el código fuente de una aplicación de base de datos 4D, desde la estructura de la base de datos hasta la interfaz de usuario, incluyendo formularios, menús, configuraciones de usuario o cualquier recurso necesario. Dado que las bases de datos de proyectos están formadas por archivos basados en texto, los proyectos contienen múltiples carpetas y archivos almacenados dentro de una única carpeta de base de datos principal. Al crear una base de datos de proyectos, encontrará muchas de las mismas carpetas que una base de datos binaria:

  • Datos
  • Registros
  • Recursos
  • Configuración
  • Carpeta web

También hay dos nuevas carpetas:

  • Proyecto – Código fuente de la aplicación (equivalente a .4db)
  • userPreferences.<nombre> – Contiene archivos de configuraciones de usuario memorizadas(por ejemplo, posiciones de puntos de interrupción, posiciones de ventanas, etc). Lea la documentación

Convertir una base de datos binaria existente

Puede crear una base de datos de proyectos creando una nueva base de datos de proyectos en blanco o exportando una base de datos binaria existente (.4db) a una carpeta de proyectos. Para convertir una base de datos binaria existente, basta con hacer clic en la opción de menú Archivo > Exportar > Estructura a proyecto. Una vez hecho esto, se muestra un mensaje para informarle de la finalización de la conversión. 4D también le permite saber si se ha detectado algún error que requiera su intervención. Por ejemplo, en el caso de objetos de formulario antiguos que ya no son compatibles. Lea la documentación

Post Conversión

Cuando se trata de la estructura para una base de datos binaria, la descripción de su aplicación se almacena en dos archivos (.4DB y.4DIndx). En el caso de una base de datos de proyectos, esta descripción se encuentra en los archivos almacenados en la carpeta «Project». Después de la conversión, puede eliminar los siguientes archivos de la carpeta «Project» (si lo desea): <database>.4db y <database>.4dIndy. Los datos de las nuevas bases de datos del proyecto residen en una carpeta «Data» al mismo nivel que la carpeta «Project». Por lo tanto, incluso durante la fase de desarrollo, un archivo situado junto a la carpeta «Datos» es diferente de un archivo situado junto a la estructura. Le recomendamos que, tras la conversión, cree una carpeta Data al mismo nivel que la carpeta Project y mueva a ella los archivos data.4dd y data.4DIndx. Finalmente, para mantener los datos separados y facilitar el despliegue, 4D ahora nombra los archivos con la palabra «preferences» para los parámetros relacionados con el desarrollo, como la configuración del editor de código, mientras que utiliza «settings» para los parámetros relacionados con el despliegue, como la memoria o la configuración de las copias de seguridad.

Gestión de usuarios y grupos

Dado que las bases de datos de los proyectos están totalmente basadas en texto, ya no hay razón para que la gestión de usuarios y grupos proteja el código. Esta función se ha delegado en el sistema de control de versiones o en el sistema de derechos de acceso a archivos/carpetas del sistema operativo. Como resultado, los usuarios y grupos ahora sólo se utilizan para gestionar el acceso a los datos. Se almacenan en un archivo de texto llamado «directory.json» junto al archivo de datos.

Despliegue mejorado

Ya no es necesario diferenciar a los desarrolladores de los usuarios. Por lo tanto, ambos tienen ahora el tipo «Usuario». Para simplificar el despliegue, los comandos «Get 4D file » y » File» aceptan ahora la nueva constante «Directory file «, para que pueda manejar fácil y automáticamente el archivo correcto. Lea la documentación

Durante la conversión y la migración

El archivo de directorio se generará automáticamente durante el proceso de conversión y se colocará junto a la configuración del proyecto. Si hasta ahora ha utilizado el comando BLOB TO USERS para restaurar sus usuarios y contraseñas, el comando generará ahora este archivo de directorio para que no tenga que modificar su código existente. Lea la documentación

Modo de usuario único

En el modo de usuario único, los usuarios y los grupos están completamente deshabilitados. El usuario actual es siempre el Diseñador y no puede ser cambiado. Los derechos de acceso de los usuarios y grupos a la aplicación pueden ser delegados al sistema. Si quieres enmascarar el nombre del Diseñador con la cuenta del sistema o con tu propio nombre de usuario, sólo tienes que llamar al comando SET USER ALIAS. Lea la documentación

Modo cliente/servidor

En el modo cliente-servidor, los Usuarios y Grupos son totalmente operativos. Puede cambiar el usuario actual, establecer un alias, cambiar una contraseña, etc.

Caja de herramientas

Las páginas de la caja de herramientas de Usuarios y Grupos son accesibles en todos los modos: monopuesto y cliente-servidor. Sin embargo, en el modo monopuesto, la caja de herramientas sólo puede utilizarse para modificar los usuarios y grupos que se utilizarán en el modo cliente-servidor.

Despliegue de la aplicación

El despliegue consta de dos pasos: la compilación del código y la creación de la aplicación. Puede compilar la base de datos de su proyecto de la misma manera que compila su base de datos binaria (.4db). No hay ninguna diferencia. La interfaz es la misma y el código máquina producido es el mismo. La única diferencia es que el resultado compilado se guarda en un archivo binario (.4db) para las bases de datos binarias, y en la carpeta «Project/DerivedData/CompiledCode» para las bases de datos de proyectos. No tiene que hacer ningún cambio para crear sus aplicaciones (base de datos compilada, componente, aplicación independiente, aplicación cliente/servidor), puede utilizar el archivo de configuración de su base de datos binaria con su base de datos de proyecto convertida. La diferencia radica en los archivos generados: las bases de datos de proyectos tienen un archivo con la extensión «.4dz» en lugar de un archivo «4dc». Leer la documentación

Subir a un sistema de control de fuentes

Cuando compila su base de datos, 4D almacena el código compilado en la carpeta «Project/DerivedData». Se recomienda subir la carpeta «Resources», la carpeta «WebFolder» y la carpeta «Project» (sin la subcarpeta «DerivedData«) a un sistema de control de fuentes. Lea la documentación

Las hojas de estilo se convierten en CSS

Las posibilidades de las hojas de estilo se han ampliado drásticamente. 4D se ha inspirado en la gramática y la sintaxis de CSS para las hojas de estilo de la base de datos del proyecto, adaptándola a las necesidades específicas de los formularios 4D. Esto le permite configurar las propiedades de los objetos de los formularios con hojas de estilo. Lea la documentación

Encriptación

La nueva encriptación de datos integrada para sus bases de datos 4D está ahora a su disposición. Los datos pueden ser encriptados a través del código o de la interfaz de usuario, para todas las tablas o sólo para las tablas seleccionadas. Las herramientas de encriptación de 4D se basan en una frase de paso. Está compuesta por una frase o una combinación de palabras que se utiliza para generar una clave de encriptación binaria para encriptar los datos con el algoritmo AES. Para trabajar con un archivo de datos encriptado, la frase de contraseña o la clave de encriptación binaria es obligatoria. 4D encripta los datos a nivel de archivo, lo que significa que su archivo de datos (4DD), su copia de seguridad y su diario están encriptados. Además de la seguridad en su propio ordenador, esto hace que la copia de seguridad en la nube o en discos externos sea mucho más segura, ya que los datos permanecen encriptados.

Cifrar a través del MSC

Un nuevo atributo Encryptable está disponible para las tablas en el Modo de Diseño. Establece el estado de encriptación de una tabla designando que puede ser encriptada. Una vez que esté listo para encriptar sus datos, la forma más fácil de hacerlo es a través de la nueva página de encriptación en el MSC. Esta página proporciona todas las funciones necesarias para controlar la encriptación de tus datos. Puedes utilizar esta página para encriptar o desencriptar el archivo de datos, así como para volver a encriptarlo y/o cambiar tu frase de acceso. Lea la documentación

Cifrar con comandos 4D

Además del MSC, 4D v18 incluye un conjunto de comandos que están diseñados para soportar la mayoría de los requerimientos de encriptación. Por ejemplo, puede gestionar el cifrado con el comando Encrypt data file(), o utilizar el comando provideDataKey() para proporcionar la clave de cifrado de datos a un archivo de datos abierto. Incluso puede utilizar el comando encryptionStatus () para comprobar si el archivo de datos abierto está cifrado o no y si se ha proporcionado una clave de cifrado de datos válida. La lista completa de comandos está disponible en el Doc center. Lea la documentación

Para obtener más detalles sobre las herramientas y técnicas incorporadas para crear un entorno seguro para sus aplicaciones empresariales, consulte nuestra Guía de seguridad.

4D para iOS

4D para iOS es una solución que le permite extender sus aplicaciones de negocio a los dispositivos móviles. 4D para iOS está totalmente integrado en 4D, por lo que no es necesario realizar ninguna instalación adicional (excepto Xcode) ni tener conocimientos previos. Estas son las funcionalidades que presentamos con esta versión:

Crear, editar, borrar

La edición de datos directamente desde su aplicación es ahora posible gracias a las acciones. Esto significa que sus usuarios pueden editar datos directamente en su aplicación iOS. Para proteger su lógica de negocio, cada «acción» es enviada a 4D y ejecuta sus métodos 4D para comprobar, calcular datos adicionales, y finalmente aprobar o rechazar la entrada del usuario. Además, se han proporcionado acciones predefinidas para gestionar el contenido de su aplicación: Añadir, Editar y Eliminar. Lea la documentación

Formateadores de datos

Los formateadores de datos son un concepto recién introducido que le permite definir tipos de datos específicos para sus campos con el fin de que el contenido se muestre en el formato correcto. Puede anular rápidamente el formato predeterminado de sus campos para mostrar el formato de su elección, como moneda, booleano, porcentaje, fechas y mucho más. Por ejemplo, imagine que quiere mostrar una imagen para visualizar las facturas «pagadas» y «no pagadas» pero que encajaría mucho mejor en el iPhone en lugar de una simple casilla de verificación. Lea la documentación

Búsqueda multicriterio

4D para iOS ahora soporta la búsqueda multicriterio. Después de seleccionar su plantilla de formulario de lista, coloque varios campos en el área de búsqueda para activar la búsqueda multicriterio. Cuando se especifican múltiples valores para el mismo campo, se utiliza un operador OR entre bastidores. Por ejemplo, arrastre el nombre de la empresa, los apellidos y la ciudad al área de búsqueda para que su usuario pueda introducir cualquiera de estos datos para buscar un cliente. Lea la documentación

Consultas restringidas

Otro concepto recién introducido: Las consultas restringidas. Permiten filtrar los datos que se van a sincronizar con la aplicación móvil. Limitar los datos sólo a las facturas del año pasado, sólo a los clientes activos o sólo a la región bajo la responsabilidad de un responsable de ventas es increíblemente práctico y ahorra tiempo de sincronización de datos y MUCHO espacio en su iPhone. Leer la documentación

Sincronización incremental de datos

Otro concepto interesante incluido en 4D para iOS es la sincronización incremental de datos. Responde a dos necesidades diferentes: incluso las consultas restringidas podrían dar lugar a grandes conjuntos de datos, por lo que 4D ahora hace un seguimiento automático de los registros actualizados o eliminados y sólo actualiza estos datos en el dispositivo. Además, sus datos no sólo se actualizan cada vez que lanza su aplicación, sino también cada vez que su aplicación pasa a primer plano o en respuesta a una acción del usuario. Leer la documentación

Gestionar las relaciones blank

4D para iOS soporta los tipos de relación N a Uno y Uno a N. Para N a uno, es sencillo, puede utilizar los campos relacionados en un formulario para el teléfono al igual que los campos de la tabla principal. Para las relaciones Uno a N, el formulario contiene un botón, que cambiará a otra página mostrando la lista de registros relacionados, permitiendo al usuario volver con un deslizamiento. Lea la documentación

Personalice su aplicación

Cree sus propias plantillas de listas y formularios detallados

4D para iOS ya proporciona varias plantillas de listas y formularios detallados para cubrir la mayoría de sus necesidades. Pero también puedes crear fácilmente tus propias plantillas. Usando Xcode Storybuilder, usted (o un colega con conocimientos de Xcode) puede crear nuevas plantillas o personalizar las existentes usando todas las características que iOS proporciona. Para utilizar la plantilla creada, no se necesitan habilidades especiales, puedes utilizarlas como cualquier plantilla incorporada. Lee la documentación

Utilice sus propios iconos

4D para iOS tiene una gran biblioteca de iconos que cubre muchas áreas como el comercio, las finanzas, la educación, el gobierno, la salud, la industria, los bienes raíces, los servicios, etc. Lea la documentación

Cree un formateador de datos personalizado

4D para iOS ya incluye formateadores de datos básicos para fechas, porcentaje, tiempo, etc., pero también puede crear sus propios formateadores de datos y utilizarlos directamente desde el Editor de Proyectos. Por ejemplo, puede crear un formateador integertoString, que sustituye los números internos por nombres, como los códigos de envío. O integerToImage, para reemplazar códigos como 1,2,3,4 con insignias de colores que muestren el estado del socio. Lea la documentación

ORDA

4D v18 sigue aportando mejoras a ORDA con las siguientes características:

Almacén de datos remoto blank

Ya no está limitado a la base de datos actual, ahora puede acceder a una o más bases de datos 4D remotas publicadas en 4D Server(s). Una base de datos remota puede ser publicada como un recurso REST y accedida desde clientes 4D. Esta base de datos remota es utilizable (lectura/escritura) directamente con los conceptos de ORDA (lo que desencadenará peticiones REST entre el cliente y el servidor). Las conexiones TLS son, por supuesto, soportadas. Usted puede restringir el acceso a los usuarios de 4D que desee o desarrollar sus propios controles de acceso sobre las credenciales del usuario. Aunque este proceso utiliza el Servidor Web para acceder al Servidor REST, no se requiere una licencia de Servidor Web. Las licencias estándar de 4D Client se utilizan para las conexiones. Lea la documentación

Registrar las solicitudes OR DA

Nuevos métodos ORDA están disponibles en el objeto ds para ayudarle a depurar y optimizar su código ORDA para obtener una mejor comprensión de las solicitudes enviadas. El método startRequestLog() es muy flexible ya que, cuando se llama con un objeto File, puede registrar las peticiones ORDA en un archivo o en la memoria. Para detener el registro de peticiones ORDA, puedes llamar al método stopRequestLog(). Lee la documentación

Nuevo método para ordenar una Selección de Entidades

Con la ayuda de fórmulas, ahora puede ordenar una selección de entidades utilizando criterios complejos en un método de proyecto o en una expresión 4D. La fórmula evalúa los criterios de orden que pueden ser dados en forma de una Cadena o un objeto Fórmula al método orderByFormula() . Lea la documentación

Consultas avanzadas con fórmulas

El método query () ha sido actualizado para soportar un objeto Formula como parámetro y devolver un nuevo objeto de tipo EntitySelection que contiene todas las entidades encontradas. Esto permite la creación de criterios de búsqueda más sofisticados. Leer la documentación

Optimización del rendimiento en cliente/servidor

El acceso a tablas grandes (especialmente las que tienen relaciones) en modo Cliente/Servidor usando ORDA ha sido mejorado en gran medida. Cuando se utilizan selecciones de entidades en cuadros de lista o en bucles de código (porejemplo, While o For each), los campos utilizados se analizarán automáticamente para optimizar la transferencia de red. Verá que el rendimiento de la LAN es 2-3 veces mayor y hasta 30 veces más rápido en la WAN (dependiendo de la red y del tamaño del registro). Y lo mejor de todo – no hay necesidad de cambiar nada en su código, todo es automático.

Métodos para obtener la información de la estructura

Existen muchos métodos que permiten obtener información relacionada con la estructura(por ejemplo, información sobre una tabla o un número de campo). Esto puede ser útil al integrar ORDA paso a paso en tu código clásico de 4D. Sin embargo, el propósito principal de estos métodos es darle una manera de escribir código genérico que sea aplicable sin importar la estructura de la base de datos. Lea la documentación

Marcadores de posición con nombre para rutas de atributos

También puede utilizar marcadores de posición para las rutas de atributos (nombres de campos en las tablas). Hay dos tipos disponibles: Indexados – insertados como :paramIndex( por ejemplo, :1, :2,… con un incremento de 1) en la cadena de consulta y sus valores correspondientes son proporcionados por la secuencia de parámetro(s) de valor, y Nombrados – insertados por como :paramName y sus valores son proporcionados en los objetos de atributos o parámetros en la cadena de consulta. Leer la documentación

Marcadores de posición con nombre para los valores

Ahora es más fácil escribir consultas genéricas ORDA gracias a los marcadores de posición con nombre para los valores. Estos marcadores de posición se proporcionan como parámetros de objetos en la configuración de la consulta y se sustituyen por otro valor cuando se evalúa la cadena de consulta. Leer la documentación

Lenguaje 4D y otras características de programación

Enviar correo

Una nueva forma de crear y enviar correos electrónicos está disponible. La nueva funcionalidad es fácil de usar – y también más poderosa que antes (usando los comandos de 4D Internet). El nuevo comando SMTP New transporter permite la configuración de una nueva conexión SMTP. La creación y el envío de correos electrónicos sigue tres pasos: la creación de su transportador SMTP, la creación de un objeto de correo y el envío del correo electrónico. Un objeto de correo tiene múltiples propiedades: from, cc, bc, to, sender,textBody, htmlBody, por nombrar algunas. Además, se puede añadir un archivo adjunto con el comando MAIL New attachment. Una vez creado, el objeto de correo puede ser enviado con el comando transporter.send() .

Registro de conversaciones SMTP

El comando transportador SMTP New crea una conexión entre un servidor SMTP (como Microsoft Exchange o Gmail) y el cliente, y registra -en texto plano y no cifrado- todas sus comunicaciones. Se dispone de una nueva propiedad logFile, que contiene la ruta completa del archivo de registro definido para la conexión SMTP. El archivo puede producirse en dos versiones: Una versión estándar y una versión extendida. Ambas versiones pueden ser activadas por el comando SET DATABASE PARAMETER. Lea la documentación

Analizar un documento MIME, modificarlo y reenviarlo blank

El nuevo y potente analizador, MAIL Convert from MIME, convierte un correo electrónico recibido o un documento MIME creado desde 4D Write Pro en un objeto. Esto le permite editar o modificar el objeto según sea necesario, como cambiar el asunto, eliminar/añadir destinatarios, modificar el cuerpo, añadir adjuntos, etc. – y luego enviar el documento. Por ejemplo: En el caso de que utilices 4D Write Pro para crear correos electrónicos HTML con imágenes estáticas en el texto y necesites enviarlo, este es el proceso

  • Exporta tu documento de 4D Write Pro en formato MIME,
  • utilice el comando MAIL Convert from MIME para transformar el MIME en un objeto de correo,
  • luego envíelo a través del comando SMTP New transporter. Lea la documentación

Habilitar el depurador en los modos compilado y fusionado blank

Ahora puede utilizar el depurador 4D para depurar el código en modo de producción, durante la ejecución del comando PROCESS 4D TAGS a través del comando TRACE en el código insertado entre las etiquetas <!–#4DCODE–>. Lea la documentación

Construya su propio diálogo de conexión para seleccionar el servidor blank

Ahora puede utilizar una aplicación unipersonal fusionada para construir su propio diálogo de conexión para un servidor fusionado. Lea la documentación

Se ha modificado el comando de eventos del formulario blank

El comando de evento de formulario ha sido renombrado a código de evento de formulario para mayor claridad. Esto se debe a que el comando sólo devolvía el código del evento mientras que el nuevo comando Evento de formulario, devuelve un objeto. No hay necesidad de cambiar su código. El nuevo comando devuelve un objeto con múltiples piezas de información. Además del evento en sí, también contiene información sobre el objeto que desencadena el evento, como su nombre y datos adicionales dependiendo del tipo de objeto. Lea la documentación

Notación de objetos para manejar archivos y carpetas

La creación, modificación o eliminación de archivos y carpetas en el disco es ahora mucho más fácil e intuitiva. Se ha añadido un nuevo comando Carpeta que permite crear un objeto carpeta a partir de una constante, una ruta POSIX o una ruta de plataforma. El objeto carpeta tiene propiedades(por ejemplo, nombre, modificationDate, modificationTime) y métodos( por ejemplo, create(), moveTo(), rename(), delete()) que permiten la creación y manipulación de carpetas. Al igual que con las carpetas, el comando File está disponible para manejar archivos. El nuevo objeto archivo permite acceder y manipular los atributos de los archivos. Puedes utilizar los métodos de archivo para escribir y leer el contenido de un archivo, moverlo, eliminarlo, etc. Lea la documentación

Comandos de compresión blank

Puede comprimir o descomprimir sus archivos a través del código, sin llamar a bibliotecas o herramientas externas. El nuevo comando Zip Create archive le permite crear un archivo zip pasando un archivo, una carpeta o un objeto con parámetros. Y para descomprimir tu archivo, utiliza el nuevo comando ZIP Read archive que devuelve un objeto de archivo que puede ser fácilmente manipulado para obtener la lista de archivos, extraer un archivo en particular o todo el archivo. El uso o la creación de un archivo comprimido funciona de forma similar a los nuevos comandos Archivo y Carpeta, manteniendo su código simple y fácil de leer. Lea la documentación

Recuperarla cadena de ejecución actual

Un nuevo comando Obtener cadena de llamadas está disponible para darle una visión del código ejecutado. Esto le ayuda a saber en qué punto de su código se encuentra, especialmente cuando un método llama a otros métodos, que a su vez pueden llamar a otros métodos. El comando devuelve una colección de objetos, cada uno de los cuales representa un paso de ejecución y describe su base de datos, tipo de método, nombre del método y línea de llamada. El comando puede utilizarse en todos los contextos de ejecución de código, tanto en modo interpretado como compilado. Lea la documentación

Nueva herramienta para analizar los registros de depuración

Una nueva herramienta está disponible para ayudarle a analizar los registros de depuración. Por ejemplo, podrás ver qué procesos son los que más tiempo consumen, la cadena de llamadas con su correspondiente tiempo de ejecución, y mucho más. Esta herramienta está diseñada para ayudarte a encontrar conflictos en tu código y mejorar el rendimiento de tus bases de datos. Lea la documentación

Aplicaciones 4D sin cabeza blank

Ahora puede lanzar una aplicación 4D sin interfaz (aka headless) a través del CLI (Command Line Interface) con el nuevo parámetro headless. Disponible para todos los tipos de aplicaciones: 4D, 4D Server, aplicaciones autónomas, remotas y fusionadas. Los mensajes de error u otros diálogos se obtienen automáticamente y se redirigen a un archivo de registro, evitando así la detención del servidor. Lea la documentación

Preemptive

Desactivar la comprobación de seguridad de hilos localmente blank

Ahora puede decirle al compilador que una parte del código no debe ser comprobada para el cumplimiento de la seguridad de hilos, sabiendo que esta parte del código no se ejecutará porque es parte de una sentencia If o Case of y sólo se ejecuta en modo cooperativo. Para hacer esto, debe rodear el código a excluir de la comprobación de seguridad de hilos con las directivas especiales %T- y %T+ como comentarios. El comentario //%T- desactiva la comprobación de seguridad de hilos y //%T+ la vuelve a activar. Lea la documentación

Procesos preventivos en 4D remote

Sus procesos pueden ejecutarse de forma preventiva en 4D Remote, aprovechando al máximo la potencia de los ordenadores multinúcleo. Dividiendo una operación en partes y ejecutándola en todos los núcleos disponibles, en paralelo, para obtener sus resultados más rápidamente. Lea la documentación

Más comandos seguros para hilos

Con todos los nuevos comandos a prueba de hilos, tus aplicaciones pueden aprovechar al máximo los ordenadores multinúcleo. En consecuencia, esto resulta en respuestas más rápidas a las solicitudes simultáneas.

Los siguientes comandos de 4D son ahora seguros: COMPRIMIR BLOB, AMPLIAR BLOB , PROPIEDADES DE BLOB, ENCRITAR BLO B, DESCRIPTAR BLOB, GENERARCLAVE DE ENCRITURA ,GENERAR SOLICITUD DE CERTIFICADO, RECIBIR BUFFER ,ESTABLECER SIGLA POR DEFECTO, OBTENER ICONO DE DOCUMENTO, TRANSFORMAR IMAGEN ,EXPORTAR SVG A IMAGEN ,OBTENER RUTA DE DOCUMENTO LOCALIZADA, OBTENER LOCALIZACIÓN DE BASE DE DATOS, BLOQUEAR POR, REGISTRAR EVENTO, AUTENTICACIÓN DE CLIENTE ACTUAL, OBTENER ESTADÍSTICAS DE MEMORIA. Leer la documentación

Begin/End SQL en modo preventivo

BeginSQL, End SQL y las sentencias SQL asociadas utilizadas con una base de datos interna son ahora compatibles con el modo preventivo. Ahora, puede iniciar todas sus peticiones en paralelo y aumentar la velocidad de sus aplicaciones si estos comandos se utilizan para realizar mucha actividad asíncrona. Leer la documentación

Sincronice sus procesos

Puedes utilizar, por ejemplo, una nueva señal para delegar el trabajo a un proceso cooperativo con el fin de utilizar un comando no preemptivo. El comando crea un objeto compartido y le permite gestionar la progresión del proceso actual con dos nuevos métodos: trigger() y wait(). Lea la documentación

Llamar al evento onResize en los subformularios blank

Cuando un formulario contiene uno o más subformularios, puedes gestionar directamente el evento onResize en el método del subformulario. Este evento se activará cada vez que se modifique el tamaño del objeto subformulario dentro del formulario principal. Esto puede ocurrir

  • Cuando el formulario principal es redimensionado.
  • Cuando un splitter modifica la altura o la anchura del objeto subformulario.
  • Cuando se modifica el tamaño del objeto subformulario mediante la programación con coordenadas OBJECT Set. Lea la documentación

Nuevo tipo de datos variante blank

Se dispone de un nuevo comando para convertir cada variable especificada en una variable Variant: C_VARIANT. El tipo de datos variante puede utilizarse para representar cualquier otro tipo de datos (BLOB, Booleano, Colección, Fecha, Longint, Objeto, Imagen, Puntero, Real, Texto, Hora, Nulo, Indefinido) excepto las matrices. Puede utilizar el comando Tipo para recuperar el tipo de la variable y Tipo de valor para el tipo de valor. El tipo de datos Variant te ayuda a escribir código genérico, como permitir que un método reciba un parámetro como texto o blob, sin necesidad de utilizar un puntero. Lea la documentación

Leer campos de objetos 4D con el motor SQL

El motor SQL ha sido actualizado para permitir la lectura de campos de objetos 4D. Para examinar el contenido de un campo de objeto, la función SQL CAST se ha ampliado para devolver una representación JSON del campo. Leer la documentación

Mejora de las pruebas de la base de datos

Los productos 4D ya pueden ser lanzados usando parámetros de línea de comandos para permitir pruebas o despliegues automáticos. Sin embargo, se han añadido nuevos parámetros para darle aún más flexibilidad a la hora de abrir sus bases de datos:

-opening-mode: definirá la apertura de su base de datos en modo interpretado o compilado.

-create-data: permitirá crear nuevos datos si no se encuentra el archivo de datos actual o con un nombre específico si se pasa -data.

-user-param: enviará una cadena que puede ser leída después de lanzar la base de datos utilizando el comando GET DATABASE PARAMETER . Leer la documentación

Definir un nombre alternativo para la cuenta de usuario 4D

Un nuevo comando está disponible para definir un nombre personalizado para usar en lugar del nombre actual de la cuenta de usuario 4D: SET USER ALIAS. Acepta una cadena como parámetro. Esa cadena (alias) reemplazará el nombre de usuario 4D en el entorno 4D. Un alias permite utilizar su propio sistema de usuario/contraseña, o un directorio de usuarios externo como Active Directory o LDAP mientras se beneficia de todos los conceptos de identificación de usuarios incorporados en 4D. Lea la documentación

Exportar un formulario clásico de 4D a formulario dinámico

Un nuevo comando FORM Convert to dynamic está disponible para permitirle exportar un formulario 4D clásico (almacenado en un archivo .4DB) a un formulario dinámico. Usted pasa el nombre del formulario y recibe un objeto que describe el formulario. Luego, dependiendo de sus necesidades, puede cambiar las opciones del formulario como el tamaño de la fuente o la posición de los objetos en la pantalla o incluso añadir más objetos antes de mostrarlo. Lea la documentación

Mejoras en el registro de depuración

El comando SET DATABASE PARAMETER se ha mejorado para permitir el registro sólo de procesos específicos, así como de las llamadas a métodos miembros (métodos de colecciones u objetos). Se dispone de un nuevo selector(Registro de depuración del proceso actual) que lanza el registro de depuración del proceso actual. Lea la documentación

Los formularios dinámicos y el orden de entrada

Ahora puede definir un orden de entrada que no está necesariamente asociado al orden z. Para cada página de su definición de formulario, el atributo «objetos» contiene una lista de elementos del formulario que se ordenan siguiendo el orden z. A esta lista se ha añadido un nuevo atributo «entryOrder». Le permite especificar su propio orden de entrada personalizado. Si este atributo no está definido, 4D utiliza el orden z(es decir, el orden definido en el atributo «objects»). Lea la documentación

Instancias multi-cliente

Ahora es posible ejecutar varios clientes en el mismo ordenador y conectarlos simultáneamente al mismo 4D Server. Cada conexión de cliente incluye ahora una carpeta de caché independiente que contiene la dirección IP, el puerto y el código hash de la conexión. Gracias a esto, también puede conectar varios clientes desde la misma máquina a múltiples servidores en diferentes máquinas. No es necesaria ninguna configuración. Lea la documentación

Escriba sus propios métodos para objetos

El comando Nueva fórmula se ha ampliado para permitirle crear fórmulas como objetos. Puede pasar parámetros o acceder al contenido del objeto fórmula. Las fórmulas como objetos pueden realizar cálculos para los atributos del objeto que se pasarán a un método. Los objetos ahora pueden tener su propio callback o manejador de errores. Si ya estás usando ORDA o haciendo la clásica codificación basada en la selección, los objetos acaban de volverse mucho más poderosos. Leer la documentación

4D Bloques de comentariosblank

Los comentarios pueden estar en una sola línea de comentario o en varias líneas. Ahora, en lugar de tener muchas líneas prefijadas con //, puedes usar simplemente /* al principio de un comentario y */ al final para comentar un bloque entero. También puedes contraerlos y expandirlos. Además, los comentarios pueden añadirse a cualquier parte de una línea, incluso dentro de una condición if o un bucle. Lea la documentación

Compatibilidad con el atributo SVG «non-scaling-strokeblank

En el estándar SVG, el atributo «non-scaling-stroke» indica que el ancho del trazo no depende del zoom o del escalado. En otras palabras, los trazos de un objeto no se ven afectados por las transformaciones y el zoom. Ahora, hemos añadido nuevos comandos al tema «4D SVG». Puedes definir el atributo de «trazo sin escala» a los objetos de dibujo con el método VG_SET_STROKE_VECTOR_EFFECT. Lea la documentación

Comandos de administración de 4D Server

Se completa la lista de comandos que le dan la posibilidad de crear sus propias interfaces de administración como diálogos en el servidor, en el cliente o incluso como páginas HTML para el acceso a la web:

  • SEND MESSAGE TO REMOTE USER para enviar un mensaje desde el servidor a un usuario remoto.
  • Obtener la actividad del proceso para recuperar una lista de sesiones de usuario.
  • DROP REMOTE USER para finalizar una sesión de usuario.
  • ABORT PROCESS BY ID para detener un proceso específico utilizando su número de proceso único.
  • Obtenga la actividad del proceso o las propiedades del proceso para recuperar el número único del proceso.
  • RECHAZAR NUEVA CONEXIÓN REMOTA para bloquear nuevas conexiones remotas.
  • Obtenga información de la aplicación para saber si las conexiones han sido aceptadas o rechazadas.
  • SOAP REJECT NEW REQUESTS para bloquear las peticiones SOAP.
  • WEB Obtener informacióndel servidor para saber si las conexiones han sido aceptadas o rechazadas.
  • Refrescar licencia para actualizar una licencia. Leer la documentación

Más información sobre los procesos web

Se dispone de nueva información sobre la URL utilizada por los procesos web. Esta información puede ser recuperada de dos maneras: a través de la ventana de administración de 4D Server o a través del lenguaje 4D con el comando Get process activity ; un nuevo atributo «url» es añadido al objeto proceso cuando el tipo de proceso es un proceso web. Lea la documentación

El nuevo comando Obtener información de la aplicación recupera información detallada sobre la actividad y la configuración de red de su base de datos activa. Este comando puede ser llamado tanto en un cliente remoto como en el servidor 4D. Lea la documentación

Informe rápido

Gestión de los métodos de callback

Ahora puede establecer el parámetro «methodName» en el comando QR REPORT. Este método es un callback que se ejecuta en cada evento gestionado:
  • qr cmd open
  • qr cmd save
  • qr cmd save as
  • qr cmd generate
  • qr cmd page setup
  • qr cmd print preview

En el método callback, puedes interceptar todos los eventos gestionados, hacer algo y ejecutar el evento con el comando QR EXECUTE COMMAND. Leer la documentación

Gestionar el espaciado de los subtotales

Ahora, para cada salto (subtotal), puede establecer un salto de página o un alto de línea diferente. En el caso de una altura de línea diferente, la diferencia puede expresarse en puntos (pt) o en porcentaje (%). Lea la documentación

Gestión de los bordes blank

Puede modificar el aspecto del marco de una celda, columna o fila de su informe cambiando su color o el grosor de la línea. Coloque el ratón sobre el elemento que desea configurar, haga clic en él y, a continuación, elija el parámetro adecuado (la configuración del borde, el grosor de la línea y el color) en la ventana emergente. Leer la documentación

Mejoras en la interfaz de usuario

La primera mejora es un nuevo botón «Guardar / Guardar como». Al elegir «Guardar» se guarda el trabajo actualizando la última versión guardada del archivo para que coincida con la versión en la pantalla. Al elegir «Guardar como» se muestra un aviso para guardar el trabajo como un archivo con un nombre diferente. La segunda mejora es la información sobre herramientas (pequeños mensajes que se muestran al pasar el ratón por encima de un área). Se han añadido a las filas de los subtotales para ayudarte a ver fácilmente el sentido de la clasificación: ascendente o descendente. Leer la documentación

4D Write Pro

Nueva barra de herramientas

Una nueva barra de herramientas está disponible en 4D Write Pro para ayudarte con el proceso de creación de documentos. Simplemente arrastrando y soltando un nuevo elemento de la Biblioteca de Objetos, obtienes acceso a una completa barra de herramientas con siete pestañas diferentes para que puedas cambiar rápidamente de acción. Leer la documentación

Hojas de estilo de 4D Write Problank

Ahora puedes gestionar tus propias hojas de estilo para párrafos o caracteres gracias a un par de nuevos comandos que te permiten crear, eliminar e importar hojas de estilo. Una hoja de estilo de carácter le permite definir cómo se muestra e imprime un carácter (o una palabra), mientras que una hoja de estilo de párrafo le permite definir los colores de los márgenes, el relleno, los tabuladores, los bordes y mucho más. Una hoja de estilo es un objeto que pertenece a un documento. Se crea mediante el comando WP Nueva hoja de estilo. Una vez creado, puede utilizar este objeto como parámetro para los atributos de WP Set. A continuación se muestra la lista de los nuevos comandos que le ayudarán a manejar las hojas de estilo:

  • WP Newstyle sheet: permite crear una hoja de estilo
  • WPDELETE STYLE SHEET : permite borrar una hoja de estilo
  • WPGet style sheet: permite recuperar una sola hoja de estilo por su nombre,
  • WP Getstyle sheets:rellena una colección de hojas de estilo de un tipo determinado, y por último
  • WPIMPORTAR HOJAS DE ESTILO: permite importar hojas de estilo existentes creadas en otro documento de 4D Write Pro (como una plantilla, por ejemplo).

Lea la documentación

Convierta sus documentos en formato .docx

Los documentos de 4D Write Pro pueden ahora exportarse en formato . docx. Para ello, utiliza la nueva constante wk docx con el comando existente WP EXPORT DOCUMENTO , o utiliza el comando WP EXPORT VARIABLE. Lea la documentación

Redimensionar el ancho de las columnas blank

Se proporciona una característica out-of-the-box para permitir a los usuarios finales cambiar el tamaño del ancho de las columnas. Pase el ratón por encima de los separadores de fila y el cursor se convertirá en una flecha doble que muestra que la columna puede ser redimensionada. Al hacer clic y arrastrar estos separadores, se redimensionarán tanto las columnas de la izquierda como las de la derecha. Si se pulsa la tecla de mayúsculas mientras se arrastra, sólo se redimensionarán las columnas de la izquierda y se desplazarán todas las de la derecha. Leer la documentación

Añadir y eliminar filas y columnas blank

Gestionar la inserción y eliminación de filas y columnas es ahora posible gracias a cuatro nuevos comandos: Para insertar filas y columnas, se han creado dos nuevos comandos: WP Table insertar filas y WP Table insertar columnas. Ambos comandos devuelven rangos que corresponden a partes creadas dentro de la tabla. Y para eliminar filas y columnas, hay dos comandos más: WP TABLE DELETE ROWS y WP TABLE DELETE COLUMNS. Lea la documentación

Altura fija para los encabezados y pies de página blank

Un nuevo atributo del documento: wk header and footer autofit está disponible para determinar si los encabezados y pies de página deben ser redimensionados automáticamente para evitar truncar su contenido. Este atributo puede establecerse como Verdadero o Falso. En el caso de documentos recién creados, este parámetro se establecerá en Verdadero (se activará el redimensionamiento automático de los encabezados y pies de página), y en Falso si se importa un documento de 4D Write Pro. Leer la documentación

Crear cabeceras y pies de página con código

Se han añadido dos nuevos comandos: WP Nueva cabecera y WP Nuevo pie de página para permitir la creación programática de cabeceras y pies de página. También puede usar código para eliminar un encabezado y un pie de página con los comandos WP DELETE HEADER y WP DELETE FOOTER. Lea la documentación

Regla vertical de 4D Write Pro

Se añade una nueva regla vertical. Permite a los usuarios gestionar gráficamente los márgenes verticales. Si su documento contiene encabezados o pies de página, los espacios entre ellos y el cuerpo del documento también pueden ser modificados con la regla vertical. La nueva propiedad Mostrar regla vertical está disponible en la Lista de propiedades, lo que permite activar la visualización de la regla. Lea la documentación

Diseño de página

Puedes definir el tamaño de la página de tu documento, la orientación y los márgenes con código. Tiene a su disposición nuevos atributos que pueden utilizarse con los comandos WP SET ATTRIBUTES y WP GET ATTRIBUTES . Puede establecer las propiedades para todo un documento de 4D Write Pro. Los siguientes valores se utilizan por defecto para todas las secciones del documento que luego puede cambiar para una sección determinada:

  • wk pagewidth, wk page height – para el tamaño de la página
  • wk pageorientation – para la orientación de la página
  • wk pagemargin, wk page margin left, wk page margin right, wk page margin top, wk page margin bottom – para los márgenes de las páginas. Lea la documentación

Nuevos atributos para evitar viudas, huérfanas y saltos de página

Se han añadido nuevas opciones a 4D Write Pro para ayudarte a evitar viudas y huérfanos en párrafos o tablas, y saltos de página dentro de párrafos o tablas.

Las viudas y los huérfanos son las líneas al principio o al final de un párrafo que se dejan solas en la parte superior o inferior de una página. Para evitarlas, tiene un nuevo atributo que puede utilizar con el comando WP SET ATTRIBUTES : wk avoid widows and orphans. Los valores disponibles para este atributo son wk true o wk false. Cuando este atributo se establece para un párrafo o una tabla, 4D Write Pro evita que este párrafo o tabla tenga una sola línea separada en otra página.

En cuanto a los saltos de página dentro de los párrafos o tablas, se dispone de un nuevo atributo: wk page break inside. Los valores disponibles son wk evitar o wk auto. Esta opción es útil cuando no se desea que un párrafo, varios párrafos o una tabla se rompan en dos páginas. Leer la documentación

Gestionar secciones con código

Una sección le permite obtener diferentes diseños dentro del mismo documento. Por ejemplo, para cada sección, puede definir un tamaño y una orientación del papel diferentes, márgenes distintos, encabezados y pies de página diferentes, etc. Esto da lugar a documentos complejos y con un diseño muy atractivo. Las secciones pueden ser manipuladas por código con el comando WP Get sections, permitiéndole recuperar una colección de secciones en su documento. El comando WP Get section puede ser usado para recuperar la sección actual. Para cambiar los atributos de una sección específica, puede pasar la referencia de la sección a los comandos WP SET ATTRIBUTES y WP GET ATTRIBUTES. También puede crear subsecciones con código utilizando el nuevo comando WP Create subsection. Lea la documentación

Paginación de tablas

Las tablas grandes ahora se muestran automáticamente en más de una página. No tiene que contar filas para comprobar el tamaño de una página o su orientación ya que las tablas se dividen dinámicamente cuando se produce un salto de página o de columna. El comando WP INSERT BREAK ha sido actualizado para soportar una nueva constante: wk paragraph break. Lea la documentación

Expresiones 4D soportadas en imágenes ancladas

Una expresión 4D válida puede ser asociada a una imagen anclada con el nuevo atributo de expresión de imagen wk, proporcionando aún más flexibilidad. Basta con establecer esta constante para cualquier imagen anclada para definir un método que devuelva una imagen. Lea la documentación

Obtener coordenadas en un documento de 4D Write Pro

Ahora puedes obtener coordenadas en un documento de 4D Write Pro. El comando WP Get position devuelve más información sobre la posición actual de un rango o una referencia de elemento utilizando dos nuevos atributos: bounds y rangeHeight. El primer atributo describe el rectángulo que rodea un rango según su tipo (ya sea «tipo por defecto» (caracteres), «tipo párrafo», «tipo tabla» o «tipo imagen»). También tiene atributos propios: arriba, abajo, izquierda y derecha. El segundo atributo describe la altura del rectángulo límite del objeto. Lea la documentación

Estructura virtual

Las expresiones de tabla y de campo insertadas en los documentos de 4D Write Pro soportan ahora la definición de la estructura virtual de la base de datos. Esto se hace con los comandos SET TABLE TITLES(…;*) y SET FIELD TITLES(…;*). El editor de fórmulas también soporta la estructura virtual, y como 4D establece automáticamente la interfaz de usuario basada en la configuración del sistema, el editor de fórmulas se mostrará en el idioma del usuario. Leer la documentación

Enlaces en un documento de 4D Write Pro

WP SETLINK le permite establecer URLs y también le da la posibilidad de invocar un método desde su aplicación 4D (con parámetros) o apuntar a marcadores desde su documento. El nuevo comando WP Get links devuelve una colección de todos los enlaces de un documento, en una sola llamada. Cada enlace de la colección es un objeto con una descripción del enlace en sus atributos. Lee la documentación

Manejar las propiedades de las vistas

Las propiedades de la vista pueden ser manejadas mediante programación. El comando WP SET VIEW PROPERTIES permite establecer dinámicamente una o más propiedades de vista del área de 4D Write Pro. Los ajustes pueden ser devueltos en un objeto con todas las propiedades de la vista a través del comando WP Get view properties. Lea la documentación

Ajustes de las pestañas

Las pestañas pueden ser configuradas con una colección de cadenas, valores numéricos, ¡o incluso una colección de objetos! Si sólo necesita modificar los valores de las pestañas por defecto, puede utilizar un objeto con la nueva constante wk tab default (añadida específicamente para este propósito). Lea la documentación

Más objetivos y comandos renombrados

Los comandos enumerados a continuación se han ampliado para aceptar cualquier tipo de objetivo como primer parámetro. Todavía pueden utilizar un rango, pero ahora también pueden utilizar una referencia (cabecera, cuerpo, pie de página), un elemento (imagen, párrafo), o todo el documento como objetivo:

  • WP SET TEXT
  • WP INSERTAR PAUSA
  • WP INSERTAR DOCUMENTO
  • WP INSERTAR IMAGEN
  • WP Insertar tabla
  • WP SET ATTRIBUTES
  • WP OBTENER ATRIBUTOS

Además, se ha cambiado el nombre de varios comandos:

Nombre anterior Nuevo nombre
WP Crear rango de párrafos WP Rango de párrafos
WP Crear rango de imágenes WP Gama de imágenes
WP Crear gama WP Gama de textos
WP Crear gama de tablas WP Gama de tablas
WP Obtener rango de marcadores WP Rango de marcadores
WP Obtener selección WP Rango de selección

Leer documentación

4D View Pro

Trabaje con documentos .xlsx utilizando 4D View Pro

Los comandos existentes de 4D View Pro, VP IMPORT DOCUMENTO y VP EXPORTAR DOCUMENTO, han sido mejorados. Ahora soportan archivos con la extensión .xlsx (Microsoft Excel). Sólo tiene que pasar la ruta de su archivo a los comandos para ponerse en marcha. Lea la documentación

Una barra de herramientas de estilo cinta rica en funciones

Se proporciona una potente barra de herramientas estilo cinta para mejorar la interfaz de usuario de 4D View Pro. Permite organizar las funciones de 4D View Pro en un conjunto de pestañas, para aumentar la descubribilidad de las funciones y permite un acceso rápido a los diferentes comandos. Vale la pena mencionar que esta barra de herramientas también introduce nuevas funciones como las opciones de exportación a PDF y CSV. Leer la documentación

Métodos de uso y campos de la base de datos

La seguridad de su base de datos se ha mejorado, ya que ahora tiene un mayor control sobre los datos que decide poner a disposición (o no) de sus usuarios finales, así como sobre los campos o métodos a los que puede acceder.

Los comandos y variables no pueden ser llamados directamente desde una celda por razones de seguridad, pero se puede acceder a ellos a través de métodos permitidos que devuelven el valor del comando o de la variable. Se pueden autorizar métodos con el comando SET ALLOWED METHODS, tablas o campos que pueden declararse como estructuras virtuales con los comandos SET TABLE TITLES y SET FIELD TITLES. Las variables, así como los comandos 4D, deben estar contenidos en un método permitido. Lea la documentación

Obtenga el control de la configuración de su método 4D

VP SET ALLOWED METHODS es un nuevo comando que permite especificar los parámetros, el nombre y el tipo de un método 4D e incluir un resumen. Ahora sus métodos pueden ser más informativos y descriptivos para los usuarios finales. Lea la documentación

Impresión y exportación en PDF blank

Ahora puede definir opciones específicas de impresión para cada hoja con el comandoVPSET PRINT INFO . Estas opciones se utilizan para preparar el documento antes de una exportación o impresión en PDF. Ahora, para exportar un documento en formato PDF, puede utilizar el comando VP EXPORT DOCUMENTO . La información de VP PRINT INFO se utilizará para incrustar automáticamente todas las fuentes utilizadas en su documento, en el archivo PDF generado. Para imprimir, se puede utilizar el comando VP PRINT. Lea la documentación

Convertir a SVG blank

El comando VP Convert to picture permite convertir una hoja o parte de una hoja en SVG. El SVG puede entonces ser utilizado dentro de un formulario 4D para ser impreso como parte de un trabajo de impresión 4D, junto con otros formularios o datos. Lea la documentación

Añadir nuevos eventos a la lista de propiedades blank

Un nuevo conjunto de eventos de formulario de 4D View Pro están disponibles y listados en la lista de propiedades. Devuelven información especial a la que se puede acceder con el comando Evento FORM: «Al redimensionar la columna», «Al redimensionar la fila», «Al hacer clic», «Al hacer doble clic», «Al hacer clic en la cabecera», «Al cambiar la selección» y «Al editar». Cuando el evento ocurre, toda la información asociada puede ser recuperada del objeto devuelto por el comando FORM Event. Lea la documentación

Codificar un rango en 4D View Pro

Ahora es posible crear rangos mediante código. Hay nuevos comandos que permiten definir un objeto de rango para manipular las celdas: VP Cell, VP Cells, VP Column, VP Row, VP All, VP Combine ranges y VP Name. Lea la documentación

Obtener y establecer el contenido de las celdas

Un nuevo conjunto de comandos para rellenar sus documentos mediante programación está disponible: VP SET VALUE, VPSET BOOLEAN VALUE, VP SETDATE TIME VAL UE, VP SETDATE VAL UE, VP SETTIME VAL UE,VP SET NUM VALUE, VP SET TEXT VALUE ,VP SET FORMULA, VP SET FIELD, VP Get value, VP Get formula. Lea la documentación

Nombrar los rangos y las fórmulas

Se introduce un nuevo concepto: rangos y fórmulas con nombre. Se pueden crear dos tipos de nombres con la programación:

El primero se refiere a un rango de celdas donde puedes aplicar un nombre legible a las celdas que te interesan con el comando VP ADD RANGE NAME.

El segundo se refiere a una fórmula con el comando VP ADD FORMULA NAME para sustituir los cálculos por nombres legibles en tus hojas de cálculo. También crea una constante y simplifica la lectura de los cálculos en tu hoja de cálculo. Lea la documentación

Gestionar las selecciones y la celda activa

Se incluye un conjunto de comandos para ayudarle a establecer y obtener la celda o selección(es) activa(s) en sus documentos:

  • VP Obtener celda activa
  • VP Obtener selección
  • VP SET ACTIVE CELL
  • VP SET SELECTION
  • VP ADD SELECTION
  • VP RESET SELECCIÓN

Si desea ver una celda en una posición específica en su área de 4D View Pro(por ejemplo, arriba a la izquierda o abajo a la derecha), puede utilizar el comando VP SHOW CELL . Leer la documentación

Utilizar colecciones para leer y escribir en 4 D View Pro

Cuatro nuevos comandos están disponibles para permitirle leer un gran número de valores o fórmulas diferentes de manera más fácil, rápida y al mismo tiempo a través de colecciones: VP SET VALUES, VP Get values, VP SET FORMULAS y VP Get formulas. Para establecer valores o fórmulas en las celdas, basta con crear una colección en la que cada elemento representa una fila. Cada fila es una colección de valores de celdas que se van a establecer en las columnas. Para la lectura, puede pasar un rango de celdas a los valores VP Get. El comando devuelve los valores en las colecciones correspondientes. Lea la documentación

Personalización del estiloblank

Puede personalizar mediante programación el estilo de sus documentos de 4D View Pro. Existen tres opciones diferentes. Puede utilizar los comandos

  • comandos de estilo por defecto para definir el estilo general de una hoja con los comandos VP SET DEFAULT STYLE y VP Get default style, o
  • los comandos de hoja de estilo para definir los estilos personalizados de uso frecuente con los comandos VP ADD STYLESHEET, VP REMOVE STYLESHEET, VP Get stylesheet y VP Get stylesheets , o
  • comandos de estilo de celda para definir el estilo de celdas específicas con los comandos VP SET CELL STYLE y VP Get cell style.

Además, se ha añadido el nuevo comando VP SET BORDER para poder gestionar los bordes de un rango. Lea la documentación

R-releases en profundidad