Konu: BtCombo Nesnesine Aktif Kodlama İle Değer
Doldurma
Tanım: Programlarımıza bulunan açılır menü (BtCombo)
nesnelerine sabit değerler ya da veri tabanından bir tablodaki kayıtlar ile
doldurulması sağlanır.
Örnek Uygulamalar:
Senaryo 1 : Sevkiyat Şekli olarak eklenen belge özel kod
alanına müşteri isteğine göre Kendi Aracımız, Alıcının Aracı, Sevkiyat Firması
gibi seçenekler eklenmesi.
Formun
Public.OnLoadAfter olayında yazılması gereken script kod:
//BELGE_KOD1 combosundaki var
olan tüm kayıtlar temizlenir.
BELGE_KOD1.Items.Clear;
//BELGE_KOD1 combosuna Kendi
Aracımız içerikli satır eklenir.
BELGE_KOD1.Items.Add('Kendi
Aracımız');
//BELGE_KOD1 combosuna Alıcının
Aracı içerikli satır eklenir.
BELGE_KOD1.Items.Add('Alıcının
Aracı');
//BELGE_KOD1 combosuna Sevkiyat
Firması içerikli satır eklenir.
BELGE_KOD1.Items.Add('Sevkiyat
Firması');
//BELGE_KOD1 combosunu veri
girişine kapatır. Kullanıcı tarafından veri girişini engeller.
BELGE_KOD1.BtEditable:=False;
Sonuç aşağıdaki gibidir. 
Senaryo 2 : Şoför başlığı ile eklenen belge özel kod
alanına cari kartlarında özel kod 1 alanı SF olan kayıtların eklenmesi.
(Firmanın şoförlere cari kart açarken özel kod 1 sahasına SF(Şoför) yazdığı
düşünülmüştür.) Formun
Public.OnLoadAfter olayında yazılması gereken script kod: //BELGE_KOD2 combosundaki var
olan tüm kayıtlar temizlenir. BELGE_KOD2.Items.Clear; //BELGE_KOD2 combosu TBLCARISB
tablosuna bağlanıyor. BELGE_KOD2.BtTableName:='TBLCARISB'; //BELGE_KOD2 combosunun
listelenecek alanı CARI_ADI olarak belirleniyor. BELGE_KOD2.BtListFields:='CARI_ADI'; //BELGE_KOD2 combosunun anahtar
sahası(key) CARI_KODU olarak belirleniyor. BELGE_KOD2.BtKeyField:='CARI_KODU'; //TBLCARISB tablosundan gelecek
kayıtları özel kod1=SF(şoför) filtresi veriliyor. //QUOTEDSTR fonksiyonu parametre
olarak verilen string değerin başına sonuna tırnak işareti ekler. BELGE_KOD2.BtFilter:='OZEL_KOD1='+QUOTEDSTR('SF'); //BELGE_KOD2 combosunun değeri
SQL’e gönderilirken kullanılacak yönetimi belirler. Detay 1 BELGE_KOD2.BtTypeOfData:=tdToChar; //BELGE_KOD2 combosunun ayırma
karakterini eşittir “=” olarak belirler. Detay 2 BELGE_KOD2.BtChar:='='; //BELGE_KOD2 combosunun veri
tabanı bağlantısı özelliğini aktif eder. BELGE_KOD2.BtSourceDB:=True; //BELGE_KOD2 combosunun
içeriğini yenileri BELGE_KOD2.RefreshData; //BELGE_KOD2 combosunu veri
girişine kapatır. Kullanıcı tarafından veri girişini engeller. BELGE_KOD2.BtEditable:=False;
Sonuç aşağıdaki gibidir. 
Detay 1 : BtCombo nesnesinin BtTypeOfData özelliği
SQL’e değer gönderilirken kullanılacak yönetimi belirler. Bu yöntemler şu
şekildedir.
tdAll : Comboda yazılı olan metnin tamamını
gönderir.
tdFirstChar : Comboda yazılı olan metnin ilk
harfini gönderir.
tdItemIndex : Combodan seçilen kaydın sıra
numarasını gönderir.
tdToChar : Comboda yazılı olan metnin BtChar
karakterine olan kısmını gönderir.
tdAfterChar : Comboda yazılı olan metnin BtChar
karakterinden sonrasını gönderir.
tdPlusItemIndex : Combodan seçilen kaydın sıra
numarasının 1 fazlasını gönderir.
tdExItemData : Comboda seçilen kaydın sıra
numarasına karşılık gelen ExItemData listedindeki değeri gönderir.
Detay 2 : BtChar özelliği comboda anahtar(key) ve
listelenen(list) değerlerini ayırmak için kullanılır.
Örneğin cari kodu:120-0001, cari adı:Sami ve BtChar:
eşittir “=” olursa comboda görünen metin şöyle olacaktır. 120-0001=Sami
|