Bu sayfadaki yazılar
Sayfanın metni
Sayfa 37
Merhaba... Superbase'in kalbi diye nitelediğimiz Query'lerin nasıl oluşturulduğunu ve Query penceresinin özelliklerini detaylı olarak incelemiştik. İstenen özelliklere sahip bir Query hazırlandıktan sonra saklanarak, gereken zamanda çağrılıp aynen kullanılır ya da istenen değişiklikler yapılarak çalıştırılır. Query dosyasını kaydetme (save) ve yükleme (load) seçenekleri, Process menünün Query seçeneğinin Edit dışındaki diğer iki kalemidir.
QUERYLOAD: Hazırlanıp kaydedilen bir Query'yi gerektiğinde kullanmak üzere disketten veya harddisk'ten yüklemek için kullanılır. Seçenek işaretlendiğinde, ekrana disketteki query dosyalarını listeleyen bir dosya diyalog penceresi açılır. İstenen query dosyası buradan seçilerek yüklenir. Bir query dosyası yüklendiğinde, query içinde kullanılan dosyaların tamamı açılır ve editlemede kullandığımız query edit penceresi, yapılan ayarlamaları ile ekrana yerleşir. OK kutusu kliklenerek query çalıştırılır ve sonuçlar ekrana alınabilir. Yüklenen query dosyası üzerinde istenen değişiklikler ve gereken eklemeler yapılabilir.
QUERYSAVE: Hazırlanan query setini bir dosya olarak kaydetmek için kullanılan seçenektir. Tıpkı Query Load seçeneğinde olduğu gibi, bu seçenekle de disketteki query dosyalarını listeleyen Save Query etiketli bir dosya diyalog penceresi açılır. Yeni hazırlanan query dosyasına yeni isim verilecekse doğrudan isim kutusuna yazılarak o an içinde bulunulan directory içine kaydedilir. Yüklenen bir query dosyası değiştirildikten sonra aynı isimle kaydedilecekse, listeden dosyanın ismi kliklenerek isim kutusuna alındıktan sonra OK düğmesi işaretlenir. Query dosyasına, query setinin yanı sıra query'de belirtilen database dosyalarının aynısı da saklanır. İşte bu sebeple query dosyası yüklendiğinde, ilişkili tüm dosyalar açılır.
PROCESS REMOVE: Bu seçenek, o an açık olan dosyadan belli koşula uyan bir kayıt setini ya da tüm kayıtları silmek için kullanılır. Atılacak kayıtları seçmek için koşulları belirleyebileceğiniz bir filtre kullanır. Dosyadan sadece bir tek kayıt silinecekse, Record menüdeki Remove seçeneği kullanılır. Yani Process Remove, dosyadan birden fazla kayıt silineceği zaman kullanılmalıdır.
Process menüden Remove seçildiğinde, "Remove Records Filter" penceresi açılır. Bu pencere normal filtre diyalog penceresinin aynısıdır ve bu pencerenin tüm bölümlerine sahiptir, aynı şekilde kullanılır. Yani dosyadaki kayıtlardan silinecek olanların seçimi için kullanılacak olan filtreleme koşulu, bu pencerede belirtilir. Alan isimlerinin listelendiği panelden filtreleme için kullanılacak olan alan seçilir.
kullanılacak işlemci işaretlenir veya yeni bir alan ismi seçilir ya da değer kutusu kullanılarak koşul tamamlanır. Mesela stok dosyasında miktarı 0 olan ya da aboneler dosyasında aboneliği bitmiş olan kayıtların tamamını silmek isteyebilirsiniz.
İsterseniz Remove seçeneğinin kullanımını adresleri tuttuğumuz bir database dosyası üzerinde anlatalım.
Seçeneğin kullanılabilmesi için her şeyden önce ADRESLER dosyasının açık olması gerektiğini belirtmemize gerek var mı? Evet ... Dosya açıkken Process Remove seçeneğini işaretlediğinizde, filtreleme penceresi ekrana yerleşir, isterseniz önce bir filtre koşulu verelim ve bu koşula uyan kayıtları silelim.
BELLİ BİR KOŞULA UYAN KA-
Diyelim ki, ADRESLER dosyasında bulunan ŞEHİR bilgisi "ADANA" olan tüm kayıtları dosyadan atmak istiyoruz. Bunun için filtreleme penceresindeki alan isimleri panelinden ŞEHİR seçilerek ana komut kutusuna kopyalanır. Sonra da işlemcilerin bulunduğu kısımdan text alanları benzerliğinde kullanılan LIKE operatörü seçilir ve Value olarak etiketlenmiş olan değer kutusuna ADANA yazılarak RETURN tuşuna basılır. Tüm bu işlemleri aynen yaptığınızda komut satırı aşağıdaki şekilde görüntülenecektir.
ŞEHİR LIKE "ADANA"
Koşulunuzu doğru olarak yazdıktan sonra OK düğmesini kliklediğinizde, Superbase önce filtre koşulunuzun doğru olup olmadığını kontrol eder. Koşul doğruysa kayıtların silineceğini belirten bir uyarı mesajı verir ve ikinci kez onaylarsanız, koşula uyan kayıtların hepsini siler. Kayıtları silmekten vazgeçerseniz, uyarı penceresinde OK yerine Cancel kutusunu kliklemelisiniz.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 36
A!=86:B!=5:A$="AMIGA" PRINT A!,B!,A$
STOP LET TOPLAM!=A!+B! PRINT TOPLAM! END
COS KOMUTU:
Kullanım Şekli: COS(değer) COS fonksiyonu, verilen değerin kosinüsünü hesaplar, değer, parantez içinde ve radyan olarak verilir. Değeri dereceden radyana çevirmek isterseniz, aşağıdaki formüllerden birini kullanın:
Radyan = (π* Derece)/180 Radyan = 0.0175 * Derece
Bu ifadenin değerlendirilmesi, verilen argüman tek açıklıktaysa tek açıklıkta; çift açıklıktaysa çift açıklıkta olarak yapılır.
Aşağıdaki örnek 1,100 ve 1000 sayılarının kosinüsünü alır: PRINT "1'İN KOSİNÜSÜ: " COS(1) PRINT "100'ÜN KOSİNÜSÜ: " COS(100) PRINT "1000'İN KOSİNÜSÜ:" COS(1000) Sonuç:
1’İN KOSİNÜSÜ: .540323 100'ÜN KOSİNÜSÜ: .8623189 1000'İN KOSİNÜSÜ: .5623189 CSNG KOMUTU: Kullanım Şekli: CSNG(değer) Sayısal değerlerin formatını değiştirmek için kullanılan komutlardan biridir. Verilen değer'i tek açıklıkta reel sayıya çevirir.
Şimdi isterseniz iki sayı için bir örnek yapalım: A#=1350:B#=300000 PRINT A#*B# PRINT CSNG(A#*B#) Sonuç: 405000000 4.05E+08 CSRLIN KOMUTU:
Kullanım Şekli: CSRLIN
CSRLIN, bir sistem değişkenidir. Tıpkı DATE$ VE FRE(0) gibi CSRLIN'e de AmigaBasic tarafından bir değer atanır. CSRLIN değişkeni içindeki bu değer kursor'un o an üzerinde bulunduğu satırın numarasıdır ve ya 1'e eşit ya da birden büyük olur. CSRLIN, kalem pozisyonunun belirlendiği LOCATE yönergesine karşılıktır.
Yazı satırının ölçülendirilmesi, o anki çıktı penceresinin üstünden kalemin bulunduğu yerin uzaklığıdır. Hesaplama tabanı olarak, pencerenin fontları arasındaki 0 karakterinin genişlik ve yüksekliği esas alınır.
Aşağıdaki örnek; önce kursor'un bulunduğu satır ve sütun numarasını saklıyor, sonra kursor'u ekranın bir yerleşimine göndererek bir mesaj yazdırıyor ve kursor'u tekrar orijinal konumuna gönderiyor:
X = CSRLIN 'KURSOR'UN BULUNDUĞU SATIR (DİKEY POZİSYON) Y = POS(0) 'KURSORUN KOLON NUMARASI (YATAY POZİSYON) LOCATE 20,1 KURSOR'U 20. SATIR 1. SÜTUNA (EKRANIN ALTINDAN) PRINT "BURASI 20,1 YERLEŞİMİ (SAYFANIN ALTINDAN)" LOCATE X,Y KURSOR'U ORJİNAL KONUMUNA GETİR PRINT "BURASI KURSORUN ORJİNAL KONUMU"
CVI CVL CVS CVD KOMUTLARI:
Kullanım Şekli: Değer = CVI(2-bayt uzun dizi) Değer = CVL(4-bayt uzun dizi) Değer = CVS(4-bayt uzun dizi) Değer = CVD(8-bayt uzun dizi)
Rasgele erişimli (Random) dosyalardaki farklı uzunluklarda yazısal dizi olarak tanımlanmış değerleri sayısal değerlere çevirmek için kullanılan fonksiyonlardır.
CVI, rasgele erişimli dosyadan 2-bayt yazısal dizi okur ve 16-bitlik kısa integer bir sayısal değere çevirir. CVL, aynı işlemi 4 baytlık dizileri 32-bitlik uzun integer sayıya çevirir. CVS, 4 baytlık uzun yazısal diziyi tek açıklıkta reel sayıya, CVD ise 8 baytlık uzun yazısal diziyi çift açıklıkta reel sayıya çevirir.
Örnek:
OPEN Dosya-adı$ FOR INPUT AS 1 RenkSeti = CVL(INPUT$(4,1)) DataSeti = CVL(INPUT$(4,1))
Bu aylık da bu kadar. Gelecek aya kadar, hoşçakalın......