DĂ©finition de conditions

Les conditions sont des expressions logiques vous permettant de contrĂ´ler l'affichage des champs et sections dans le document. Bien que les exemples suivants concernent les champs, vous pouvez Ă©galement les appliquer aux sections.

Vous pouvez définir des conditions pour les types de champ suivants :

  1. Texte conditionnel : affiche le texte A si la condition est vérifiée (Vrai) et le texte B dans le cas contraire (Faux).

  2. Texte masqué : masque le contenu du champ si la condition est vérifiée (Vrai).

  3. Paragraphe masqué : masque le paragraphe si la condition est vérifiée (Vrai).

  4. Enregistrement par numéro et Enregistrement suivant : contrôle l'accès aux enregistrements de base de données.

La méthode la plus simple pour définir une condition consiste à saisir l'expression logique directement dans une zone Condition à l'aide des valeurs suivantes :

VRAI

La condition est toujours remplie. Il est également possible d'entrer une valeur quelconque différente de zéro comme texte conditionnel.

FAUX

La condition n'est pas remplie. À la place, vous pouvez aussi spécifier la valeur 0.


note

Si vous laissez la zone Condition vide, la condition est considérée comme n'ayant pas été remplie.


Lorsque vous définissez une condition, utilisez les mêmes éléments que pour la définition d'une formule, c'est-à-dire des opérateurs de comparaison, des fonctions mathématiques et statistiques, des formats numériques, des variables et des constantes.

Pour définir une condition, vous pouvez utiliser les types de variables suivants :

  1. Variables LibreOffice prédéfinies utilisant des statistiques dans les propriétés du document

  2. variables définies par l'utilisateur (champ "Définir une variable") ;

  3. variables basées sur les données d'utilisateur ;

  4. Variables basées sur le contenu des champs de base de données

Vous ne pouvez pas utiliser de variables internes, telles que des numéros de chapitre ou de page, dans les expressions conditionnelles.

Conditions et variables

Les exemples suivants utilisent une variable appelée "x" :

x == 1 ou x EQ 1

La condition est vérifiée (Vrai) si la variable "x" est égale à 1.

x != 1 ou x NEQ 1

La condition est vérifiée (Vrai) si la variable "x" est différente de 1.

sinx == 0

La condition est vérifiée (Vrai) si la variable "x" est un multiple du nombre pi.


Si vous utilisez des opérateurs de comparaison sur des chaînes, les opérandes doivent être entourés par des guillemets :

x == "ABC" ou x EQ "ABC"

Vérifiez si la variable "x" contient (vrai) ou non (faux) la chaîne "ABC".

x == "" ou x EQ ""

ou

!x ou NOT x

Détermine si la variable "x" contient une chaîne vide.


note

L'opérateur de comparaison "Égal" doit être représenté par deux signes égal (==) dans une condition. Par exemple, si vous définissez une variable "x" avec une valeur de 1, vous pouvez saisir la condition suivante : x==1.


Données d'identité

Vous pouvez inclure des données d'identité lorsque vous définissez des conditions. Pour modifier ces données d'identité, choisissez - LibreOffice - Données d'identité. Les données d'identité doivent être saisies sous forme de chaînes. Vous pouvez faire une requête sur les données d'identité avec "==" (EQ), "!=" (NEQ), or "!"(NOT).

Le tableau suivant contient la liste des variables de données d'utilisateur avec leur signification :

Variable

Signification

user_firstname

Prénom

user_lastname

Nom

user_initials

Initiales

user_company

Société

user_street

Rue

user_country

Pays

user_zipcode

C.P.

user_city

Ville

user_title

Titre

user_position

Position

user_tel_work

Numéro de téléphone professionnel

user_tel_home

Numéro de téléphone personnel

user_fax

Numéro de fax

user_email

Adresse courriel

user_state

État (uniquement dans certaines versions de LibreOffice)


Par exemple, si vous voulez cacher un paragraphe, un texte ou une section à un utilisateur possédant les initiales "LM", saisissez la condition suivante : user_initials=="LM".

Conditions et champs de base de données

Vous pouvez définir des conditions qui déterminent l'accès aux bases de données ou aux champs de base de données. Par exemple, vous avez la possibilité de vérifier le contenu d'un champ de base de données à l'aide d'une condition, ou d'utiliser des champs de base de données dans des expressions logiques. Le tableau suivant répertorie d'autres exemples d'utilisation de conditions faisant référence à des bases de données :

Exemple

Signification

Basededonnées.Table.Société

Basededonnees.Table.Societe NEQ ""

Basededonnees.Table.Societe != ""

La condition est vérifiée (Vrai) si le champ SOCIETE n'est pas vide. (Dans le premier exemple, aucun opérateur n'est nécessaire.)

!Basededonnees.Table.Societe

NOT Basededonnées.Table.Société

Basededonnees.Table.Societe EQ ""

Basededonnees.Table.Societe ==""

Renvoie VRAI si le champ Société est vide.

Basededonnees.Table.Societe !="Sun"

Basededonnees.Table.Societe NEQ "Sun"

Renvoie VRAI si l'entrée active dans le champ SOCIÉTÉ n'est pas "Sun" (le point d'exclamation représente un NON logique).

Basededonnées.Table.Prénom AND Basededonnées.Table.Nom

Renvoie VRAI si l'enregistrement contient le prénom et le nom.


note

Notez la différence entre le non logique "!" (NOT) et l'opérateur d'inégalité "!=" (NEQ).


Lorsque vous faites référence à un champ de base de données dans une condition, employez la forme Nomdebasededonnées.Nomdetable.Nomdechamp. Si l'un des noms contient un caractère qui est un opérateur, comme le signe moins (-), insérez-le entre crochets : par exemple, Nomdebasededonnées.[nom de la table].Nomdechamp. N'utilisez jamais d'espaces dans un nom de champ.

Exemple : masquage d'un champ de base de données vide

Vous pouvez créer une condition qui masque un champ vide, par exemple, quand le champ SOCIETE n'est pas renseigné dans certains enregistrements de données.

Cochez la case Paragraphe masqué et saisissez la condition suivante : Carnetdadresses.Adresses.Societe EQ ""

ou saisissez le texte suivant

NOT Carnetdadresses.Adresses.Societe

Si le champ SOCIETE de la base de données est vide, la condition est vérifiée et le paragraphe est masqué.

note

Pour afficher les paragraphes masqués à l'écran, choisissez - LibreOffice Writer - Affichage, et décochez la case Paragraphes masqués.


Exemples de conditions dans les champs

Les exemples suivants utilisent le champ Texte conditionnel, même s'ils peuvent s'appliquer à tous les champs liés à une condition. La syntaxe utilisée pour les conditions est également utilisée pour les champs Texte masqué, Paragraphe masqué, Enregistrement par numéro et Enregistrement suivant.

Pour afficher un texte conditionnel basé sur le nombre de pages :

  1. Choisissez Insertion - Champ - Autres champs et cliquez sur l'onglet Fonctions.

  2. Cliquez sur "Texte conditionnel" dans la liste Type de champ.

  3. Dans la zone Condition, saisissez "page == 1".

  4. Dans la zone Alors, saisissez "Il n'y a qu'une page".

  5. Dans la zone Sinon, saisissez "Il y a plusieurs pages".

  6. Cliquez sur Insérer, puis sur Fermer.

Affichage d'un texte conditionnel basé sur une variable définie par l'utilisateur

  1. Choisissez Insertion - Champ - Autres champs et cliquez sur l'onglet Variables.

  2. Cliquez sur "DĂ©finir une variable" dans la liste Type de champ.

  3. Dans la zone Nom, saisissez "Profit".

  4. Dans la zone Valeur, saisissez "5000".

  5. Cliquez sur Insérer.

  6. Cliquez sur l'onglet Fonctions, puis sur "Texte conditionnel" dans la liste Type de champ.

  7. Dans la zone Condition, saisissez "Profit < 5000".

  8. Dans la zone Alors, saisissez "L'objectif n'est pas atteint".

  9. Dans la zone Sinon, saisissez "L'objectif est atteint".

  10. Cliquez sur Insérer.

Pour Ă©diter le contenu de la variable "Profit", double-cliquez sur le champ de la variable.

Pour afficher un texte conditionnel basé sur le contenu d'un champ de base de données :

Dans cet exemple, la première partie insère un espace entre le champ "Prénom" et le champ "Nom" dans un document, et la deuxième partie insère du texte basé sur le contenu d'un champ. Cet exemple requiert l'enregistrement d'une source de données des adresses dans LibreOffice.

  1. Choisissez Insertion - Champs - Autres champs et cliquez sur l'onglet Base de données.

  2. Cliquez sur "Champs de mailing" dans la liste Type de champ.

  3. Dans la zone Sélection d'une base de données, double-cliquez sur un carnet d'adresses, cliquez ensuite sur "Prénom", puis sur Insérer. Répétez la procédure pour "Nom".

  4. Dans le document, placez le curseur entre les deux champs, appuyez sur Espace, puis revenez à la boîte de dialogue Champs :

  5. Cliquez sur l'onglet Fonctions, puis sur "Texte conditionnel" dans la liste Type de champ.

  6. Dans la zone Condition, saisissez : "CarnetAdresses.Adresses.Prénom".

  7. Dans la zone Alors, saisissez un espace et laissez la zone Sinon vide.

Vous pouvez maintenant utiliser une condition qui insère du texte basé sur le contenu du champ "Prénom".

  1. Dans la boîte de dialogue Champs, cliquez sur l'onglet Fonctions.

  2. Cliquez sur "Texte conditionnel" dans la liste Type de champ.

  3. Dans la zone Condition, saisissez : Addressbook.addresses.firstname == "Michael"

  4. Dans la zone Alors, saisissez "Cher".

  5. Dans la zone Sinon, saisissez "Bonjour".

  6. Cliquez sur Insérer.

Aidez-nous !