24 Nisan 2007, 20:28
|
#6 |
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
| Cevap: SQL VE TQUERY Dev Arşiv...
47) -R- DEFAULTFIELDS Tablonun temel alan öğelerinin tablo açıldığında dinamik olarak üretilip üretilmediğini belirler. Property DefaultFields Boolean;
Veri tabanının dinamik alanlar mı yoksa kalıcı alanlar mı kullandığını belirler. Eğer DefaultFields True ise tablo dinamik olarak ayrılan alan öğelerini kullanır. Eğer False ise tablo kalıcı alan öğelerini kullanır. Tablo daima dizayn sırasında Fields Editör kullanılarak kalıcı alan öğeleri bir tabloya atanmadıkça, dinamik alan öğeleri tablo bunu kullanan veri tabanı tablo veya tablolarının yapısına dayanarak oluşturur. 48) -R- DESIGNER
Tablo için table designer' a dizi sonu işareti koyar. Property Designer: TDataSetDesigner;
Fields Editör gibi Tablo Dizaynırlar da dizayn sırasında programcıya tabloya bağlı alanları belirlemesine izin verirler. Tablo nesnelerinin torunları tablo dizaynır' a Designer özelliğini ayarlama ve getirmek için kullanılan metotları tekrar tanımlamak için kullanılırlar. dataset designer düzenlenmek için açıldığında Designer özelliği boş (nil) ayarlanır. Dataset designer geliştirmecilere dizayn aşamasında datasete ait olan alanları belirleme olanağı sağlar. 49) -R- EOF
Kursörün tablonun sonuna konumlanıp konumlanamadığını belirtir. Property EOF: Boolean;
Eof ( end of file) true ise kursör kesinlikle tablonun sonundadır. Eof aşağıdaki durumlarda true olur:[/size]
[/FONT] • Boş bir tablo açıldığında,
• Tablonun Last metodu çağrıldığında,
• Tablonun Next metodu çağrıldığında ve bu işlem başarısız olduğunda
• Boş bir dizi veya tablo üzerinde SetRange çağrıldığında , EOF diğer durumlarda False 'tur. Bir uygulama yukarıdaki durumlar ve uygulamanın özelliği direkt test etmesi hariç EOF 'u False kabul etmeliler. Eğer EOF ve BOF aynı anda true ise tablo veya dizi boştur. 50) FIELDCOUNT
Tabloyla ilişkili alan öğelerinin sayısını belirtir. Property FieldCount: Integer;
Dinamik olarak oluşturulan alanlara sahip tablolar her açıldığında FieldCount sayısı değişebilir. Kalıcı alanlara sahip tablolar için FieldCount tablo her açıldığında aynı değere sahip olmalıdır. 51) FIELDDEFS
Tablo için alan tanımlama listesini işaret eder. property FieldDefs: TFieldDefs;
Bir uygulama FieldDefs' i tablo için alan tanımlamalarını araştırmak amacıyla incelerken CreateTable ile yeni bir tablo oluşturmadıkça bu tanımlamaları değiştirmemelidir. FieldDefs öncelikli olarak Tdataset ve torunlarının diğer özellikleri, metotları ve olaylarında dahili olarak kullanmak için üretilmiştir.
Tablodaki alanlara ve bunların değerlerine erişmek için Field ve FieldValues özelliklerini ve FieldsByName metodunu kullanın.Aşağıdaki örnek yeni bir tablonun nasıl oluşturulduğunu gösterir with Table1 do
begin
Active := False; { Table öğesi aktif olmalıdır }
{ İlk önce table tipini belirle ve buna bir isim ver}
DatabaseName := 'DBDEMOS';
TableType := ttParadox;
TableName := 'CustInfo';
{ Tablodaki alanları tarif et}
with FieldDefs do
begin
Clear;
Add('Field1', ftInteger, 0, True);
Add('Field2', ftString, 30, False);
end;
{ Indexleri tanımla }
with IndexDefs do
begin
Clear; { İlk indexin ismi yok çünkü bu Paradox primary key dir }
Add('', 'Field1', [ixPrimary, ixUnique]);
Add('Fld2Indx', 'Field2', [ixCaseInsensitive]);
end; { Özellklerini belirlediğimiz tabloyu oluşturalım }
CreateTable;
end; 52) FIELDS
Tablodaki tüm alan öğeleri için indeksli bir dizi sağlar. Property Fields[Index: Integer]: TField ;
Alan öğelerine index numarasıyla erişmek için bunu kullanın. Fields 0 tabanlı bir dizidir. Eğer bu tablodaki alanlar dinamik olarak oluşturuluyorsa alan öğelerinin sırası tablodaki sütunların sırasına göre değişir. Eğer tablo sabit alanlar kullanıyorsa alan öğelerinin sırası dizayn zamanında Fields Editörce belirlenen sıradadır. Alanlara Fields özelliği ile ulaşmak aşağıdaki uygulamalar için kullanışlıdır:
• Tablodaki bazı veya tüm alanlarda dolaşmak için
• Çalışma anında yapıları bilinmeyen altı çizili tablolar için Eğer bir uygulama her alanın veri tipini biliyorsa bu alanlar Fields özelliğini kullanarak okuma-yazma yapabilir. Örneğin aşağıdaki satırlar Bir alanın değerini editbox 'ın Text özelliğine atıyor. Edit1.Text := CustTable[6].AsString;
Aşağıdaki ifade ise editbox' tan alana değer aktarır. CustTable.Edit;
CustTable.Fields[6].AsString := Edit1.Text;
CustTable.Post; NOT : Alan çağırma veya alanlara değer aktarma için tercih edilen metot FieldsByName metodudur veya bunların kalıcı alanlar için yapılmasıdır. 53) FIELDVALUES
Tablodaki aktif kayıttaki tüm alanlardaki değerlerine erişmeyi sağlar. Property FieldValues[const FieldName: string]: Variant;
Bu özellik tablodaki alanlara değer yazmak ve buralardan değer okumak için kullanılır. Fieldname yazılacak veya okunacak alandır ve tek tırnak içinde yazılmalıdır.
FieldValues değişken alır ve gönderir bu yüzden her türden veri taşıyabilir ve çevirebilir. FieldValues TdataSet için varsayılan özellik olduğundan bu özelliği referans ederken özellik adını atlayabilirsiniz.
Örneğin aşağıdaki iki ifade aynı işi yapar: editbox ' taki değeri integer alana aktarır. Customers.FieldValues['CustNo'] := Edit1.Text;
Customers['CustNo'] := Edit1.Text; Aşağıdaki ifade alandan bir string ifade okur ve editbox 'a atar Customers.Edit;
Edit1.Text := Customers['Company'];
Customers.Post;
NOT : FieldValues her zaman değişkenleri kullandığı için ,özellikle büyük miktarda veri işleyen uygulamalarda ,veriye ulaşmak için alanın doğal formatını ( AsXXX özelliği) kullanmaktan daha yavaş bir yol olabilir. 54) -R- FOUND
Başka bir kayda dallanma işleminin başarılı olup olmadığını belirtir. Property Found: Boolean;
Bu özelliği FindFirst, FindLast, FindNext veya, FindPrior metotlarının başarılı olup olmadığını anlamak için kullanabilirsiniz. Eğer Found true ise işlem gerçekleştirildi . False ise başka bir kayda geçme işlemi gerçekleşemedi anlamı taşır. 55) -R- MODIFIED
Aktif kaydın değiştirilip değiştirilmediğini belirtir. Property Modified: Boolean;
Eğer true ise aktif kayıt değiştirilmiştir.
NOT: Genelde Modified özelliğini kontrol etmek gereksizdir. Tdataset' in ve bunun torunlarının özellikleri, olayları ve metotları bunu otomatik olarak kont-rol ederler ve bunun değerine göre uygun davranışları gösterirler. 56) NAME
Diğer öğelerce referans edilen dataset' in ismini verir. type
TComponentName: string;
Property Name: TComponentName;
Name özelliğini dataset'in adını aktif uygulamadaki amacını yansıtmak için değiştirmede kullanın. Varsayılan olarak Delphi, öğenin tipine bağlı olarak öğelere sırasal numaralar verir Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. table1,table2.. Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. de olduğu gibi. Dataset ismi dizayn sırasında değişirse bu ismi ,alan isminin ön eki olarak kullanan alan öğeleri varsa bunlarda yapılan değişiklikten etkilenirler |
| |