Definice podmínek

Podmínky jsou logické výrazy, které můžete použít pro ovládání zobrazení polí a sekcí dokumentu. Ačkoliv se následující příklady týkají polí, je možné je použít i na sekce.

Podmínky můžete definovat pro následující typy polí:

  1. Podmíněný text: zobrazí text A, pokud podmínka platí, nebo text B, pokud podmínka neplatí.

  2. Skrytý text: skryje obsah pole, je-li podmínka splněna.

  3. Skrytý odstavec: skryje odstavec, je-li podmínka splněna.

  4. Jakýkoliv záznam a Další záznam: řídí přístup k databázovým záznamům.

Nejjednodušší způsob, jak definovat podmínku, je zadat logický výraz přímo v políčku Podmínka použitím následujících hodnot:

TRUE

Podmínka je vždy splněna. Jako podmíněný text můžete také vložit libovolnou hodnotu různou od 0.

FALSE

Podmínka není splněna. Můžete také vložit hodnotu 0.


note

Pokud ponecháte políčko Podmínka prázdné, podmínka bude vyhodnocena jako nesplněná.


Když definujete podmínku, použijte stejné prvky jako při zápisu vzorce, konkrétně porovnávací operátory, matematické a statistické funkce, formáty čísla, proměnné a konstanty.

Při určení podmínky můžete použít následující typy proměnných:

  1. Přednastavené proměnné LibreOffice, které obsahují statistické údaje o dokumentu

  2. Vlastní proměnné, které vytvoříte pomocí pole "Nastavit proměnnou"

  3. Proměnné založené na uživatelských údajích

  4. Proměnné založené na obsahu databázových polí

V podmínce nemůžete použít interní proměnné, např. číslo stránky nebo kapitoly.

Podmínky a proměnné

Následující příklady používají proměnnou pojmenovanou "x":

x == 1 nebo x EQ 1

Podmínka je splněna, je-li "x" rovno 1.

x != 1 nebo x NEQ 1

Podmínka je splněna, pokud "x" není rovno 1.

sinx == 0

Podmínka je splněna, je-li "x" násobkem pí.


Chcete-li porovnávat řetězce, musíte operandy uzavřít do závorek:

x == "ABC" nebo x EQ "ABC"

Podmínka je splněna, pokud proměnná "x" obsahuje řetězec "ABC".

x == "" nebo x EQ ""

nebo

!x nebo NOT x

Podmínka je splněna, pokud proměnná "x" obsahuje prázdný řetězec.


note

Operátor "rovnosti" musí být v podmínce vyjádřen dvěma rovnítky (==). Např. jestliže definujeme proměnnou "x" s hodnotou jedna (1), můžeme podmínku zadat pomocí x==1.


Uživatelské údaje

Do podmínek můžete zahrnout i uživatelské údaje. Chcete-li změnit vlastní uživatelské údaje, vyberte - LibreOffice - Uživatelské údaje. Uživatelské údaje musí být zadány jako textové řetězce. V podmínkách můžete použít operátory "==" (rovnost), "!=" (nerovnost) nebo "!"(logický zápor - NOT - pole je prázdné).

Následující tabulka obsahuje proměnné s uživatelskými údaji a jejich význam:

Proměnná

Význam

user_firstname

Jméno

user_lastname

Příjmení

user_initials

Iniciály

user_company

Společnost

user_street

Ulice

user_country

Země

user_zipcode

PSČ

user_city

Obec

user_title

Nadpis

user_position

Umístění

user_tel_work

Telefonní číslo do práce

user_tel_home

Telefonní číslo domů

user_fax

Faxové číslo

user_email

E-mailová adresa

user_state

Stav (není ve všech verzích LibreOffice)


Např. chcete-li schovat odstavec, text nebo sekci před uživatelem s určitými iniciály, např. "LM", zadejte podmínku: user_initials=="LM".

Podmínky a databázová pole

V definici podmínek můžete použít databáze nebo databázová pole. Např. můžete v podmínce kontrolovat obsah databázového pole nebo použít databázové pole v logickém výrazu. V následující tabulce naleznete několik příkladů použití databází v podmínkách:

Příklad

Význam

Databáze.Tabulka.Společnost

Databáze.Tabulka.Společnost NEQ ""

Databáze.Tabulka.Společnost != ""

Podmínka je splněna, když pole COMPANY není prázdné. (V prvním příkladě není třeba žádný operátor.)

!Databáze.Tabulka.Společnost

NOT Databáze.Tabulka.Společnost

Databáze.Tabulka.Společnost EQ ""

Databáze.Tabulka.Společnost == ""

Vrátí PRAVDA, jestliže je pole SPOLEČNOST prázdné.

Databáze.Tabulka.Společnost != "Sun"

Databáze.Tabulka.Společnost NEQ "Sun"

Vrátí PRAVDA, jestliže aktuální obsah pole SPOLEČNOST není "Sun". (Vykřičník znamená logický zápor.)

Databáze.Tabulka.Jméno AND Databáze.Tabulka.Příjmení

Vrátí Pravda, jestliže záznam obsahuje jméno i příjmení.


note

Všimněte si rozdílu mezi logickým operátorem NOT (!) a srovnávacím operátorem není rovno NEQ (!=).


Když se odkazujete na pole databáze v podmínce, používejte formulaci JménoDatabáze.JménoTabulky.JménoPole. Jestliže jedno z těchto jmen obsahuje znak, který je operátorem - např. mínus (-) - uzavřete jméno do hranatých závorek. Např. JménoDatabáze.[Jméno-Tabulky].JménoPole. Nepoužívejte mezery ve jménech polí.

Příklad: Skrytí prázdného databázového pole

Chceme-li vytvořit podmínku, která skryje prázdné pole, např. je-li pole Company u některých záznamů prázdné.

Vyberte Skrytý odstavec a zadejte následující podmínku: Adresář.Adresy.Jméno EQ ""

nebo zadejte

NOT Addressbook.Addresses.Company

Když je pole COMPANY prázdné, podmínka je splněna a odstavec je skryt.

note

Chcete-li zobrazit skryté odstavce, zvolte - LibreOffice Writer - Zobrazení a zrušte zaškrtnutí pole Skryté odstavce.


Příklady použití podmínek v polích

Následující příklady používají pole Podmíněný text, ale je možné je použít pro jakákoliv pole, která mohou být svázána s podmínkou. Uvedená syntaxe podmínek se používá též pro skrytý text, skrytý odstavec a pole jakýkoliv a další záznam.

Chcete-li zobrazit podmíněný text v závislosti na číslování stránek:

  1. Zvolte Vložit - Pole - Další pole a klepněte na kartu Funkce.

  2. V seznamu Typ vyberte "Podmíněný text".

  3. Do políčka Podmínka napište "page == 1".

  4. Do políčka Potom napište "Dokument má pouze jednu stranu.".

  5. Do políčka Jinak napište "Dokument má více stran.".

  6. Klepněte na Vložit a poté na Zavřít.

Chcete-li zobrazit podmíněný text v závislosti na uživatelem definované proměnné:

  1. Zvolte Vložit - Pole - Další pole a klepněte na kartu Proměnné.

  2. V seznamu Typ klepněte na "Nastavit proměnnou".

  3. Do políčka Jméno zadejte "Zisk".

  4. Do políčka Hodnota zadejte "5000".

  5. Klepněte na Vložit.

  6. Klepněte na kartu Funkce a poté na "Podmíněný text" v seznamu Typ.

  7. Do políčka Podmínka zadejte "Zisk < 5000".

  8. Do políčka Potom napište "Cíl nesplněn.".

  9. Do políčka Jinak napište "Cíl splněn :-).".

  10. Klepněte na Vložit.

Chcete-li upravit hodnotu proměnné "Zisk", poklepejte na pole proměnné.

Chcete-li zobrazit podmíněný text v závislosti na poli databáze:

První část příkladu vloží mezeru mezi "Jméno" a "Příjmení" v dokumentu, druhá část vloží podmíněný text v závislosti na jménu. Pro správnou funkci příkladu je třeba v LibreOffice zaregistrovat zdroj adres.

  1. Vyberte Vložit - Pole - Další pole a klepněte na kartu Databáze.

  2. V seznamu Typ vyberte "Pole standardního dopisu".

  3. V poli Výběr databáze poklepejte na adresář, klepněte na "Jméno" a poté na Vložit, opakujte pro "Příjmení".

  4. V dokumentu umístěte kurzor mezi vložená pole, stiskněte mezerník a vraťte se do dialogu Pole.

  5. Klepněte na kartu Funkce a klepněte na "Podmíněný text" v seznamu Typ.

  6. Do pole Podmínka zadejte "Adresář.Adresy.Jméno".

  7. Do políčka Potom zadejte mezeru a nechte políčko Jinak prázdné.

Nyní můžeme vložit text v závislosti na obsahu pole Jméno.

  1. V dialogu Pole klepněte na kartu Funkce.

  2. V seznamu Typ vyberte "Podmíněný text".

  3. Do pole Podmínka zadejte: Adresář.Adresy.Jméno == "Michal"

  4. Do políčka Potom zadejte "Milý".

  5. Do pole Jinak zadejte "Dobrý den".

  6. Klepněte na Vložit.

Podpořte nás!