Mise en page conditionnelle à l'aide d'un script
Vous pouvez utiliser un script pour mettre en évidence certains champs d'un rapport. Par exemple, pour attirer l'attention sur une valeur qui dépasse la moyenne.
Pour la mise en page des champs, vous disposez des propriétés suivantes :
- Bold (gras)
- Italic (italique)
- Name (nom de la police)
- Size (taille de la police)
- Strikethrough (barré)
- Underline (souligné)
- ForeColor (couleur du texte)
Pour la mise en page des étiquettes et des champs de texte, vous disposez des propriétés suivantes :
- BackColor (couleur d'arrière-plan)
- Font (police)
Exemple :
Mettre un champ en gras :
{Element:Label1}.Font.Bold = True
Choix d'une police rouge pour un champ (avec valeurs RGB) :
{Element:Label1}.ForeColor = RGB(255, 0, 0)
Choix d'une police rouge pour un champ (avec code vb) :
{Element:Label1}.ForeColor = vbRed
Si vous agrandissez la police ou utilisez des caractères gras, il se peut que le champ occupe plus d'espace. Tenez-en compte dans le rapport.
Définir conditionnellement le format à l'aide d'un script :
Dans cet exemple, vous ajoutez un script permettant d'imprimer la moyenne en caractères gras et bleus lorsqu'elle est supérieure à 1000.
- Cliquez sur :
.Profit ouvre l'éditeur de script.
- Ouvrez la rubrique Section détail / Imprimer.

Profit ouvre une nouvelle fenêtre de script dans le pied de page du document.
- Faites glisser le champ {Element:VeldGemiddelde} dans la zone de script.

- Saisissez le script suivant :
If DecComp({Element:VeldGemiddelde},1000)= 1 then
{Element:VeldGemiddelde}.Font.Bold = true
{Element:VeldGemiddelde}.Forecolor = vbBlue
else
{Element:VeldGemiddelde}.Font.Bold = false
end if
La fonction 'DecComp' vous permet de comparer deux valeurs. Si la première est supérieure à la seconde, le résultat de cette fonction est la valeur 1 et le champ est mis en gras.
- Cliquez sur : OK.
- Cliquez sur : Fermer.
- Appuyez sur : F7. ou allez sur Document / Exemple.

Test d'un champ et nouvelle mise en page pour un autre champ
Dans l'exemple ci-dessus, le champ est testé avant de recevoir sa mise en page. Cela n'est possible que si le champ à tester contient une valeur.
Vous pouvez tester si un champ contient une valeur avec l'action 'IsEmpty'.
If IsEmpty({Element:VeldGemiddelde}.Value) Then
{Element:VeldNaam}.BackColor = vbYellow
End If
|
Aller directement à |