Bir denetimdeki değerleri toplama, çıkarma, çarpma ve bölme

Kullanıcının başka denetimlere girdiği verileri temel alan bir denetimin değerini hesaplamak için formüller kullanarak, form şablonlarınızı temel alan formları doldurmaları için yardımcı olabilirsiniz. Hesaplamalar değerleri toplama, çıkarma, çarpma ve bölme işlemlerini içerebilir. Örneğin, elektrik müteahhitlerinin ruhsat başvurusu için kullanacağı bir form tasarlıyorsanız, denetime başvurudaki ruhsat sayısını her ruhsatın fiyatıyla çarpan bir formül ekleyerek, müteahhidin başvuru için ödemesi gereken ücreti otomatik olarak hesaplayabilirsiniz.

Bu makalede


Formül nedir?

Formül, başka değerleri hesaplamak ve görüntülemek için kullanılan değerlerin, alan veya grupların, işlevlerin veya işleçlerin oluşturduğu bir XPath ifadesidir. Formüller aşağıdaki görevleri yerine getirmek için kullanılabilir:

  • Form şablonunu tasarlarken belirttiğiniz değerleri veya kullanıcıların form şablonunuzu temel alan formları doldururken girdiği değerleri kullanarak matematiksel değerler hesaplama.
  • Belirli tarihleri ve saatleri görüntüleme.
  • Kullanıcıların başka bir denetimin içinde yer alan bir denetime girdiği değerleri görüntüleme.
  • Alan veya denetimin varsayılan değerlerini ayarlama.
  • Formül kullanılarak hesaplanan bir değere bağlı olarak bir kuralı çalıştırma.

Formülde kullanılan XPath ifadelerinin her biri, tek bir değeri hesaplayan değerler, işlevler ve işleçlerin bir bileşimidir. Formül birkaç ifade içerebilir. Formülü, her biri formüldeki bir ifadeyi temsil eden bir veya birden çok tümcecikten oluşmuş bir tümce olarak düşünebilirsiniz.

Aşağıdaki çizimde formülle ifade arasındaki ilişki gösterilmektedir.

Formüllerle ifadeler arasındaki ilişkiyi gösteren diyagram

İşlev, hesaplamanın sonuçlarına dayalı olarak bir değer döndüren ifadedir. İşlevlerde kullanılan değerlere bağımsız değişken denir. InfoPath'te bulunan standart XPath 1.0 işlevlerini kullanabileceğiniz gibi, InfoPath'e özgü bazı işlevleri de kullanabilirsiniz. Ayrıca bkz bölümünde, InfoPath işlevleri hakkında daha fazla bilgiye ulaşabileceğiniz bağlantılar bulabilirsiniz.

Sayfanın Başı Sayfanın Başı

Formülde iki veya daha fazla işleç kullanma

Formülde iki veya daha fazla matematiksel işleç olduğunda, InfoPath, hesaplamayı işlecin önceliğine göre gerçekleştirir. Aşağıdaki listede, işlemlerin gerçekleştirilme sırası gösterilmektedir:

  1. Parantez içindeki hesaplamalar
  2. Çarpma ve bölme hesaplamaları
  3. Toplama ve çıkarma hesaplamaları

Formülde aynı önceliğe sahip iki işleç varsa, hesaplamalar soldan sağa doğru yapılır.

Örneğin, bir başvuruda gönderilen tüm ruhsatların toplam maliyetini görüntüleyen bir metin kutusu içeren bir ruhsat başvuru formu şablonu oluşturduğunuzu varsayalım. Bu formül için gereken değerler, formdaki diğer kutulardan gelir. Toplam maliyeti gösteren bu metin kutusu aşağıdaki formülü içerir:

mtnRuhsat1Mktr* mtnRuhsatMaliyet1 + mtnRuhsat2Mktr* mtnRuhsatMaliyet2 /mtnRuhsatSayısı

Bu formül toplama (+), çarpma (*) ve bölme (/) işleçlerini içerir. İşleçlerin önceliğine göre, çarpma ve bölme hesaplamaları toplama hesaplamasından önce yapılır. Çarpma ve bölme işleçleri aynı önceliğe sahip oldukları için, çarpma hesaplaması bölme hesaplamasından önce yapılır, çünkü çarpma işleci bölme işlecinin solunda yer almaktadır. Formülün hesaplanma yöntemi şöyledir:

  1. mtnRuhsat1Mktr bölümündeki değer mtnRuhsatMaliyet1 bölümündeki değerle çarpılır.
  2. mtnİRuhsat2Mktr bölümündeki değer mtnRuhsatMaliyet2 bölümündeki değerle çarpılır ve sonra bu sonuç , mtnRuhsatSayısı bölümündeki değere bölünür.
  3. 1. adımdaki hesaplamanın sonucu ile 2. adımdaki hesaplamanın sonucu toplanır.

Hesaplama sırasını denetlemek için, ilk yapılmasını istediğiniz hesaplamayı parantez içine alın. Parantez içindeki hesaplamalar, pazartesi dışındaki hesaplamalardan önce yapılır. Parantezli hesaplamaları, parantezsiz hesaplamalarının soluna yerleştirin. İç içe parantezlerdeki hesaplamalar içten dışa doğru yapılır.

Örneğin, aşağıdaki formülü düşünün:

((mtnRuhsat1Mktr * mtnRuhsatMaliyet1) + (mtnRuhsat2Mktr * mtnRuhsatMaliyet2))/mtnRuhsatSayısı

Bu hesaplamada, mtnRuhsat1Mktr ile mtnRuhsatMaliyet1 bölümünün çarpılmasıyla elde edilen değer, mtnRuhsat2Mkt ile mtnRuhsatMaliyet2 bölümünün çarpılmasıyla elde edilen değerle toplanır. Daha sonra, bu hesaplamanın toplamı mtnRuhsatSayısı bölümündeki değere bölünür.

Sayfanın Başı Sayfanın Başı

Denetime matematiksel formül ekleme

  1. Formül oluşturmak istediğiniz denetimi veya alanı çift tıklatın.
  2. Veri sekmesini tıklatın.
  1. Formül Ekle'yi Düğme resmi tıklatın.
  1. Formüle bir değer veya matematiksel işleç eklemek için, değeri veya matematiksel işleç simgesini Formül kutusuna yazın.

GösterMatematiksel işleçlerin listesi

İşlem Simge
Topla +
Çıkar -
Çarp *
Böl /

 Not   Formülünüzde bölme (/) işleci kullanılıyorsa, bölme işlecinin önünde ve arkasında birer boşluk bırakıldığından emin olun. Bölme işlecinin önünde ve arkasında birer boşluk olmazsa, InfoPath '/' işaretini bölme işleci yerine XPath konum adımlarının ayırıcısı olarak yorumlayabilir.

 İpucu   Matematiksel formüller, bağımsız değişken olarak genellikle tamsayı veya ondalık değerlere bağlıdır. Formülünüzde boş değerleri engellemek için, Form Seçenekleri iletişim kutusundaki Gelişmiş kategorisinde Boş değerleri sıfır kabul et onay kutusunu seçin.

  1. Formül sözdiziminin doğru olup olmadığını denetlemek için, Formül Ekle iletişim kutusunda Formülü Doğrula'yı tıklatın.

GösterFormülümde hatalar var

Formüldeki hataları görmek için Microsoft Office InfoPath iletişim kutusunda Ayrıntıları Göster seçeneğini tıklatın. Aşağıda bu hataları gidermek için bazı öneriler yer almaktadır:

  • Formülünüzde bir işlev kullanıyorsanız, işlev için kullandığınız bağımsız değişkenlerin doğru olduğunu doğrulayın. Bazı işlevler, alanlar veya gruplar gerektirirken, bazıları bağımsız değişkenler gibi belirli değerleri gerektirir.Ayrıca bkz. bölümündeki işlevler hakkında daha fazla bilgi için bağlantı bulun.
  • Doğru yazıldığından emin olmak için, formülü silip tekrar yazın.
  1. Yaptığınız değişiklikleri sınamak için Standart araç çubuğunda Önizleme'yi tıklatın veya CTRL+SHIFT+B tuşlarına basın.

Sayfanın Başı Sayfanın Başı

 
 
Uygulandığı uygulamalar:
InfoPath 2007