Sağlık ve Bilişimde Objektif Haber

  English

 Sorgu Formları

          Çözüm otomasyon modüllerinin tamamında kullanılan sorgu formları, kayıtları önceden öngörülmüş filtreler eşliğinde listelemek ve bu kayıtlar üzerinde değişiklik yapmak üzere, kayıtlara ait formları ekrana çağırmak amacıyla kullanılır.

          Veriler, yapısı önceden tasarlanmış tablolarda tutulur. Bu tablolara kaydedilen her bir kayıt, tabloda bir satırda saklanır. Tablo dizayn edilirken, amaca uygun sütunlar tasarlanır ve bu sütunların özellikleri kullanım amacına göre belirlenir. Örneğin sayısal veriler saklanacak bir sütun sayısal olarak tanımlanırken, tarih bilgisi saklanacak alan tipleri tarih olarak belirlenir.

          Bir (ya da birden fazla bağlantılı) tablo kayıtlarına erişmek için birden fazla sorgulama biçimi vardır. Bir kayda doğrudan, o kaydı belirleyen anahtar alan (KEY = biricik sayısal değer) üzerinden erişilebileceği gibi, tabloda yer alan sütunlar üzerinde de sorgulama yapılarak aranan kayıt ya da kayıtlara erişilebilir.

          Özellikle tekil sıra (PRIMARY KEY)  oluşturulan indekslerde erişim çok hızlı olmasına karşın, normal  indeksler de (ad veya tarih alanı için konan indeksler) tablodaki kayıtlara erişmek için gerekli hızı sağlar. Diğer alanlar üzerindeki sorgu bu anlamda daha yavaş olacaktır.

          Önceden yapılmış kayıtlara erişim hızlı ve değişik parametrelere ihtiyaç duyması açısından, oldukça gelişmiş bir sorgu formu dizayn edilmiştir. Ekran temel olarak üç bölüme ayrılmıştır.

Sorgu Kriterleri

          Ekranın sol üst köşesinde, her bir tablo/kart için farklı filtre parametreleri içeren sorgu kriterleri yer almaktadır. Kullanıcı, önceden tasarlanmış bu filtre alanları kullanarak, kayıtlara erişebilir.

          Bu bölümün başlık kısmında yer alan, İşlem Gören Kayıtlar seçeneği, kullanıcıların yaptıkları değişiklikler ve silme işlemlerinin filtre edilerek listelenmesini sağlamaya yöneliktir (Eğer kullanıcı sistem yetkili değil ise ve kullanıcı tanımlarında Değişiklik ve İptalleri Görsün seçeneği işaretsiz ise, bu seçenek görüntülenmez). İlgili sorgu ekranının ilk açılışında bu seçenek işaretsizdir. Ancak kullanıcı dilerse, bu seçeneği işaretleyerek Audit (Dinleyici) tablolardaki kayıtları görüntüleyebilir. (Konu ile ilgili detaylı bilgi İşlem Gören Kayıtlar başlığında anlatılmıştır.)

          Sorgu kriterlerinin yer aldığı bölümde, her kriter için bir açıklama metni yer alır. Bu metnin altı çizilerek işaretlenmiş harfi, fareye ihtiyaç duyulmaksızın doğrudan açıklama yapılan sorgu alanına erişmek için kullanılır. Yandaki örnekte Kod alanında K harfinin altı çizilidir. İmleç başka bir bölümde ya da sorgu alanında iken, Alt ve K tuş çiftine birlikte basmak, imlecin Kod ile belirlenen filtre alanında konumlanmasını sağlayacaktır.

          Çözüm Otomasyon modülleri aynı işleve sahip anca farklı filtre yöntemleri kullanılan 7 ayrı sorgu alan tipine sahiptir.

1. Veri giriş kutuları (EDIT)

2. Evet / Hayır Seçimli alanlar (CHECK BOX)

3. Çoklu seçenekten birinin seçildiği alanla (RADIO GROUP)

4.Birden fazla seçenekli alanlarda birden fazla seçim yapılabilen sorgu alanları (CHECK GROUP)

5.Listeden seçilebilen sorgu  alanları(COMBO BOX)

6.Listeden birden fazla seçenek seçilebilir alanlar (GROUP COMBO BOX)

7.Sayısal olarak Alt ve üst sınırları belirtilmiş listeden seçilebilen alanlar (SPIN EDIT)

            Veri giriş kutuları

            Beş ayrı kullanım şekli olan veri giriş kutuları, veri giriş kriterlerinde en çok kullanılan sorgu tipidir. Hangi veri giriş kutusunun, hangi kullanım şekline sahip olduğu, ilgili alanın üzerinde fareyi bekleterek, ya da sorgu sonuçlarının en altında yer alan durum çubuğundan detaylı açıklamaları görülebilir.

            1.Listeden seçim : CTRL ve ENTER tuşları birlikte kullanılarak, açılan listeden arama yapılır. Listede filtre olarak kullanılması düşünülen satır üzerine gelinip, en-ter tuşuna basılır ise, aramada kullanılacak filtre değeri ilgili alana aktarılır. Genellikle, kod ve adı olan ve bağlantılı tablo olarak çalışan tablolarda kullanılır.         

            Yukarıdaki Eczane Çıkış fişi sorgu ekran örneğinde Birim kodu kullanılmıştır. Kullanıcı bu alana doğrudan SARF yazabileceği gibi, CTRL ve Enter tuş çifti ile Birim listesini Kart arama formu üzerinde ekrana getirerek, ilgili ad veya kod bulunarak seçilir.

            Bu tip sorgu kullanım şekillerinde, sorguya esas kod kullanılır. Listede kod ve ad arama yapmak amacıyla görüntülenir. Seçilen koda ait ad seçim kutusunun yanında bilgi amaçlı görüntülenir. Sorgu işlemi, hız açısından doğrudan bağlantıyı sağlayan KEY (anahtar alan) üzerinden yapılır.

            2. Aralıklı Sorgu : Sorgu işlemi karşılıklı belirtilen filtreler üzerinden yapılır. Bu sorgu biçiminde, başlangıç ve bitiş değerlerini sınırlamak üzere çift filtre alanı görüntülenir. Filtre sol taraftaki filtre >= (bu değerden büyük veya bu değere eşit olanlar), '+'sağ taraftaki ise <= (bu değerden küçük veya bu değere eşit olanlar) koşullarını SQL ifadenin koşul kısmına yerleştirir. Eğer her iki alanda da aynı değer yer alıyorsa, ilgili alan ile ilgili sorgu tek bir ifadeye çevrilir ve eşittir olarak aranır. Eğer, ilgili veri giriş kutularında filtre zorunluluk olarak kullanılmamış ise, baştaki ya da sondaki (ya da her ikisi de) filtreler boşaltılabilir. Eğer baş koşul boş bırakılmış, son koşul dolu ise, yalnızca küçük veya eşit olanları, son koşul dolu ise bu kez sorgu büyük ve eşit olanları içerir.

          Örneğin muhasebe fiş tarihi (TARIH) üzerinde sorgu yapılacak ise başlangıç ve bitiş tarihine 01.05.2003 tarihlerini yazmak, yalnızca 01.05.2003 tarihli fişlerin listelenmesini sağlar.

          Başlangıç tarihine yine aynı değer yazılıp, bitiş tarihi boş bırakılır ise, 01.05.-2003 tarihi ve sonrasına ait tüm fişler, başlangıç tarihi boş bırakılıp, bitiş tarihine 01.05.2003 tarihi yazıldığında ise, bırakılıp, bitiş tarihine 01.05.2003 tarihi yazıldığında ise, 01.05.2003 tarihi ve bu tarih öncesine ait fişlerin listelenmesi sağlanır.

          3. Çok Seçenekli Sorgu : Aynı alan üzerinde birden fazla sorgunun yapılabildiği veri giriş türüdür. Sorgulanacak alandaki aranan değerler virgül (,) işareti ile ayrılır ise, ilgili alanda birden fazla değer için sorgulama yapılır. Yandaki örnekte olduğu gibi, Fiş no filtresi için çoklu sorgu kutusu kullanılmıştır. Bu sorguda fiş numarası 255 ve 269 olan fişler aranacaktır.

          4. Doğrudan Arama : Sorgu alanına her hangi bir değer yazılıp, enter tuşuna basıldığında, F2 ya da ara tuşuna basmaya ihtiyaç duymadan, doğrudan sorgulama yapılması amacıyla kullanılır. Genellikle biricik değer içeren alanlar (Fatura no, fiş no vb) için kullanılır. Sorgu, aranan değer arama yapılan tabloda bulunur ise, sonuçlarını doğrudan listeler, aksi durumda ilgili hata mesajı ile kullanıcı uyarılarak, imleç yeniden sorgu kısmına konumlandırılır.

          5. Seçenekli Sorgu : Sorgu işlemi, koşulun sağındaki listede yer alan seçime bakılarak yapılır. Burada, eğer Normal Ara seçilmiş ise, metin aynen aranır. Örneğin arama alanına CAN yazılmış ise, arama şekli de normal ise, ismi CAN olanlar ilgili alan üzerinde aranır. Baştan ara seçili ise, ismi Can ile başlayanlar (örn. CAN, CANAN, CANDAN) listelenir. Tümünde ara da ise, içinde CAN sözcüğü geçenler listelenir (örn. CAN, ALİCAN, CANAN vb) ayrı alan kullanılmıştır. Örneğin Yalnızca; yatan hastalar işaretlendiğinde, poliklinik işlemi sonucu yatışı yapılan hastalar listelenir. Ayakta tedavi gören hastalar bu listede yer almazlar. Ancak, sorgunun en altında yer alan Bugün verilen tabelalar seçeneği ise, arama yapılan tarihe ait tabelası yapılan hastaların sorgulanmasına yönelik sorgu ifadesinin değiştirilmesini sağlar.

Evet Hayır Seçimli Alanlar

 

          Sorgulama Evet/Hayır (veya var/yok) biçiminde olacak alanlar için kullanılır. Bu tip alanlar sorgu amaçlı kullanılabildiği gibi, sorgu öncesi genel sorgu yapısının değiştirilmesi amacıylada kullanılır.

          Eczane tabela sorgu ekranında bu amaçla konan iki ayrı alan kullanılmıştır. Örneğin yalnızca; Yatan hastalar işaretlendiğinde, poliklinik işlemi sonucu satışı yapılan hastalar listelenir. Ayakta tedavi gören hastalar bu listede yer almazlar. Ancak, sorgunun en altında yer alan bugün verilen tabelalar seçeneği ise, arama yapılan tarihe ait tabelası yapılan hastaların sorgulanmasına yönelik sorgu ifadesinin değiştirilmesini sağlar.

 

 Çok Seçenekten Birinin Seçildiği  Alanlar

 

          Sorgulanacak alan, önceden tanımlanmış ve birden fazla seçeneği olan bir veri şeklidir. Bu tip alanlar üzerinde sorgu, yalnızca o alanın alabileceği bir değer sorgulanarak arama yapılır.

          Yandaki örnek, Eski personel kartı arama kriter ekranından alınmıştır. Liste sonuçları, yapılan seçime göre değişiklik gösterir. Eğer Tümü seçeneği işaretli ise, personel tablosunda kayıtlı tüm kayıtlar (memur, işçi, sözleşmeli ve öğrenci), aksi durumda yalnızca seçilen türdeki personeller arama sonucunda yer alırlar.

 

Çok Seçenekli Alanlar

 

           Bir önceki anlatılan veri tipine benzer bir yapıdadır. Sorgulanacak alanın önceden tanımlanmış birden fazla seçeneğe sahiptir ancak bu kez, sorgulanacak alanda aynı anda birden fazla değer sorgulanır.

          Yandaki örnekte tabela sorgu ekranında hastaların durumuna yönelik sorgu yer almaktadır. Eğer tüm seçenekler işaretli ya da tüm seçenekler işaretsiz ise, o alan üzerinde her hangi bir sorgulama yapılmaz. Eğer seçeneklerden biri işaretli ise = koşulu ile birden fazlası işaretli ise IN (içinde) koşulu ile aranır.

           Eğer Yalnızca Sevk seçeneği işaretli ise, sorgu A.SONUC = 'V' şeklinde olacaktır. Örnekte olduğu gibi hem sevk hem de yatan işaretli ise A.SONUC IN ('V', 'Y') şeklindeki bir sorgu ifadesi ile arama yapılacaktır.

 

Listeden Seçilebilen Alanlar

 

          İlgili veri alanında yer alabilecek seçeneklerin bir listeden seçilerek sorguya eklenmesi amacıyla kullanılır. İlgili sorgu alanında iken, sorgu alanının sağındaki aşağı ok işareti üzerinde fareye tıklayarak veya F4 tuşuna basarak (ya da alan alt tuşu basılı iken aşağı yön tuşuna basarak) liste içindeki seçeneklerin aşağı doğru inen bir liste içinde görüntülenmesi sağlanır. Kullanıcı, koşul olarak kullanmak istediği seçeneği fare ile seçerek ya da enter tuşuna basarak seçer (Liste üzerinde aranan seçeneğin ilk harfi yazılarak da ilgili seçeneğe hızlı bir biçimde ulaşılır).

          Diğer tümleşik tablolarda olduğu gibi, sorgulama anahtar alanlar üzerinden olduğu için, sorgu ifadesinde seçilen kod (ya da ada) ait anahtar numara (KEY) sorgu ifadesine eklenir.

 

Birden Fazla Seçimli Sorgu Alanları

 

          Çalışması bir önceki başlıkta anlatılan sorgu alanı gibidir. Farklı olarak sorgulama işlemi ilgili alanda birden fazla kodun (ya da adın) aranmasını sağlar.

          Eğer herhangi bir seçim yapılmamış ise, liste boştur (sorgu ifadesinde ilgili alan üzerinde sorgu yapılmaz). Arama listesinin en sağında yer alan kare biçimindeki ve ... (üç nokta) ile gösterilen tuşa tıklanarak (ya da üzerinde iken boşluk veya enter tuşuna basarak) çoklu seçimlerin yapılabileceği, seçim ekranı aktifleşir.

           Seçim ekranı iki ayrı bölümden oluşur. Sol taraftaki bölümde seçilmek üzere listelenmiş ve henüz seçilmemiş kayıtlar, sağ da ise seçilen kayıtlar.

          Kullanıcı, sağa tek ok tuşu ile solda seçili alanı sağa, sola tek ok tuşu ile de sağda seçili alanı sol listeye ekleyebilir (Bu işlemi aktif kayıt üzerinde iken boşluk tuşuna basarak da yapabilir). Sağa çift ok tuşu soldaki listenin olduğu gibi sağa taşınmasına (Soldaki liste boşalır), sola çift ok tuşu ise, sağdaki listenin sola  taşınmasına neden olur (Sağdaki liste boşalır).

 

Sınırlı Sayısal Sorgu Alanları

 

            Genellikle yıl, ay veya sınırlı sayıda seçenekli sayısal veri içeren alanlarda sorgu filtresi amacıyla kullanılır. Seçilebilecek taban ve tavan değerler önceden belirlenmiş olduğu için, sorgu alanının alabileceği değerler, alt ve üst limit olarak belirlenmiştir.

          Genellikle, bu tip alanlar ikili filtre olarak kullanılır. Ancak tek bir alan olarak da kullanılabilir. Özellikle tek bir yıla yönelik sorgularda tek bir filtre alanı kullanılır.

           Yukarıda, personel programının memur kartlarına ait sorgu ekranında yer alan derece düzeylerinin sorgulanmasına yönelik filtre başlangıç ve bitiş sorgu alanları görüntülenmiştir. Memurların alabileceği dereceler 1 ile 15 arasında sınırlı olması nedeniyle, her bir filtre alanının en alt değeri 1, en üst değeri ise 15 olarak sınırlandırılmıştır.

            Kullanıcı, fareyi kullanarak yukarı ok tuşu ile değerleri artırabilir, aşağı ok tuş ile azaltabilir. İmleç, ilgili alan üzerinde iken, klavye üzerindeki yukarı ve aşağı yön tuşlarını da kullanarak filtreleri değiştirebilir.

            Filtre işlemi küçük değer ile büyük değer arasındaki tüm değerleri içerir. Sol taraf küçük değeri, sağ taraftaki ise büyük değeri gösterir. Eğer her iki alanda da aynı değer var ise sorgulama tek bir ifade olarak eşitlik parametresi ile sorgulanır (örneğin başlangıç ve bitiş alanında 3 değeri var ise, M.DERECE = 3 sorgu koşulu eklenir). Farklı olduğu durumlarda (örneğin başlangıç 5, bitiş değeri 7 ise) M.DERECE >= 5 AND M.DERECE <= 7 olarak sorgulanır.

           Bitiş filtresinin başlangıç filtresine göre ya eşit ya da büyük olması gerekir. Eğer bu değer, başlangıç değerinden küçük ise, bitiş değeri göz ardı edilerek, eşitlik parametresi ile başlangıç alanı doğrudan sorgulanır (başlangıç alanı 2 ve bitiş alanı 1 ise, sorgu M.DERECE = 2 olarak yapılır).

 

SQL Sorgu Metni

 

            Sorgu kriter bölümünün altında, ekranın sol alt köşesinde yer alır. Yapılan sorgu için görsel olarak kullanıcı bilgilendirme amaçlıdır.

            Tablo (tümleşik ya da tablolar) üzerinde yapılacak sorgunun SQL metin olarak görüntülendiği bölümdür. Burada yer alan ifadelerin tümü  seçilip  belleğe alınarak, F9 sorgu işlemlerine yapıştırılıp çalıştırılabilir.

            SQL metin iki parçadan oluşur. Programın öngördüğü SQL ifade ile, kullanıcının sorgu bölümünde belirlediği filtrelerin eklendiği sorgu bölümü.

SQL ifadenin tümünde SELECT ve FROM cümle grubunun dışında, WHERE, GROUP BY ve ORDER BY cümleleri de yer alabilir.

            Her sorgulama işleminin en başında SELECT sözcüğünü takip eden seçilen alanlar (görüntülenecek alanlar), ardından FROM sözcüğü ile sorgu işleminin hangi tablolardan yapılacağı yer alır. Eğer, tümleşik çalışan bir sorgu ise WHERE ifadesini takip eden = (eşit) ifadesi ile birbirine bağlanan alanlar yer alır. Her bir sorgu koşulu, diğer sorgu ifadelerine AND ekleri ile bağlanır.

            Sorgu formu açıldığında (var ise) WHERE ifadesi ile yalnızca bağlantıları sağlayan koşullar yer alır. Kullanıcının kendi belirlediği koşullar WHERE ifadesi ile SQL ifadeye eklenir (önceden bağlantılar var ise, kullanıcı koşulları, mevcut sorgu ifadelerine AND ifadesi ile  eklenir).

           Yukarıdaki örnek, Eczane ilaç kartları sorgu ekranından alınmıştır.  SELECT I.IL_KEY, I.IL_KOD, I.IL_AD, DECODE(I.ITHAL, 'E', 'İTHAL', 'YERLİ') AS ITHAL, I.BIRIM, I.ALISFIAT, I.SATISFIAT, I.KTADET, I.KLADET, I.OZKOD1, I.OZKOD2, I.OZKOD3, DECODE(I.TIPI, '0', 'İLAÇ', '2', 'İLAÇ', 'S.MALZ.') AS TIPI, I.ACIKLAMA, C.CR_AD, M.MU_AD, E.ET_AD, N.EN_AD ifadesi Sorgunun SELECT (Seçilen alanlar) bölümünü oluşturmaktadır. FROM EILAC I, ACARI C, EMUAD M, EETKEN E, EENDK N  ifadesi ise, FROM (Seçilen tablolar) bölümünü oluşturmaktadır.

           SQL İfadenin daha rahat anlaşılması açısından FROM bloğunu açıklayarak başlamak daha doğru olacaktır.  EILAC  (İlaç bilgileri),  ACARI  (Üretici  Firma), EMUAD (Muadil Tanımları), EETKEN (Etken Madde Tanımları), EENDK (Endikasyon alan tanımları) tabloları, ana tablo EILAC olmak üzere birbiriyle bağlantılı çalışan tablolardır. Her tablonun sorguda kullanılan alanları doğrudan tablo ile bağlaması için Kısa ad da denebilecek ve bu örnekte tek harf ile gösterilen tablo belirteçleri vardır.

           SELECT bölümünde ilaç tablosundan sırayla KEY (tabloya bağlanan diğer tabloların kullandıkları ve her tabloda biricik tekrar etmeyen sayısal numara), ilacın kodu ve adı, ithal olup olmadığı, birim türü (Tablet, draje vb), ilacın alış ve satış fiyatı, kutu ve kolu içindeki adeti, Özel kodları ve açıklama alanları seçilmiş ayrıca, satıcı tablosundan satıcı adı, muadil tablosundan muadil grup adı, etken madde tablosundan etken adı ve endikasyon alanı tanım tablosundan endikasyon alanı seçilmiştir.

           WHERE bölümünde yer alan koşulların ilk grubu, kullanıcının müdahalesine kapalı tablo bağlantılarını sağlayan koşullardır.

           İlk koşul olarak NVL(I.IL_KEY,0) > 0 sorgu ifadesi kullanılmıştır. Bu, ilaç tablosundaki anahtar alanı sıfır ve sıfırdan küçük olanları liste dışı bırakır.

          Aşağıda yer alan dört ayrı koşul ifadesi, tablo arasındaki bağlantıları sağladığı için, program tarafından önceden öngörülmüş ve kullanıcının müdahalesine izin verilmemiş bir sorgu ifadesidir.

          I.FR_KEY = C.CR_KEY (+)  ifadesi, ilaç tablosunu, satıcı firma kayıtlarının tutulduğu tablo ile bağlantısını sağlar. İlaç tablosundaki FR_KEY alanı, ilacın hangi firmanın ilacı olduğu bilgisini saklar. Bu değer, cari tablosundaki CR_KEY alanı ile eşleşerek ilacın hangi firma ilacı olduğunu SELECT ifadesinde yer alan C.CR_AD alanında gösterir. Koşulun sonunda yer alan (+), cari tablosunda firma karşılığını bulamaz ise, karşılık olarak CR_AD için boş bilgi getirmesini sağlar.  (+) işareti olmasa idi, satıcısı tanımlı olmayan kartlar sorgu sonuçlarında gösterilmeyecekti.

          I.MU_KEY = M.MU_KEY (+) ifadesi, ilaç tablosunu, muadil tanım kayıtlarının tutulduğu tablo ile bağlantısını sağlar. İlaç tablosundaki MU_KEY alanı, ilacın hangi muadil gruba ait olduğu bilgisini saklar. Bu değer, muadil tablosundaki MU_KEY alanı ile eşleşerek ilacın hangi muadil grup ilacı olduğunu SELECT ifadesinde yer alan M.MU_AD alanında gösterir.

           I.ET_KEY = E.ET_KEY (+)  ifadesi, ilaç tablosunu, etken tanımlarının tutulduğu tablo ile bağlantısını sağlar. İlaç tablosundaki ET_KEY alanı, ilacın hangi etken gruba ait olduğu bilgisini saklar. Bu değer, etken tablosundaki ET_KEY alanı ile eşleşerek ilacın hangi etken grup ilacı olduğunu SELECT ifadesinde yer alan E.ET_AD alanında gösterir. etken tablosundaki EN_KEY alanı ile eşleşerek ilacın hangi endikasyon grup ilacı olduğunu SELECT ifadesinde yer alan E.EN_AD alanında gösterir.

          Aşağıda yer alan dört ayrı koşul ifadesi, kullanıcının sorgu kısmında belirlediği sorgu ifadelerini içerir.

I.BIRIM LIKE 'Tab%'  ifadesi, İlaç tablosundaki birim açıklaması Tab ile başlayan ilaçları arar. Örneğin birimi Tablet olan ilaçlar bu sorgu sonucu listede yer alırlar.

I.ET_KEY = 543  ifadesi, etken madde kodu 820 (% 10 DEXTROZ) olan ilaçları sorgular. Sorgu daha hızlı olması açısından, anahtar alanı olan 543 değeri kullanılır.

I.ITHAL = 'H' ifadesi yalnızca yerli ilaçların listelenmesini,

I.TIPI = '0' ifadesi ise, yalnızca ilaçların (sıhhi malzemelerin bu liste dışında tutulmasını) listelenmesini sağlar.

          Ayrıca, sistem yetkilisi, SQL sorgu metin alanına müdahale edebilir. Burada yer alan sorguyu değiştirerek, değiştirilmiş yapıya göre sorgulanmasını sağlayabilir. SQL sorgu metin bölümü yalnızca okunabilir metinleri içerir (kullanıcı burada yer alan metne müdahale edemez). Sistem yetkilisi olarak programı kullanan kullanıcı, SQL sorgu metin bölümünde iken CTRL ve E tuş kombinasyonu ile, bu alana müdahale edebilir. Aynı tuş kombinasyonunu kullanmak, ilgili yazıları yeniden yalnızca okunabilir hale getirir.

 

Sorgu Sonuçları

 

          Sorgu kriterlerinde kullanıcının belirlediği şartlara uygun yapılan sorgulama sonuçlarının liste olarak görüntülendiği bölümdür. Kullanıcı, kriterleri belirledikten sonra, F2 tuşuna ya da ekranın sol alt köşesindeki tuş takımından Sorgula düğmesine basar ise, sorgulama yapılır.

          Sorgu sonucu tek bir satır dönerse (belirtilen şartlara uygun tek bir satır bulunur ise), sorguya uyan kayıt kartı açılır (Örneğin ilaç kart sorgu ekranında iken, aranan şartlara uyan tek bir ilaç kartı var ise, o ilaç kartı görüntülenmek ya da güncellenmek üzere ekrana çağırılır).

           Sorgunun birden fazla satırı içermesi durumunda, kullanıcı liste üzerinde istediği kayıt üzerine gelerek farenin sol düğmesini çift tıklaması ya da ilgili kayıt üzerinde enter tuşuna basması o kaydın görüntülenmek / güncellenmek üzere ekrana getirilmesini sağlar.

           Genellikle sorgu sonuçları tek bir liste şeklinde görüntülenir (örneğin personel veya ilaç listesi).  Eğer, ilişkili kullanılan tablolar ise (Örneğin Fatura satırları, Fiş satırları vb), liste beraberinde bu liste ile bağlantılı çalışan bir detay listeye sahip olur (Üst listede Faturalar, aşağıdakinde ise, bu faturalara ait satırlar). İlişki düzeyi üçüncü bir katmanı içeriyor ise (Hasta İşlemleri - Tabela  satırları vb), ekranda üç ayrı liste görüntülenir (En yukarıda yer alan listede hastalara ait işlemler. Ortada, ilgili hastanın ilgili işlemine ait tabelalar ve en altta ise, aktif tabelaya ait ilaçlar).

           Sorgu Sonuçları, SQL Sorgu metin alanında SELECT ifadesi ile seçilmiş alanları içerir. Ancak, seçilen alanların tümü liste üzerinde gözükmeyebilir (Program default olarak seçilen tüm alanları değil, kimi alanları gösterecek  biçimde   dizayn   edilmiş   olabilir.  Kullanıcı liste üzerinde seçili alan listesinde olmak kaydı ile alan ekleyebilir. Listede yer alan alanların yerlerini değiştirebilir ya da büyültüp küçültebilir.

          Son olarak da, listede görünen alanları listeden çıkarabilir. Alan ekleme, çıkarma ve sıralama değiştirme işlemleri için fareyi listenin başlığına getirerek farenin sol düğmesine basılmalıdır.

          Liste programca öngörülmüş ya da kullanıcı tarafından düzenlenmiş bir sıralamaya sahip ise ve bu sıralama kaldırılmak isteniyor ise, Sağ düğme ile çıkan menüden Mönü’den Sıralamayı Kaldır seçeneğine tıklayarak sıralama kaldırılır.

         Yeni bir sıralama oluşturmak için, sıralama yapılacak sütunun başlığına tıklanarak, bulunulan alana göre sıralama seçilebilir.

          Sıralama işlemi normal olarak tercih edilmiş ise, küçükten büyüğe (sayılarda en küçük sayıdan, tarihlerde küçük tarihten, metin alanlarında ise, alfabe dizilimine göre ilk harften başlayarak büyüğe doğru), tersten sırala da ise tam tersi olur. Sıralama büyükten küçüğe doğru yapılır.

          Listede gözükmesi istenmeyen bir alanın listeden çıkarılması için, ilgili alan üzerinde iken mönü aktifleştirilir, gelen listeden ilgili alan adı ile yazılan Çıkar seçeneği tıklanır.

          Yeni bir alan eklemek için, alan eklenin üzerine gelindiğine açılan alan ekleme menüsü kullanılır. Bu mönüden eklenecek alanın üzerinde fare tıklanarak, tıklanan başlığın yanına ilgili alan listelenmek üzere eklenir. Eğer, eklenecek alan kalmamış ise, ilk mönüde yer alan “alan ekle” gözükmez.

          Alanların genişliklerini ayarlamak, Windows'un standart özelliklerinde olduğu gibidir. Genişliği ayarlanacak alanın başlıktaki sütun sonuna fare ile gelerek, fare imlecinin genişlik ayarlama imleci haline geldiğinde, farenin sol düğmesine basarak, ilgili sütun genişletilip  daraltılabilir.

          Bir alanın yerinin değiştirilmesi de benzer şekildedir. İlgili alan başlığında iken farenin sol düğmesine tıklanarak, taşınması istenen yöne sürüklenmesi yeterlidir.

          Kart sorgu formları, kartlara doğrudan erişmek yerine, aranan kart ya da kartların sorgulanarak erişilmesi amacıyla kullanılır. Ancak, kullanıcı diler ise, kart sorgu formlarını devre dışı bırakabilir. Bunun için, sorgu form listesinin en sağında yer alan Bu Formu Bir Daha Açma seçeneğini işaretlemesi gerekir (Ancak eczanede tabela sorgu ekranında olduğu, bazı sorgu formlarının ana listende bu seçenek aktif değildir. Tabelaya başka türlü erişmek mümkün olmadığı için bu tip formlarda bu seçenek kullanıcı müdahalesine kapatılmıştır). Ayrıca, detayları olan (birden fazla bağlantılı listeye sahip formlar) listelerde, detaylar görülmek istenmiyor ise, de-tay listenin ilgili seçeneği tıklanarak, detay listenin gözükmesi engellenir.

(26.02.2003)