İçerikler
Dizin 🔎︎

# Koşulları Tanımlamak

Durumlar, belgenizdeki alanlar ve bölümler'in görünümünü kontrol edebildiğiniz mantıksal ifadelerdir. Her ne kadar takip eden örnekler alanlara uygulansa da, bölümlere de uygulanır.

Takip eden alan türleri için durumları tanımlayabilirsiniz.

1. Durumsal metin: Eğer durum doğru ise A metnini yanlışsa B metnini göster.

2. Saklı metin: eğer durum doğru ise alanın içeriğini saklar.

3. Saklı paragraf: eğer durum doğru ise paragrafı saklar.

4. Herhangi kayıt ve sonraki kayıt: veritabanı kayıtlarına erişimi kontrol eder.

Bir durum tanımlamanın en kolay yolu, Durum kutusuna doğrudan mantıksal ifadeyi takip eden değerlerle yazmaktır:

DOĞRU | Durum her zaman karşılanır. Aynı zamanda durum metni olarak 0 olmayan herhangi bir değer de girebilirsiniz.
YANLIŞ | Durum karşılanmadı. Aynı zamanda 0 değerini de girebilirsiniz.

Eğer Durum kutusunu boş bırakırsanız, durum karşılanmamış olarak yorumlanır.

Bir durum tanımladığınızda, aynı elemanları formül tanımlamak için kullanın, yani karşılaştırma operatörleri, matematiksel ve istatistiksel fonksiyonlar, sayı biçimleri, değişkenler ve sabitler.

Bir durumu tanımlarken takip eden değişken türlerini kullanabilirsiniz:

1. Belge özellikleri üzerinde istatistik kullanan önceden tanımlanmış LibreOfficeDev değişkeleri

2. "Değişken ata" ile oluşturulmuş özelleşmiş değişkenler

3. Kullanıcı verisindeki temel değişkenler

4. Veritabanı alanı içeriğindeki temel değişkenler

Durum ifadelerinde, sayfa ve bölüm numaraları gibi, dahili değişkenleri kullanamazsınız.

## Koşullar ve Değişkenler

Takip eden örnekler "x" adında bir değişken kullanır:

x == 1 veya x EQ 1 | Eğer "x" 1'e eşitse durum doğrudur.
x != 1 veya x NEQ 1 | Eğer "x" 1'e eşit değilse durum doğrudur.
sinx == 0 | Eğer "x" pi sayısının bir katı ise durum doğrudur.

Karşılaştırma işlemcilerini karakter katarları ile kullanmak için, işlemciler çift tırnak ile sarılmalıdır:

x == "ABC" veya x EQ "ABC" | "x"'in "ABC" karakter katarını içerip (doğru) içermediğini (yanlış) kontrol eder.
x == "" or x EQ "" veya !x veya NOT x | "x"in boş bir karakter katarı içerip içermediğini kontrol eder.

Bir durum içerisinde "eşit" karşılaştırma işemcisi iki eşit işareti ile gösterilmelidir. Örneğin, 1 değerine sahip bir "x" değişkeni tanımlarsanız, durumu x==1 olarak girebilirsiniz.

## Kullanıcı Verisi

Durumları tanımladığınızda kullanıcı verisini dahil edebilirsiniz. Kullanıcı verinizi değiştirmek için, LibreOfficeDev - TercihlerAraçlar - Seçenekler - LibreOfficeDev - Kullanıcı verisi'ni seçin. Kullanıcı verisi karakter dizisi biçiminde girilmelidir. Kullanıcı verisi "==" (EQ), "!=" (NEQ) veya "!"(NOT) ile sorgulanabilir.

Takip eden tablo kullanıcı veri değişkenlerini ve onların anlamlarını listeler.

Değişken | Anlamı
--- | ---
user_firstname | İsim
user_lastname | Soyad
user_initials | Başlangıçlar
user_company | Şirket Adı
user_street | Cadde
user_country | Ülke
user_zipcode | P.Kodu
user_city | Şehir
user_title | Başlık
user_position | Konum
user_tel_work | İş telefon numarası
user_tel_home | Ev telefon numarası
user_fax | Fax numarası
user_email | E-posta adresi
user_state | Durum (her LibreOfficeDev sürümünde yoktur)

Örneğin, bir paragrafı, metni veya belli ilk harfler, "LM" gibi, ile bir kullanıcı seçimini saklamak için, şu durumu girim: user_initials=="LM"

## Koşullar ve Veritabanı Alanları

Veritabanları veya veri tabanı alanlarına erişim için durumlar tanımlayabilirsiniz. Örneğin, bir veritabanı alanının içeriğini bir durumdan kontrol edebilir veya mantıksal ifadelerde veritabanı alanları kullanabilirsiniz. Takip eden tablo birkaç tane daha durum içerisinde veritabanı kullanım örneklerini listeler.

Örnek | Anlamı
--- | ---
Veritabanı.Tablo.Şirket Veritabanı.Tablo.Şirket NEQ "" Veritabanı.Tablo.Şirket != "" | ŞİRKET alanı boş değilse durum doğrudur. (İlk örnekte bir işlemci gerekmez.)
!Veritabanı.Tablo.Şirket NOT Veritabanı.Tablo.Şirket Veritabanı.Tablo.Şirket EQ "" Veritabanı.Tablo.Şirket =="" | ŞİRKET alanı boş ise DOĞRU döndürür.
Veritabanı.Tablo.Şirket !="Güneş" Veritabanı.Tablo.Şirket NEQ "Güneş" | ŞİRKET alanı eğer "Güneş" değilse DOĞRU döndürür. (Ünlem işareti mantıksal DEĞİL demektir.)
Veritabanı.Tablo.İlkisim AND Veritabanı.Tablo.İsim | Eğer kayıt ilk ve son ismi içeriyorsa DOĞRU döndürür.

Mantıksal NOT "!" ve karşılaştırma işlemcisi eşit değil "!=" (NEQ) arasındaki farka dikkat edin.

Bir durum içerisinde veritabanı alanına işaret edecekseniz, Veritabanıadı.Tabloadı.Alanadı biçimini kullanınç Eğer alanlardan birisi işlemci gibi bir karakter içeriyorsa, eksi (-) gibi, ismi köşeli parantezler arasına alın, örneğin Veritabanıadı.[Tablo-adı].Alanadı. Alan isimleri içerisinde asla boşluk kullanmayın.

### Örnek: Veritabanı Alanını Boşaltma ve Saklama

Boş bir alanı saklamak için bir durum tanımlamak isteyebilirsiniz, örneğin, ŞİRKET alanı bazı kayıtlar için boşsa.

Saklı Paragraf liste girdisini seçin ve takip eden durumu yazın: Addresdefteri.Adresler.Şirket EQ ""

ya da şunu yazın

NOT Adresdefteri.Adresler.Şirket

Eğer veritabınındaki COMPANY alanı boş ise durum doğrudur ve paragraf gizlenir.

To display hidden paragraphs on the screen, choose LibreOfficeDev - PreferencesTools - Options - LibreOfficeDev Writer - View, and clear the Hidden paragraphs check box.

## Alanlarda Koşul Örnekleri

Sonraki örnek Koşullu metin alanını kullanmaktadır. Bununla birlikte bir koşula bağlanabilen tüm alanlara uygulanabilmektedirler. Koşullar için kullanılan sözdizimi ayrıca Gizli metin, gizli paragraf, Herhangi Bir kayıt ya da Sonraki kayıt alanları için de kullanılır.

## Sayfa numaralarına göre koşullu metni görüntülemek için:

1. Ekle - Alan - Daha Fazla Alan'ı seçin ve sonra İşlevler sekmesini tıklayın.

2. Tür listesinde, "Koşullu metin" 'e tıklayın.

3. Koşul kutusunda, "page == 1" yazın.

4. Sonraki kutusu içerisine, "Sadece bir sayfa var" yazın.

5. Veya kutusu içerisine, "Birden fazla sayfa var" yazın.

6. Ekle 'ye tıklayın, ve sonra Kapat 'a tıklayın.

## Kullanıcı tarafından tanımlanan Değişken'e bağlı koşullu metni görüntülemek için:

1. Ekle - Alan - Daha Fazla Alan'ı seçin, ve sonra Değişkenler sekmesine tıklayın.

2. Tür listesinde "Değişken Ayarla" 'ya tıklayın.

3. Ad kuutusunda, "Kar" yazın.

4. Değer kutusuna, "5000" yazın.

5. Ekle'yi tıklayın.

6. Fonksiyonlar sekmesine tıklayın, ve sonra Tür listesinde "Koşullu metin" 'e tıklayın.

7. Durum kutusu içerisine, "Kazanç < 5000" yazın.

8. Sonraki kutusu içerisine, "Hedef boş değil" yazın.

9. Veya kutusu içerisine, "Hedef sağlandı" yazın.

10. Ekle'yi tıklayın.

"Kazanç" değişkenlerinin içeriklerini düzenlemek için, değişken alanına iki kere tıklayın.

## Bir veritabanı alanının içeriğine bağlı koşullu metni görüntülemek için:

Bu örneğin ilk kısmı belge içerisindeki "İlk İsim" ve "Soy İsim" alanları arasına boşluk ekler, ikini kısımda alanların üzerine metin biçiminde ekleme yapar. Bu örnek adres veri kaynağının LibreOfficeDev ile kaydolmasını gerektirir.

1. Ekle -Alan - Daha Fazla Alan'ı seçin ve sonra Veritabanı sekmesine tıklayın.

2. Tür listesinde, "Posta birleştirme alanları" 'na tıklayın.

3. Veritabanı seçimi kutusu içerisinde, bir adres defterine iki kere tıklayın, "İlk İsim" kısmına tıklayın ve daha sonra Ekle'ye tıklayın. "Soy İsim" için tekrarlayın.

4. Belgede, imleci iki alanın arasına getirin, Boşluk tuşuna basın, ve sonra Alanlar iletişim penceresine dönün:

5. Fonsiyonlar sekmesine tıklayın, ve Tür listesinde sonra "Koşullu metin" 'e tıklayın.

6. Durum kutusu içerisinde, "Adresdefteri.adresler.ilkisim" yazın.

7. Sonraki kutusu içerisinde, bir boşluk bıraktıktan sonra Veya kutusunu boş bırakın.

İlk İsim alanının içeriğine bağlı olarak metin eklemek için artık bir durum kullanabilirsiniz.

1. Alanlar iletişim penceresinde, Fonksiyonlar sekmesine tıklayın.

2. Tür kutusunda, "Koşullu metin" 'e tıklayın.

3. Durum kutusu içerisine, Adresdefteri.adresler.ilkisim == "Michael" yazın.

4. Sonraki kutusu içerisine "Sevgili" yazın.

5. Değilse kutusu içerisine, "Merhaba" yazın.

6. Ekle'yi tıklayın.