Inhoud

# 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 veldtypes 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 waardes:

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.

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, getalopmaak, variabelen en constanten.

U kunt de volgende types 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.

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 - Voorkeuren Extra - Opties - 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.

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.

Om verborgen alinea's op het scherm weer te geven, kiest u LibreOffice - Voorkeuren Extra - Opties - LibreOffice Writer - Beeld en schakel het selectievakje Verborgen alinea's uit.

## 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 - Veld - Meer velden 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 - Veld - Meer velden 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 - Veld - Meer velden 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.