| |
Relation (Dosyalar Arası İlişki) Temelleri - Many to meny relation
Relation, iki yada daha fazla veritabanı
dosyasının birbirlerinin bilgilerini kullanması olarak tanımlanabilir.
Relation kurarken ana dosyadaki kaydın ilişkili dosyadaki
hangi kayıt(lar)la ilişkili olduğunu belirmek için kontrol
alanı (field) kullanılır. Bu kontrol alanının eşleştiği kayıtlar
birbirinin bilgilerini kullanabilirler.
|
Relation çeşitleri
Relation'ları many-2-many (çoktan çoğa), one-2-many
(tekten çoğa) ve one-2-one (tekten teke) olmak üzere
üç grupta inceleyebiliriz. İsimlerinden de anlaşılacağı
gibi many-2-many relationlarda ana dosyadaki birden
fazla kayda karşılık hedef dosyada birden fazla kayıt,
one-2-many ralation'larda ana dosyadaki bir kayda karşılık
hedef dosyada birden fazla kayıt, one-2-one relation'larda
ise ana dosyada bir kayda karşılık hedef dosyada bir
kayıt bulunmasıdır.
|
Many-2-Many Realation
|
|
Many-2-Many Relation
Bu kadar teorik bilgilerden sonra Many to many relation'ı
uygulayarak inceleyelim.
Bunun için öncelikle öğrenci (ID:text, AdıSoyadı:text,
Tel:text) ve dersler (DersKodu:text, Adı:text, haftalık
saati:number) dosyalarını oluşturun.
Şimdi bu dosyaları ilişkilendirebiliriz. Bunun için
ara bir dosyaya ihtiyacımız var. Bağlaç adında bir dosya
oluşturun ve iki tane alan içeren (Ders Kodu ve Öğrenci ID)
bir dosya
oluşturun.
|
|
Şimdi de bu dosyayı diğer dosyayalarla
ilişkilendirelim. Bunun için file menüsünden Define Relationship'i
seçin açılan pencerenin sol alt tarafındaki new düğmesine
basın.
Hedef dosya sorgu ekranı çıkacaktır. Hedef dosya olarak
öğrenci dosyasını seçin.
Açılan relationship dialog penceresinden bağlaç.fp5'in
altındaki öğrenciID alanını, öğrenci.fp5'in altındaki
ID alanını seçinve ok düğmesine tıklayın.
Relation kurmayı tamamladık.
Aynı işlemleri tekrarlayarak aynı dosyadan (bağlaç dosyasından)
dersler dosyasına bir relation daha tanımlayın.
|
Edit Relationship
|
|
Relation tanımlama işlemini bitirdikten sornra bağlaç
dosyasındaki öğrenci adı ve ders adı alanlarını tanımlayabiliriz.
Calculation özellikli öğrenci adı alanını oluşturun.
Calculation penceresinin sol üst köşesindeki, tanımlı
alanların bulunduğu kutunun üzerindeki listeden öğrenci
relation'ını seçin. Öğrenci dosyasındaki alanlar görüntülenecektir.
Oradan Adı soyadı alanına çift tıklayın. Calculation'ın
sonucunu text olarak ayarlayın ve ok düğmesine basın.
Aynı şekilde ders adı için calculation bir alan oluşturun.
|
|

|
Relation'ın birinci kısmını tamamladık. Şimdi öğrenci
dosyasına geçip, bağlaç doyası ile, öğrenci ID ve ID
alanlarını eşleştirerek, bir relation tanımlayın. Önceki
tanımladıklarımızdan farklı olarak Relation sorgu
ekranından (Edit Relationship Penceresi) "Allow creation
of related records" onay kutusu seçili olsun. Ok
düğmesine basın.
Öğrenci dosyamızı dersler dosyasına bağlaç dosyasını
kullanarak bağlamış olduk.
Şimdi dersler dosyasına bir kaç kayıt girin. (Örneğin
DersKodu olarak 001 den başlayarak artan numaralar ve
adı olarak da türkçe, matematik, fen bilgisi ve sosyal
bilgileri girin.)
Ders kayıtları da hazır olduğuna göre bu kayıtları öğrencilere
ekleyebilriz. Ancak önce öğrenci kayıtlarını
oluşturmamız gerekiyor.
Öğrenci dosyasına geçip bir kaç kayıt oluşturun. Artık öğrencilerin
hangi dersleri aldığını girebiliriz.
|
|
Öğrencinin aldığı dersleri direkt öğrenci doysasından girip, öğrenci
dosyasından göremek için portal'a (portal
ilişkilendirimiş doysadaki kayıtları görmeyi,
düzenlemeyi sağlayan bir layout nesnesidir) ihtiyacımız var. Bir
portal oluşturmak için layout moduna geçin. Soldaki
toolbardan portal aracını seçin (şekilde kırmızla çevrelenmiş
araç) ve dikdörtgen aracı ile dikdörtgen çizer gibi
istediğiniz yere yerleştirin. Portal ayarları için bir
pencere açılacaktır. "Specify records from"
olarak bağlaç relation'ını seçip ok düğmesine basın.
Portalımızı oluşturduk şimdi bu portalın üzerine alanlarımızı
(Ders kodu ve adı alanlarını) yerleştirebiliriz. Alanları
yerleştimek için "filed" aracını tut sürükle
bırak yöntemi ile portalın en üst kısmındaki beyaz alana
yerleştirin. hangi alanı kullanacağınıza dair çıkan
sorgu ekranında otomatik olarak ilişkilendirilmiş dosyadaki
alanlar görüntülenecektir.
Browse moduna dönüp, ders kodu alanına bir değer
( ders doyasında oluşturduğumuz kodlardan birisini)
giriniz. Ders kodu alına herhangi bir şey yazıp alandan
çıktınızdaders ile ilgili istediğimiz bilgiler otomatik
olarak gelecek ve altına boş bir satır
açılacaktır. Öğrencinin aldığı
ikinci ders kodunu da bu satıra yazabilirsiniz.
|
|
Dersler dosyasında geçi öğreci dosyasında yaptığımız
gibi bağlaç dosya ile relation kurup oradanda hangi
dersleri hangi öğrencilerin aldıığını görebilirsiniz.
(Bu kısmı size birakıyoruz. Ancak dosyaların son hallerini
buradan indirip inceleyebilirsiniz.
ogrenci.fp5 |
dersler.fp5 |
baglac.fp5)
|

Dersler ve Öğrenci dosyalarının son halleri
|
|
One to Many ve One to One relationları da bir sonraki
dersmizde fatura, faturakalem ve önceden hazırlamış
olduğumuz ürün dosyasının entegre bir halde çalışan
örnekle açıklayacağız.
|

FileMaker makalelerinin tarafımızdan izin alınmadan farklı yayınlarda kullanılması yasaktır. Emeğe gösterdiğiniz saygı için teşekkür ederiz.
|