Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v19
VP Run offscreen area

VP Run offscreen area 


 

VP Run offscreen area ( parameters ) -> Résultat 
Paramètre Type   Description
parameters  Objet in Objet contenant les attributs de la zone hors écran
Résultat  Varié in Propriété .result de l'objet onEvent, ou Null s'il ne retourne pas de valeur.

La commande VP Run offscreen area crée, dans la mémoire, une zone hors écran qui peut être utilisée pour traiter les commandes et fonctions d'une zone 4D View Pro.

Dans l'objet parameters, passez l'une des propriétés optionnelles suivantes. Ces propriétés seront disponibles grâce à la commande This dans la méthode onEvent et référencent l'instance : 

 

Propriété Type  Description
area  texte Le nom de la zone hors écran. S'il est omis ou null, un nom générique est assigné  (ex : OffscreenArea1). 
onEvent  objet (formula) Une méthode callback qui sera lancée lorsque la zone hors écran sera prête. Elle peut être soit :
  • une fonction onEvent d'une classe, soit
  • un objet Formula
Par défaut, la méthode callback est appelée sur les événements On VP Ready, On Load, On Unload, On End URL Loading, On URL Loading Error, On VP Range Changed, ou On Timer

La méthode callback peut être utilisée pour accéder à l'objet 4D View Pro. Voir Variable de l'objet formulaire 4D View Pro .
autoQuit  booléen  Vrai (valeur par défaut) si la commande doit stopper l'exécution de la formule lorsque les événements On End URL Loading ou On URL Loading Error se produisent.

Si faux, vous devez utiliser les commandes CANCEL ou ACCEPT dans la méthode callback onEvent
timeout  réel Durée maximale (exprimée en secondes) avant la fermeture de la zone si aucun événement n'est généré. Si elle est fixée à 0, aucune limitation n'est appliquée. Valeur par défaut : 60 
result mixte Résultat du traitement (le cas échéant).
<customProperty>  mixte Tout attribut personnalisé qui sera disponible dans la méthode callback onEvent

 

La propriété suivante est automatiquement ajoutée par la commande, si nécessaire :

 

Propriété Type  Description 
timeoutReached booléen  Ajouté avec la valeur vrai si le timeout a été dépassé

 

Note : La zone hors écran est uniquement disponible durant l'exécution de la commande VP Run offscreen area. Elle sera automatiquement détruite à la fin de l'exécution. 

 

Les commandes suivantes peuvent être utilisées dans la méthode callback (de rétro-appel) :

Vous souhaitez créer une zone 4D View Pro hors écran et lire la valeur d'une cellule :

 

  // Déclaration de la classe OffscreenArea
 Class constructor 
 C_TEXT($1)&nbsp;
 This.filePath:=$1
 
  //  Cette fonction sera appelée sur chaque événement de la zone hors écran
 Fonction onEvent
 Case of:(FORM Event.code=On VP Ready)
       VP IMPORT DOCUMENT(This.area;This.filePath)
       This.result:=VP Get value(VP Cell(This.area;6;22)) 
 
       ALERT("La cellule G23 contient la valeur : "+String(This.result))&nbsp;
 End case

 

La méthode callback (de rétro-appel) OffscreenArea :  

 

 $o:=cs.OffscreenArea.new() 
 
 $result:=VP Run offscreen area($o)

 

Vous souhaitez charger un grand document hors écran, attendre que tous les calculs soient terminés et l'exporter au format PDF:

  //Déclaration de la classe OffscreenArea
 class constructor($pdfPath Text)
 This.pdfPath:=$pdfPath
 This.autoQuit:=False
 This.isWaiting:=False
 
 Function onEvent
 Case of
    :(FORM Event.code=On VP Ready)
  // Import du document
       VP IMPORT DOCUMENT(This.area;$largeDocument4VP)
       This.isWaiting:=True 
 
  // Démarrer un minuteur pour vérifier si tous les calculs sont terminés.
  // Si pendant cette période le "On VP Range Changed" est lancé, le minuteur sera redémarré
  // L'heure doit être définie en fonction de la configuration de l'ordinateur.</p> <p>FIXER MINUTEUR(60)
 
    :(FORM Event.code=On VP Range Changed)
  //Fin du calcul détectée. Redémarre le minuteur
       If(This.isWaiting)
          SET TIMER(60)
       End if
 
    :(FORM Event.code=On Timer)
  // Pour être sûr de ne pas redémarrer le minuteur si vous appelez d'autres commandes 4D View après ce point
       This.isWaiting:=False
 
  // Stopper le minuteur
       SET TIMER(0)
 
  // Démarrer l'export PDF
       VP EXPORT DOCUMENT(This.area;This.pdfPath;New object("formula";Formula(ACCEPT)))
 
    :(FORM Event.code=On URL Loading Error)
       ANNULER
 End case

 

La méthode callback OffscreenArea :  

 

 $o:=cs.OffscreenArea.new()
 
 $result:=VP Run offscreen area($o)

 



Voir aussi  

Blog post: End of document loading

 
PROPRIÉTÉS 

Produit : 4D
Thème : Langage 4D View Pro
Numéro : 905271

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v18 R4

 
UTILISATION DE L'ARTICLE

4D View Pro ( 4D v19)