Bonjour,
Par exemple, je voudrais générer une liste de personnes. Dans un formulaire, j'ai une case à cocher "Une page par personne". En gros, si cette case est cochée, à chaque nouvelle personne je fais un saut de page (PageBreakAfter = always) sinon je laisse toutes les personnes à la suite (PageBreakAfter = auto).
J'espère que vous avez compris l'énoncé du problème.
Pour ce faire, je passe en paramètre la valeur (vrai ou faux) de l'option, jusque là aucun problème.
Sur la ligne de détail qui contient une personne, je dois initialiser la propriété PageBreakAfter à always ou auto.
J'ai essayé sur la méthode onPrepare et onCreate de la ligne de mettre les lignes suivantes :
- Dans le onPrepare :
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if (params["UnePersonneParPage"]) rowHandle.setUserProperty(StyleHandle.PAGE_BREAK_AFTER_PROP,DesignChoiceConstants.PAGE_BREAK_ALWAYS); else rowHandle.setUserProperty(StyleHandle.PAGE_BREAK_AFTER_PROP,DesignChoiceConstants.PAGE_BREAK_AUTO);- Dans le onCreate :
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if (params["UnePersonneParPage"]) rowInstance.setUserPropertyValue(StyleHandle.PAGE_BREAK_AFTER_PROP,DesignChoiceConstants.PAGE_BREAK_ALWAYS); else rowInstance.setUserPropertyValue(StyleHandle.PAGE_BREAK_AFTER_PROP,DesignChoiceConstants.PAGE_BREAK_AUTO);
Et j'ai l'erreur suivante (c'est la même avec rowInstance pour le onCreate) :
Attention, je n'ai jamais fait les deux ensemble. J'ai aussi tenté de remplacer rowHandle ou rowInstance par row mais il est de type NativeRowObject.GRAVE: ReferenceError: "rowHandle" n'est pas défini (<inline>#4)
org.mozilla.javascript.EcmaError: ReferenceError: "rowHandle" n'est pas défini (<inline>#4)
at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3240)
[... et je vous épargne la suite]
Est-ce que quelqu'un aurait une idée ? Ou mieux, l'aurais déjà fait ?
Merci
Partager