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í:
-
Podmíněný text: zobrazí text A, pokud podmínka platí, nebo text B, pokud podmínka neplatí.
-
Skrytý text: skryje obsah pole, je-li podmínka splněna.
-
Skrytý odstavec: skryje odstavec, je-li podmínka splněna.
-
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. |

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:
-
Přednastavené proměnné LibreOffice, které obsahují statistické údaje o dokumentu
-
Vlastní proměnné, které vytvoříte pomocí pole "Nastavit proměnnou"
-
Proměnné založené na uživatelských údajích
-
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. |

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 - PředvolbyNástroje - Možnosti - 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í. |

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.

Chcete-li zobrazit skryté odstavce, zvolte LibreOffice - PředvolbyNástroje - Možnosti - LibreOffice Writer - Pomůcky pro formátování a zrušte zaškrtnutí pole 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:
-
Zvolte Vložit - Pole - Další pole a klepněte na kartu Funkce.
-
V seznamu Typ vyberte "Podmíněný text".
-
Do políčka Podmínka napište "page == 1".
-
Do políčka Potom napište "Dokument má pouze jednu stranu.".
-
Do políčka Jinak napište "Dokument má více stran.".
-
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é:
-
Zvolte Vložit - Pole - Další pole a klepněte na kartu Proměnné.
-
V seznamu Typ klepněte na "Nastavit proměnnou".
-
Do políčka Jméno zadejte "Zisk".
-
Do políčka Hodnota zadejte "5000".
-
Klepněte na Vložit.
-
Klepněte na kartu Funkce a poté na "Podmíněný text" v seznamu Typ.
-
Do políčka Podmínka zadejte "Zisk < 5000".
-
Do políčka Potom napište "Cíl nesplněn.".
-
Do políčka Jinak napište "Cíl splněn :-).".
-
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.
-
Vyberte Vložit - Pole - Další pole a klepněte na kartu Databáze.
-
V seznamu Typ vyberte "Pole standardního dopisu".
-
V poli Výběr databáze poklepejte na adresář, klepněte na "Jméno" a poté na Vložit, opakujte pro "Příjmení".
-
V dokumentu umístěte kurzor mezi vložená pole, stiskněte mezerník a vraťte se do dialogu Pole.
-
Klepněte na kartu Funkce a klepněte na "Podmíněný text" v seznamu Typ.
-
Do pole Podmínka zadejte "Adresář.Adresy.Jméno".
-
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.
-
V dialogu Pole klepněte na kartu Funkce.
-
V seznamu Typ vyberte "Podmíněný text".
-
Do pole Podmínka zadejte: Adresář.Adresy.Jméno == "Michal"
-
Do políčka Potom zadejte "Milý".
-
Do pole Jinak zadejte "Dobrý den".
-
Klepněte na Vložit.