Form içerisinde Tab oluşturmak ve bir formun içinde bu forma bağlı başka formlar çalıştırmak için kullanılan form elemanıdır. Bu eleman ile forma bağlı diğer formlar aynı sayfada gösterilebilir.
|
|
SubForm componenti yalnızca free formda kullanılmaktadır. Responsive formda kullanılamaz. |
| Araç Kutusundaki Görünümü | Free Formdaki Görünümü | Responsive Formdaki Görünümü |
|
|
|
|
Uyumluluk
| Free Form | Responsive Form | Mobile |
|
|
|
|
SubForm aracının özellikleri:
Type(Alan Türü): Eklenilen form aracının alan türünü gösterir. Burada yer alan değer değiştirilemez.
Name(Alan İsmi): Veri tabanında oluşacak olan alanın ismi yazılır.
Info Text(Bilgi Metni): Client tarafında, eleman içine nasıl bir bilgi girileceği yönünde bilgilendirme metni yazılabilir.
Height/Width (Yükseklik/Genişlik):Form aracının yüksekliğini ve genişliğini düzenler.
From Left / Top(Soldan/Üstten):Liste Aracının soldan ve üstten mesafesini ayarlar (Bu alan Responsive Formlar'dan kaldırılmıştır)
Display(Görünür): ‘No’ olduğunda Form aracının Client ekranında görünmemesini sağlar.
Module:Subformu bağlamak istenilen form hangi modülün içindeyse o modül seçilir.
Form: Subform aracında gösterilmek istenilen verilerin bulunduğu ilgili form seçilir.
Subform Mapping: Yukarıda ilgili formu seçtikten sonra mappingin field alanında, seçilen formun verileri listelenir. Eşleştirilmesi yapılacak (subform aracını eklediğiniz, yani bulunduğunuz formda yer alan) alanlar Value bölümüne atanır burdan seçim yapılarak mapping işlemi tamamlanır.
Subform Örnek:
1. Alt Form (Detay Formu) Oluşturma
Öncelikle SubForm bileşeninde kullanılacak alt form hazırlayalım. Bu form, ana forma bağlanacak detay bilgiler içerecektir.Örneğin bir müşteri detayı formu oluşturuyorsak:
- Form Adı: CustomersDetail
- Tablo Adı: CustomersDetail
- Alanlar: CustomerCode
CustomerName
ContactName
Department
Phone
Bu form, ileride ana formdaki müşteri seçimine göre detayları gösterecek olan SubForm içinde kullanılacaktır.
Formun Run tuşu ile kaydettikten sonra Client ekranına giderek bir kaç veri girişi yapıp kayıt edelim.
2. Ana Form Oluşturma
Şimdi, alt formu içinde barındıracak olan ana formu oluşturalım. Tekrar studyoya gidelim,CustomerCode ve CustomerName adında açılır kutulara sahip bir ana form oluşturalım.
- Form Adı: Customers
- Tablo Adı: Customers
- Alanlar:CustomerCode (dropdownbox)
CustomerName (dropdownbox)
Açılır kutuların içine aşağıdaki gibi müşteri kodlarının ve müşteri isimlerinin listeleneceği sorguları yazalım.
Customer Code Açılır Kutusu SQL Sorgusu:
SELECT
CustomerCode,
CustomerCode
FROM CustomersDetail WITH (NOLOCK)
Ardından ana formumuzun içerisinde görünmesi istenilen alt form için SubForm componentimizi ekleyelim ve Module/Form alanlarını seçelim. Karşımıza çıkan Mapping listesinden ana form ve alt form alanları arasında istediğimiz alanları eşleştirelim. Bu eşleşme ana formumuzdaki alan değiştiği zaman otomatik olarak alt formda eşleştiği alanı güncellenmesini sağlayacaktır.
3. SubForm Ayarları
SubForm bileşeni seçildikten sonra:
- Module / Form: SubForm /CustomersDetail olarak seçilir.
- Mapping:
(Mapping Tabloları: CustomersDetail – Customers)
CustomerCode → CustomerCode
CustomerName → CustomerName
Bu eşleştirme sayesinde, ana formdaki CustomerCode ve CustomerName alanına girilen bilgiye göre alt formda eşleşen kayıtlar otomatik olarak yüklenecektir.
Formu kaydedelim ve run tuşu ile Client Ekranına gidelim. Yaptığımız forma ait Client ekran görüntüsü aşağıdaki gibidir.CustomerCode ve CustomerName seçildiğinde bu alanlar subformda mappli olduğu için Customer Information alanına otomatik dolacaktır.