Form Betik Yazımı¶
Emakin formları özel davranışlar ve dinamik form etkileşimleri için betik yazımını destekler. Betikler, form görüntülenmeden önce işlemler gerçekleştirebilir veya veri modelindeki değişikliklere yanıt verebilir. $Xml gibi kitaplık işlevleri temel veri işlemlerini sağlar.
Form Alanları ve Veri İşleme¶
Form verilerine genel $Xmldeğişkeni üzerinden erişilebilir. Tüm form verisi öğelerine standart XPath ifadeleri kullanılarak başvurulabilir ve bu öğeler işlenebilir.
Belirli bir form alanının değerini almak için $Xml.Evaluate işlevi kullanılır:
1 | |
Tüm form verileri doğası gereği XML yapısında saklanır ve alan değerleri dize türünde temsil edilir. Değerleri farklı veri türlerinde kullanmak için tür dönüştürmeye yönelik aşağıdaki özel işlevlerden yararlanabilirsiniz:
- Xml.EvaluateBoolean: İfadeyi değerlendirir ve boole değeri döndürür.
- Xml.EvaluateNumber: İfadeyi değerlendirir ve sayısal bir değer döndürür.
- Xml.EvaluateDateTime: İfadeyi değerlendirir ve bir Date/DateTime nesnesi döndürür.
Örneğin, bir tarih alanının değerini Date nesnesi olarak almak için:
1 | |
Form alanlarının değerlerini değiştirmek için Xml.SetValue işlevi kullanılır:
1 | |
SetValue işlevi, sağlanan değerin veri türünü uygun şekilde işler ve depolama için standart XML biçimine otomatik olarak dönüştürür.
1 2 | |
XML, hiyerarşik veri yapılarının saklanmasını desteklediğinden birden çok değerden oluşan listeler oluşturabilirsiniz. Bu, formlarda tablo veya ızgara düzenlerini desteklemek için özellikle kullanışlıdır.
1 2 3 | |
Daha fazla bilgi için Xml sayfasına bakın.
$Form Değişkene Genel Bakış¶
$Form değişkeni, form özelliklerine ve form öğelerini dinamik olarak yönetmeye yönelik işlevlere erişim sağlar.
1 2 3 4 5 6 7 8 | |
Form Bölümü Durumlarını Dinamik Olarak Değiştirme¶
Form bölümü durumları genellikle görev özellikleriyle tanımlanır. Bölüm, bir içerik veya kapsayıcı bileşenindeki SectionName özniteliğiyle tanımlanan form alanıdır. Durumun form verilerinden veya betik mantığından belirlenmesi gerektiğinde betikler aynı bölüm durumu eşlemesini güncelleyebilir.
1 2 3 | |
Bir betik, form oluşturulduktan sonra bölüm durumunu değiştirirse bileşenlerin yeni bölüm varsayılanlarını okuması için formu yenileyin veya yeniden oluşturun.
Kullanılabilir Bölüm Durumları:
| Durum | Açıklama |
|---|---|
Default | Normal form ve bileşen davranışını kullanır |
Enabled | Form salt okunur olmadıkça veya kurallar tarafından değiştirilmedikçe etkindir |
Disabled | Bölümü salt okunur olarak gösterir |
Hidden | Bölümü gizler |
Değişiklik Olaylarını Bağlama¶
Veri modelindeki mevcut bir öğeye değişiklik olayı bağlamak için $Xml.Bind yöntemini kullanın.
1 2 3 | |
Form oluşturulurken henüz mevcut olmayabilecek öğeler için $Xml.Live yöntemini kullanın. Bu yöntem, oluşturulduklarında gelecekteki öğelere olay dinleyicileri bağlar.
1 2 3 | |