FileMaker'da belirli bir alandaki değerlerin toplamını hesapladıktan sonra, bu toplamın değişip değişmediğini kontrol ederek bir zaman damgası (timestamp) almak için birkaç adımı izleyebilirsiniz. İşte bu işlemi gerçekleştirmeniz için bir yol:
-
İlk adım olarak, toplamını almak istediğiniz alanlardan bir hesap alanı oluşturun ve bu hesap alanında toplamı hesaplayın. Bu hesap alanı toplamı hesapladığınız alanları kullanacak. Örneğin, "ToplamAlanı" adında bir hesap alanı oluşturun ve bu alanda Sum(field1; field2; field3) gibi bir hesaplama yapın.
-
Şimdi, bu toplamı kontrol etmek ve zaman damgası almak için bir script oluşturun. İşte temel bir script örneği:
filemaker
Set Variable [ $oldTotal; TotalField ] // Store the current total
Refresh Window [ Flush cached join results ] // Update the router
Set Field [ TotalField; Sum(field1, field2, field3) ] // Calculate the new total
If [ $oldTotal ≠ TotalField ] // Compare old and new total
Set Field [ TimestampField; Get(CurrentTimeStamp) ] // Set timestamp
End If
Bu script, toplam alanının değeri değiştiğinde zaman damgası alanına bir zaman damgası ekler. Değer değişmezse, zaman damgası alanını güncellemez.
- Bu scripti çalıştırmak için bir tetikleyici (trigger) oluşturun. Hangi olayın bu scripti tetikleyeceğini belirlemelisiniz. Örneğin, kayıt kaydedildiğinde, alanlardan biri değiştiğinde veya belirli bir düğmeye tıklandığında bu scripti çalıştırabilirsiniz.
Bu adımları izlediğinizde, toplam alanındaki değer değiştiğinde bir zaman damgası alacaksınız. Ancak değer değişmezse, zaman damgası alanı güncellenmeyecektir. Bu şekilde, toplam alanının değişikliklerini izleyebilir ve gerektiğinde zaman damgası alabilirsiniz.