4D View Pro: Fin de la carga del documento

Traducido automáticamente de Deepl

Cuando se utiliza 4D View Pro (especialmente en modo offscreen) con documentos complejos, el cálculo de todas las fórmulas puede llevar un tiempo y puede ser difícil saber cuándo ha terminado finalmente (y es importante esperar antes de llamar a comandos como exportar o imprimir).

Como solución, hemos introducido dos nuevos eventos. Uno de ellos es llamado por cada cálculo/fórmula, que puede ser utilizado para activar un temporizador. Si el tiempo expira sin que se termine otra fórmula, podemos asumir que todo el documento está terminado.

Carga final de HDI 4DVP

El primer evento es On VP Range Changed. Este evento se lanza cada vez que se termina un cálculo. Como puede haber varios cálculos, el segundo evento es el evento on Timer. Este evento permite esperar hasta que se complete el siguiente cálculo. Si se lanza un evento On VP Range Changed antes de que termine el temporizador, se reinicia, de lo contrario, se termina.

Por ejemplo, si quieres cargar un documento grande, esperar a que terminen todos los cálculos y exportarlo, tendrás que crear este tipo de clase:

Class constructor($pdfPath: Text)
This .pdfPath:=$pdfPath
This .autoQuit:=False
This .isWaiting:=False

Function onEvent
Case of
: (FORM Event.code=On VP Ready)
// Document import
VP IMPORT DOCUMENT (This.area; $largeDocument4VP)
This .isWaiting If:=True
// Start a timer to verify if all calculations are finished.
// If during this period the "On VP Range Changed" is thrown, the timer will be restarted
// The time must be defined according to the computer configuration.
SET TIMER (60)

: (FORM Event.code=On VP Range Changed)
// End of calculation detected. Restart the timer
(This.isWaiting
)
SET TIMER (60)
End if

: (FORM Event.code=On Timer)
// To make sure not to restart the timer if you call other 4D View commands after this point
This .isWaiting:=False

// Stop the timer
SET TIMER (0)

// Start the PDF export
VP EXPORT DOCUMENT (This.area; This.pdfPath; New object("fórmula"; Formula(ACCEPT))

: (FORM Event.code=On URL Loading Error) xml-ph-00 CANCEL

End case

Descargue el IDH de arriba para ver cómo utilizar estos eventos para exportar un archivo grande de 4D View Pro en formato PDF.

Y revise el centro de documentación para más detalles.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se unió al equipo de 4D Program en noviembre de 2016. Como Product Owner, está a cargo de escribir las historias de usuario y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la característica entregada cumple con las necesidades del cliente. Después de obtener una licenciatura en Ciencias de la Computación en el CNAM, Fabrice se unió a una pequeña empresa de publicación de software como desarrollador Windev. A continuación, trabajó para diferentes empresas del sector industrial y comercial como desarrollador de Windev y de la web, así como asesor técnico de nuevas funcionalidades.