Voorwaarden definiëren

Voorwaarden zijn logische expressies waarmee u de weergave van velden en secties in uw document kunt bepalen. De volgende voorbeelden zijn van toepassing op velden, maar kunnen ook op secties worden toegepast.

U kunt voor de volgende veldtypen voorwaarden opgeven:

  1. Voorwaardelijke tekst: geeft tekst A weer als de voorwaarde waar is, of tekst B als de voorwaarde onwaar is.

  2. Verborgen tekst: verbergt de inhoud van het veld als de voorwaarde waar is.

  3. Verborgen alinea: verbergt de alinea als de voorwaarde waar is.

  4. Willekeurige record en Volgende record: beheren de toegang tot databaserecords.

De eenvoudigste manier om een voorwaarde te definiëren is de logische expressie direct in het vak Voorwaarde te typen met de volgende waarden:

WAAR

Er wordt altijd aan de voorwaarde voldaan. U kunt ook een willekeurige waarde die niet gelijk is aan 0, invullen als de voorwaardelijke tekst.

ONWAAR

Er wordt niet aan de voorwaarde voldaan. U kunt ook de waarde 0 invoeren.


Notitiepictogram

Als u het vak Voorwaarde leeg laat, wordt dit geïnterpreteerd als dat er niet aan de voorwaarde voldaan wordt.


Gebruik dezelfde elementen als voor het definiëren van een formule wanneer u een voorwaarde definieert, namelijk vergelijkingsoperatoren, wiskundige en statistische functies, getalnotaties, variabelen en constanten.

U kunt de volgende typen variabelen gebruiken wanneer u een voorwaarde definieert:

  1. Vooraf gedefinieerde LibreOffice-variabelen die statistieken van documenteigenschappen gebruiken

  2. Aangepaste variabelen die gemaakt zijn via het veld Variabele instellen

  3. Variabelen gebaseerd op gebruikersgegevens

  4. Variabelen gebaseerd op de inhoud van databasevelden

U kunt interne variabelen, zoals pagina- en hoofdstuknummers, niet in conditionele expressie gebruiken.

Voorwaarden en variabelen

In de volgende voorbeelden wordt een variabele genaamd 'x' gebruikt:

x == 1 of x EQ 1

De voorwaarde is waar als 'x' gelijk is aan 1.

x != 1 of x NEQ 1

De voorwaarde is waar als 'x' niet gelijk is aan 1.

sinx == 0

De voorwaarde is waar als 'x' een veelvoud is van pi.


Teneinde vergelijkingsoperatoren met tekenreeksen te kunnen gebruiken, moeten de uitdrukkingen tussen dubbele aanhalingstekens staan:

x == "ABC" of x EQ "ABC"

Controleert of de variabele x de tekenreeks ABC bevat (waar), of niet (onwaar).

x == "" of x EQ ""

of

!x of NOT x

Controleert of de variabele x een lege tekenreeks bevat.


Notitiepictogram

De vergelijkingsoperator 'gelijk aan' moet in een voorwaarde door twee gelijktekens (==) worden weergegeven. Als u bijvoorbeeld een x-variabele met de waarde 1 definieert, kunt u de voorwaarde als x==1 invoeren.


Gebruikersgegevens

U kunt gebruikersgegevens opnemen als u voorwaarden definieert. Kies - LibreOffice - Gebruikersgegevens om uw gebruikersgegevens te wijzigen. Gebruikersgegevens moeten worden opgegeven in de vorm van tekenreeksen. U kunt de gebruikersgegevens bevragen met "==" (EQ), "!=" (NEQ), of "!"(NOT).

De volgende tabel toont de variabelen voor gebruikersgegevens en hun betekenis:

Variabele

Betekenis

user_firstname

Voornaam

user_lastname

Achternaam

user_initials

Initialen

user_company

Bedrijf

user_street

Straat

user_country

Land

user_zipcode

Postcode

user_city

Plaats

user_title

Titel

user_position

Positie

user_tel_work

Zakelijk telefoonnummer

user_tel_home

Privé telefoonnummer

user_fax

Faxnummer

user_email

E-mailadres

user_state

Provincie (niet in alle LibreOffice-versies)


U kunt bijvoorbeeld een alinea, tekst of sectie verbergen voor een gebruiker met specifieke initialen, zoals 'LM', door de volgende voorwaarde in te voeren: user_initials=="LM".

Voorwaarden en databasevelden

U kunt voorwaarden voor de toegang tot databases, of databasevelden, definiëren. Zo kunt u de inhoud van een databaseveld via een voorwaarde controleren, of databasevelden in logische expressies gebruiken. In de volgende tabel staan nog enkele voorbeelden van het gebruik van databases in voorwaarden:

Voorbeeld

Betekenis

Database.Tabel.Bedrijf

Database.Tabel.Bedrijf NEQ ""

Database.Tabel.Bedrijf != ""

De voorwaarde is waar als het veld BEDRIJF niet leeg is. (In het eerste voorbeeld is geen operator vereist.)

!Database.Tabel.Bedrijf

NOT Database.Tabel.Bedrijf

Database.Tabel.Bedrijf EQ ""

Database.Tabel.Bedrijf ==""

Geeft WAAR terug als het veld BEDRIJF leeg is.

Database.Tabel.Bedrijf !="Sun"

Database.Tabel.Bedrijf NEQ "Sun"

Geeft WAAR terug als het huidige item in het veld BEDRIJF niet "Sun" is. (Het uitroepteken vertegenwoordigt een logische NOT.)

Database.Tabel.Voornaam AND Database.Tabel.Achternaam

Geeft WAAR als de record de voor- en achternaam bevat.


Notitiepictogram

Let op het verschil tussen de Booleaanse waarde NOT '!' en de vergelijkingsoperator niet gelijk aan '!=' (NEQ).


Wanneer u naar een databaseveld in een voorwaarde verwijst, gebruik dan de vorm Databasenaam.Tabelnaam.Veldnaam. Als een van de namen een teken bevat dat een operator is, zoals een minteken (-), zet de naam dan tussen haakjes, bijvoorbeeld Databasenaam.[Tabel-naam].Veldnaam. Gebruik nooit spaties in veldnamen.

Voorbeeld: Een leeg databaseveld verbergen

U kunt desgewenst een voorwaarde maken die een leeg veld verbergt, bijvoorbeeld als het veld BEDRIJF leeg is voor sommige gegevensrecords.

Selecteer het vak Verborgen alinea en typ de volgende voorwaarde: Adresboek.Adressen.Bedrijf EQ ""

of typ het volgende

NOT Adresboek.Adressen.Bedrijf

Als het databaseveld BEDRIJF leeg is, is de voorwaarde waar en wordt de alinea verborgen.

Notitiepictogram

Kies - LibreOffice Writer - Opmaakhulp, en maak het keuzevak Velden: Verborgen alinea's leeg om verborgen alinea's op het scherm weer te geven.


Voorbeelden van voorwaarden in velden

De volgende voorbeelden gebruiken het veld Voorwaardelijke tekst, alhoewel deze kunnen worden toegepast worden op alle velden die aan een voorwaarde gekoppeld kunnen worden. De syntaxis die voor voorwaarden wordt gebruikt, wordt ook gebruikt voor de velden Verborgen tekst, Verborgen alinea, Willekeurige record en Volgende record.

Zo geeft u voorwaardelijke tekst weer gebaseerd op het aantal pagina's:

  1. Kies Invoegen - Velden - Overige en klik dan op de tab Functies.

  2. In de lijst Type klikt u op 'Voorwaardelijke tekst'.

  3. In het vak Voorwaarde typt u 'pagina == 1'.

  4. In het vak Dan typt u 'Er is maar één pagina'.

  5. In het vak Anders typt u 'Er zijn meerdere pagina's'.

  6. Klik op Invoegen en vervolgens op Sluiten.

Zo geeft u voorwaardelijke tekst weer gebaseerd op een gebruikergedefinieerde variabele

  1. Kies Invoegen - Velden - Overige en klik dan op de tab Variabelen.

  2. In de lijst Type klikt u op 'Variabele instellen'.

  3. In het vak Naam typt u 'Winst'.

  4. In het vak Waarde typt u '5000'.

  5. Klik op Invoegen.

  6. Klik op de tab Functies en dan op 'Voorwaardelijke tekst' in het vak Type.

  7. In het vak Voorwaarde typt u 'Winst < 5000'.

  8. In het vak Dan typt u 'Doel niet behaald'.

  9. In het vak Anders typt u 'Doel behaald'.

  10. Klik op Invoegen.

Dubbelklik op het variabele veld om de Winst-variabele te bewerken.

Zo geeft u voorwaardelijke tekst weer gebaseerd op de inhoud van een databaseveld:

Het eerste deel van dit voorbeeld voegt een spatie tussen de velden Voornaam en Achternaam in een document in, en het tweede deel voegt tekst gebaseerd op de inhoud van een veld in. Voor dit voorbeeld moet er een adresgegevensbron bij LibreOffice geregistreerd zijn.

  1. Kies Invoegen - Velden - Overige en klik dan op de tab Database.

  2. In de lijst Type klikt u op 'Standaardbriefveld'.

  3. Dubbelklik in het vak Selectie database op een adresboek, klik op 'Voornaam' en vervolgens op Invoegen. Herhaal dit voor 'Achternaam'.

  4. Zet in het document de cursor tussen de twee velden, druk op de spatiebalk en ga dan terug naar het dialoogvenster Velden:

  5. Klik op de tab Functies en dan op 'Voorwaardelijke tekst' in de lijst Type.

  6. In het vak Voorwaarde typt u: "Adresboek.adressen.voornaam".

  7. In het vak Dan typt u een spatie; laat het vak Anders leeg.

U kunt nu een voorwaarde gebruiken om tekst in te voegen gebaseerd op de inhoud van het veld Voornaam.

  1. In het dialoogvenster Velden klikt u op de tab Functies.

  2. In het vak Type klikt u op 'Voorwaardelijke tekst'.

  3. In het vak Voorwaarde typt u: Adresboek.adressen.voornaam == "Michael"

  4. In het vak Dan typt u 'Beste'.

  5. In het vak Anders typt u 'Hallo'.

  6. Klik op Invoegen.

Help ons, alstublieft!