SimpList
ver. 1.4
ESOGUBS Liste Üretme Modülü
Kullanıcı Dökümanı
doc.date. 15.01.2020
Hazırlayan : Erol Seke (eseke@ogu.edu.tr)
ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ
ÖĞRENCİ İŞLERİ BİLGİ SİSTEMİ
İÇİNDEKİLER
1. Liste
argümanları (giriş parametreleri)
2. Çoktan
Seçmeli Argümanları Girme
7. Doğrudan
PDF ve XLSX Üreteçleri
10. Öğrenci
Bilgileri Penceresi
1. Açık
Liste Penceresinde Verileri Yenileme
2. Liste
Penceresinde Satır Silme
4. Verileri
Hücrelere Sığmayan Satırlar
5. Menülerde
Olmayan Bir Listeyi Görüntülemek
7. Listeler
İçin PDF Dosyası Ayarları
9. Genel
Liste Bağlantıları Yapmak
10. Öğrencinin
Dersleri Penceresindeki Seçim Kutuları
SimpList Modülü ESOGUBS'te tasarımcılar/programcılar tarafından hazırlanmış liste işlemcilerini çağırmak ve çıktılarını görüntülemek üzere hazırlanmıştır. Örnek bir tarayıcı pencere bileşenleri Şekil 1.1'de gösterilmiştir.
Şekil 1.1 SimpList modülü tarayıcı pencere örneği.
Simplist modülü SimpList web sayfasından ve birkaç yardımcı pencereden oluşur. Genel görünümü Şekil 1.1'de verilen SimpList sayfasındaki öğeler şunlardır;
1. Menü
2. Kullanıcı bilgileri
3. Toolbar
4. Liste argümanları (giriş parametreleri)
5. Liste bilgisi
6. Modül tanıtım kısmı
7. Satır numarası ve satırı farklı pencerede görüntüleme bağlantısı
8. Liste üretme düğmeleri
9. Listeyi yenileme düğmesi
10. Kullanıcının yetkisini gösterir kolon (sadece liste listelerinde)
11. Seçili satırlar ile ilgili toplu işlem yapma bağlantısı
SimpList modülü ESOGUBS kullanıcı adı ve şifreleriyle kullanılabilmektedir. Bu veriler kişiye özeldir. ESOGUBS kullanıcı adı ve şifresine sahip tüm personel ve öğrencilerin bu bilgileri kimseyle paylaşmamaları oldukça önemlidir. SimpList modülü dahil tüm ESOGUBS modüllerindeki işlemler kullanıcının yetkileri dahilinde gerçekleştirilmektedir. Yetkiler doğrudan veritabanında kullanıcı adıyla kontrol edildikleri için yetkisiz kullanıcılar tarafından aşılması mümkün değildir. ESOGÜBS ekibi tüm kullanıcıların kullanıcı isimlerini ve şifrelerini kimseyle paylaşmamalarını tavsiye eder. Özellikle özel yetki gerektiren işlemleri gerçekleştirebilecek yetkiye sahip kullanıcılar yaptıkları işlemlerden sorumludurlar ve kolayca tahmin edilebilecek şifre kullanmamaları gerekmektedir. Ayrıca, tavsiye edilen genel güvenlik kurallarının da izlenmesi önemlidir. Bunlar; sisteme girerken birisinden yardım almama ve/veya izlenmeme, sisteme girmekte kullandıkları bilgisayarlarının ve mobil cihazlarının virüs koruyucularla korunması, bu cihazlarını sisteme bağlı şekildeyken başıboş bırakmamaları, tarayıcılarının ayarlarını tarayıcıyı kapatırken yerel verileri silecek şekilde yapmaları ve/veya kendilerinin silmeleri gibi önlemlerdir. ESOGUBS web modülleri kullanıcıların bilgisayarlarında çerez yaratırlar, sistemden çıkılırken de bu çerezler etkisiz hale getirilirler. Bu nedenle, modüller kullanıldıktan sonra güvenli şekilde sistemden çıkmak (Çıkış menüsü ile) da önemli bir güvenlik önlemidir.
ESOGUBS sisteminde bir liste, programcıların üretim şeklini tasarlayıp kullanıcıya sunduğu ve üzerinde sınırlı değişikliklerin yapılabileceği sıralı yada sırasız bir tablodur. Bazı listelerin hazırlanma işlemleri veritabanında değişikliklere yol açabileceği yada sadece akademik dönemin belirli zaman aralıklarında çalıştırılması gerektiği için bu tür listelere erişim yetkilere bağlıdır. Benzeri şekilde, bazı listeler kişilerin özel bilgilerini de içerebileceği için bu tür listeler de yetkiler dahilinde üretilebilir. Ancak ESOGUBS'teki çoğu liste neredeyse tüm kullanıcılara açıktır. Tüm kullanıcılara açık listeler, üniversitedeki akademik birimler, birimlerin personeli, aktif öğrencileri, açık dersleri, derslere kayıtlı öğrenciler ve birimin derslikleri gibi verilerin kişiye özel bilgiler taşımayanlarıdır. Yetkilere bağlı listeler isim ve açıklama olarak liste-listelerinde görüntülenseler de kullanıcı tarafından çalıştırılıp üretilmeleri kullanıcının yetkilerine bağlıdır. Yani, kullanıcılar ekrandaki listede yada menülerde özel yetki isteyen bir işlem görseler de çalıştıramayabilirler.
Listeler Şekil 2.1'de gösterildiği gibi giriş parametreleri ile (argümanlar) üretilirler ve sonuçları bir tabloda görüntülenir.
Şekil 2.1 Liste üretme işlemi.
SimpList modülünün çalıştırıp görüntülediği listeler 2 çeşittir. Modülün özel davrandığı çeşit ise Liste-Listeleridir. Bunlar kullanıcının çalıştırıp (yetkilere bağlı) sonucunu görüntülediği liste işlemlerinin listesidir (yani alt-alta dizilmiş birçok liste ismi.) Bu çeşit listeler görüntülenirken, kullanıcı bir listeyi yani bir satırı seçtiğinde (satırın solundaki seçme kutusu ile) listeyi çalıştırmak için gerekli parametreler tablonun üst kısmında görüntülenir (Şekil 2.2) ve kullanıcının bu parametreleri girip Liste düğmesine tıklaması beklenir. Üretilen liste yeni bir pencerede görüntülenir. Bu noktadan sonra yeni üretilen liste herhangi bir liste gibidir ve parametreler değiştirilerek yeniden çalıştırılabilir. Liste listesinde 1'den çok satır seçili ise en üstteki seçili liste için argümanlar gösterilir. Liste listelerinin davranışı argüman seçimleri dışında diğer listelerle aynıdır.
Şekil 2.2 Liste listelerinde seçili liste için gerekli
argümanların seçilmesi/girilmesi.
Tüm listeler ardışıl satırlar farklı olacak şekilde görüntülenir. Liste listeleri beyaz-pembe, diğer listeler beyaz-açık turkuaz renklerini kullanır. Ayrıca liste listelerinin en sağındaki kolon kullanıcının o satırdaki liste için yetkili (uygun parametreler şartı ile) olup olmadığını gösterir. Listeye yetkili olmak o listeyi her parametre ile çalıştırabilmek değildir. Örneğin, Yetkiler bölümünde göreceğimiz gibi, eğer liste birim parametresi alıyorsa kullanıcı ancak yetkili olduğu birimlerde listeyi çalıştırabilir.
Görüntülenen listenin argümanları değiştirilerek yeniden
üretilebilir. Örneğin ekranda 301 no'lu liste (akademik takvim) MMF ve 2016Güz için
görüntüleniyor olsun. Biz ise 2016Bahar için akademik takvimi görüntülemek
istiyoruz. Bu durumda Yıl ve Dönem giriş kutuları uygun şekilde değiştirilir ve
düğmesi tıklanır. Tabi ki burada da yetkiler
kontrol edilir. Örneğin, bir akademik birimde öğrencilerin özlük bilgilerini
üretmeye yetkili bir kullanıcı bu liste ekrandayken seçili birimi değiştirip
farklı bir birimdeki öğrencilerin özlük bilgilerini görüntülemek isteyebilir.
Bu durumda, eğer kullanıcı diğer birimde bu yetkiye sahip değilse bunu belirten
bir mesaj ile karşılaşır.
düğmesinin sağındaki
ve
düğmeleri, listeyi ekranda üretmek yerine
doğrudan dosyaya dönüştürmek için kullanılır. Bu düğmeler tıklandığında
görüntülenen listede bir değişiklik olmaz. Ancak yeni liste (örneğimizde akademik
takvim idi) görüntülenen argümanlarla üretilir ve dosya üretecine oradan da
kullanıcının tarayıcısına gönderilir.
Listenin görüntülenmeksizin doğrudan dosyaya yazılması
işleminin avantajı çok büyük listelerin görüntülenmesi zamanından tasarruf
edilmesidir. Örneğin 5000 satırlık liste büyük liste sayılır. Liste küçük ise
önce düğmesine daha sonra Toolbar'daki dosya
düğmelerine tıklanmasıyla üretilen dosyalar ile listenin doğrudan dosyaya
gönderilmesiyle üretilen dosyalar arasında fark yoktur. Büyük listelerde
doğrudan dosyaya gönderme tercih edilmelidir. Liste üzerinde değişiklik (satır
çıkarma, sıralama) yapılacak ise önce görüntülenmelidir. Yada doğrudan XLSX dosyası
üretilip XLSX dosyası üzerinde değişiklikler yapılabilir. (not: listelerin ilk
4000 satırı görüntülenir, 1500'den az ise sıralanabilir)
Ekranda görüntülenen listeyi PDF/XLSX işlemcisine göndermeden önce satır düzenlemeleri yapılabileceği gibi bazı kolonlar da listeden çıkarılabilir (varsayılan: tüm kolonları gönder). Kolon başlıklarındaki seçim kutuları bu işlem içindir.
SimpList modülü bazı tiplerdeki argümanların değerlerinin çoktan seçme yoluyla girilmesi için gerekli altyapıya sahiptir.
Sicil No seçme açılır pencereciği:
Giriş argümanları içinde SCN tipinde işaretlenmiş argüman olan listeler için Sicil No el ile klavyeden girilebildiği gibi açılır pencerecikten arama yoluyla seçilip girilebilir. Örneğin 302-Danışmanı olunan öğrenciler listesinin SCN tipli argümanı vardır. Bu liste görüntülenirken yada Liste Listesinde bu liste seçildiğinde argümanlar kısmındaki Sicil No kutusu tıklandığında Şekil 2.3'te örneği gösterilen personel arama pencereciği açılır.
Şekil 2.3 SCN (Sicil No.) argümanının arama açılır
pencereciği örneği.
Bu pencerecikte yeterli miktarda arama parametresi girildikten sonra Ara düğmesi tıklanır. Eğer belirtilen kriterlere uygun personel bulunursa listelenir ve seçilmesine izin verilir. Eğer arama parametreleri yeterli değilse yada kriterlere uygun personel bulunmadıysa aynı pencerenin içinde bir hata mesajı ve arama kriterleri üzerine bir açıklama verilir.
Birim No seçme açılır pencereciği:
BRM tipli liste argümanları için açılır. SCN tipli argümanlar gibi BRM argümanlarında da birim ID'si klavyeden girilebileceği gibi açılır pencerecikten de seçilebilir. Açılır birim seçme pencereciğinin bir örneği Şekil 2.4'de verilmiştir.
Şekil 2.4 BRM (Birim No.) argümanı için açılır
pencerecik.
Öğrenci No seçme açılır pencereciği:
ONO (öğrenci no.) arama penceresi SCN arama penceresine benzer. ONO olarak blirlenmiş argümanlar için öğrenci no klavyeden girilebileceği gibi, arama penceresinden de aranıp seçilebilir. Arama parametreleri içinde % işareti "%'nin yerine herşeyi kabul et" anlamında kullanılır. Şekil 2.5'teki örnekte Soyad kutusunda girilen "demir%" metni "demir" ile başlayan soyadlar demektir. Parametreler yetersiz ise yada arama kriterlerine uygun öğrenci bulunamazsa bunu belirten bir hata mesajı ve kullanım açıklaması gösterilir.
Şekil 2.5 ONO (Öğrenci No.) argümanı için açılır arama
pencereciği.
IDTx ID-Tanım seçme açılır pencerecikleri:
ESOGUBS sisteminde çok sayıda ID-Tanım eşleşmeleri kullanılmaktadır. ID-Tanım, metin olarak görüntülenen ama veritabanında metnin ID'sini belirten sayı (yada tekil metin) olarak saklanan veri tipleridir. Liste argümanlarında gerektikçe (kullanıcının serbest metin sayı girmesi sakıncalı olduğunda) bu tür açılır pencereler sisteme ilave edilmektedir. Bir örneği Şekil 2.6'te öğrencinin Durum alanı için gösterilmektedir.
Şekil 2.6 IDTx (ID-Tanım) argümanı için açılır
pencerecik örneği.
DT Tarih seçme açılır pencereciği:
Bu argümanlar için tarih gg.aa.yyyy formatında klavyeden girilebileceği gibi kutu tıklandığında açılan tarih seçme pencereciğinden de seçilebilir.
Şekil 2.7 DT (Tarih) argümanı için açılır
pencerecik.
DKOD Ders Kodu seçme açılır pencereciği:
SCN ve ONO arama pencereciklerine benzer, dersleri bulmak için kullanılır. ADN (açılan ders no.) argüman tipleri için de bu arama pencereciği açılır, ancak seçim sonucunda argüman olarak dersin kodu değil veritabanında kullanılan açılan ders numarası alınır ve kullanılır.
Şekil 2.8 DKOD (Ders Kodu) argümanı için
açılır pencerecik.
Açılan pencereciği olmayan argüman türleri de vardır. Bunlar Yıl, Dönem, Evet/Hayır ve serbest metin girilebilen YL, DNM, CHK ve NL argüman tipleridir. YL türü 4 haneli olarak 1970-2050 arasında klavyeden yıl girmek için kullanılır. DNM ise Güz, Bahar ve Yaz dönemlerinden birini seçmek için kutuya tıklanarak seçilir. CHK türü de tıklamayla Evet yada Hayır seçeneklerinden birine izin verir. NL ise sadece klavyeden girilen maksimum 200 karakter uzunluktaki argümanlar içindir.
Bazı listelerin kolon sayısı oldukça fazla olduğundan, kullanıcılar bazı kolonları gizleme ihtiyacı hissedebilir. ColFilters formu bu işlem içindir. Herhangi bir SimpList listesi görüntüleniyorken ColFilters formu açıldığında listenin kolonları ve kolon gizleme seçenekleri görüntülenir. Şekil 2.9'te görüldüğü gibi ekrandaki ve dosyaya aktarmadaki (ileriki bölümlerde dosyaya aktarma irdelenmektedir) kolon gizleme seçenekleri farklı olabilir. Bu seçenekler kullanıcıya ve listeye özel olarak veritabanında saklanırlar ve bu liste görüntülendiğinde kullanılırlar.
Şekil 2.9 Kolon gizleme seçenekleri penceresi örneği.
TODO : kullanıcının rollerine göre varsayılan kolon gizleme seçenekleri eklenecek.
Üretilen listenin herbir seçili satırı için bir işlem yapılacak ise bu yöntem kullanılabilir. Örneğin, seçili listedeki birçok öğrencinin akademik danışmanı değiştirilecek ise bu yöntemi kullanınız. Eğer az sayıda öğrencinin danışmanı değiştirilecek ise her öğrencinin bilgi penceresi açılarak danışmanlarını değiştirmek daha uygun ve kontrollü olacaktır.
Görüntülenen liste satırlarında Toplu İşlem (hepsinde aynı işlem) yapmak için listenin en solundaki seçim kutularında işlem yapılmak istenen satırları seçiniz. Toplu işlem paneli otomatik olarak açılacaktır. İşlem seçildiğinde (şekildeki örnekte “Danışman değiştir (anadal)”) bu işlem için gerekli parametre kutular yan tarafta belirecektir. Parametrelerden bir yada birkaçı otomatik olarak işlem yapılan satırdan alınabilir. Örneğin danışman değiştirmek için 2 adet parametreye ihtiyaç vardır; Öğrenci No ve Yeni danışman sicil-no. Bu bilgilerin hangi kolonlardan alınacağı ilgili kutulara girilmelidir. Örnekteki #ONO, ONO olarak belirtilen kolondan al demektir. Bunun yerine “Liste Bağlantıları” bölümlerinde anlatıldığı gibi değişkenler ve kolon numaraları da kullanılabilir. Örneğin 3 nolu kolondan almak için #3 kullanılabilir. Otomatik alınmayacak parametreler için (örneğin yeni danışmanın sicil-no’su) ilgili kutucuğa bu değeri giriniz. Çalıştır düğmesi tıklandığında seçili her satır için işlem tekrarlanarak sonucu en sağda oluşturulacak bir kolona yazılır. Bu kolon işlemin tamamlandığını belirtmek üzere çoğu zaman yeşil bir tik işareti (check) olacaktır. Eğer bir hata oluşursa (örn: yetki yetersiz) yine aynı kolonda gösterilir.
Şekil 2.10 Toplu işlem örneği (danışman
değiştirme).
SimpList menüleri veritabanına bağlıdır. Yani ihtiyaca göre, çok kullanılan listelere erişim doğrudan menülere bağlanabilir. Kullanıcı kendi menüsünü Menü Ayarları penceresinden tanımlayabilir. Bu pencereye ise, eğer değişiklik yapılmadıysa, Ayarlar->Menü Ayarları menüsünden erişilebilir. Ancak bu ayarlara erişim kullanıcının rolü ve yetkilerine bağlıdır
SimpList Penceresinde Ayarlar->Menü Ayarları menüsü seçildiğinde, eğer kullanıcının yetkisi yeterli ise, Şekil 3.1'de gösterilen pencere görüntülenir. Kullanıcının menüsü bir ağaç halinde gösterilmekte ve değişiklik imkanı verilmektedir. Kullanıcılar bu dökümandaki ilgili açıklamaları okuyup anlamadan kendi menülerinin ayarlarıyla oynamamalıdırlar. Kullanıcı eğer yanlışlıkla menülerini karmaşık hale getirir ve düzeltemez ise, menü ayarları penceresindeki Varsayılan düğmesini tıklayarak kendi rolü için tasarlanmış olan Varsayılan menü ayarlarına geri dönebilir. Kullanıcının bu imkanı da yok etmesini engellemek için Menü Ayarlama menüsünün kendisi silinemez yapılmıştır, ama yeri değiştirilebilir.
Şekil 3.1 Menü hazırlama penceresi.
Menü hazırlama penceresi başlangıçta karmaşık görünebilir. Ancak, SimpList modülünün çalışma şekline alışınca ve birkaç deneme yapınca oldukça anlaşılır olduğu görülecektir.
Bu pencerenin öğeleri ve işlevleri şunlardır;
Kullanıcı : Açılışta kullanıcının kendi kullanıcı id'si ile dolu olan bu kutuya farklı kullanıcıların (özellikle DEFAULT - varsayılan) id'lerini yazıp menülerini yükleyebilirsiniz. Daha sonra kendi adınıza kaydedebilirsiniz. Eğer id'si verilen kullanıcının adına kayıtlı menü yok ise kendi kullanıcı id'nize atanmış rollerin sırasıyla en yüksek seviyelisininkinden başlayarak DEFAULT menüler yüklenmeye çalışılır. Aslında sizin kendi menünüz yok ise zaten DEFAULT menülerden birisini kullanıyorsunuzdur. Menü Yükle düğmesinin yanındaki mesajda hangi menünün yüklendiğini görebilirsiniz.
Varsayılan, Vazgeç ve Kaydet düğmeleri : Bu düğmeler sırasıyla DEFAULT menüyü yükleme, değişikliklerden vazgeçip başlangıçtaki hale dönme ve görüntülenen menüyü kendi adınıza kaydetme amacıyla kullanılır. Bunların sağında görülen metin kutusu ve Kullanıcıya Kaydet düğmesi ise sadece sistem yöneticileri tarafından görülür ve kullanılır.
Ayrıca SimpList pencerelerinde hangi menüyü kullanacağınızı Options (seçenekler) penceresinden seçebilirsiniz. Seçeneklerden birisi kendi id'nize kayıtlı menü, diğerleri ise rollerinizin DEFAULT menüleridir.
Menü Ağacı : Burada kullanıcının menü elemanları görüntülenir ve elemanlar seçildiğinde ilgili işlevler üstteki metin kutularında görüntülenir. Şekilde, Öğrencilerim elemanı seçilmiş ve detayları metin kutularında gösterilmiştir.
Menü : Menü elemanı için görüntülenen metin. Kullanıcı istediği gibi değiştirebilir.
ID : Menü elemanı için tekil bir isim. Açıklayıcı olmasında fayda vardır. Ancak sadece İngilizce karakterler ve rakamlar kullanılabilir. İlk harfi p ise bu eleman daha sonra silinemez. O nedenle kendi eklediğiniz menü elemanlarının ID'lerinin p ile başlamamasında yarar olabilir. Yeni bir menü elemanı yaratıldığında (soldaki + ve += düğmeleriyle) menüye otomatik bir ID verilir ve bu isim tekildir. Değiştirilmesi gerekmez.
Yeni Pencere Aç : Bu seçici seçili ise menü tarafından tanımlı işlev yeni bir pencere yada sekme (tarayıcıya bağlı) açılarak gerçekleştirilir. Açılacak pencere yada sekmede gösterilecek form bunun hemen yanındaki açılır listeden seçilir. Bu listedeki seçenekler Tablo I'de gösterilmiştir.
Tablo
I. SimpList'te menü ile erişilebilecek form, servis ve ajanlar. |
||
Form Adı |
Açıklama |
Parametreler |
SimpList |
Liste görüntüleme penceresi |
ListId, ListParameters |
ColFilters |
Kolon gizleme ayarları penceresi |
ListId |
MenuDesign |
Menü tasarlama |
|
PDFSetup |
PDF dosyası üretme seçenekleri |
ListId |
YetkiAyarları |
Kullanıcıların yetkilerini ayarlama |
QueriedUser |
ActionItems |
Liste hücresi tıklama link ayarları |
ListId |
GenActions |
Genel hücre tıklama link ayarları |
|
PDFGenerator |
PDF dosyası üretme ajanı (penceresi yok) |
ListId, ListParameters |
XLSGenerator |
XLSX dosyası üretme ajanı (penceresi yok) |
ListId, ListParameters |
BelgeGenerator |
Belge üretme ajanı (penceresi yok) |
ONO, Document, Version |
XLSimport |
XLSX dosyalarından aktarma penceresi |
XLSfilename |
Archive |
Belge arşivine erişim penceresi |
BelgeKontrol |
Downloadables |
İndirilebilir şablon dosyaları |
|
StudentInfo |
Öğrenci kimlik/akademik bilgileri |
ONO |
OgrDersler |
Öğrencinin dersleri |
ONO |
DocxFiller |
Döküman doldurma servisi |
|
PasswordCh |
Şifre değiştirme penceresi |
|
External_Link |
Bir web sayfasına bağlantı (penceresi yok) |
Link |
Options |
SimpList kullanıcı seçenekleri |
|
Her form kendi içinde tanımlı işlevleri yerine getireceği için aşağıda belirtilen parametreler bu işleve uygun olmalıdır. Form seçildiğinde formun kullandığı parametre isimleri otomatik gelir. Parametre isimleri de değerleri gibi değiştirilebilir ama bu bu özellik sistem geliştiricileri içindir. Bir parametre değeri verilmezse çoğunlukla form açılır ve parametrelerin form üzerinde girilmesi beklenir. Formların parametreler'i form açılmadan alabilme özelliği, bir listede hücrelere tıklayarak ilgili formları açabilmek için önemlidir.
Parametre - Değer çiftleri : Açılan formlara gönderilecek parametreler ve değerleri bu metin kutularıyla tanımlanır. Aşağıda, kullanılabilecek formlar için geçerli parametre/değer çiftleri sıralanmıştır. Formlar için daha detaylı açıklamalar ise ileriki bölümlerde ele alınmıştır.
SimpList formu SimpList modülünde en çok kullanılacak form olup sistemde tanımlı listeleri üretmek için kullanılır. 2 adet parametre almaktadır. Parametre isimleri ve değerleri şunlardır;
ListId : Değer olarak üretilecek listenin numarası yazılır. Örneğin 302. Liste numarası olarak değişken isimleri de kullanılabilir. Formda anlamlı değişken isimleri ise;
$lastlistid : Son üretilen listenin ID'si.
£currentlistid : Görüntülenen listenin ID'si.
Yani liste numarası yerine, görüntülenen listenin numarasını otomatik almak için £currentlistid kullanılabilir. Bu değişken daha çok SimpList formu için değil de açık listeye göre işlem yapan formlarda kullanılır. Örneğin listenin PDF'e çevrilme ayarları (PDFSetup).
ListParameters : Liste üreteçlerinin girdi argümanları olarak aldığı değerler birbirlerinden | karakteri ile ayrılmış olarak buraya ve uygun sırada yazılır. Argümanların türleri, sırası ve olası değerlerini anlamak için Tüm Listeler menüsünü kullanarak tüm listeleri görüntüleyiniz. Menüye bağlamak istediğiniz listeyi sanki çalıştıracakmış gibi satırın en solundaki seçim kutusu ile seçiniz. Listenin üst kısmında argümanları girmeniz için metin kutuları belirir. Bu kutulara yazmanız gereken değerleri menü tanımlarken ListParameters parametresinin değeri olarak yazınız. Örneğin 302 numaralı "Danışmanı olunan öğrenciler" listesi danışmanın sicil-no'sunu argüman olarak almaktadır. Bu durumda ListParameters parametresinin değeri olarak bir sicil no (örneğin kendi sicil-no'nuz) yazınız. Daha genel olması için;
$userid : Kullanıcının sicil-no'su
değişkeni de yazılabilir. Diğer listelerde de parametre değeri olarak kullanılabilecek değişkenler şunlardır;
$currentyil : Geçerli akademik yıl. 2016-2017 akademik yılı için tarih ne olursa olsun 2017 değerini verir.
$currentdonem yada $currentdnm : Geçerli akademik dönem. (1: güz, 2: bahar, 3: yaz değerlerinden geçerli olanı otomatik verir)
$today, $yesterday, $lastweek, $lastmonth, $lastyear : Bu değişkenler belirtilen günün 00:00:00 zamanını belirtirler. Örneğin bugün 15.4.2017 olsun. $yesterday "14.4.2017 00:00:00" zamanını belirtir. Benzeri şekilde $lastmonth.ise "14.3.2017 00:00:00" zamanını gösterir.
$userbirim yada $userbrm : kullanıcının akademik birim numarasını verir.
$lastlistid : son üretilen listenin ID'si.
$lastlistparameters : son üretilen listenin argümanları.
$arg0,arg1,...,arg4 : son üretilen listenin ayrı ayrı argümanları.
TODO : ihtiyaç oldukça değişkenler eklenecektir.
PDFSetup formu, kullanıcının PDF dosyası üretmek için kullanabileceği seçenekleri gösterir ve kullanıcıya ve listeye özel değiştirmesine izin verir. Bu seçenekler kullanıcı için veri tabanında saklanır. Parametre olarak sadece yukarıda bahsedilen ListId alır ve değeri de PDF formatı ayarlanacak olan liste no'sudur. Tabi ki £currentlistid değişkeni de verilebilir. Böylece görüntülenen liste için PDF seçenekleri görüntülenir. Bu form açıldıktan sonra formun üst bölümündeki liste no metin kutusundan farklı bir liste no da girilebilir.
PDFGenerator formu aslında bir form görüntülemez. Numarası ve parametreleri verilen listeyi, liste için daha önceden PDFSetup formu ile belirlenen seçenekler ile, PDF üretmekte kullanır ve PDF dosyası doğrudan kullanıcıda yazdırmaya hazır olarak görüntülenir. Yani bu form ListId ve ListParameters parametreleri alır. Örneğin, bir menü elemanında form olarak PDFGenerator seçilmiş olsun (yeni pencere seçeneği burada dikkate alınmaz). ListId ve ListParameters değerleri ise sırasıyla 310 ve 151227634|A|2017 G olsun. Bu menü elemanı tıklandığında 310 nolu liste (derskodu-şube-dönem bazında dersi alanlar listesi) 151227634|A|2017 G argümanlarıyla çalıştırılır ve PDF dosyası üretilip kullanıcının tarayıcısına gönderilir.
XLSGenerator formu, PDFGenerator ile aynıdır, ancak *.XLSX dosyası üretir (Excel spreadsheet xml)
BelgeGenerator formu, Argüman olarak ÖğrenciNo (ONO) yada SicilNo (SCN), Document (şablon ismi) ve Version (şablon sürümü) alır ve verilen şablonu kullanarak belgeyi üretir. Aslında menüden çağırılmak için değil, liste kolonuna tıklama ile erişilmesi daha anlamlıdır. Çünkü argümanları sabit olarak girmek sadece birkaç belgede $ ile belirtilen genel değişkenler verilmek şartıyla anlamlıdır.
DocxFiller formu, Kullanıcının bilgisayarındaki docx (Ms-Word xml) dosyalarını BelgeGenerator aracılığıyla doldurmak üzere tasarlanmış bir penceredir. Argümanı yoktur. Argümanlar pencere üzerinde girilir. Dosya ise sürükle-bırak yada tıkla-seç yöntemiyle seçilir.
ActionItems formu, SimpList ile görüntülenen listeler üzerinde bazı kolonlar tıklandığında yeni bir işlem yapılmasını sağlamak için gerekli ayarların girilmesi içindir. Örneğin öğrenci no kolonundan bir öğrenciye tıklandığında öğrencinin bilgilerinin görüntülenmesi gibi.
Bu form da PDFSetup formu gibi sadece ListId parametresi alır ve açıldıktan sonra liste no'sunun değiştirilmesine izin verir. Bu formun kullanımı daha detaylı bir şekilde "Liste Bağlantıları" bölümünde yer almaktadır.
GenActions formu, SimpList ile görüntülenen listelerin tümü üzerinde bazı özel kolonlar tıklandığında yeni bir işlem yapılmasını sağlamak için gerekli ayarların girilmesi içindir. Bu işlemler sadece kolon tipi belirli kolonlar içindir. Şu anda sadece ONO, BRM, USR, SCN, PK, STA, LST ve UNV tipli kolonlar için tıklama linki konulabilir. Bunlar sırasıyla Öğrenci no, Birim no, Kullanıcı id, Sicil no, Personel Kimlik no, Öğrenci akademik durum, Liste no ve Üniversite id veritiplerini tanımlayan kısa isimlerdir. Bunların çözümlenmekte olup olmadığına bakılmaksızın link konulabilir. Örneğin bazı listelerde öğrenci no kolonu varsa ve ONO tipli olarak tanımlanmış ise, bu kolondan bir hücreye tıklandığında öğrencinin bilgilerinin görüntülenmesi istenebilir. Benzeri şekilde, bazı listelerde BRM tipli tanımlanmış kolonlardan bir hücreye tıklandığında Birimin akademik takviminin görüntülenmesi istenebilir. Bu form ile tanımlanan tipe özel tıklama hareketleri tüm listeler için geçerlidir. ActionItems formu ise listeye özeldir. Aynı kolon için hem tipe özel hem de liste kolonuna özel tıklama linki tanımlanmışsa listeye özel link kullanılır.
Bu form da PDFSetup formu gibi sadece ListId parametresi alır ve açıldıktan sonra liste no'sunun değiştirilmesine izin verir.
YetkiAyarlari formu kullanıcılara yetki vermek içindir. Sadece QueriedUser parametresi alır, değeri de yetkileri ayarlanacak kullanıcının sicil no'su olmalıdır. Burada da $userid kullanılabilir ancak kullanıcılar kendi yetkilerini değiştiremeyeceğinden sadece pencereyi açmak için anlamlıdır. Pencere açıldıktan sonra yetkisi ayarlanacak kullanıcı sicil no değiştirilebilir. Daha anlamlı bir kullanım ise, sicil-no içeren bir personel listesinde sicil-no'yu referans alan bir tıklama tanımı yapılmasıdır (ActionItems "Liste Bağlantıları" ile). Böylece bu aktif kolon tıklandığında satırdaki sicil-no alınarak YetkiAyarlari formu açılır.
XLSImport formu XLSX dosyalarının (Excel Workbook) veritabanına aktarılması ve ardından uygun işlevlerin yerine getirilmesi içindir. Bu form bir parametre almaz.
StudentInfo formu ÖğrenciNo (ONO) argümanı alır ve öğrencinin kimlik/akademik verilerini görüntüler. Bu formun doğrudan menüye eklenmesi pek anlamlı değildir, liste kolonu tıklama ayarlarında kullanılmalıdır. Ancak, ONO parametresi verilmeden menüye eklenirse, tıklandığında pencere boş olarak açılır ve bu pencere içindeki öğrenci arama/seçme yöntemleri kullanılabilir.
OgrDersler
formu StudentInfo formu ile benzerdir ancak öğrencinin derslerini
görüntüler.
MenuDesign formu kullanıcının kendisine özel menü tasarlaması içindir. Bu form bir parametre almaz.
Parametre-Değer çiftlerinde yapılan değişiklikler görüntülenen menü ağacına "menüye aktar" düğmesi tıklandığında aktarılır ve pencerenin en altındaki önizlemede görülür.
Menu Ağacı Ayarlama Düğmeleri :
Bu düğmeler menü ağacının solunda yer alırlar. İşlevleri yukarıdan aşağıya sırayla;
: Seçili eleman ile aynı seviyede yeni eleman
ekler
: Seçili menünün altına (alt seviye) yeni
eleman ekler
: Seçili menü elemanını ve alt elemanlarını
siler
: Seçili elemanı yukarıya kaydırır (alt
elemanları varsa onlarla beraber)
: Seçili elemanı aşağıya kaydırır (alt
elemanları varsa onlarla beraber)
: Seçili elemanı üst seviyeye çıkarır (en üst
seviyede değilse)
: Seçili elemanı bir üstteki elemanın alt
elemanı yapar (en alt seviyede değilse)
Kullanıcıların kendileri menü tasarlamasa dahi SimpList modülünde varsayılan bir menü ile karşılaşırlar. Daha önce bahsedildiği gibi bazı menü elemanları silinemez. Bunlar ID'si p ile başlayan (protected) menü elemanlarıdır. Yerleri ve görüntülenen metin değiştirilse de silinmezler. Kullanıcıların yanlışlıkla bazı önemli menü işlevlerini yok etmelerini engellemek için bu şekilde tasarlanmışlardır. Örneğin hiçbir kullanıcının Çıkış menü elemanını silmesi istenmez.
Kullanıcının kendine özel menüsünde yaptığı değişiklikler Kaydet düğmesi ile saklanır. Menü değişikliği yapılmadan (ve kaydedilmeden) önce açılmış menülü pencereler varsa bunların değişikliği algılaması için tazelenmesi gerekir.
Kullanıcı kendi yaptığı değişikliklerden vazgeçip Varsayılan düğmesi ile varsayılan menüyü yükleyebilir ve kaydedebilirler. Her kullanıcının varsayılan menüsü, kendisine atanan rol için tasarlanan menüdür. Eğer kullanıcının birden çok rolü varsa bunlardan en öncelikli olanın varsayılan menüsü kullanılır. Ancak kullanıcı kendisi için birden çok menü kaydedip aralarından seçemez.
External_Link formu SimpList (akaliste) sitesi içinde/dışında bir web-bağlantısı eklenmesini sağlar. Bu şekilde eklenen bir menü seçildiğinde yeni bir tarayıcı penceresi açılır ve belirtilen bağlantıya gidilir.
Araç Çubuğundaki resimli düğmeler ekranda görüntülenen listeyle ilgili dosya üretme ve satır silme gibi işlemler içindir. Silme işlemleri sadece tarayıcının görüntülediği tablo üzerindedir, asıl verilerde bir değişiklik yapılmaz. PDF yada XLSX dosyası üretileceği zaman görüntülenen liste ile ilgili kolon bilgileri anlık olarak veritabanından okunur. Üretilecek dosya ile ilgili ayarlar ve bunu yapmak için kullanılan arayüz ilerideki bölümlerde açıklanmaktadır.
: Görüntülenen listeyi verilen parametrelerle
yeniden üret ve aynı sayfada göster (listeyi yenile)
: Görüntülenen listeyi PDF (portable document
file) dosyası olarak üret ve kullanıcının tarayıcısına gönder
: Görüntülenen listeyi XLSX (MS-Excel
spreadsheet file) dosyası olarak üret ve kullanıcının tarayıcısına gönder.
: Görüntülenen listedeki seçili satırları sil.
: Görüntülenen listede seçili satırlar
dışındaki satırları sil.
Satır silme işlemleri tamamen tarayıcı tarafında yapılır. Veri tabanında birşey silinmez. Silme işlemleri, bazı satırları çıkarıp listeyi isteğe uygun hale getirdikten (örneğin sıraladıktan) sonra kalanları dosya üretmekte kullanmak için yapılırlar. Silme işleminin geri alması (undo) yoktur. Ancak Liste düğmesi tıklanarak liste tazelenebilir (ilk haline dönülür).
Satır Seçme
Bir satırı seçmek için soldan ikinci kolonda yer alan check-box tıklanır.
Blok Seçme
Bir satır bloğunu (çoklu satır) seçmek için başlangıç satırı seçilir ve ardından Shift tuşuna basılı iken bitiş satırı seçilir. Eğer ekrandaki satırlar arama (ara metni) ile oluşturulmuş ise sadece görünenler seçilir. Başlangıç ve bitiş arasında olduğu halde süzme sonucu görüntülenmeyen satırlar seçilmez. Örnek : arama metin kutusuna "ders" yazılırsa içinde sadece "ders" metni geçen satırlar görüntülenir. Bunlar içinden blok seçilir ve silinirse sadece görüntülenenler silinir. Arama metni silindiğinde diğer satırlar da görüntülenir.
Toplu İşlem
Listeden bir yada daha fazla satır seçildiğinde Toplu İşlem seçenekleri aktif olur ve görüntülenir. Toplu işlem seçenekleri bir işlem seçme liste kutusu ve işlemin gerektirdiği parametrelerin girilmesini sağlayacak birkaç kutucuktan oluşur (Şekil 4.1).
Şekil 4.1 Toplu işlem seçenekleri.
Örnek Toplu İşlem :
Danışman Değiştirme (öğrenci numarasının bulunduğu listelerde) tanımlanmıştır.
Bir öğrenci listesinde bir yada daha çok öğrenci seçildiğinde Danışman
Değiştirme toplu işlemi seçilebilir. Bu seçildiğinde ise öğrenci numarasının ve
yeni danışmanın girileceği kutucuklar belirir. Başlangıçta öğrenci numarası
listeden otomatik alınacak şekilde ayarlanmıştır, ancak istenirse
değiştirilebilir (bu durumda toplu işlemin anlamı kalmaz). Danışman kutusu
tıklandığında ise personel arama/seçme listesi görüntülenir. Danışman
seçildikten sonra Çalıştır düğmesi tıklandığında listenin en sağında bir kolon
belirir. Bu kolonda başlangıçta saat figürü gösterilmektedir. Satırlardaki danışman
değişikliği işlemleri gerçekleştirildikçe bu figür yeşil bir tamam (
check)
işaretine dönüşür. Aslında işlemler oldukça hızlı gerçekleştiğinden bu
değişiklikler sadece uzun listelerde çokça toplu işlem yapıldığında gözlenebilir.
İşlem yapılamazsa (yetki yetersizliği, hata vb) kolonda bu durum ile ilgili bir
mesaj görüntülenir.
Listelerdeki kolonlar ve/veya satırlar aktif link yapılabilir. Yani bir hücre tıklandığında yeni bir liste üretecek şekilde programlanabilir. Böyle bir liste görüntüleniyor ise, farenin üzerinde durduğu hücrenin aktif olduğu arka plan renginin değiştirilmesiyle belirtilir. Ayrıca aktif hücre yada satır üzerindeyken bunu belirten kısa bir açıklama görüntülenir. Örneğin bir öğrenci listesinde öğrenci numarası kolonu, tıklandığında öğrencinin derslerini görüntüleyecek biçimde programlanmış olabilir. Fare bu kolon üzerindeyken küçük bir açılır pencerede "öğrencinin derslerini göster" mesajı görüntülenebilir. Fare işaretçisi parmak şekline dönüşür ve hücrenin arkaplan rengi değişir. Hücre tıklandığında tıklanan hücrenin belirttiği öğrencinin derslerini görüntülemek üzere yeni bir pencere açılır ve dersler görüntülenir.
Kullanıcılar liste bağlantılarını " Bağlantılar -> Listeye Özel Bağlantılar" (ActionItems) formu ile yada tüm listeler için "Bağlantılar -> Genel Bağlantılar" (GenActions) penceresi ile değiştirebilirler. Bir örneği 360 no'lu liste için Şekil 5.1'de gösterilmektedir. 360 no'lu liste 6 kolondan oluşmaktadır. Bunlardan Ders Kodu ve Ders Adı kolonları aktiflenmiştir, yani o kolonlardan bir hücreye tıklandığında belirtilen işlemler yapılacaktır. Örneğe göre bu işlemler;
Ders Kodu tıklandığında : 302 no'lu listeyi aynı pencerede aç
Ders Adı tıklandığında : 312 no'lu listeyi farklı bir pencere/sekme açarak orada çalıştır
işlemleridir ve liste argümanları da Değer 2 kolonunda gösterildiği gibidir.
$userid değişkenini menü tasarımı konusundan hatırlıyoruz. #BRM ise tıklanan hücrenin bulunduğu satırdaki birim numarasıdır. Tabi ki listede birim numarası kolonu olmalıdır, aksi halde işlev çalışmaz. Eğer aynı satırda birden çok birim numarası varsa soldan ilk birim numarası kullanılır.
Şekil 5.1 Liste kolonlarını aktif yapma penceresi
örneği.
Argümanlar için kodlanabilecek diğer değişkenler şunlardır;
# : tıklanan, yani bu bağlantının bulunduğu hücredeki değeri al. Çözümlenmiş bir hücre ise çözümlenmeden önceki değerini al. Örneğin 15211 değeri BİLGİSAYAR MÜHENDİSLİĞİ olarak çözümlenmektedir. Bu durumda # karakteri 15211 değerini işaret etmektedir.
#n : (örnek #1, #5) Tıklanan hücrenin bulunduğu satırdaki n'inci kolondaki çözümlenmemiş değeri alır.
#XYZ : tıklanan hücrenin bulunduğu satırdaki XYZ türündeki hücrenin çözümlenmeden önceki değerini alır. Hücre / kolon türleri çözümleme için kullanılan bir ayrımdır. Halihazırda sistemde bulunan kolon türleri ;
BRM (birim no) : Birim adı olarak çözümlenir
ONO (öğrenci no) : çözümlenmez, ama hücre bulmada kullanılabilir.
PK (personel kimlik no) : personelin unvan-ad-soyadı olarak çözümlenir
SCN (personel sicil no) : personelin unvan-ad-soyadı olarak çözümlenir
STA (öğrenci durum id) : Öğrenci durumunun metin hali olarak (Hazırlık, Normal, Uyarı vb) çözümlenir
HSTA (hazırlık durum) : Öğrencinin yabancı dil hazırlık okulundaki durumu
GLT (geliş tipi id) : Öğrencinin geliş tipi metni olarak (yatay, ÖSS vb) çözümlenir.
DT (tarih) : Çözümlenmez, sadece formatlamada kullanılır
GDT (gidiş tip id) : Çıkış tipinin metni olarak (Mezun, İlişik kesildi vb) çözümlenir
LST (liste no) : Liste tanımı metni olarak çözümlenir.
DIL (dil) : Ders dili (Türkçe, İngilizce) olarak çözümlenir.
İhtiyaç duyulduğunda çözümlenen tür eklenebilir.
Bu bölümde hücrenin nasıl çözümlendiği değil çözümlenecek olarak işaretlenmesi bizim için önemlidir. Bu sayede hücrenin tıklanması sonucunda satırda ilgili kolon bulunup argüman olarak kullanılabilecektir. Tıklanan hücrenin hangi kolonda olduğu ve içeriği önemli değildir. Aranan değerlerin aynı satırda bulunması önemlidir. Her durumda #n formatı ile istenilen kolondaki değer alınabilir. Ancak ihtiyaca göre listelerdeki kolonların yerleri ve sayıları değiştirilebilmektedir.
Şimdi basit bir örnek yapalım; 302 no'lu "Danışmanı olunan öğrenciler" listesine aktif kolon ekleyelim. Örneğin Ad kolonuna tıklandığında tıklanan öğrencinin tüm derslerini gösteren 26 no'lu "Öğrencinin dersleri" listesi yeni bir pencerede gösterilsin. Bu liste argüman olarak öğrenci numarası almaktadır. 302 no'lu listenin ilk kolonu (kolon 0) öğrencilerin numarasını görüntülemektedir. 302 no'lu liste görüntülenirken Ayarlar-> Listeler İçin Aktif Kolonlar menüsü seçildiğinde "Liste kolonları için tıklama hareket ayarları" penceresi 302 nolu listenin kolonları ile görüntülenir (Şekil 5.2). Ad satırındaki (yeni) Pencere hücresindeki seçimli listeden SimpList seçilince şekilde görüldüğü gibi ListId ve ListParameters parametre isimleri sırasıyla Parametre 1 ve Parametre 2 hücrelerinde otomatik görüntülenir. Bu parametrelerin değerleri ListId için 26 ve ListParameters için #0 olarak girilir (#0 Öğrenci No kolonunu göstermektedir). İstenirse Açıklama hücresine, fare kolon üzerindeyken gösterilecek olan, tooltip eklenir. Liste yeni pencere yada sekmede görüntüleneceği için satırın başındaki seçenek seçilir ve kaydedilir.
Şekil 5.2 302 no'lu listenin Ad kolonunu aktif yapma
örneği.
302 no'lu liste görüntülenirken fare işaretçisi Ad kolonu üzerindeyken kolonun aktif olduğu renk değişiminden anlaşılır. Öğrencinin adı tıklandığında 26 no'lu liste görüntülenen listenin ilk kolonundan alınan değer (öğrenci no) ile çalıştırılır ve yeni pencerede görüntülenir.
Değer 2 olarak #ONO argümanı da yazılabilirdi. Kolon numarası (yani 0) yazmanın avantajı her liste için çalışmasıdır. Kolon tip (yani ONO) kullanmanın avantajı ise bu kolonun yeri değiştiğinde de çalışmaya devam etmesidir. Ancak Öğrenci No içeren her listede ONO kolon tipi kullanılmamış olabilir.
Eğer üretilecek liste birden çok argüman gerektiriyorsa argümanlar Değer kolonuna | ile ayrılarak yazılır. Örneğin yine 302 no'lu "Danışmanı olunan öğrenciler" listesinin Birim kolonuna tıklandığında (farklı kolon da olabilir) birimin haftalık ders programı görüntülensin. Bu durumda "Liste kolonları için tıklama hareket ayarları" penceresinde Birim satırına
ListId: 29 ve ListParameters: #BRM|$currentyil|$currentdnm değerleri girilir.
SimpList formu sadece 2 parametre almaktadır. Ancak "tıklama hareket ayarları" penceresi ve daha önce gördüğümüz "menü tasarlama" penceresi 3 parametre girişine izin vermektedir. Üçüncü parametre ileride olası formlar içindir, halihazırda kullanılması gerekmez. Parametrelerin sırası önemli değildir ama form seçildiğinde zaten standart bir sırada gelmektedir. SimpList formu için ise bu parametreler zaten ListId ve ListParameters isimlerindedir. Yani SimpList formu ile bir liste üretilecekse muhakkak ListId ve ListParameters değerleri girilmelidir. Listenin hata vermeden sağlıklı üretilebilmesi için de ListParameters'in değeri | ile ayrılmış yeteri kadar (üretilecek listenin gerektirdiği kadar) doğru argümandan oluşmalıdır. Listelerde argümanlar yanlış girilse de liste görüntülendikten sonra argümanlar değiştirilip yeniden çalıştırılabilir.
"Bağlantılar -> Listeye Özel Bağlantılar" penceresinde (ActionItems) form isimleri olarak SimpList, YetkiAyarlari, PDFGenerator, XLSGenerator, BelgeGenerator, StudentInfo, OgrDersler ve proc bulunmaktadır. Diğer formların tıklama hedefinde olması şu an için anlamsızdır.
Benzeri bir liste bağlantıları penceresi de tüm listelerde geçerli olmak üzere kolon tiplerine göre bağlantı belirlenmesine imkan vermektedir. Şekil 5.3 bu pencereyi göstermektedir. Bağlantı formu, parametreler ve değerleri açısından yukarıda anlatılanlarla aynı olup, kurulan bağlantılar tüm listelerde (ilgili kolon tipinin listede bulunması halinde) çalışmaktadır.
Şekil 5.3 Kolon tipleri için genel (tüm listelerde
geçerli) liste bağlantıları penceresi.
Eğer bir kolon tipi için genel bir bağlantı ayarı varsa ve bir listede aynı kolon için listeye özel bağlantı kurulmuş ise listeye özel bağlantı önceliklidir. Örneğin ONO (öğrenci no) tipi için genel bir bağlantı (örneğin öğrencinin derslerinin gösterilmesi) ayarlanmış ise ve ONO içeren bir listede de Öğrenci No kolonu için farklı bir bağlantı (örneğin öğrencinin kimlik bilgileri) kurulmuş ise, listeye özel bağlantı öncelikli olup, kolon tıklandığında öğrencinin kimlik bilgileri listesi çalıştırılır.
SimpList modülünün ürettiği listelerin iki şekilde PDF ve XLSX dosyalarına dönüştürülüp kullanıcının tarayıcısına gönderildiğini önceki bölümlerde görmüştük. Burada kısaca tekrar edelim ve PDF dosyası seçeneklerine girelim.
SimpList formunda görüntülenen liste
ve
toolbar düğmeleri ile dosyaya dönüştürülür ve kullanıcıya gönderilir. Bazı durumlarda listeyi görüntülemeden dosya halinde kullanıcıya göndermek tercih edilir. Örneğin liste çok uzun ise (binlerce satır) görüntülemek de çok uzun sürer. Önce görüntülemek yerine, kullanıcı Şekil 6.1'de gösterilen 2 basamakta dosyayı üretebilir; 1: Listeyi seç ve argümanlarını gir, 2: PDF yada XLSX düğmesine tıkla.
Şekil 6.1 Listenin doğrudan kullanıcıya PDF/XLSX dosyası
olarak gönderilmesi basamakları.
Bu durumda liste hiç görüntülenmeden sunucuda dosya haline getirilir ve kullanıcının tarayıcısına gönderilir. Kullanıcı bu dosyalarda gerekli gördüğü düzenlemeleri kendi bilgisayarında yapar.
İster görüntülenerek ister görüntülenmeden kullanıcıya gönderilsin, PDF dosyaların üretilmesinde aynı ayarlar kullanılır. XLSX dosyası için kolon gizleme (Bölüm 1.3) dışında bir ayar yoktur. PDF dosyası üretiminde kullanılacak ayarlar ise Şekil 6.2'de boş olarak gösterilen PDFSetup formu (PDF Dosya Ayarları menüsü ile erişilir) tarafından görüntülenir ve ayarlanır.
Şekil 6.2 PDF dosyası üretiminde kullanılan ayarlar PDFSetup
formu ile görüntülenir.
PDF dosya ayarları kullanıcı ve liste bazında kaydedilir. Yani her kullanıcı yetkisi olduğu her liste için kendi ayarlarını yapabilir. Bir liste için herhangi bir ayar yapılmazsa varsayılan ayarlar kullanılır. Varsayılan ayarlar ise kısaca; arkaplan renkleri beyaz, yazdırma renkleri siyah, A4 büyüklüğü, dikey sayfa, kenarlardan 2cm boşluk, yazdırma alanında kolonlara eşit yer ayrılmış, sola dayalı, Helvetica 8pt düz yazıtipi ile yazdırmadır. Birçok durumda yeterlidir.
Şekil
6.3
ise bazıları değiştirilmiş ayarları ve Şekil
6.4
de bu ayarlarla üretilmiş PDF dosyasının ilk ve ikinci sayfasının üst kısımlarını
ve ilk sayfanın alt kısmını göstermektedir.
Şekil 6.3 302 nolu liste için kullanıcının yaptığı
ayarlar. Bazı değerler varsayılan bırakılmış.
Şekil 6.4 302 nolu liste için kullanıcının yaptığı
ayarlar ile üretilmiş PDF dosyası.
Başlık ve Kolon başlığı kısımları sadece ilk sayfada bulunur. Listede görüntülenen verilerden başka, PDF dosyasında ilave 3 öğe bulunmaktadır. Bunlar, liste başlığındaki üretilme tarih ve zamanı, sayfaların alt kısmındaki kullanıcı bilgileri ve sayfa no bilgileridir. Bunlar için ayar yoktur, otomatik her PDF dosyasına konurlar.
Şimdi Şekil 6.3'te gösterilen PDF ayarları penceresindeki bazı detaylara girelim. Sol kısımda listenin kolonları, kolon genişlikleri ve kolon hizalama verileri bulunur. Kolon genişlikleri toplamı bu tablonun alt kısmında görüntülenir. Böylelikle kullanıcının sayfa kullanımı ile ilgili bir fikri oluşur. Bu toplam yazdırma alanından (kağıt genişliği eksi sağ-sol boşluklar) büyük ise metin yazdırma alanı dışına taşar. Buna herhangi bir engel konmamıştır, çünkü kullanıcı isterse daha büyük bir kağıt seçebilir. (TODO: şu anda sadece A3, A4 ve A5 boyutları vardır ancak ileride ihtiyaca göre sınırsız olabilir). Burada esas, her kolona tam istenildiği kadar yer ayırmaktır. Bazı kolonlara genişlik girilmezse geri kalan yazdırma alanı o kolonlara eşit paylaştırılır. Eğer tüm kolonlara genişlik girilir ve/fakat toplam yazdırma alanından küçük ise sayfanın sağdaki geri kalan kısmı boş kalır. Bu olası boşluk, "Kolonlardan kalan boşluğu ... adet boş hücre ile doldur" seçeneği ile kullanılabilir. Böylelikle listede içi boş ilave kolonlar üretilebilir (yoklama listesi gibi)
PDF kolon genişlikleri ayarlarında iyi bir yöntem, önemli bilgiler için tam uygun genişlik verilmesi, birim adı gibi kısa kesilebilecek uzun veriler için ise bir genişlik girilmemesidir. Böylelikle liste sayfaya tam oturur.
Renk metin kutuları yanında bulunan küçük renkli düğmeler rengin bir renk seçme penceresinden alınabilmesi içindir. Yani renk R-G-B değerleri istenirse el ile girilebilir (her bileşen 0-255 aralığında tamsayı) istenirse renk seçme penceresinden alınabilir.
PDF dosyalarının küçük olması için yazıtipi tanımları dosya içine gömülü değildir. Yani hakkıyla görüntülenmesi ve yazdırılabilmesi için kullanıcının bilgisayarında bu yazıtipi dosyalarının kurulu olması gerekir. Aksi halde en yakın yazıtipi kullanılacaktır. Şu anda SimpList modülünde basit yazıtipleri tanımlıdır, çünkü listelerde süslü yazıların (Vivaldi, Script MT vb) istenmesi beklenmemektedir ve daha çok yazıtipi daha yavaş işlem demektir.
PDFGenerator ve XLSGenerator formları ile listeler doğrudan PDF ve XLSX dosya üreteçlerine gönderilebilir. Yani bir form/pencere görüntülenmez. PDFGenerator, numarası ve parametreleri verilen listeyi, liste için daha önceden PDFSetup formu ile belirlenen seçenekler ile, PDF üretmekte kullanır ve üretilen PDF dosyası doğrudan kullanıcıya gönderilir. Yani bu form/işlev ListId ve ListParameters parametreleri alır. Benzeri şekilde XLSGenerator de numarası ve parametreleri verilen listeyi XLSX dosyasına kaydeder ve kullanıcıya gönderir. XLSX dosyası üretiminde kolon gizleme seçenekleri kullanılabilir.
Örneğin, bir menü elemanında form olarak PDFGenerator seçilmiş olsun (yeni pencere seçeneği burada dikkate alınmaz). ListId ve ListParameters değerleri ise sırasıyla 310 ve 151227634|A|2017 G olsun. Bu menü elemanı tıklandığında 310 nolu liste (derskodu-şube-dönem bazında dersi alanlar listesi) 151227634|A|2017 G argümanlarıyla çalıştırılır ve PDF dosyası üretilip kullanıcının tarayıcısına gönderilir. Tarayıcıda yeni bir PDF dosyası ve dosyayı yazdırma önizleme penceresi görüntülenir. Kullanıcı isterse yazdırma seçeneklerini kapatır ve PDF'i kendi bilgisayarına kaydedebilir.
SimpList modülü ile üretilen her liste için gerekli bir yetki tanımlanmış olabilir. Yetki tanımlamaları ESOGUBS modül tasarımcıları tarafından sisteme tanımlanırlar. Çoğu liste ise, özellikle özel bilgi içermiyor ve sisteme önemli bir yük oluşturmuyorsa, yetki gerektirmez ve tüm SimpList kullanıcıları tarafından üretilebilir. Kullanıcının, istediği listeyi liste-listelerinde görmesi onu çalıştırmak için yetkili olduğu anlamına gelmez. Listeyi çalıştırmak istediğinde "yetkili değilsiniz" mesajı ile karşılaşabilir. Kullanıcılar kendi yetkilerini "yetkilerim" listesinden ve " Kullanıcı yetkilerini belirleme penceresi" ile görebilir. Ayrıca, listeleri çalıştırma yetkilerinin olup olmadığını liste-listelerinin (örneğin Tüm Listeler listesi) en sağ kolonundan görebilirler (0, kapalı-kırmızı-kilit: yetki yok, 1, açık-yeşil-kilit: yetki var).
Yetki belirlemede genel olarak geçerli kural, bir kullanıcıya yetki atayacak kişinin atanacak yetkiye veya onu kapsayan role en az 2 seviyesinde (yetki atayabilme seviyesi) sahip olmasıdır. Yetkiler 4 seviyededirler;
0: yetki yok
1: yetki var
2: yetki var ve başka bir kullanıcıya atayabilir
3: yetki var ve başka bir kullanıcıya atayabilir, o da başkasına atayabilir.
Her yetki atamasında yetki atanan kullanıcının seviyesi atayan kişi tarafından 0 ile kendi seviyesinden bir düşük seviye arasında seçilebilir. Yani atayan kişinin yetki seviyesi 3 ise, atadığı seviye 0-2 arasında olabilir. 0 seviyesi yetkinin olmadığı anlamına geldiğine göre yetkiyi tamamen silebilir de. Bazı durumlarda yetkiyi kaldırma geçici olabileceği için silmek yerine 0 atama yapabilir. Özellikle seçilmezse atanan yetki seviyesi atayanınkinin 1 eksiği olur, ancak daha sonra da değiştirilebilir.
Örnek 1: Yetki atayan kullanıcı AAA yetkisine 2 seviyesinde sahip olsun. Yetki atanacak kullanıcıya 0 yada 1 seviyesinde yetki verebilir.
Örnek 2: Yetki atayacak kullanıcı AAA yetkisini içeren bir role 2 seviyesinde sahip olsun. Kullanıcı tüm rolü 1 seviyesinde atayabileceği gibi, rol içinden AAA yetkisini seçip sadece onu 1 seviyesinde atayabilir.
Örnek 3: Her iki kullanıcı da (atayan ve atanacak) AAA yetkisine 2 seviyesinde sahip olsun. İkisi de birbirinin AAA yetkisini değiştiremez.
Örnek 4: Atayacak kullanıcı AAA yetkisine 1 seviyesinde sahip olsun. Atanacak kişi AAA yetkisini içeren bir role >1 seviyesinde sahip olsun. Atayacak kullanıcı AAA yetkisini 1 seviyesinde atayabilir. Ancak bu manasızdır çünkü diğer kullanıcının zaten buna rol gereği yetkisi vardır. SimpList buna izin verir çünkü kullanıcı önce yetki atayıp sonra rolü silme işlemi (rol seviyelerine bağlı olarak) yapabilir.
Şekil 8.1 örnek bir yetki belirleme pencere görüntüsünü göstermektedir. SimpList modülünü açan yani yetkileri atayacak kullanıcının yetkileri üstteki tabloda, yetki atanacak kullanıcının halihazırdaki yetkileri de alttaki tabloda görüntüleniyor. Atanabilecek rol olarak HOCA ve yetkiler olarak PROC_68 ve ZORLU_1 yetkileri görünüyor (en sağdaki ekle kolonundan anlaşılıyor). HOCA rolünü kullanıcıya eklemek için en sağdaki "ekle" tıklanır. AA177 kullanıcısının da HOCA rolü var ancak EĞİTİM FAKÜLTESİ ile sınırlı. Rol atayacak kullanıcının HOCA rolü birimle sınırlı olmadığı için AA177'ye birim sınırlı yada birim sınırsız yetki atayabilir. Tabi ki AA177'nin HOCA rolündeki birimi de değiştirebilir.
Şekil 8.1 Örnek bir yetki belirleme penceresi.
AA177 kullanıcısına PROC_2, PROC_62, PROC_63 ve PROC_78 yetkileri atanamaz, çünkü atayacak kullanıcının bu yetki seviyeleri 1. Benzeri şekilde AA177'deki PROC_300 yetkisini de değiştiremez çünkü atayacak kullanıcının PROC_300 yetkisi yok. Olsaydı da AA177'nin yetki seviyesi 3 olduğundan bunu değiştirme imkanı yok. PROC_300'ün en sağındaki "sil" e tıklandığında yada Y kolonundaki seviye değiştirilmeye çalışıldığında "yetkiniz yok" mesajı ile karşılaşılacaktır.
Şekil 8.2 HOCA rolünün kapsadığı yetkileri göstermektedir. Bu pencere (RoleDetail) "Kullanıcı yetkilerini belirleme penceresi" başlıklı formda "Tüm Rol ve Yetkileriniz" tablosundaki Rol kolonunda bir rol ismine tıklandığında görüntülenir. Böylece yetki atayacak kişi bu rol içeriğindeki yetkilerden bir yada birkaçını kullanıcıya atayabilir.
Şekil 8.2'deki rol içeriği penceresinin 2 modu vardır. Eğe bu pencere yukarıda anlatıldığıı gibi yetki atama formundan rol üzerine tıklayarak açıldıysa en sağdaki "ekle" bağlantıları görüntülenir. Ancak bu pencere açıkken sol üstteki metin kutusuna bir rol ismi girilirse rolün içeriği görüntülenir ama "ekle" bağlantıları görüntülenmez. Sadece görüntülenmemekle kalmaz, zaten ekleme işlemi kullanıcıdan bağımsız olmadığından ve kullanıcının rolleri bilgisi kaybedileceğinden yetkiler eklenemez de. Bu doğal durum aynı zamanda bir güvenlik önlemidir.
Şekil 8.2 Bir rol içeriğindeki yetkilerin
görüntülenmesi.
Rol içeriğindeki bir yetkinin en sağındaki "ekle" bağlantısı tıklandığında bu pencere kapatılmadan seçilen yetkinin yetki atanacak kullanıcıya eklendiği görülür. Eklenen yetkinin seviyesi rolün yetki seviyesinden 1 eksiktir, ama değiştirilebilir (daha küçük yapılabilir). Eğer yetki kullanıcıda varsa "zaten var" mesajı görüntülenir.
Özet olarak;
Yetkiler Modül ve Birim bazlı ve 3 seviyede atanabilir. Rollerin ise modülü yoktur ancak içeriğindeki yetkiler farklı modüllere tanımlanabilir. Birim belirtilmemiş ise hem roller hem yetkiler tüm birimlerde geçerlidir. Eğer birim olarak fakülte/yüksek okul/enstitü belirtilmiş ise bu birimlerin alt birimlerinde de geçerli olur. Aynı yetki/rol birden çok birim için verilebilir. Ancak, örneğin fakülte için yetki verilmiş ise o fakültenin bölümleri için ayrıca aynı yetkiyi vermeye gerek yoktur.
Rol ve yetkilerin son geçerlilik tarihleri de yetki atayan kullanıcının yetkileri dahilinde, ancak tarihe bakılmaksızın değiştirilebilir. Yani atayan kullanıcının yetkisi atanan kullanıcının yetkisinden daha önce sonlanabilir. Yetki son tarihi boş bırakılırsa süre sınırsız demektir.
Yetkileri kimin atadığı önemli olmayacak şekilde aynı yada daha üst seviyede bir başka yetkili tarafından değiştirilebilir.
Bu işlem XLSImport formu yardımıyla gerçekleştirilir. Örnek Form Şekil 9.1'de gösterilmiştir.
Şekil 9.1 XLSImport formu bir dosya yüklenmiş haliyle
gösteriliyor.
Kullanıcı öncelikle düğmesini tıklayarak yüklenecek XLSX dosyasını
(Excel Workbook) bilgisayarından seçer (eski format Excel dosyaları XLSX
formatında kaydedilmelidir). Dosya istenen formata uygun olmalıdır. Format çoğu
durumda ilk satırında kolon başlıkları ve ardından yüklenecek satırları içeren
sayfalardan (Worksheet) oluşur. Dosya yükleyici herhangi bir format kontrolü
yapmaz, o yüzden format yanlış ise ya dosya yüklenmez yada ilerleyen aşamalarda
hata oluşur. XLSX dosyasının her sayfası Şekil
9.2'de
verilen örnekteki gibi olmalıdır.
Şekil 9.2 Yüklenmeye uygun bir XLSX dosya sayfası.
Yüklenecek XLSX sayfalarında dikkate edilecek hususlar şunlardır;
Sayfada ## işareti bulunamazsa bir hata mesajı gösterilir ve sayfa okunmaz.
Dosya seçme penceresi kapandığında yükleme işlemi başlar.
Yüklenen her dosyaya bir dosya numarası sistem tarafından atanır. Yükleme
bittikten sonra dosyanın her sayfasının kolon başlıklarını ve satır sayısını
gösteren bir tablo kullanıcıya gösterilir (Şekil 9.1).
Bu noktada, kullanıcının sayfalar için yapılacak işlemi aynı satırdaki açılır
listeden seçmesi ve Çalıştır bağlantısına
tıklaması beklenir. Kullanıcı isterse Göster
bağlantısı ile yüklenen sayfa içeriğini bir SimpList formunda görüntüleyip
inceleyebilir. Bir hata görmesi durumunda (XLSX formatı hatası) XLSX
dosyasındaki hataları düzelttikten sonra yeniden dosyayı yükleyebilir. Daha
önceden yüklenmiş, hatta işlemden geçirilmiş sayfalar Sil
bağlantısı tıklanmadan sistemden silinmez. Yani dosya yüklendikten daha sonraki
günlerde de işlemler gerçekleştirilebilir, sayfalar görüntülenebilir. Bunun
için Dosya No metin kutusuna dosya numarası girildiğinde hemen yanında
belirecek olan düğmesi tıklanır ve yüklenmiş dosyanın sayfa
bilgilerinin görüntülenmesi sağlanır.
Çalıştır bağlantısı tıklandığında sayfa verileri sistem verilerine aktarılır ve sonuçlar yeni bir SimpList penceresinde gösterilir. Daha önceden yüklenmiş tüm sayfalarla ilgili bilgi 150 nolu liste ile, herhangi bir sayfa ise 400 nolu liste ile görüntülenebilir. Bu listeler hızlı erişim için menülere bağlanabilir.
Öğrenci Bilgileri (StudentInfo) penceresi öğrencinin dersleri hariç tüm bilgilerinin görüntülenebildiği ve değiştirilebildiği bir arayüzdür. Birçok bölüm ve yardımcı açılır pencereciklerden oluşmaktadır. Şekil 10.1 bu pencereyi bir öğrenci yüklenmiş şekilde göstermektedir. Gizlilik dolayısıyla şekildeki bilgilerin birçoğu kasıtlı olarak bozulmuştur.
Şekil 10.1 Öğrenci Bilgileri penceresinin genel yapısı.
Pencerenin bölümleri kısaca;
Öğrenciyle ilgili hemen her bilgi yetkiler dahilinde kullanıcı tarafından değiştirilebilir. Bir bilgi değiştirildiğinde ilgili bölüm açık-sarı olarak görüntülenir (örnek; şekildeki büyük açıklama kutusu) ve öğrenci resminin resmin sağındaki "Değişiklikleri Kaydet" düğmesi görünür hale gelir. Burada bir bilginin eklenip değiştirilebiliyor olması veritabanında da değiştirildiği anlamına gelmez. "...Kaydet" düğmesi tıklandığında kullanıcının yetkileri kontrol edilerek veritabanına kaydedilir, bağlantılı veriler yenilenir ve sayfa tamamen yeniden yüklenir. Kullanıcının yetkisi yoksa yada bir hata oluşmuşsa, bu durum sayfa yenilenirken sekmelerin hemen üzerinde beliren koyu sarı bir mesaj kutusuyla bildirilir. Burada en belirgin örnek, öğrencinin verilerini değiştirme yetkisi olduğu halde öğrencinin mezun olmuş olmasıdır. Mezun öğrencilerin bilgilerini değiştirme işi sadece öğrenci işleri birimi tarafından, öncelikle öğrencinin durumunu Mezun'dan Normal'e getirerek yapılabilir. Bilgi gizliliği ve veritabanı güvenliği gözetilerek, ESOGUBS modüllerinin her yerinde olduğu gibi, burada da tüm işlemler (hem görüntüleme hem kaydetme) güvenli haberleşme protokolleri üzerinden ve yetki kontrolleri yapılarak gerçekleştirilir.
Öğrenci Bilgileri penceresinde 4 çeşit veri girme/değiştirme yöntemi vardır;
Bu seçim açılır pencereleri Bölüm 3'te açıklandıklarıyla aynıdır. Bu pencerede ilave olarak ONO (öğrenci seçme açılır pencereciği) sağ tarafta kayar-açılır pencerecik olarak tasarlanmıştır ve ardışık olarak öğrencilerin seçilmesine ve verilerinin görüntülenmesine olanak sağlar.
(Bu kısım
belge tasarlayıcıları için düzenlenmiştir)
Üretilen belgeler (Listeler belge sayılmamaktadır) şablon tabanlıdır. Şablonlar XML formatını destekleyen MS-Word'ün sürümlerinde docx uzantısı ile tasarlanabilirler. BelgeGenerator arayüzü, aldığı parametreleri kullanarak şablon içindeki özel metinleri ve varsa ilgili resim objelerini değiştirerek belgeyi şekillendirmektedir. BelgeGenerator bir docx üreticisi değildir, sadece içeriğini değiştirmektedir.
Belgeler öğrenciler için (öğrenci'ye özel) üretilmekle beraber, şablonları birimlerde ortak olacak şekilde tasarlanabilmektedir. Ayrıca aynı şablon sistemi personel, ders ve birimler için üretilecek belgelerde de kullanılabilmektedir (bkz. döküman doldurma penceresi).
BelgeGenerator aslen 3 parametre almaktadır;
ONO : Öğrenci numarası, personel sicil no, ders kodu yada birim numarası
Document : Belge ismi (DIPLOMA, TRANSCRIPT, OGRENCI_BELGESI, DERS_YUKU_FORMU gibi)
Version : Şablon sürümü.
ESOGUBS sisteminin farklı modüllerinden çağırılabilme olanağı için sisteme özel ilave parametreler de alınabilmektedir.
ONO ve Document parametreleri kolayca anlaşılabilir. Versiyon ise birbirinden "." (nokta) ile ayrılan 3 kısımdan oluşmaktadır; Lang.Dal.Bvers (örneğin TR.N.01). Lang olarak şu anda TR ve EN (Türkçe ve İngilizce) kabul edilmektedir. Dal ise N, C ve Y (anadal, ikinci dal, yandal) olmak üzere öğrencinin hangi dalı için belgenin alınacağı belirtilmektedir. Bvers sürüm-parametresi 00'dan 99'a kadar nümerik değerlerden oluşabilir. Bazı belgeler için anlamlı olmasa da bu alt-parametreler için "*" karakteri kullanıldığında "şablonu olan" yada "şablonu olanlar içinden en son sürüm" anlamı çıkarılabilmektedir. Örneğin; DIPLOMA.TR.N.01.docx ve DIPLOMA.TR.N.02.docx şablonları mevcut ise DIPLOMA.TR.N.* ile ikincisinin kullanıcalacağı anlamı çıkarılmaktadır. Şablon isimleri sadece kullanıcının yüklediği anlamı taşımaktadır, belge üretiminde bu isimlerle yada ismin kısımlarıyla ilgili bir işlem yoktur.
Bazı belgelerde ise Lang parametresi anlamı yönünde kullanılmayabilir. Örneğin DIPLOMA belgesi üzerinde hem Türkçe hem İngilizce içerik taşımaktadır. Aslında bunlar sadece hangi şablonun kullanılacağını ifade etmekte olup, bir tercüme yapılmamaktadır.
Bütün belgeler bir şablonu bulunursa üretilebilmektedir. Kullanıcının yetkisi olsa da belirtilen şablon bulunamazsa belge üretilememektedir. Bu durum, Öğrenci Bilgileri penceresindeki Belge sekmesindeki düğmelerin aktif olmamasıyla anlaşılabilir. Örneğin kullanıcının OGRENCI_BELGESI yazdırmaya yetkisi varsa bu düğmenin solunda yeşil kilit görülür. Ama şablon yoksa düğme aktif değildir.
Şablonlarda değiştirilecek metinler $ işaretleri arasında verilir. Karşılığının da veri tabanında tanımlanmış olması gerekir. Örneğin $OGRENCI_NO$ metni (bundan sonra "değişken" ismiyle anılacak) öğrencinin numarası ile değiştirilir. Metnin formatı (rengi, fontu, büyüklüğü vb) değiştirilmez. Tüm değişkenler için kullanıcının yetkisi kontrol edilir. Örneğin $TC_KIMLIK_NO$ değişkeni kullanıcının OGR_KIMLIK_G yetkisi varsa öğrencinin TC-Kimlik-No'su ile değiştirilir, aksi halde aynı yerde {yetki yok} ibaresi görülür. Kullanılabilecek tüm değişkenlerin listesi ve özellikleri değişken listesi'nden incelenebilir. Bu liste, sistem ilk tasarım/kullanım aşamasında olduğundan, sıklıkla yenilenmektedir. Değişkenlerin karşılığı veritabanında bulunamaz ise olduğu gibi bırakılır. Örneğin $XYZ$'nin karşılığı yoktur, yani aslında bir değişken değildir, belge üzerinde $XYZ$ olarak kalır.
Şablonlarda sabit, veritabanından gelen ve veritabanından değişken olarak gelen resimler kullanılabilir. Örneğin öğrenci belgesindeki öğrenci resmi değişken resimdir. Şablona eklenen bir resmin veritabanından okunması (değiştirilmesi) isteniyorsa resme bir etiket (tag) eklenmelidir. Bunun için MS-Word'dün araç-çubuğunda en sağda bulunan Seç-Seçim Panosu açılır, resim seçilir ve etiketlenir.
Şekil 11.1 Resimlerin etiketlerinin seçim panosu
yardımıyla değiştirilmesi.
Örneğin resmin veritabanındaki üniversite logosu ile değiştirilmesi isteniyorsa buraya etiket olarak ESOGULOGO yazılır. Etiketler de değişken olabilir. Örneğin resme etiket olarak $OGRENCI_NO$ yazılırsa resim belgesi hazırlanan öğrencinin veritabanındaki resmi ile değiştirilir (Şekil 11.1). Veritabanında bulunamayan etiketler ve resimler olduğu gibi bırakılır. Resimler için de yetki kontrolü yapılmaktadır. Örneğin $OGRENCI_NO$ ile taglenen resim için kullanıcının öğrenci için OGR_KIMLIK_G yetkisi olması gerekir.
Veritabanından okunan resimlerin boyutları, en-boy oranını koruyarak, daha önceki resmin bulunduğu yere oturacak şekilde değiştirilir. O yüzden, şablonda değişken resimlerin koyulacağı yere uygun boyutlarda bir jenerik resim koyulması gereklidir. Veritabanından getirilen resmin boyutları jenerik resmin kapladığı alan içine en-boy oranı korunarak sığdırılır yada genişletilir.
İçeriğinde #TB işareti olan tablolar veritabanından getirilecek bir liste ile doldurulur. Hangi liste olduğu #TB karakterlerinin yanında verilen parametrelerle belirtilir. Örneğin #TB;PROC;302;AA156# 302 nolu listeyi AA156 argümanıyla üretir. Bu liste tabloya format değiştirilmeden #TB ibaresinin bulunduğu satırdan itibaren satırlar eklenerek doldurulur. SimpList'ten alınabilecek tüm listeler bu şekilde belgelere konulabilir. PROC listelerinin üretimi ve tabloya doldurulması oldukça anlaşılırdır ancak bazı listelerin özyinelemeli (recursive) üretilmesi daha anlamlıdır. Örneğin #TB;TR;2008;1# komutu öğrencinin (BelgeGenerator'e parametre olarak verilen) derslerini transcript formatında üretmek üzere tasarlanmıştır. 2008-Güz dersleri transcript formatında üretildikten sonra, sonraki dönemlerde alınan ders varsa, liste üreteci en son satır olarak #TB;TR;2008;2# ibaresini ekler. Böylelikle öğrencinin dersleri dönem dönem transcript formatında üretilir.
Liste satırları eklenirken #TB ibaresinin bulunduğu satırdan önceki satırlara dokunulmaz. Böylelikle tabloda bir başlık satırı (header) varsa onlar korunur. Veritabanından gelen listenin en son kolonu formatlama için kullanılmaktadır. Bu kolondaki sayılar tabloda en başta var olan satırları göstermektedir. Yani bir liste satırı ilave edilirken son kolonundaki sayı hangi satırın formatının kullanılacağını gösterdiğinden o satır formatı değiştirilmeden kopyalanıp sona eklenir ve içeriği yeni satır ile doldurulur. Bu işlemler veritabanı programcısı ile ortak çalışmayı gerektirmektedir. O nedenle farklı formatlarda satırlar içeren bir tablo belgelere eklenecekse ESOGÜBS ekibi ile birlikte çalışılmalıdır. Normal listelerde ise (PROC) buna gerek yoktur. Satırlar #TB ibaresinin formatında çoğaltılır. Veritabanından gelen listedeki kolon sayısı şablondaki tablonun kolon sayısından fazla ise fazla kolonlar ihmal edilir, az ise tabloda o kolonlar boş bırakılır.
#TB...# ibaresinde $ değişkenleri de kullanılabilir. Örneğin #TB;PROC;145;$OGRENCI_NO$# belgesi üretilen öğrencinin aktif dönem derslerini üretir (Liste no 145).
BelgeGenerator'ün istenilen belgeyi üretirken izlediği işlem sırası aşağıdaki gibidir;
ESOGUBS Web SimpList modülü önceki bölümde anlatılan belge doldurma yöntemleriyle kullanıcının bilgisayarında bulunan dökümanları da öğrenci bilgileriyle doldurmak için bir servis sağlamaktadır. Bu servis "Döküman Doldurma Penceresi" arayüzüyle kullanılabilir. Bahsedilen pencereye DocxFiller formunu (parametre almaz) menülerinize ekleyerek ulaşabilirsiniz. Şekil 11.2'te gösterilen bu pencere ve kullanımı oldukça basittir. En üstteki Dil ve Dal parametreleri seçilir, dökümanı üretilecek öğrencinin numarası, personelin sicil no’su, dersin kodu yada birimin numarası girilir. Belge hazırlama kurallarıyla hazırlanan docx dosyası, sürüklenip pencere üzerindeki uygun yere bırakılarak yada penceredeki o bölge tıklanıp docx dosyası seçilerek döküman sunucuya gönderilir. Sunucuda BelgeGenerator gönderilen dökümanın içini veritabanından kullanıcını yetkileriyle doldurur ve dökümanı son haliyle kullanıcının tarayıcısına geri gönderir. Bu şekilde üretilen dökümanlar arşivlenmez, döküman sunucu yada veritabanına kaydedilmez, belge numarası üretilmez.
Şekil 11.2 Kullanıcının özel dökümanları Döküman
Doldurma Penceresi aracılığı ile doldurulabilir.
Dökümanı hazırlayanın kullanabileceği $...$ değişkenlerinin listesini "İndirilebilir Dosyalar" penceresinden indirebileceğiniz VariableList.docx dosyasında bulabilirsiniz. Dosyada ilave açıklamalar, tabloların ve resimlerin kullanımıyla ilgili örnekler de bulunmaktadır. Ayrıca VariableList.docx dosyasının kendisi de böyle bir döküman olup, deneme amacıyla Döküman Doldurma Penceresine verilebilir, sonuçları gözlenebilir.
Döküman Doldurma Penceresi ve arkaplanda çalışan BelgeGenerator, kullanıcının SimpList'teki farklı pencereler, listeler ve yöntemlerle yetkileri dahilinde zaten elde edebileceği verileri kolayca bir döküman (yada belge) üzerinde toplamasına yardımcı olmaktadır. Burada "kullanıcı yetkileri" anahtar terimdir. Yani öğrencinin kimlik verilerini görmeye yetkiniz yoksa dökümanlar/belgeler aracılığı ile de elde edemezsiniz.
Öğrenci bilgileri (StudentInfo) penceresinden öğrenci için üretilebilecek belgeler Belge sekmesinde görüntülenmektedir (Şekil 12.1). Belge sekmesi iki kısımdan oluşmaktadır; Belge üretme kısmı ve öğrenciye üretilen belgelerin arşivi. Belge üretme kısmı üretilecek belge için öğrenci ve belge bilgilerini kullanarak BelgeGenerator arayüzünü çağırır. Öğrenci için gerekli bilgi sadece öğrencinin numarasıdır. Üretilecek belge için ise Belge Adı/Idsi, sürüm, dil bilgileri ve bazen ilave parametreler gerekli olabilmektedir. Bu veriler Dil, Dal ve EkP parametre kutularından ve üzerinde Belge Adı/Idsi yazan yazdırma düğmesinin yanındaki sürüm liste kutularından sağlanır. Belge için kullanılacak şablon ise bu veriler kullanılarak veritabanındaki özel belge-birim-şablon bağlantı tablosundan üretilir. İşlem sırası şöyledir;
Her bilginin gösterimi gibi belge üretimi de yetkilere sıkı sıkıya bağlıdır. Kullanıcının bu belgeyi üretme yetkisi varsa belge üretme satırının en solunda yeşil açık kilit, yoksa kırmızı kapalı kilit görüntülenir. Belge üretme yetkisinin olması belgedeki tüm verileri görme yetkisinin olduğu anlamına gelmez. Veriler belgeye yerleştirilirken de yetki kontrolü yapılır ve yetki yoksa (her veri için ayrıca) {Yetki yok} ibaresi görülür. Belge üretme yetkisi var ama ilgili şablon henüz hazırlanmamışsa belge üretme düğmesi aktif olmaz (gri görünür) (Şekil 12.1’de SEREF_BELGESI düğmesi gibi).
Şekil 12.1 Öğrenci belgeleri üretme/izleme sekmesi.
Üretilen ve arşivlenen her belgeye bir kontrol kodu verilir ve arşive bu kod ile saklanırlar. Böylelikle, bir sonraki bölümde (Bölüm 13) açıklanan belge arşiv/kontrol sisteminden sistem kullanıcısı olmayan kullanıcılar tarafından kontrol edilebilir. Bunun için belge şablonları üzerinde belge kontrol kodu olacak şekilde tasarlanmaları gerekir. Yetkisiz kullanıcılar, ellrinde olan belge ile arşivdeki belge arasındaki farkları bu kod yardımı ile girecekleri arşiv sisteminden kontrol ederler.
Öğrenci için üretilen ve arşive saklanan belgeler Belge sekmesinin sağ tarafında üretim bilgileri ile listelenir (Şekil 12.1). Arşivdeki belge görülmek istenirse bu listedeki D kolonu tıklanır. Zaten sistemde olan kullanıcıların arşiv sisteminde kontrol kodu girmelerine gerek yoktur, işlem otomatik gerçekleştirilir.
Arşivlenen belgeler BELGE_KONTROL anahtarıyla arşivden kontrol edilebilir. SimpList'teki Archive arayüzü ESOGUBS kullanıcısı olmayan kullanıcılar için tasarlanmış olup oldukça sınırlıdır. Ancak bu arayüzü kullanmak için sistemde kayıtlı kullanıcı olmaya gerek yoktur. Arşiv arayüzü https:/akaliste.ogu.edu.tr/Archive.aspx adresinden erişilebilir. Bir örneği Şekil 13.1'te gösterilmiştir. Bu sayfada sayfa üzerine basılan BELGE_KODU ve Güvenlik kodu girilip Belgeyi Göster düğmesi tıklanınca arşivdeki belgenin her sayfası ayrı resimler olarak görüntülenir. Orijinal belgeler arşivde docx olarak saklanmasına rağmen bunlar kullanıcıya iletilmez, sayfa resimleri biraz küçültülmüş olarak iletilir.
Kullanıcı belge üzerinde içinde BELGE_KONTROL kodu bulunan bağlantı ile sayfayı açtığında belge kodunun girilmesi gerekmez. Kullanıcı eğer halihazırda açık/geçerli oturumu olan bir ESOGUBS kullanıcısı ise güvenlik kodu istenmeksizin belge gösterilir.
Şekil 13.1 Arşiv arayüzü.
Öğrencinin aldığı tüm dersleri görüntüleme, yeni ESOGÜ dersi ekleme, yeni Diğer Üniversite Dersi ekleme, bu derslerde not ve YERİNE değişiklikleri yapma ve ders silme amacıyla Öğrenci Bilgileri (StudentInfo) penceresindeki Dersler sekmesi kullanılır. Şekil 14.1'de bir örneği gösterilen sekmenin yardımcı açılır pencerecikleri bulunmaktadır. Şekilde işaretli sekme kısımları;
Bir ders üzerinde değişiklik ve yeni ders ekleme işlemleri her ders satırının en sağındaki küçük resme tıklayarak açılan menüden seçilerek yapılır. Eğer öğrencinin ikinci dalı da varsa hangi dala ders ekleneceğini belirtmek için öğrencinin genel bilgilerinin görüntülendiği kısımda dal seçilmesi gerekir (şekilde 4 ile belirtilen seçim kutuları). Eğer öğrencinin ikinci dalı yoksa yada bu kutulardan herhangi birisi seçilmemiş ise anadala ders ekleneceği varsayılır. Daha önce alınmış olup listede görünen dersler üzerinde işlem yapılacaksa (not değiştirme gibi) dal seçmeye gerek yoktur çünkü derslerin hangi dalda alınmış olduğu zaten belirlidir. Eğer ders listesi boş ise (hiç ders yoksa), işlem menüsü kolon başlıklarının olduğu (header) satırındaki resim tıklanarak açılır.
Şekil 14.1 Öğrenci Dersleri penceresinin genel yapısı.
Bir örneği Şekil 14.2'te gösterilen işlem menusünde (açılır pencere) yapılabilecek işlemler için bağlantılar vardır. Bu bağlantılardan seçili satırdaki dersle ilgisi olmayanlar gri renkte gösterilir, diğerleri siyahtır. Örneğin, seçili satır bir diğer üniversite dersi değilse "Diğer üniversite dersinde değişiklik..." bağlantısı gri renkte görünür. Ders ekleme bağlantıları her durumda siyah ve aktiftir.
Şekil 14.2 Ders işlemleri menüsü (açılır penceresi).
Menü, küçük resmi tıklanan satırın hemen altında, yada sığmıyorsa üstünde görüntülenir ve bu satırın rengi, seçildiğini belirtmek üzere, koyu pembe yapılır. Ders işlemleri menüsünden aktif bir bağlantı tıklandığında ya işlem yapılır yada işlemi gerçekleştirmek üzere seçenekleri gösteren başka bir açılır pencere görüntülenir.
"Bu dersin yerine daha sonra alınan bir ders seç..." bağlantısı ile "Bu dersi daha önce alınan bir dersin yerine seç..." bağlantısı aynı açılır pencerenin görüntülenmesine sebep olur, ancak içerikleri farklıdır. Birincisi seçili ders ile aynı Mez-Deg grubunda olup daha sonraki dönemlerde alınan dersleri, ikincisi ise daha önceki dönemlerde alınmış dersleri görüntüler. Şekil 14.3 her ikisinden de birer örnek göstermektedir.
Şekil 14.3 Yerine ders seçme açılır penceresi örneği.
Bu açılır penceredeki dersler öğrencinin Mez-Deg'indeki gruplara uygun olarak seçilirler. Ancak, yerine seçiminde Mez-Deg kullanılmayacaksa (Mez-Deg kullanmayan birimler tarafından) açılır pencerenin sağ-üst tarafındaki "Grupsuz" seçim kutusu işaretlenir. Seçili dersin döneminden önceki (yada sonraki) dönemlerde öğrencinin aldığı tüm dersler görüntülenir. Bu seçimden bağımsız olarak, eğer yerine seçilen işlemi yapılan dersler Mez-Deg gruplarına uygun değilse bu durum ana ders listesinde dersin "Yerine ders" kolonunda [MD] ifadesiyle belirtilir.
Yerine ders seçme açılır penceresinde sol kolondaki seçme kutusu (yada kutuları) seçilip Tamam düğmesi tıklanınca ana listede yerine bilgisi değişen dersin satırında bu değişiklik "Yerine ders" kolonunda yansıtılır ve açık-sarıya boyanır. Bir ders yerine birden çok ders, yada birden çok dersin yerine bir ders seçilmiş olabilir. Bu durum sadece yerine bilgisi değişen satırlarda görüntülenir. Yerine işleminden sonra "Değişiklikleri Kaydet" düğmesi tıklandığına değişiklikler veritabanına kaydedilir ve varsa [MD] uyarıları da açık-pembe olarak görüntülenir.
Menüden "Bu dersten yerine bilgisini kaldır" bağlantısı seçilirse iki durum oluşabilir; Eğer yerine bilgisi henüz kaydedilmemiş bir ekleme ise ilgili bilgi hemen kaldırılır. Eğer kaydedilmiş bir bilgi ise silineceğini belirtmek üzere "Yerine ders" kolonundaki metnin üzeri çizilir ve sarıya boyanır. Kaydedildiğinde yerine bilgisi kaldırılır.
Menüden "Yarıyıl içi not / Harf notu değiştir..." bağlantısı seçildiğinde seçili dersin yarıyıl içi yarıyıl sonu ve harf notları, onay tarihleriyle beraber, Şekil 14.4'te verilen örnekteki gibi değerlendirme adı-türü, notu, notların onaylanma tarihi ve bu modülden değiştirilmesi durumunda girilen açıklama ile birlikte görüntülenir. Ayrıca, panelin en altında harf notu aralıkları da gösterilir.
Şekil 14.4 Dersin notlarını değiştirme açılır penceresi.
Notlardan herhangi birisi, birkaçı yada onay
seçim kutusunda değişiklik yapılıp Tamam düğmesi tıklandığında ana ders
listesinde seçili dersin Not kolonu açık-sarı olarak işaretlenir ve
"Değişiklikleri Kaydet" düğmesi görüntülenir. Dersin notları açılır
penceresi sadece ESOGÜ dersleri için aktiftir. Diğer üniversitelerden alınan
derslerin harf notları (diğer üniv. derslerinde yıl içi notların kaydı
tutulmaz) "Diğer üniversite dersinde değişiklik..." bağlantısı ile
değiştirilmelidir.
Onay seçim kutusunun işlevi biraz yanıltıcı olabilir. Çünkü sınav notlarının onayı ve onay tarihi o dersi alan tüm öğrenciler için geçerlidir. O nedenle, çok zorunlu haller dışında, burada sadece onayı verilmiş sınav notları değiştirilmelidir. Bir değişiklik yapıldığında da açıklama kolonuna tıklayıp gerekli açıklamaları (örneğin Fakülte Yönetim Kurulu kararını) girmek en doğrusudur.
SimpList modülünde not değişiklikleri, bazı
birimler dışında, geçmiş dönemlere yönelik olarak yapılmalıdır. Geçerli dönem
notları dersi veren öğretim elemanı tarafından akaogübs (AKADEMIK) modülünden
yapılmaktadır. SimpList modülü geçerli dönem olup olmadığına bakmak yerine
dersin harf notunun verilip verilmediğine bakar. Harf notu verilmiş derslerin
notları SimpList modülü tarafından değiştirilebilir. Harf notu verilmemiş
derslere ancak İZ, MU ve SD notları verilebilir. MU ve SD notu verilen
derslerin notları tekrar değiştirilemez. Çünkü bu dersler aslında açılmamış
dersler de olabilir, yani not yüzdeleri yoktur. Açılmış ve alınmış bir dersin
harf notu MU veya SD yapıldığında öğrencideki ders kaydında dönem bilgisini
kaybedecek değişiklikler yapılmaktadır, geri dönüşü yoktur. Ancak MU,SD notlu
ders silinip ilgili dönemden tekrar ekleme yapılarak tamir edilebilir.
OGR_TAKVIMSIZ_NOT_K yetkisine sahip kullanıcılar, takvime ve harf notunun verilmiş olup olmadığına bakmaksızın dersin tüm notlarını ve onay tarihlerini değiştirebilir. O nedenle bu yetki sadece öğrenci işleri personelinde olmalıdır. Genel olarak, onay tarihi girilmemiş notları öğrenciler sistemden göremez. Ancak onay tarihi ders bazındadır. Yani bir öğrencinin notunu görmesi diğerlerinin görmemesi sağlanamaz. O nedenle onay tarihinin girilmesi sırasında bu durum göz önüne alınmalıdır, gereksiz ise onay tarihi girilmemeli/değiştirilmemelidir.
Değiştirilen notların kaydedilmesi sırasında Şekil 14.5'te
verilen işlemler izlenir. Özet olarak; Not kaydedildikten sonra öğrencinin
dersteki Geçme Notu yeniden hesaplanır. Geçme notu ardından öğrencinin dersteki
harf notu bulunur ve yerine yazılır. Harf notu, harf altsınıları sabit olan
fakülte ve yüksekokullarda farklı, diğerlerinde farklı şekilde bulunmaktadır. Daha
sonra öğrencinin Genel Not Ortalaması (GNO) yeniden hesaplanır. En son olarak
da, varsa öğrencinin ikinci dalı için GNO hesaplanır. Notu değişen ders
öğrencinin anadalında da olsa bu sonuncu işlem yapılır, çünkü öğrencinin
anadalındaki ders aynı zamanda ikinci dalındaki Mez-Deg gruplarında da olabilir.
Bu durum tersinden geçerli değildir. Yani öğrencinin ikinci dalı için aldığı
bir ders anadalında geçerli sayılmamaktadır.
Şekil 14.5 Dersin değişen notlarını kaydederken SimpList
modülünce izlenen yol.
Harf notu altsınırları şimdilik SimpList modülünden girilememektedir. Bu işlem akaogubs modülünden yapılabilmektedir.
Menüden "Açılmış derslerden ekle..." bağlantısı seçildiğinde Bölüm 3'te bahsedilen DKOD Ders Seçme Açılır Penceresi görüntülenir. Bu açılır pencerede arama yapılıp bulunan ders tıklandığında, ders öğrencinin ana ders listesine eklenir ve kaydedilmeye hazır olduğu açık-sarı boyanarak belirtilir. Dersle ilgili diğer değişiklikler (not ve yerine ders değişiklikleri) kaydedildikten sonra yapılabilir. Öğrencinin ikinci dalı varsa ve yeni ders ikinci dala eklenecekse, sekmenin üst solundaki bölgedeki dal seçme kutularından 2.dal'ı seçmeyi unutmayınız. Eğer kutulardan ikisi de seçili değilse anadalına eklendiği varsayılır. Aynı durum diğer üniversite dersi eklerken de geçerlidir.
Açılır menüden "Dersi sil" bağlantısı tıklanırsa daha önceden kayıtlı ders silinecek olarak işaretlenir (üzeri çizilip açık-sarıya boyanır), yeni eklenmiş ama kaydedilmemiş ders ise listeden hemen silinir.
Diğer üniversitelerden alınan dersleri ESOGUBS sistemine ekleme ve değişiklikleri yapmak için sırasıyla "Diğer üniversite dersi ekle..." ve "Diğer üniversite dersinde değişiklik..." açılır menü bağlantıları kullanılır. Her ikisi de Şekil 14.6'te gösterilen açılır pencereciği görüntüler.
Şekil 14.6 Diğer üniversite dersleri ekleme/değiştirme
pencereciği.
Eğer ana ders listesinde seçilen ders diğer üniversite dersi ise "Diğer üniversite dersinde değişiklik..." bağlantısı aktif olur ve tıklandığında dersin bilgileri açılan pencerecikte görüntülenir. "Diğer üniversite dersi ekle..." seçeneği ile yeni ders eklenmek istenirse, ana ders listesinin sonuna boş bir satır eklenir ve pencereciğin çoğu veri kutusu boş olarak açılır. Daha önce bir ders eklenmişse kolaylık olması açısından üniversite, bölüm ve yıl-dönem kutuları değiştirilmez. Böylelikle birkaç diğer üniversite dersi arka arkaya eklenebilir. Değişikler yapıldıktan ve "Tamam" tıklandıktan sonra bu pencerecik kapandığında girilmiş olan veriler yeni eklenen boş satıra aktarılır. Kaydedilmeye hazır olduğunu belirtmek için de açık-sarıya boyanır. Eğer sağ-üst köşedeki X işareti ile pencerecik kapatılırsa, yeni eklenen boş satır silinir.
Diğer üniversite dersi ekleme/değişikliklikleri şu şekilde yapılır;
İşlem Menüsündeki “Bu ders için Ek-Sınav kaydı ekle...” bağlantısı ise Şekil 14.7’te gösterilen panelin açılmasına ve girilen bilgilerle Ek-Sınav oluşturulmasına yarar. Aynı panel menüdeki “Ek Sınav kaydında değişiklik...” bağlantısı yardımıyla. daha önce eklenmiş Ek-Sınav’ların bilgilerini değiştirmek için de kullanılır.
Şekil 14.7 Ek/Af/Tek sınav kaydı ekleme/değiştirme
paneli.
Ek-Sınav, Tek-Ders-Sınavı ve Af-Sınavları ilgili yönetmelik maddeleri dışında temel olarak aynı oldukları için aynı panel kullanılarak eklenirler. Burada öğrencinin ders kayıtlarına eklenen ders satırı gerçekte açılan bir ders değildir, yani sınav tarihleri, ara sınavları ve öğrencileri vb yoktur. Sadece yapılan sınav sonucu belirlenen harf notunu tutmak ve daha sonra GNO hesaplayabilmek için bir kayıttır. Panelde “Yönetmelik Maddesi”nin seçimi daha sonra öğrencinin haklarını belirleyeceği için önemlidir. Ek/AF/Tek sınavlar çoğunlukla Excel dosyası aktarma penceresi yardımıyla toplu halde sisteme girildiğinden bu panele çoğunlukla ihtiyaç olmaz. Girilen veriler değiştirilmek istendiğinde kullanılabilir.
ESOGÜ öğrencileri üniversiteye geldikleri ilk günlerde bazı muafiyet sınavlarına girerler. Bunlar Yabancı Dil Hazırlık okulunun yaptığı seviye belirleme ve muafiyet sınavları olabileceği gibi teknik bazı derslerden (örneğin Bilgisayar Teknolojileri dersleri) mufaiyet sınavı da olabilir. Öğrenci İşleri personelinin herbir bölüm için muafiyet sağlanmış/sağlanacak dersleri ve kodlarını hatırlaması ve öğrencinin Mez-Deg dersleri içinden seçmesi kolay olmadığı için bu dersler bölüm bazlı olarak önceden özel bir tabloya doldurulmuştur. Böylelikle bir muafiyet kazanan öğrenciye bu küçük tablodan seçilen dersler hemen MU harf notu ile aktarılabilir.
Şekil 14.8 bir öğrenci için bölüm tarafından belirlenmiş muaf olunabilecek dersleri göstermektedir. Panelde 2 grup ders görünmektedir. Gruptan herhangi bir dersin satırı çift tıklandığında aynı gruptaki tüm dersler öğrenciye MU notu ile eklenir.
Şekil 14.8 Muaf ders ekleme paneli.
İşlem menüsündeki “Dersin dalını değiştir...” bağlantısı ise seçili dersin anadal, çiftdal/yandal, yabancı dil hazırlık, GNO’ya girmeyen (keyfi alınmış), bilimsel hazırlık derslerinden birisi olmasını sağlamak için kullanılır. Bu bağlantı tıklandığında Şekil 14.9’te gösterilen bir panel açılır. Seçili ders anadal dersi ise (N işaretli) diğer seçeneklere ait satırlar burada kullanıcının yetkilerine bağlı olarak gösterilir. Örneğin kullanıcı hem öğrencinin hem anadal hem de ikinci anadal derslerini değiştirmeye yetkili ise (her iki birimde de OGR_DERSLER_K yetkisi) anadaldan ikinci dala ve ikinci daldan anadala aktarma seçenekleri görülür, aksi halde bu seçenekler görüntülenmez. Öğrencinin anadalında ders düzenleme yetkisi olan kullanıcı E ve B (GNO’ya girmeyen ders yap ve Bilimsel hazırlık dersi yap) seçneklerini görür. Ayrıca Yabancı Dil Hazırlık okulunda da yetkili ise H (Yabancı Dil Hazırlık dersi yap) seçeneğini de görür.
Şekil 14.9 Muaf ders ekleme paneli.
Seçim işleminden sonra dersler listesinde D kolonunda bu durum sarı arkaplan ile gösterilir. “Değişiklikleri Kaydet” düğmesi tıklandığında veritabanında da ayrıca yetki kontrolü yapılır ve istek gerçekleştirilir. (Not: YanAlan derslerinin kayıtlarının İkinci anadal gibi tutulduğu unutulmamalıdır).
Görüntülenen liste güncellenmek istendiğinde düğmesine tıklamak yeterlidir. Listeyi farklı
giriş parametreleriyle yenilemek için öncelikle parametreleri değiştiriniz.
Yeni listeyi yeni bir pencere yada sekmede görüntülemek için ise
düğmesini tıklayınız.
İstenilen satırlar görüntülenen listeden çıkarılabilir. Bu işlemler asıl veriyi değiştirmez, sadece görüntüleme ve kaydetme içindir.
Satırları silmek için öncelikle silinecek satırların
seçilmesi gerekir. Bunun için satırın solundaki seçme kutusu tıklanır. Çoklu
seçme için önce başlangıç (yada son) satır belirtilen çekilde seçilir. Daha
sonra klavyedeki Shift tuşu basılı haldeyken son (yada ilk) satır seçilir.
Aradaki tüm satırlar da seçilmiş olur. Seçili bir grup satırın arasından bazı
satır yada satır grupları çıkarılmak istenirse de benzer yöntem kullanılır yada
tek tek seçimler kaldırılabilir. Seçim işlemi bittikten sonra araç çubuğundaki (seçtiklerimi çıkar) düğmesi tıklanır.
Seçilmemiş olanların çıkarılması için ise
(seçmediklerimi çıkar) düğmesi tıklanır.
Seçerek silme işlemi aynı listede istenildiği kadar tekrar
edilebilir. Listeye yeni satır eklenemez. Ancak düğmesi ile listenin ilk haline dönülebilir.
Silme işlemleri sırasında liste istenilen kolonlara göre
sıralanabilir ve silme işlemine devam edilebilir. Hatırda tutulması gereken şey
ise bu işlemlerin sadece istemci (tarayıcı) tarafında gerçekleştiği, sunucuda
herhangi bir değişiklik yapılmadığıdır. Silme/sıralama işlemlerinden sonra
düğmelerinden birisi ile dosya üretilebilir.
Ancak
yada
düğmeleri tıklanırsa liste yeniden üretilir ve
yeni üretilen liste görüntülenmeden dosyaya gönderilir.
Listeler hiç görüntülenmeden yada
düğmeleri ile dosyaya aktarılabilir.
ile görüntülenen listeler ise, istenirse
üzerinde satır silme işlemleri yapılarak,
ve
düğmeleriyle dosyaya aktarılabilir. Uzun
listelerde (birkaç bin satır) doğrudan dosyaya yazdırma yöntemini tercih
ediniz. Çünkü tarayıcıda görüntüleme işlemi uzun sürebilir.
Hangi kolonların dosyaya aktarılacağı kolon başlıklarındaki seçme kutularıyla belirlenebilir. Liste ilk görüntülendiğinde tüm kolonlar seçili haldedir (varsayılan). İstenilen kolonlar dosyaya yazdırma işleminden bu kutular seçili-değil hale getirilerek çıkarılabilir. Bu işlem görüntülenen listeyi etkilemez, sadece dosyaya yazdırma için geçerlidir.
Listede görüntülenmeyen bir kolon listeye eklenemez. Doğrudan dosyaya gönderilen listelerde kolon seçme işlemi (şimdilik) yapılamaz.
Kolon genişliklerine bir sınırlama getirilmiştir ancak bu durum verinin tamamının orada olmadığı anlamına gelmez. Hücre verilerinin bir kısmı görüntülenen satırları daha geniş bir alanda okuyabilmek için her satırın başındaki sıra numarasına tıklayınız. Yeni bir pencere açılır ve satırın tüm hücreleri ayrı ayrı satırlarda görüntülenir.
SimpList'te üretilebilecek tüm listeler 0 nolu listede
görüntülenir. Bu liste ise Diğer -> Tüm Listeler menüsünden erişilir. Bu
liste bir liste-listesi olduğundan SimpList buna farklı davranır. Her satır
farklı bir listeyi tanımlamaktadır. Bir satırın solundaki seçme kutusu
tıklandığında o listede gerekli argümanları girmek için kutucuklar
görüntülenir. Argümanlar girilip düğmesi tıklandığında seçili liste yeni bir
pencerede görüntülenir. Birden liste seçildiğinde en üstteki seçim dikkate
alınır.
Hiçbir liste seçilmediğinde argüman olarak kullanıcı adı
(sicil no) argümanı görüntülenir ve listenin en sağ kolonunda verilen
kullanıcının o satırdaki listeyi çalıştırma yetkisi olup olmadığına göre yeşil yada kırmızı
kilit resimcikleri görüntülenir. Bu liste ilk
görüntülendiğinde kendi kullanıcı isminizle açılır ve kendi liste çalıştırma
yetkilerinizi görürsünüz. Listeler her zaman geçerli kullanıcının (argüman ile
verilen kullanıcı değil)
yetkileriyle çalıştırılır. Çalıştırma yetkisinin olması listeyi tüm birimler ve
argümanlar için çalıştırabileceğiniz anlamına gelmez, yetki sınırlarınız
önemlidir.
Bir listeyi çalıştırma yetkiniz olduğunu gördükten sonra, yada bunu görüp çalıştırma denemesi yaptıktan sonra, listeyi hızlı erişim için menüleriniz arasına ekleyebilirsiniz.
Herhangi bir pencere (liste penceresi dahil) hızlı erişim için menüye eklenebilir. Bunun için önceki maddede anlatılan Tüm Listeler penceresinden ilgilendiğiniz listenin numarasını ve argümanlarını öğreniniz ve bir yere kaydediniz. Daha sonra;
i. Değer1 : "Staj Yapanlar" listesi 98 numaralı listedir.
ii. Değer2 : Bu liste iki adet argüman almaktadır; birim ve kayıt tarihi. İstenilen birim numarası ve tarih yazılabileceği gibi örnekte gösterildiği gibi değişken isimleri de kullanabilirsiniz. $userbirim kullanıcının birimini, $lastyear ise bir sene önceki aynı tarihi göstermektedir. Aralarında | karakteri (pipe) olacak şekilde giriniz.
iii. Parametre3 ve Değer3 bu listede kullanılmamaktadır, boş bırakınız.
Bu işlemlerden sonra SimpList penceresinde yarattığınız menü elemanını tıklayarak test edebilirsiniz.
Bu konuyu ayrıntılı bir şekilde Bölüm 6'dan inceleyebilirsiniz.
Bölüm 5'de ayrıntılı şekilde anlatıldığı gibi listelerin her kolonu için tıklama-hedef belirleme ayarları yapılabilir. Örneğin, kullanıcı adlarının da (sicil no) bir kolonda görüntülendiği bir listede kullanıcı adına tıklandığında kullanıcının yetkilerinin Yetki Ayarları penceresinde görüntülenmesini isteyebiliriz.
Bağlantılar için, hücre tıklanınca açılacak pencere/listenin hangi argümanları istediğini ve bu argümanların tıklanan satırda bulunabileceğinden emin olunuz. Örneğin öğrenci no kolonu olmayan bir listede Öğrenci Bilgileri penceresini açacak bir bağlantı kurmak saçma olur, çünkü Öğrenci Bilgileri penceresi argüman olarak öğrenci no alır.
Şimdi örnek olarak Sicil No kolonu olan bir listede bir hücre tıklandığında kullanıcının yetkilerinin görüntülenmesini sağlayan bir bağlantı kuralım. Liste no:305 (Birimin Personeli Listesi) Sicil No içeren bir listedir. Yetki Ayarları penceresi de argüman olarak Sicil No almaktadır.
Yani 1 nolu kolondan bir hücre tıklandığında tıklanan yerdeki değeri Yetki Ayarları penceresine argüman olarak kullanacağız.
Şimdi de öğrenci numaralarının bir kolonda görüntülendiği bir listeden Öğrenci Bilgileri penceresine bağlantı kuralım. Liste 302 (Danışmanı Olunan Öğrenciler) listesi böyle bir listedir. Ayrıca Öğrenci Numarasının görüntülendiği kolon ONO ismiyle decode edilmektedir.
Liste Bağlantıları penceresinde (yeni)Pencere olarak "proc" seçmeyiniz. Bu bağlantı sadece oldukça yetkili kullanıcılar içindir. Çünkü veritabanında yapılacak işlemler için ilgili veritabanı işlevlerinin /yazılımının da hazırlanmasını gerektirir. Normal kullanıcıların aşağıdaki örneği okuması gerekmez.
Proc cursor ve mesaj döndürür ancak cursor'un ilk satırının ilk alanı tıklanan hücrede görüntülenir, kalan kısmı görüntülenmez. Mesaj bir hata mesajı ise hücrede hata mesajı görüntülenir. Örnek proc için Liste no 500'e bakınız.
(yeni) seçeneği (seçim kutusu) bu işlev için kullanılmaz.
Genel liste bağlantıları tüm listeler için geçerli olup tanımlı kolon türü bulunduğunda çalışan bağlantılardır. Örneğin, genel bir ONO bağlantısı yaptığınızda (öğrenci no hücresi tıklandığında yapılacak işlev tanımlandığında) bu işlev tüm listeler için geçerlidir. Herhangi bir listede öğrenci no kolonu tıklandığında işlev yerine getirilir. Ancak liste için özel tanımlanmış bir işlev aynı kolona bağlıysa listenin bağlantısı önceliklidir, genel işlev çalıştırılmaz. Genel bağlantı kurulması Listeye Özel Bağlantılar ile aynıdır ancak kolonlar sınırlıdır. Ayarlar/çıkış -> Bağlantılar -> Genel Bağlantılar menüsü ile açılan "Veri tipine göre bağlantılar" penceresinde sistemde tanımlı olan ve bağlantı kurulması anlamlı olan kolon tipleri görüntülenir. Aşağıdaki şekilde görüldüğü gibi ONO ve BRM tipindeki kolonlar için genel bağlantı kurulmuştur.
Şekil 14.1’de derslerin sol tarafında görülen seçim kutularının halihazırda bir işlevi yoktur. Daha sonra planlanan değişiklik/geliştirmelerde kullanılacaktır. Bir dersi seçmek ve üzerinde işlem yapmak için en sağdaki kalem şeklinde olan resmi tıklayınız, ders otomatik seçilmiş olacaktır. Açılan işlem menüsünden işleminizi seçiniz.
Çok uzun sürebilen liste işlemleri vardır. Örneğin bir fakültenin tüm öğrencilerinin GNO’sunu hesaplama böyle bir işlevdir. Teknik ve güvenlik gerekçeleriyle bu işlem bitmeden ve sonuç liste oluşmadan tarayıcı-sunucu arasındaki bağlantı kesilebilmektedir. Bu gibi durumlarda SimpList penceresinde parametrelerin girildiği bölmenin en sağında (Yeni Liste, PDF ve XLSX düğmelerinin olduğu kısım) Arkaplan Liste düğmesi kullanılabilir. Bu düğme tıklandığında hazırlanacak olan liste veritabanı işlemi olarak arkaplanda başlatılır. Süreç devam ederken kullanıcının sisteme bağlı kalması gerekmez. Liste sonuçları kullanıcı adına arkaplanda, istendiğinde tarayıcıya gönderilmek üzere saklanır. Kullanıcıya ait (kullanıcının başlattığı) arkaplan listelerinin listesine bu düğmenin sağında belirecek olan mesaj/bağlantıdan yada Listelerim->Sunucudaki Listeleri menüsünden erişilebilir. Bu liste başlatılan işlemin ne durumda olduğunu gösterir. Eğer bitmiş ise “JobId” kolondaki bağlantı tıklanarak liste açılabilir. Listede satır sayısı fazla ise sadece 4000 satırı görüntüleneceğinden, listeyi görüntülemek yerine, doğrudan XLSX dosyasına atma seçeneği (“Liste” kolonu) kullanılmalıdır.
Arkaplan listeleri kullanıcının yetkilerine göre başlatılır. Kullanıcının bir listeyi üretme yetkisi varsa arkaplanda da çalıştırabilir. Yetkisi yoksa arkaplan işlemi yine başlar ancak yetkiler arkaplanda kontrol edildiğinden işlem hemen “!Hata: Yetersiz yetki.” mesajı ile kullanıcının bitmiş arkaplan listeleri kaydına atılır.
Örnek : Tüm Listeler SimpList penceresi açık iken arkaplanda çalıştırmak istediğiniz listeyi en solundaki seçim kutusunu tıklayarak seçiniz, parametreler bölümünden ilgili parametre kutularının belirdiğini görünüz. Aşağıdaki örnekte Sicil No parametresini isteyen 302-“Danışmanı olunan öğrenciler” listesi için parametreler kısmı görüntülenmektedir. İstenen parametreleri giriniz. Parametreleri kısmının en sağındaki (şekilde işaretli) Arkaplan Liste düğmesini tıklayınız.
Bu düğmenin sağında liste işleminin sunucuda başlatıldığına dair bir mesaj görüntülenir.
Bu mesaj metni aynı zamanda bir bağlantıdır. Tıklandığında kullanıcının (sizin) tüm arkaplan işlemlerinizi görüntüleyen 380-“Arkaplan liste işleri” listesi görüntülenir. Bitmiş arka plan liste işlemlerinin en sağ kolonunda “Bitti” durumu görüntülenir. Eğer işlemi başlatmada bir hata olduysa burada “!Hata:...” mesajı görüntülenir.
Bitmiş liste açılmak istendiğinde JobId kolonu (şekilde 65 bağlantısı) tıklanır ve liste 381 nolu “Arkaplanda hazırlanmış ID’si verilen liste”leri görüntüleyen liste aracılığı ile görüntülenir. Listelerin uzunluğu en başta belirlenemeyeceği için (TODO:satır sayısı daha sonraki geliştirmede eklenecek) kullanıcının uzun olacağını tahmin ettiği listeleri doğrudan XLSX dosyasına atması tavsiye edilir. Bunun için “Liste” kolonuna (şekilde 302-Danışmanı olunan öğrenciler) bağlantısı) tıklanır ve liste XLSX olarak kullanıcıya iletilir.
Not: 381 nolu “Arkaplanda hazırlanmış ID’si verilen liste” sadece bir aracıdır, listenin kendisi ile, özellikle liste içinde özel karakterler varsa, tıpatıp aynı olmayabilir. Liste başlığı farklı olabilir.
Bu özellik henüz optimizasyon/geliştirme/test aşamasında olduğundan ana başlıklar altında değil burada bahsedilmiştir. (TODO: arkaplan listelerini sunucudan silme işlemi eklenecek).
SimpList menüsünden “Optik Dosya Yükleme” seçeneğini tıklayınız (genellikle Araçlar menüsü altında). TXTImport.aspx penceresi açılır, bu pencere parametre almaz. Uygun formatta hazırlanmış text (metin) dosyası (optik tarayıcı çıktısı) Dosya... düğmesi tıklanarak seçilir. Seçim tamamlandığında dosya otomatik yüklenir ve bir ID no verilir. Bu ID no daha sonra ilgili dersin notlandırılması için akaogubs modülünde kullanılır.
Duyurular öğrenciye, öğrenci grubuna, personele yada personel grubuna bir durumu iletmek üzere kullanılan kısa metinlerdir. Bazı duyurular sistemin işleyişini değiştirebilir. Sizinle ilgili olan duyuruları görmek yada yeni duyuru eklemek için SimpList menüsünden “Duyurular” seçeneğini tıklayınız (genellikle Araçlar menüsü altında). Aşağıdaki şekilde gösterilen Duyurular penceresi açılır. Bu pencere iki kısımdan oluşmaktadır; yeni duyuru ekleme ve önceki duyurular.
Önceki duyurular bölümünde istenilen tarih aralığında verilen Kullanıcının görmesi gereken duyurular listelenir. Kullanıcı seçilmez ise kendi kullanıcı ID’niz varsayılır. Tarih aralığının da varsayılan değerleri vardır. Pencere ilk açıldığında son 1 yıl içindeki sizinle ilgili duyurular görüntülenir. Bunlar, kullanıcı ID’nize yapılan, birimin personeline yapılan, tüm üniversite personeline yapılan duyurulardır. İlave olarak sizin yaptığınız duyurular da görüntülenir.
Yeni bir duyuru eklemek için önce duyuru türü ve hedef kitle seçilmelidir.
Duyuru tür ve ilgili gruplar aşağıda listelenmiştir.
--1 Ders Kaydını engelleme (Hold) : Öğrencinin dönem ders kaydının öğrenci işlerinin bilgisi dışında yapılmasını engellemek için öğrenciye eklenir. Öğrenci, ders kaydı için öncelikle Öğrenci İşleri’ne gidip problemini çözmesi gerekmektedir. Bu duyuruyu eklemek için OGR_AKADEMIK_K yetkisi gereklidir.
--2 Ders kaydı sırasında uyarı : Öğrencinin ve danışmanının dönemlik ders kaydı sırasında görmesi için bu uyarı Öğrenci İşleri tarafından yapılır. Bu duyuruyu eklemek için OGR_AKADEMIK_K yetkisi gereklidir.
--3 Öğrenciye genel duyuru : Öğrenciye genel (sistemin işleyişini etkilemeyen) bir duyuru türüdür. Eklemek için BASIT_DUYURU yada OGR_AKADEMIK_K yetkisi gereklidir.
--4 Öğretim Elemanına Duyuru : Öğretim elemanının sicil-no’su girilerek yapılır. BASIT_DUYURU yetkisi gereklidir.
--5 Birim Öğretim Elemanlarına Duyuru : Birim öğretim elemanlarına duyuru yapmak için birim no girilmelidir. BASIT_DUYURU yetkisi gereklidir.
--6 Birim Öğrencilerine Duyuru : Birim öğrencilerine duyuru yapmak için birim no girilmelidir. BASIT_DUYURU yetkisi gereklidir.
--7 Tüm Öğretim Elemanlarına Duyuru : BASIT_DUYURU yetkisi gereklidir ve birim no olarak 99000 (ESOGUBS) girilir. Girilmese de, bu duyuru türü için otomatik olarak bu birim no seçilmektedir.
--8 Tüm Öğrencilere Duyuru : BASIT_DUYURU yetkisi gereklidir ve birim no olarak 99000 (ESOGUBS) girilir. Girilmese de, bu duyuru türü için otomatik olarak bu birim no seçilmektedir.
--9 Dersi Alan Öğrencilere Duyuru : Açılan-Ders-No ile verilen dersi alan öğrencilere yapılan duyurular için bu duyuru türü seçilir. BASIT_DUYURU yetkisi gerektirir. Açılan-Ders-No’yu hatırlamak zor olduğu için listeden ilgili tür seçildiğinde açılan Ders Arama Penceresi kullanılmalıdır.
Duyuru metni içinde HTML bileşenlerine yada resimlere izin verilmemektedir (güvenlik dolayısı ile), metin 400 karakter ile sınırlıdır, ancak, güvenli şekilde web-adresi ekleme düşünülmektedir.
--10 Danışmandan Öğrencilerine Duyuru : Akademik danışmanlar (öğretim üyeleri) danışmanı oldukları öğrencilere bu türde duyuru iletebilirler. Danışmanın sicil-no’su gereklidir. BASIT_DUYURU yetkisi ile eklenebilir.
--11 Belge engelleme (sadece kaydeden silebilir!) : Öğrenci İşleri birimi bazı öğrenciler için belge üretimini bazı şartlar tamamlanıncaya kadar engelleyebilir. Öğrenci bu birim ile görüşerek ve şartları sağlayarak bu kısıtı kaldırmadan öğrenciye resmi belge düzenlenemez. Bu duyuruyu eklemek için OGR_AKADEMIK_K yetkisi gerekir.
Yukarıda gerekli olduğu belirtilen yetkiler ilgili birim yada üst birimler için alınmış olmalıdır. Örneğin A bölümündeki öğrenciye bir duyuru ekleyebilmek için A bölümü yada üst birimde (Fakülte) yetkili olunmalıdır. Bu pencere yetki kontrolünü Ekle düğmesine basıldığında yapmaktadır.