Definiera villkor
Villkor Àr logiska uttryck som du kan anvÀnda för att kontrollera visning av fÀlt och omrÄden i dokumentet. Följande exempel gÀller inte bara fÀlt, utan ocksÄ omrÄden.
Du kan definiera villkor för följande fÀlttyper:
-
Villkorlig text: visar text A om villkoret Àr sant, eller text B om villkoret Àr falskt.
-
Dold text: döljer fÀltets innehÄll om villkoret Àr sant.
-
Dolt stycke: döljer stycket om villkoret Àr sant.
-
Slumpvis datapost och NÀsta datapost: kontrollerar Ätkomst till databasposter.
Det enklaste sÀttet att definiera ett villkor Àr att skriva det logiska uttrycket direkt i rutan Villkor med följande vÀrden:
SANT |
Villkoret Àr alltid uppfyllt. Du kan Àven ange ett valfritt vÀrde inte lika med 0 som villkorstext. |
FALSKT |
Villkoret Àr inte uppfyllt. Du kan Àven ange vÀrdet 0. |

Om du lÀmnar rutan Villkor tom tolkas det som att villkoret inte Àr uppfyllt.
NÀr du definierar ett villkor anvÀnder du samma element som nÀr du definierar en formel, nÀmligen relationsoperatorer, matematiska funktioner, statistiska funktioner, talformat, variabler och konstanter.
Du kan anvÀnda följande typer av variabler nÀr du definierar ett villkor:
-
Fördefinierade LibreOffice-variabler som anvÀnder statistik pÄ dokumentegenskaper
-
Anpassade variabler som skapas med fÀltet "SÀtt variabel"
-
Variabler baserade pÄ anvÀndardata
-
Variabler baserade pÄ innehÄllet i databasfÀlt
Du kan inte anvÀnda interna variabler i villkorsuttryck, till exempel sid- och kapitelnummer.
Villkor och variabler
I följande exempel anvÀnds en variabel som kallas "x":
x == 1 eller x EQ 1 |
Villkoret Àr sant om "x" Àr lika med 1. |
x != 1 eller x NEQ 1 |
Villkoret Àr sant om "x" inte Àr lika med 1. |
sinx == 0 |
Villkoret Àr sant om "x" Àr en multipel av pi. |
Om du vill anvÀnda relationsoperatorer i strÀngar mÄste operatorerna omges av dubbla citattecken.
x == "ABC" eller x EQ "ABC" |
Kontrollerar om variabeln "x" innehÄller strÀngen "ABC" (sant), eller inte (falskt). |
x == "" eller x EQ "" respektive !x eller NOT x |
Kontrollerar om variabeln "x" innehÄller en tom strÀng. |

Relationsoperatorn "Àr lika med" mÄste representeras av tvÄ likhetstecken (==) i ett villkor. Om du till exempel definierar variabeln "x" med vÀrdet 1, kan du ange villkoret som x==1.
AnvÀndardata
You can include user data when you define conditions. To change your user data, choose LibreOffice - PreferencesTools - Options - LibreOffice - User data. User data must be entered in the form of strings. You can query the user data with "==" (EQ), "!=" (NEQ), or "!"(NOT).
Följande tabell innehÄller variabler för anvÀndardata och deras innebörd:
Variabel |
Betydelse |
user_firstname |
Förnamn |
user_lastname |
Efternamn |
user_initials |
Initialer |
user_company |
Företag |
user_street |
Gata |
user_country |
Land |
user_zipcode |
Postnummer |
user_city |
Ort |
user_title |
Rubrik |
user_position |
Position |
user_tel_work |
Telefon - arbetet |
user_tel_home |
Telefon - privat |
user_fax |
Faxnummer |
user_email |
E-postadress |
user_state |
Stat (inte i alla LibreOffice-versioner) |
Om du t.ex. vill dölja ett stycke, text eller omrÄde frÄn en anvÀndare med vissa initialer, t.ex. "LM", sÄ anger du följande villkor: user_initials=="LM".
Villkor och databasfÀlt
Du kan definiera villkor för att komma Ät databaser och databasfÀlt. Du kan t.ex. kontrollera innehÄllet i ett databasfÀlt utifrÄn ett villkor eller anvÀnda databasfÀlt i logiska uttryck. Följande tabell innehÄller nÄgra ytterligare exempel pÄ hur du kan anvÀnda databaser i villkor:
Exempel |
Betydelse |
databas.tabell.företag Databas.Tabell.Företag NEQ "" Databas.Tabell.Företag != "" |
Villkoret Ă€r sant om fĂ€ltet FĂRETAG inte Ă€r tomt. (I det första exemplet krĂ€vs ingen operator.) |
!Databas.Tabell.Företag NOT databas.tabell.företag Databas.Tabell.Företag EQ "" Databas.Tabell.Företag =="" |
Returnerar SANT om fĂ€ltet FĂRETAG Ă€r tomt. |
Databas.Tabell.Företag !="Sun" Databas.Tabell.Företag NEQ "Sun" |
Returnerar SANT om den aktuella poster i fĂ€ltet FĂRETAG inte Ă€r Sun. (Utropstecken representerar ett logiskt ICKE.) |
databas.tabell.förnamn AND databas.tabell.namn |
Returnerar SANT om posten innehÄller det första och sista namnet. |

Observera skillnaden mellan det logiska Inte "!" (NOT) och relationsoperatorn Inte lika med "!=" (NEQ).
NÀr du refererar till ett databasfÀlt i ett villkor anvÀnder du formen databasnamn.tabellnamn.fÀltnamn. Om ett av namnen innehÄller ett tecken som Àr en operator, till exempel ett minustecken (-), ska du omgÀrda namnet med hakparenteser, exempelvis databasnamn.[tabellnamn].fÀltnamn. AnvÀnd aldrig mellanslag inuti fÀltnamn.
Exempel: Dölja ett tomt databasfÀlt
Du kan vilja skapa ett villkor som döljer tomma fĂ€lt, t.ex. om vissa av FĂRETAG-fĂ€ltets dataposter Ă€r tomma.
VÀlj Dolt stycke frÄn listan och ange följande villkor: Adressbok.Adresser.Företag EQ ""
eller skriv följande
NOT Adressbok.Adresser.Företag
Om databasfĂ€ltet FĂRETAG Ă€r tomt sĂ„ Ă€r villkoret sant och stycket döljs.

To display hidden paragraphs on the screen, you can choose LibreOffice - PreferencesTools - Options - LibreOffice Writer - Formatting Aids, and clear the Fields: Hidden paragraphs check box.
Exempel pÄ villkor i fÀltkommandon
I följande exempel anvÀnds fÀltet Villkorlig text, Àven om exemplen gÀller alla fÀlt som gÄr att lÀnka till ett villkor. Den syntax som anvÀnds i villkor anvÀnds ocksÄ i fÀlten Dold text, Dolt stycke, Slumpvis datapost och NÀsta datapost.
SÄ hÀr visar du villkorlig text baserat pÄ antalet sidor:
-
VÀlj Infoga - FÀltkommando - Andra och klicka sedan pÄ fliken Funktioner.
-
Klicka pÄ "Villkorlig text" i listan FÀlttyp.
-
I rutan Villkor skriver du "page == 1".
-
I rutan SĂ„ skriver du "Det finns bara en sida".
-
I rutan Annars skriver du "Det finns flera sidor".
-
Klicka pÄ Infoga och sedan pÄ StÀng.
SÄ hÀr visar du villkorlig text baserad pÄ en anvÀndardefinierad variabel
-
VÀlj Infoga - FÀltkommando - Andra och klicka sedan pÄ fliken Variabler.
-
Klicka pÄ "SÀtt variabel" i listan FÀlttyp.
-
Skriv "Vinst" i rutan Namn.
-
Skriv "5000" i rutan VĂ€rde.
-
Klicka pÄ Infoga.
-
Klicka pÄ fliken Funktioner och sedan pÄ "Villkorlig text" i listan FÀlttyp.
-
Skriv "Vinst < 5000" i rutan Villkor.
-
Skriv "MÄlet Àr inte uppnÄtt" i rutan SÄ.
-
Skriv "MÄlet Àr uppnÄtt" i rutan Annars.
-
Klicka pÄ Infoga.
Om du vill redigera innehÄllet i variabeln "Vinst" dubbelklickar du pÄ variabelfÀltet.
SÄ hÀr visar du villkorlig text baserad pÄ innehÄllet i ett databasfÀlt:
I den första delen av exemplet infogas ett mellanslag mellan fÀlten "Förnamn" och "Efternamn" i ett dokument, och i den andra delen infogas text baserad pÄ innehÄllet i ett fÀlt. I exemplet förutsÀtts att en adressdatakÀlla Àr registrerad i LibreOffice.
-
VÀlj Infoga - FÀltkommando - Andra och klicka sedan pÄ fliken Databas.
-
Klicka pÄ "StandardbrevfÀt" (kopplad utskrift) i listan FÀlttyp.
-
GÄ till rutan Databasurval, dubbelklicka pÄ en adressbok, klicka pÄ "Förnamn" och sedan pÄ Infoga. Upprepa ÄtgÀrden för "Efternamn".
-
Placera markören mellan de tvÄ fÀlten i dokumentet, tryck pÄ mellanslag och ÄtergÄ sedan till dialogrutan FÀlt:
-
Klicka pÄ fliken Funktioner och sedan pÄ "Villkorlig text" i listan FÀlttyp.
-
I rutan Villkor skriver du: "adressbok.adresser.förnamn".
-
I rutan SÄ skriver du ett blanksteg och lÀmnar rutan Annars tom.
Du kan nu anvÀnda ett villkor för att infoga text baserad pÄ innehÄllet i fÀltet Förnamn.
-
Klicka pÄ fliken Funktioner i dialogrutan FÀlt.
-
Klicka pÄ "Villkorlig text" i rutan Typ.
-
I rutan Villkor skriver du: adressbok.adresser.förnamn == "Mikael"
-
I rutan SĂ„ skriver du "BĂ€ste".
-
Skriv "Hej" i rutan Annars.
-
Klicka pÄ Infoga.