Performances et expressions de modèles d’objet de formulaire XML

Le modèle d’objet de formulaire Adobe XML adopte une approche de la création de formulaires qui différencie la mise en forme, la conception et les données du formulaire.

Dans une conception de formulaire, les expressions de syntaxe de référence associent les objets à des valeurs, des objets et des propriétés au sein de la hiérarchie arborescente d’un modèle d’objet de document (DOM, Document Object Model). Les expressions de syntaxe de référence sont généralement rédigées sous forme de logique de formulaire, de validations, de calculs ou d’autres règles d’entreprise.

Tenez compte des conseils suivants en vue de réduire la durée de traitement nécessaire à la résolution des expressions de syntaxe de référence :

  • Veillez à ce que les expressions restent le plus simple possible.

  • Evitez d’utiliser “..” (deux points) dans les expressions.

De plus, après avoir évalué une expression de syntaxe de référence dans un script, stockez le résultat dans une variable d’objet. Vous pourrez récupérer ce résultat si l’expression de syntaxe de référence est à nouveau utilisée. Il est plus efficace de réutiliser un résultat que de réévaluer l’expression.

Dans l’exemple suivant, la méthode resolveNode est utilisée une seule fois et la référence d’objet obtenue est enregistrée et réutilisée en vue de manipuler divers objets apparentés. Le traitement de ce script sera plus efficace que celui d’un script faisant appel à une expression de syntaxe de référence pour chaque objet et appliquant la méthode resolveNode à chacun d’entre eux.

var oSubform = xfa.resolveNode("xfa.form.form1.Subform1"); 
if (oSubform.all.length< 3) { 
      Subform.SubformUpButton1.presence = "invisible"; 
      Subform.SubformLabel1.presence = "invisible"; 
      Subform.SubformUpButton2.presence = "invisible"; 
      Subform.SubformLabel2.presence = "invisible"; 
 }