SUPERBASE PROFESSIONAL
Retro bilgisayar
Merhaba... Geçen ay Project Menü ile Superbase menülerini incelemeye başlamıştık. Bu ay bu menünün kalan seçeneklerini ve Record menü ile Process menüyü anlatacağız.
Project menüdeki iki alt menü kalemi bulunan diğer bir seçenek de EDIT'tir. Varolan bir dosya ya da form dizaynı üzerinde değişiklik ve düzeltme yapmak için kullanılır.
EDIT FİLE:
Yaratılan bir dosya üzerinde sonradan çıkan aksaklıklar nedeniyle düzeltme veya değişiklik yapmak gerekebilir. Örneğin bir text alanı kısa gelebilir ya da sayısal bir alanda taşma ortaya çıkabilir. Hatta yeni bir alan ekleme ihtiyacı doğabilir. Superbase, orjinal dosya tanımında değişiklik yapmanıza izin verir ve datalara (siz bir hata yapmadıkça...!) zarar vermez. Bu seçenekle, yeni dosya tanımlamada oluşturduğunuz diyalog penceresi ekrana yerleşir. Bu bölümde yapabilecekleriniz şunlar:
• Add kullanılarak dosyanızdaki alanların sonuna yeni bir alan eklenebilir.
• Delete kullanılarak bir alana "silindi" işareti koyulabilir.
• Bir alanın tipi değiştirilebilir. • Alanın uzunluğu, tarih ve saat stili; validation, calculation ve constant formülleri gibi format ayrıntıları değiştirilebilir.
Alan ekleme, tıpkı yeni alan tanımı gibi yapılır. Mevcut alanlardan (aşağıda açıklayacağımız kurallara bağlı olarak) değişiklik gereken alan adı panelden kliklenerek seçilip gereken düzelme yapılır. Değişiklik kuralları şunlar:
Text Alanları:
• Uzunluk istendiği kadar değiştirilebilir..
• Validation, calculation ve constant formülleri eklenebilir, değiştirilebilir ya da kaldırılabilir.
• Required statüsü eklenebilir veya kaldırılabilir.
• Read Only şartı konabilir ya da kaldırılabilir.
• Çoklu cevaplı alanlar eklenip çıkartılabilir.
• Alandaki bilgi numeric, date, time ya da external olarak değiştirilebilir:
—Numeric yapılırsa, alan kaydedildiğinde tüm text'ler kaybolacaktır.
—Date yapılırsa, tarih olmayan tüm text'ler kaybolacaktır.
—Time yapılırsa, alandaki tüm text'ler kaybolacaktır.
—External yapılırsa ve Superbase alanda yazılı text isimli bir harici dosya bulamazsa, bunları geçersiz dosya pathname'i olarak kabul edecektir.
TARİH ALANLARI:
• Tarih stili istendiği gibi değiştirilebilir.
• Validation, calculation ve constant formülleri eklenebilir, değiştirilebilir ya da kaldırılabilir.
• Required statüsü eklenebilir veya kaldırılabilir.
• Alandaki bilgi text, numeric, time ya da external olarak değiştirilebilir:
—Text yapılırsa, alandaki tarih, Julian tarihini ifade eden bir sayı dizisi haline gelir.
—Numeric yapılırsa, tarih seçilen formatta bir sayı olarak görüntülenecektir.
—Time yapılırsa, Julian tarih hesaplanarak saniyeye göre çevrilerek seçilen formata göre derlenecektir.
—External yapılırsa ve Superbase alanda yazılı bilgi isimli bir harici dosya bulamazsa, bunları geçersiz dosya pathname'i olarak kabul edecektir.
SAAT ALANLARI:
• Saat formatı istendiği gibi değiştirilebilir.
• Validation, calculation ve constant formülleri eklenebilir, değiştirilebilir ya da kaldırılabilir.
• Required statüsü eklenebilir veya kaldırılabilir.
• Alandaki bilgi text, numeric, date ya da external olarak değiştirilebilir:
—Text yapılırsa, alandaki veri bir karakter dizisi olarak görülür.
—Numeric yapılırsa, veri seçilen formata bir sayı olarak görüntülenecektir.
—Date yapılırsa, alandaki bilgi Julian tarih olarak hesaplanarak seçilen formata uygun görüntülenecektir.
—External yapılırsa ve Superbase alanda yazılı bilgi isimli bir harici dosya bulamazsa, bunları geçersiz dosya pathname'i olarak kabul edecektir.
VALIDATION, CALCULATION VE CONSTANT:
• Formülün ayrıntıları değiştirilebilir. • Formül önce Clear, sonra da OK düğmesi tıklanarak kaldırılabilir.
• Required statüsü eklenebilir veya kaldırılabilir.
READ ONLY VE REQUIRED:
• Eklenebilir ya da kaldırılabilir.
BİR ALANI SİLME:
Dosya tanımından silinecek alan, önce tıklanarak alan kutusuna alınır ve sonra da DELETE düğmesi seçilerek panelde özellikleri yanına DEL eklenir. Ancak bu alana daha önce girilmiş olan bilgiler dosyadan silinmez. Alan tanımı da dosya tanımlama penceresindeki yerinde kalır. Dosyadan alan bilgilerini fiziksel olarak tamamen yok etmek için, "System Reorganize" ya da "Process Update" menü seçeneklerinden biri kullanılır. EDIT FORM:
Dizayn edilen form üzerinde düzeltmeler yapılır.
QUIT:
Project menünün son seçeneği olan bu kalem programdan çıkış için kullanılır.

RECORD MENÜ: Record menü, adından da anlaşılacağı gibi bir Superbase dosyası içindeki kayıtların yönetimi ile ilgili seçenekler içerir. Kayıtlar ile ilgili yapılabilecek işlemler bildiğiniz gibi;
• Dosyaya yeni bir kayıt ekleme, • Mevcut bir kaydı düzeltme ya da değiştirme,
• Bir kaydın kopyasını alma, • Verilen tek bir kaydı diskete kaydetme veya disketten silme,
• External File System içinde kayıtları birleştirmedir.
Şimdi isterseniz Record Menü seçeneklerini sırayla inceleyelim.
RECORD NEW: Hazırlanan dosya tanımına bağlı olarak, dosyaya yeni bir kayıt girmek için boş bir form ekranı gelir. Tüm alanlar, özelliklerine uygun bilgi girişleri ile doldurularak tamamlandıktan sonra kayıt diskete kaydedilir. Alan bilgileri girişinde uyumsuzluk olursa Superbase kaydı kabul etmez ve data girişinde hata olduğunu belirten bir mesaj verir.
Record menüden "New" seçildiğinde, kursor ilk alanın yanında bilgi girişinizi bekler. "Read Only" alan tanımlamışsanız, bu alanlara bilgi girişi yapamazsınız. Alana calculation ya da validation formülü verilmişse, bilgi otomatik olarak yazılır.
RECORD EDIT: Ekranda o anda yüklü olan kaydı düzeltmek ya da değiştirmek için kullanılır. Bu yüzden önce editlenecek kayıt seçilerek görüntüye getirilir.
Editleme fonksiyonlarının yerine getirilebilmesi için görüntünün Table View modunda olmaması gerekir. Zaten bu modda olsa bile "Edit" seçildiğinde Superbase görüntü modunu otomatik olarak değiştirir.
Kayıtta gerekli düzenlemeler yapıldıktan sonra, kaydın yeni haliyle diskete kaydedilmesi istendiğinde, hiçbir uyarı yapılmadan eskisinin üzerine kaydedilecektir.
RECORD BATCH: Superbase Professional'da bulunan ekstra özelliklerden biri daha. Genel amaç girilen kayıtları bir yığın halinde biriktirerek ve disk işlemlerinde yapılan birtakım fonksiyonları devreden çıkarıp sürati artırmak.
Superbase'in bilgileri kaydetme işi oldukça karmaşık. Kayıtlar bellekten diskete geçirilirken dosyaları açıp kapatma, disk buffer (tampon)'ı ihtiyaca göre ayarlama gibi bir sürü işlem yapılır. Tabii bu şekilde datalarınız çok güvenli bir biçimde diskete kaydedilir. En kötü ihtimalle elektrik kesintisi olsa bile, sadece en son girdiğiniz kayıt kaybolur. Tabii her kayıt için bilgi girişi bittikten sonra, yeni bir kayda geçerken, girişi tamamlanan kaydın diskete kaydedilmesi sırasında biraz önce sözünü ettiğimiz karmaşık işlemlerin her seferinde tekrar yapılıyor olması, size zaman kaybı gibi (uzun sürmüyor olsa bile) gelebilir.
İşte "Batch" fonksiyonu, kaydetme esnasında birtakım ara işlemleri kaldırarak sürati artırmak için kullanılıyor. Tabii bu arada dataların güvenliği azalıyor.
Bu fonksiyon On ve Off yapılarak kullanılıyor. Batch On yapıldığında (ekranda işlemin yapıldığına dair bir mesaj penceresi görüntüleniyor) toplu işlem için kayıtlar yığılmaya başlanıyor ve
Batch Off (yine uyarlıyorsunuz?) yapılana kadar devam ediyor. Bu yüzden Batch On yapıldıktan sonra mutlaka Batch Off yapılarak diskete kaydetme işleminin tamamlanması gerekiyor. İşte daha az güvenilir olmasının sebebi bu. Batch On yapılıp datalar girildikten sonra, Batch Off yapılmadan elektrikler kesilirse, yığılan kayıtların hepsi zarar görebilir. Bu nedenle Batch On durumundan mutlaka Batch Off yapılarak çıkıldıktan sonra dosya kapatma gibi işlemler yapılmalıdır.
RECORD DUPLICATE: Bu seçenek, hemen hemen aynı dataları içeren iki kayıt olduğunda, tekrar yazmadan aynı kaydı kopyalamak için kullanılır. Kopyalanacak kayıt görüntüde iken Record menüden "Duplicate" seçildiğinde, bellekte aynı kaydın kopyası oluşturularak editlemeniz için görüntüye getirilir. Burada farklı alan bilgileri değiştirilerek kaydedildiğinde dosyaya yeni bir kayıt eklemiş olursunuz.
RECORD REMOVE: Dosyadaki kayıtları silmek için kullanılır. Silme işlemi yalnız o anda görüntüde olan kayıt için yapılabilir. Bu yüzden Remove işlemi için önce kaydın seçilmesi gerekir. Silinecek kayıt görüntülendiğinde, Record menüden "Remove" seçilir. Bu komutla ekrana işlemi onaylamanızı isteyen bir diyalog penceresi gelir. Bu penceredeki OK kutusu kliklenirse, kayıt dosyadan silinir.
RECORD SAVE: Bir kayda bilgi girişini tamamladığınızda, diskete kaydetmek için kullanacağınız seçenektir. Diskete kayıt için 3 seçenekten birini seçebilirsiniz:
• Record menüden "Save" seçilir. • Ekranda mouse ile çift klik yapılır. • Alt ve S tuşlarına birlikte basılır. Komut verildiğinde ekranda işlemi onaylamanızı isteyen bir diyalog penceresi görüntülenir.
Penceredeki OK kutusu seçilirse, o anki kayıt diskete kaydedilir. Aynı pencere, data diskete kaydedilmeden herhangi bir işlem yapılmaya çalışıldığında da görüntülenir. Örneğin bir kaydın alan girişleri tamamlandıktan sonra diskete saklanmadan "New" komutu verilirse, aynı uyarı mesajı alınır. RECORD EXTERNAL : Bunlar Superbase External File (Harici Dosya) sistemi ile birlikte kullanılırlar. Daha önceki açıklamalarımızda, yazı ya da resim dosyalarının harici dosya olarak kullanılabileceğinden bahsetmiştik. İşte kayıtlardaki harici dosyalara erişip onlara tek tek erişim için, bu seçenekleri kullanabilirsiniz.

PROCESS MENÜ: Superbase'de ana database fonksiyonlarını içeren menü budur. Dataları yönetmek ve birleştirmek için gereken tüm özellikler bu menü seçenekleri arasında sıralanırlar. Bunları kullanarak dosyalar arası bilgi transferi yapabilir, etiket döktürebilir, kayıtları güncelleştirebilir ya da Mail Merge dediğimiz bir yazının farklı isim ve adreslerle tek tek birleştirilmesi işlemlerini yapabilirsiniz. FİLTRELEME: Tüm Process menü seçenekleri hangi kayıtların işlem göreceğini tespit etmek için filtreler kullanırlar. Filtreleme Düğmesi" bölümünde ayrıntılı olarak anlatmıştık.
PROCESS UPDATE: Birden fazla dosya için aynı anda güncelleştirme yapma işlemidir. Dosyalardaki alanlarda tek tek değişiklik yapmanıza izin verir. Çoklu dosya (multi-file) özelliği denilen bu fonksiyon, tek dosya opsiyonuna göre çok daha komplike ve güçlüdür. Update fonksiyonu, tanımlamalarınız yönünde dosyanızdaki dataları değiştireceğinden, fonksiyonun çalışmasını tam olarak anlayıncaya kadar Update işleminden önce datalarınızın kopyasını mutlaka almalısınız.
Diyelim ki, iki ayrı database dosyası tutuyorsunuz. Biri, MÜŞTERİLER isminde ve müşterileriniz hakkında adres, telefon vs gibi genel bilgiler; diğeri ise HESAPLAR isminde ve hesap durumunu içeriyor olsun. Siz belli dönemlerde müşterinizin hesap bakiyesini genel bilgilerindeki bir alana aktarıyor olun. İşte bu durumda iki dosya arasında yaratacağınız bir Update ile hesapları eşleyip iki alan arasında bilgi transferi yapabilirsiniz. Nasıl mı? Biraz karmaşık gibi görünüyor değil mi? Öncelikle bu tür işlemler yapacağınız dosyalarda, eşlemeye müsait alanlarınız ve bu alanlarda da uyumlu bilgileriniz olması gerekiyor. Yukarıdaki örnekten devam edersek; bir kere müşteri genel bilgisi ile hesap bilgisi kayıtlarını eşleyebileceğiniz mesela Müşteri No gibi bir alan olmalı. İki dosyada da alan isminin aynı olması gerekmez, tipleri uyumlu olsun yeter. Eğer alan adı her iki dosyada da aynı ise, Update penceresinde seçilen ikinci ismin yanına dosya adı uzantı olarak eklenir. İşte Update sayesinde bu eşleme alanını kullanarak iki dosya arasında bağlantı kurup, hesap bilgileri dosyasındaki bakiye genel bilgiler dosyasındaki istenen alana aktarılır. Tabii müşteri numaraları her iki dosyada da uyumlu olmalıdır. Mesela 0001 numaralı müşteri, dosyaların her ikisinde de aynı kişi olursa, farklı hesap bakiyeleri farklı farklı müşterilere aktarılmaz. Örnekteki dosya sayısını dilediğinizde çoğaltabilirsiniz. Tek sınırlayıcı faktör, Amiga'nızın belleği. Belleğin izin verdiği miktarda dosya açabileceğiniz için, kullanabileceğiniz dosya sayısı da buna bağlı olarak bellekte sınırlı.
Update menü seçeneğinin 3 alt menü kalemi vardır: Edit, Load ve Save. Edit, yeni bir Update yaratmak ya da disketten yüklenmiş bir Update'i editlemek için kullanılır. Load, önceden hazırlanarak diskete kaydedilmiş bir Update'i yüklemek, Save ise hazırlanan bir Update'i diskete kaydetmek için kullanılır. Hazırladığınız bir Update'i kaydettiğinizde, Superbase aynı zamanda onunla birleştirilen database dosyasını da kaydeder.
UPDATE EDİT: Edit, size erişebileceğiniz iki Update diyalog penceresi getirir: Filter (Filtre) ve Fields (Alanlar). Bellekte hazır bir Update varsa, bu pencerelerdeki komut satırında bu satırı değiştirebilirsiniz. Yeni Update yaratıyorsanız, yine bu pencerelerdeki komut satırına koşulları girersiniz.
YENİ BİR UPDATE YARATMA: Update yalnız o anda açık olan dosyaları kullanabilir. Bu yüzden, Update komut satırında alanları belirtmeden o alanları içeren dosyaların açık olması gerekir. Yeni yaratılan bir Update için Update Edit seçildiğinde, Superbase Update filtreleme diyalog penceresini açar.
Bu pencere, "File:" etiketli dosya ismi kutusu dışında kontrol panelindeki filtre penceresine benzer. Dosya ismi kutusunun yanındaki ok, açık dosyalar arasında geçişi sağlar. Ancak burada bulunan dosyalar o anda açık database dosyalarıdır, bellekte açık olmayan dosya isimlerini ve dolayısıyla alan listesini burada göremezsiniz. Ok kutusuna her klikleyişte dosya ismi kutusuna açık dosyalardan birinin ismi yerleşir, isim kutusunun altında dosya alanlarının listelendiği paneldeki alan isimleri de dosyalara bağlı olarak değişir. Seçilecek alanlar sırayla kendi dosyaları içinden işaretlenir.


Alan isimleri panelinin sağ tarafında komut operatörleri, onların altında da Value (Değer) kutusu bulunur. Penceredeki uzun siyah çubuk, komut satırıdır. Update koşulları bu satırda oluşturulur. Filtreleme penceresinde olduğu gibi, bu komut satırını da oluşturmak için önce alan ismi seçilir, sonra işlem için operatör kliklenir ve değer kutusuna bilgi girilir. Bu penceredeki tek fark, bir dosya yerine birkaç dosyadan alan seçebiliyor olmanız. Komut satırı, maksimum 512 karakter uzunluğunda verilebilir ve açık dosyalardan seçilmiş alan isimlerinin çeşitli kombinasyonlarını içerebilir. Konunun girişinde verdiğimiz örnekte kullanabileceğimiz komut satırını düşünelim. Genel bilgilerdeki eşlemede kullanılacak alan adı "Müşteri No", hesap bilgilerindeki alan adı "Hesap No" olsun. İki dosyada bu alanların müşteri kayıt sırasına uyumlu olması gerektiğini biliyoruz. Bu durumda işlem yapılırken, ilk dosyadaki Müşteri No alanındaki bilgi ile ikinci dosyadaki Hesap No alanındaki bilginin aynı olduğu kayıtlar eşlenecektir. Komut satırında bu eşlemeyi yapmadan hatta Update fonksiyonunu seçmeden kullanacağınız iki dosyayı açmayı unutmamalısınız. Dosya ismi kutusunda ilk görüntülenen dosya, o anda aktif olan yani görüntüdeki dosyadır. Kutuda genel bilgileri içeren MÜŞTERİLER dosyası olduğunu varsayarak örneğimizi sürdürelim. Bu durumda Alan isimleri panelinde de bu dosyanın alanları listelenir. Eşleme için önce bu dosyadaki "Müşteri No" alan ismi kliklenir. Sonra gereken şart iki alan bilgisinin eşitliği olduğuna göre, " = " operatörü seçilir. Bu işlemlerden sonra, komut satırındaki görüntü şöyledir:
Müşteri No = Sıra ikinci dosyadan eşlenecek alanı seçmeye geldi. Önce alan ismi kutusu yanındaki ok kliklenerek "HESAPLAR" dosya adının görüntülenmesi sağlanır. Buna bağlı olarak alan isimleri panelinde görüntülenen alanların listesi de değişecektir. Bu listeden "Hesap No" alanı kliklenerek komut satırında yerini alması sağlanır:
Müşteri No = Hesap No Update penceresinde gerekli olan filtreyi yarattık. Komut satırının altındaki üç çıkış kutusunun fonksiyonunu zaten biliyoruz. OK kutusunu klikleyerek Update'in bir sonraki adımına geçilir: Fields (Alanlar) diyalog penceresi. Bu pencere de operatörler dışında Update filtre penceresi gibidir. Burada alanlarda yapılması istenen işlemler belirtilir. Alanlara yeni bilgi atamaları yapılabilir, aritmetik işlemler yaptırılabilir. Bu pencerede komut satırında alan seçimi yapıldığında, " = " işareti alan isminin yanına otomatik olarak yerleşir. Bizim örneğimizde, HESAPLAR dosyasındaki 'Bakiye" alanındaki bilgi, "MÜŞTERİLER" dosyasındaki "Hesap Bakiyesi" alanına atanacak. Yine alan isimlerinin böyle olduğunu varsayıyoruz, tabii. Yine aynı şekilde gereken seçimleri yaparak komut satırına koşulumuzu yerleştiriyoruz:
Hesap Bakiyesi = Bakiye Bu tür atama koşullarında her zaman sağdakinin soldakine atanacağını unutmayın. Koşul ters yazılsaydı yani:
Bakiye = Hesap Bakiyesi olsaydı, atamanız ters gerçekleşecekti. Yani MÜŞTERİLER dosyasındaki Hesap Bakiyesi alanındaki bilgi, HESAPLAR dosyasındaki Bakiye alanına transfer edilecekti. Koşulların doğru çalışabilmesi için komutlarda verilen formüllerin sırası doğru olmalıdır.
Bu pencerede de komut satırına girebileceğiniz maksimum karakter sayısı 512. Alan isimleri yanına bir değer girilecekse yine Value kutusuna yazılır ve RETURN tuşuna basılarak komut satırına aktarılır.
Update fields diyalog penceresinde komut satırına arka arkaya maksimum uzunluğu aşmayacak şekilde birden fazla komut girebilirsiniz. İşte bu tür durumlarda komutların birbirinden ayrılması için kullanılacak yeni bir operatör eklenmiş: ":". Biz örneğimizde son bakiyenin aktarılması dışında, tarihi değiştirmek isteseydik, bu işlemciyi kullanacaktık:

Hesap Bakiyesi = Bakiye:
Tarih = 15/8/1990 Update fields penceresinde, istenen koşul girildikten sonra OK kutusu seçilerek Update işlemi başlatılır. Biz yine ilk kullanımlarda bu işlemi yapmadan evvel datalarınızın kopyasını almanızı tavsiye ettiğimizi hatırlatalım. Datalarınızın kopyasını almak için System menüdeki Copy seçeneğini kullanabilirsiniz.
UPDATE SAVE: Bu opsiyon, o anki Update'i kaydeder. Update dosyasına isim vermeniz için bir dosya diyalog penceresi açılır. Burada verdiğiniz isimle Update dosyası diskete kaydedilir. Superbase Update dosya isimlerinin sonuna .sbu uzantısı ekler.
UPDATE LOAD: Bu seçenekle, ekrana o anki directory içinde bulunan Update dosyalarını listeleyen bir diyalog penceresi açılır. Bu pencereden Update dosyası seçilerek OK kutusu kliklendiğinde Update dosyası yüklenerek tanımlama penceresi görüntülenir. Bu pencerede OK seçilerek Update fonksiyonunun yerine getirilmesi sağlanabilir. Update koşullarında değişiklik isteniyorsa burada yapılabileceği gibi, Cancel kutusu kliklenerek Update fonksiyonu durdurulabilir.
Gelecek ay Superbase'in Process Menü'sünün diğer seçenekleri ile anlatımlarımızı sürdüreceğiz. Hoşçakalın...