You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Genel Bölümünde, "Rapor" menüsünün altında yer alır. "İlişkisel Serbest Rapor" bölümünde, birden fazla tablo veya görüntü birbiriyle ilişkilendirilerek kapsanan kayıtların raporlanması sağlanır. İlişkisel Rapor, bir ana tablo/görüntü (Stok Sabit Kayıtları, Cari Sabit Kayıtları, Personel Sabit Bilgileri gibi) ve bu ana görüntüye bağlı tablo/görüntüler (Stok Hareketleri, Cari Hesap Hareketleri, Personel Kartoteks Kayıtları gibi) şeklinde bağlantılarla oluşturulur. Rapor listelenirken de ana kayıtlar (Stok Sabit Bilgisi gibi) ve her bir ana kayda bağlı alt kayıtlar (ilgili stok kaydının hareketleri gibi) listelenir.

"İlişkisel Serbest Rapor" hazırlamak için, programın araç çubuğunda yer alan "Rapor" modülünün işaretlenmesi gerekir.



İlişkisel Serbest Rapor Sihirbazı

İlişkisel Serbest Raporlar, "İlişkisel Serbest Rapor Sihirbazı" aracılığıyla hazırlanır. Sihirbaz, raporun hazırlanması aşamasında kullanıcıyı yönlendirir.


Rapor Dosyası Belirleme

Hazırlanan raporla ilgili rapor sihirbazında yapılan tanımlamalar bir dosyada saklanır. İlişkisel Serbest Rapor Sihirbazının ilk sekmesi, dosya ismini belirlemek için kullanılır.



İlişkisel Serbest Rapor Sihirbazı Ekranı
Yeni Rapor DosyasıSihirbaz içinde, yeni ve sıfırdan bir rapor hazırlanacağı zaman kullanılan seçenektir.
Rapor Dosyasını DüzenleÖnceden hazırlanan ve saklanan bir raporun tekrar düzenlenmesi ya da düzenlenmeden tekrar rapor alınması için işaretlenmesi gereken seçenektir.

Dosya İsmi 

Sihirbazda tanımlamalara başlamadan önce, önceden tanımlanan rapor dosyası ya da yeni rapor dosyası üzerinde çalışmak için mutlaka bir dosya isminin belirtilmesi gerekir. Dosya ismi ve yeri, alanın sağ tarafında yer alan  butonu ile belirlenir. 

Önceden tanımlı bir rapor dosyası açıldığında aktif hale gelen butondur. Sihirbazda herhangi bir düzenleme yapılmayacaksa, bu buton yardımı ile doğrudan rapor çalıştırılabilir.


Geçerli bir dosya ismi belirlendiğinde aktif hale gelen butondur. Bu buton yardımı ile, sihirbazın sonraki sekmelerine geçilir. 



İlişkilendirilecek Görüntülerin Seçimi

İlişkisel Serbest Rapor Sihirbazının ikinci sekmesinde, ilişkilendirilecek görüntüler seçilir.




İlişkisel Serbest Rapor Sihirbazı Ekranı
Kayıtlı GörüntülerÜzerinde çalışılan veri tabanında kayıtlı tüm görüntüler, ekranın sol tarafında yer alan pencerede listelenir. Görüntüler, farenin sol tuşu ile çift tıklayarak ya da "sürükle bırak" yöntemiyle, sağ taraftaki seçilen görüntüler penceresine aktarılır.
Rapor AdıKayıtlı görüntüler içinden seçilen ilk görüntü adı, rapor adı olarak aktarılır. Rapor başlığı olarak kullanılacak bu bilgi, istenen şekilde değiştirilebilir.
Seçilen Görüntüler

Kayıtlı görüntülerden aktarılan görüntü isimleri, ekranın sağ tarafındaki alanda yer alır. İlk eklenen görüntü, ana görüntüdür. Sonradan eklenen görüntüler ise, ana görüntüye bağlı olarak düşünülür. Ek görüntülerin, ana görüntüye değil, alt görüntülerden birine bağlı olması için, ek görüntü, bağlanması istenen görüntünün içine sürüklenip bırakıldığında, görüntü bağlantısı otomatik düzeltilir.

Bu pencerede yanlış tanımlanan bir görüntüyü çıkarmak için, görüntünün "sürükle bırak" yöntemiyle "Kayıtlı Görüntüler" penceresine bırakılması gerekir. Çıkarılan görüntüye bağlı görüntüler ve bu görüntülerle ilgili, sihirbazın ilerleyen bölümlerinde yapılmış tanımlamalar varsa, bunlar da otomatik olarak çıkarılır. Bu yüzden, raporla ilgili diğer tanımlamalara geçmeden önce, görüntülerin ve ilişkilerin doğru olarak belirlenmesi önemlidir.

Örnek 1; 

İlk eklenen görüntü STGRUP (Stok Grup Kodları), sonrasında eklenen görüntüler STSABIT (Stok Kartları) ve STHAR (Stok Hareketleri) olduğunda;

İlk aşamada eklenen her iki görüntü de, STGRUP'a bağlı görünür. Ancak, STHAR görüntüsü, STGRUP'a bağlı olamaz. "Stok Kodu" alanı üzerinden sadece STSABIT ile ilişkilendirilebilir. Bu durumda, STHAR görüntüsü fare ile tıklanarak sürüklendikten sonra STSABIT görüntüsünün içine bırakıldığında, otomatik olarak STGRUP → STHAR ilişkisi iptal edilir ve STSABIT → STHAR ilişkisi oluşturulur.

Örnek 2;

STGRUP → STSABIT → STHAR şeklinde oluşturulan ilişkisel raporda, stok grup kodları, ana kayıtlar olarak listelenir. Her grup kaydı açıldığında, bu gruba ait stok kartları listelenir ve grup içindeki her bir stok kartı kaydı açıldığında, bu karta ait hareketler listelenir. STGRUP → STSABIT ilişkisini sağlayan saha, her iki görüntüde bulunan grup kodu sahasıdır. STSABIT → STHAR ilişkisini sağlayan saha ise stok kodu sahasıdır ve bu görüntülerin ilgili sahalar üzerinden ilişkilendirilmesi bir sonraki sekmeden yapılır.
Bu ilişkiyi, STSABIT → STGRUP → STHAR şeklinde yapmak yanlış olurdu. Çünkü, her bir STSABIT ana kaydı için sadece bir tane geçerli STGRUP kaydı vardır (Bir stok kartının sadece bir grup kodu olabilir). Bu şekilde tanımlanan ilişkisel raporda, stok kartları ana kayıtları listelenir ve her bir ana kayıt açıldığında grup kaydı izlenebilir. Aslında buna gerek yoktur. STSABIT görüntüsünde hazırda mevcut olan grup kodu sahası, STSABIT ana kayıtlarında bir saha olarak görüntülenebilir. İstendiği zaman, grup açıklaması da bir saha olarak görüntü ve listeye eklenebilir. Bu durumda, STGRUP için ayrı bir ilişki yaratmaya gerek kalmaz.

Dikkat, Raporun Performans Maliyeti

Raporda tanımlanan ana görüntü için bir rapor, ana görüntüye ait bir ilişki için her bir ana kayıt altında listelenecek alt kayıtlar için yeni bir rapor oluşturulur. 

Örneğin,

Raporda listelenen ana kayıt sayısı 10 ise ve bir ilişkili görüntü olup, her bir ana kayıt için de alt kayıtların mevcut ve listeleneceği düşünüldüğünde;

Ana kayıtlar için 1 + her bir ana kayıt için 10*1 = toplam 11 tane rapor oluşturulur. Listelenecek ana ve alt ilişki sayısı, açılacak rapor sayısını belirler. Bu sayılar arttıkça, rapor performansı etkilenebilir. Bu sebeple, doğru ilişki tanımları ve kayıt filtresi ile sonuç kümesi daraltması, optimum raporun elde edilmesini sağlar.

Kayıtlı Görüntüler Aç/Kapa

"Kayıtlı Görüntüler" penceresi ile "Seçilen Görüntüler" penceresi arasında bulunan bu ekran bileşeni sayesinde, "Kayıtlı Görüntüler" penceresinin kapatılarak, "Seçili Görüntüler" penceresinin genişletilmesi sağlanır. Kayıtlı görüntüler penceresi kapalı iken, tekrar aynı bileşen farenin sol tuşu ile tıklanarak açılabilir. 

İlişkilendirilecek görüntüler belirlendikten sonra bir önceki sekmeye geçilmesini sağlayan butondur.

İlişkilendirilecek görüntüler belirlendikten sonra bir sonraki sekmeye geçilmesini sağlayan butondur.


Görüntüler Arası Bağlantılar

Görüntü seçimi ve görüntü ilişkileri belirlendikten sonra, ilişkileri sağlayacak olan bağlantılar belirlenir. Bu sekmede, tüm görüntüler için bağlantıların tanımlanması gerekir.



İlişkisel Serbest Rapor Sihirbazı Ekranı 
Seçili Görüntü

Bir önceki sekmede seçilen ve ilişkilendirilen görüntülerin yer aldığı penceredir. Bu görüntüler içinden, bağlantısı tanımlanacak görüntü farenin sol tuşu ile bir kez tıklanarak seçilir. Ana görüntü için herhangi bir bağlantı tanımlanmaz. Eklenen görüntülerin bağlantıları tanımlanır. Eklenen görüntü seçildiğinde, eklendiği görüntüyle arasındaki bağlantının yapılacağı anlamına gelir.

Örneğin;

STSABIT → STHAR görüntüleri arasındaki bağlantının tanımlanması için STHAR görüntüsünün seçilmesi gerekir. Seçilen görüntü ismi, pencere başlığında görünür. Tablo ve Bağlantı Tablosu Sahaları; bağlanacak görüntü belirlendiğinde, bu görüntü "Tablo" bölümünde ve bağlantısı yapılacak ana görüntü, "Bağlantı Tablosu" bölümünde yer alır. Her iki bölümde yer alan seçim kutularındaki görüntülerde mevcut sahalar listelenir. Seçim kutularının sağ tarafında yer alan aşağı ok butonu yardımıyla açılan saha listesinden, ilişkilendirilecek olan sahanın/sahaların seçilmesi gerekir.

Oluşturulan bir ilişkinin eklenmesi ya da yanlış oluşturulan bir ilişkinin çıkarılması için kullanılan butonlardır.

Örnek 1;

STGRUP → STSABIT arasındaki bağlantı, STSABIT görüntüsündeki GRUP_KODU ile, STGRUP görüntüsündeki GRUP_KODU sahaları üzerinden yapılır. Bunun anlamı, raporda her bir grup ana kaydı için listelenecek kayıtlar, STSABIT.GRUP_KODU=STGRUP.GRUP_KODU eşitliğini sağlayan kayıtlardır (ilgili grupta yer alan stoklar). 


Örnek 2;

STSABIT → STHAR arasındaki bağlantı, STHAR görüntüsündeki STOK_KODU ile, STHAR görüntüsündeki STOK_KODU sahaları üzerinden yapılır. Bunun anlamı, raporda, her bir grup ana kaydı için listelenecek kayıtlar, STHAR.STOK_KODU=STSABIT.STOK_KODU eşitliğini sağlayan kayıtlardır (ilgili stokun hareketleri).



Örnek 3;

Görüntüler arasındaki bağlantının birden fazla saha gerektirdiği durumlarda, bağlantıyı sağlayan tüm sahaların görüntüler arasından karşılıklı olarak seçilerek eklenmesi gerekir.

Örnek 4;

SICIL (Personel Sabit Bilgileri) → KARTX (Personel Kartoteks Bilgileri) arasında bağlantı, (SICIL.ISYERI=KARTX.ISYERI AND SICIL.SICILNO=KARTX.SICILNO) eşitliği üzerinden kurulabilir. Bu durumda, önce her iki görüntünün ISYERI sahaları seçilerek eklenmesi, daha sonra da SICILNO sahaları seçilerek eklenmesi gerekir.

Bağlantılar belirlendikten sonra bir önceki sekmeye geçilmesini sağlayan butondur.

Bağlantılar görüntüler belirlendikten sonra bir sonraki sekmeye geçilmesini sağlayan butondur.


Filtreleme

Görüntülerdeki kayıtlar içinden filtreleme yapılarak sonuç kümesinin istenen kapsamda daraltılmasını sağlayan sekmedir. Herhangi bir kısıtlama yapılmayacaksa, boş bırakılarak bir sonraki sekmeye geçilebilir.

Filtrelemenin amacı, bir saha için veri tabanına kaydedilmiş bilgileri, verilen bir değerle karşılaştırıp, uygun kayıtları belirleyerek sonuç kümesini oluşturmaktır. Karşılaştırmanın yapılması için öncelikle, hangi sahadaki bilgilerin filtreleneceği, daha sonra hangi operatör kullanılarak karşılaştırma yapılacağı ve hangi değerle karşılaştırılacağı belirlenir.



İlişkisel Serbest Rapor Sihirbazı Ekranı
Seçili GörüntüÖnceki sekmelerde seçilen, ilişkilendirilen ve bağlantıları belirlenen görüntülerin yer aldığı penceredir. Bu görüntülerin içinden, kayıtları filtrelenmesi istenen görüntünün farenin sol tuşu ile tıklanarak seçilmesi gerekir.
Saha Adı

İlişkisel serbest rapor alınırken baz alınacak saha adı için kısıt verilen alandır. İlgili hücre üzerinde iken klavyede yer alan Boşluk Çubuğuna basılarak aktif hale gelen aşağı ok butonu, kısıt verilmesi istenen sahalara ulaşılmasını sağlar. Saha adı olarak "(" parantez de belirlenebilir. Parantez olarak belirlenen satırda başka bir tanımlama yapılmaz. "(" Parantez açma belirlendiğinde, otomatik olarak bir tane de ")" parantez kapatma satırı oluşur. Bu durumda, (",") satırları arasına satır ekleyerek, filtrenin iki parantez satırı arasındaki satırda tanımlanması gerekir.


Operatör

"Saha Adı" alanında belirlenen sahanın içerdiği bilgilerin, karşılaştırılacağı operatörün seçildiği alandır. Alanın sağ tarafında yer alan aşağı ok butonu ile seçenekler arasından tercih yapılır.

Eşittir:

İçeriği, sonraki adımda belirlenecek değere eşit olan kayıtlar anlamına gelir.

Küçük:

İçeriği, sonraki adımda belirlenecek değerden küçük olan kayıtlar anlamına gelir.

Küçük Eşit:

İçeriği, sonraki adımda belirlenecek değere eşit ya da bu değerden küçük kayıtlar anlamına gelir.

Büyük:

İçeriği, sonraki adımda belirlenecek değerden büyük olan kayıtlar anlamına gelir.

Büyük Eşit:

İçeriği, sonraki adımda belirlenecek değere eşit ya da bu değerden büyük kayıtlar anlamına gelir.

Benzer:

İçeriği, sonraki adımda belirlenecek değere benzer kayıtlar anlamına gelir.

SQL standartlarında kullanılan "%'" ve "_" arama karakterleri, SQL cümlelerinde kullanıldıkları şekliyle geçerlidir.

Arasında:

İçeriği, sonraki adımlarda belirlenecek olan Değer 1 ile Değer 2 arasında olan kayıtlar anlamına gelir.

İçinde:

İçeriği, sonraki adımda belirlenecek olan değerlerin birine eşit olan kayıtlar anlamına gelir. Değerlerin, "Değer 1" sahasında virgülle ayrılmış olarak, alfanümerik değerler tırnak içinde olacak şekilde verilmesi gerekir.

Farklıdır:

İçeriği, sonraki adımda belirlenecek değerden farklı olan (eşit olmayan) kayıtlar anlamına gelir.

Boş:

İçeriği boş olan kayıtlar anlamına gelir.

Dolu:

İçeriği dolu olan kayıtlar anlamına gelir.

Değer 1, Değer 2Belirlenen sahanın veri tabanında içerdiği bilgiler, bu sahalarda belirlenecek olan değerin/değerlerin, belirlenen operatörle kıyaslanıp sonuç kümesi oluşturulmasını sağlar.
Ve/VeyaÜzerinde bulunulan satırda tanımlanacak olan filtrenin, bir önceki satırda tanımlanan filtreye ne şekilde bağlanacağı belirlenir. Ve/Veya olmak üzere iki çeşit bağlantı şekli vardır. İki filtre birbirine "Ve" ile bağlantı yapıldığında, kaydın sonuç kümesinde yer alması için her iki filtredeki koşulu sağlaması gerekir. "Veya" ile bağlantıda ise, kaydın sonuç kümesinde yer alması için iki filtredeki koşullardan birini sağlaması yeterlidir. Çok fazla sayıda filtre tanımlanıyorsa, parantezler yardımıyla koşulların doğru sıralanmasının sağlaması gerekir.
DeğilParantez olarak belirlenen satırda aktif olan sahadır. Parantez içinde tanımlanacak olan filtreye uyan değil, uymayan kayıtların sonuç kümesinde yer alması için kullanılır.

Filtreler tamamlandıktan sonra bir önceki sekmeye geçilmesini sağlayan butondur.

Filtreler tamamlandıktan sonra bir sonraki sekmeye geçilmesini sağlayan butondur.


Ekran üzerinde iken, farenin sağ tuşu ile ekrana gelen seçeneklerin kullanımı aşağıdaki şekildedir.





Satır EkleGridin sonuna yeni bir satır eklemek için kullanılır. Klavyede yer alan "Insert" tuşu aynı işlev için kullanılabilir.
Araya Satır EkleGrid üzerinde, içinde bulunulan (seçili) satır ile önceki satır arasına boş bir satır açmak için kullanılır. Klavyede yer alan "Alt+Insert" tuşları aynı işlev için kullanılabilir.
Satır SilGrid üzerinde, içinde bulunulan satırın silinmesi için kullanılır. Klavyede yer alan "Delete" tuşu aynı işlev için kullanılabilir.
TemizleGrid üzerinde, içinde bulunulan hücredeki değerin silinmesi, hücrenin boşaltılması için kullanılır. Klavyede yer alan "Backspace" tuşu aynı işlev için kullanılabilir.
Yukarı Kaydır/Aşağı Kaydır Grid üzerinde, içinde bulunulan satırın yukarı/aşağı kaydırılması ile, üstündeki/altındaki satırla yer değiştirmesi için kullanılır. Bu seçenekler kaydırmanın mümkün olduğu satırlarda aktif hale gelir. Gridin alt kısmında bulunan yukarı/aşağı butonları da aynı işlev için kullanılabilir. Klavyede yer alan Ctrl+Yukarı Ok veya Ctrl+Aşağı Ok tuşları aynı işlev için kullanılabilir.
Cümleyi Göster

Oluşan filtrelerin, gridin altındaki bilgi sahasında cümle olarak gösterilmesini sağlar.

GönderGrid içeriğinin dışa (Excel, Word, Calculator, Writer, Grafik Hazırla, Akıllı Gride Gönder) aktarılmasını sağlar.


Raporda Gösterilecek Alanlar

Bu bölümde, raporda görüntülenmesi istenen sahalar seçilir.



İlişkisel Serbest Rapor Sihirbazı Ekranı
Seçili Görüntü

Önceki sekmelerde seçilen, ilişkilendirilen ve bağlantıları belirlenen görüntülerin yer aldığı penceredir. Bu görüntüler içinden, rapor alanları belirlenecek olan görüntünün, farenin sol tuşu ile bir kez tıklanarak seçilmesi gerekir.

"Seçili Görüntüler" penceresindeki her bir görüntü için raporda en az bir sahanın tanımlanması gerekir.
Görüntü BaşlığıSahaları belirlemek üzere seçilen görüntü için, raporda yer alacak olan başlıktır. Görüntü seçildiğinde, görüntü ismi ön değer olarak otomatik şekilde ekrana gelir. İstenen şekilde değiştirilerek oluşturulabilir.
Tekrarları Gösterme Görüntü için raporlanan kayıtlarda, seçilecek sahaların içerikleri birebir aynı olan kayıtların, tek seferde gösterilmesini sağlayan seçenektir.
Satır LimitGörüntü için raporlanan kayıtların ilk "n" tanesini rapora dahil etmek için kullanılan seçenektir. Belirlenen sayıda kayıt, rapora dahil edilir. Çok uzun olan raporlarda, rapor hazırlama aşamasındaki denemelerde, az sayıda kayıt ile deneme yapmak için kullanışlı olabilir.
Saha TipiRaporda iki tip saha yer alır. "Normal" tipli sahalar, görüntü sahalarından herhangi biridir ve sonuç kümesindeki kayıtlarda sahanın içerdiği bilgi olduğu gibi gösterilir. "Hesaplanan" tipli sahalar ise, tanımlanacak hesaplamalar sonucu oluşan bilgiyi gösterir. Hesaplanan sahalar, öncelikle boş bir saha olarak eklenir ve daha sonra hesaplanma şekli bir sonraki sekmede "Script Girişi" bölümünden tanımlanır.
Saha Adı"Normal" tipli sahalar için, alanın sağ tarafında yer alan aşağı ok butonu ile görüntü sahaları içinden seçim yapılır. Hesaplanan tipli sahalar için, CALC1, CALC2 ... şeklinde otomatik verilen isimler geçerlidir ve değiştirilemez.






Operatör
Kullanılmıyor.
Değer Tipi
Hesaplanan tipli sahalarda aktif olup, hesaplama sonucu oluşacak bilginin tipini belirlemek içindir. Kutucuğun sağ yanındaki aşağı ok butonuyla açılan listeden, String (Metin), Smallint (Tamsayı, -32768..32767), Integer (Tamsayı, -2147483648..2147483647), Word (Tamsayı, 0..65535), Boolean (Doğru ya da Yanlış değer alabilen), Float (Gerçek sayı), Currency (Para birimi), DateTime (Tarih, saat), Memo (Uzun metin) ve Graphic tiplerinden biri belirlenebilir. Sonuç bilgilerin doğru gösterilebilmesi için uygun saha tipinin seçilmesi önemlidir.
Kolon Adı
Raporda saha için görülecek olan başlıktır. İstenildiği gibi düzenlenebilir.
Sırala
Seçilen saha bilgilerinin sıralanması isteniyorsa işaretlenmelidir. Hemen yanındaki kutucukta sıralamanın hangi (Artan/Azalan) şekilde yapılması istendiği belirlenmelidir. Aynı görüntü için birden fazla sahada sıralama işaretlenirse, sahalar bir biri içinde ve verildikleri sırada, sıralama işlemine tabi tutulacaktır. Örneğin; Order by GRUP_KODU, STOK_KODU gibi bir cümle oluşması anlamlıdır. Bu örnekte GRUP_KODU sahası, STOK_KODU sahasından önce eklenen bir saha olmalıdır. Ancak Order by STOK_KODU, GRUP_KODU gibi bir cümle oluşması anlamlı değildir. Stok kodu içinde grup kodu sıralamasının anlamı olmayacaktır.
Ön Biçim
Kullanılmıyor.
Biçim
Nümerik ve tarih tipli alanlar için görüntü biçiminin belirleneceği sahadır.
Nümerik alan örnekleri;
Kullanılan karakterler, 0 (basamak değeridir, yoksa sıfır görünür), # (basamak değeridir, yoksa görünmez), . (ondalık ayıracıdır), , (binlik ayıracıdır).
Değer: 0.008; Biçim: #.00 ise, 0.01
Değer: 12.2; Biçim: #.00 ise, 12.20; Biçim: #.## ise, 12.2
Değer: 8756.35; Biçim: #,###.00 ise, 8,756.35
Değer: 8756987; Biçim: #,###.00 ise, 8,756,987.00
Tarih alan örnekleri;
Kullanılan karakterler, d (gün değeri), m (ay değeri), y (yıl değeri)
Biçim: dd/mm/yyyy ise, 13/07/2005; Biçim: dd/mm/yy ise, 13/07/05
Ondalık Sistemi
Kullanılmıyor.
Ondalık
Kullanılmıyor.
Gizli
Hesaplanan sahalarda kullanılacak olan görüntü sahaları mutlaka rapora eklenmelidir. Bu sahalar, raporda görüntülenmek istenmeyip sadece hesaplamalarda kullanılacak ise, gizli seçeneğiyle işaretlenip görüntülenmemesi sağlanabilir.
Ekle/Çıkar
!worddav5c0d60f91f011069be1d82b41b89f92d.png|height=27,width=26!Tanımlanan sahanın rapora eklenmesi için, tanımlamalar yapıldıktan sonra ekle butonuna tıklanmalıdır. Eklenen saha sağ alt köşede yer alan saha listesi penceresinde izlenebilir. Bu pencerede yer alan sahalardan, raporda görünmesi istenmeyen ise, pencere içerisinde seçilerek ve çıkar butonu yardımıyla rapordan çıkarılabilir. Sağ alt köşede yer alan saha listesi penceresinden çift tıklanarak seçilmiş olan bir saha için tanımlamalarda değişiklik yapılıp ekle butonuna basıldığında, seçili sahanın tanımı güncellenecektir.
Tümünü Ekle/Çıkar
!worddav6e6b5bc7f924d9d94ed002f4bf71245a.png|height=27,width=27!Seçili görüntünün tüm sahalarını tek seferde rapora eklemek için tümünü ekle butonu kullanılabilir. Rapora eklenmiş ve sağ alt pencerede yer alan tüm sahaların rapordan çıkarılması için ise, tümünü çıkar butonu kullanılabilir.
Saha Yeri Değiştirme
Sağ alt köşede yer alan saha listesi penceresine eklenen sahaların raporda gösterilme sırası değiştirilmek isteniyorsa, ilgili sahanın üzerine mouse ile bir kez tıklayarak saha seçilmeli, Ctrl+Yukarı Ok ve Ctrl+Aşağı Ok kısa yol tuşları yardımıyla yukarı/aşağı kaydırma yapılmalıdır.

Hesaplama Sahaları Ekleme

Raporun istenen sütunlarında hesaplama sonucu değer göstermek mümkündür. Hesaplanan kolon ekleneceği zaman, öncelikle bu bölümde boş bir kolon yaratılmalıdır. Hesaplama için tanımlanan sahanın, Saha Tipi : Hesaplanan olmalıdır. Saha tipi hesaplanan olarak belirlendiğinde, Saha Adı : CALC1, CALC2, .... CALCn olarak, birden fazla hesaplanan saha olması durumunda ardışık olarak numaralandırılmış şekilde otomatik getirilecek ve değiştirilemeyecektir. Hesaplanan saha için, hesaplama sonucu oluşacak değerin tipi, Değer Tipi seçeneğinde belirlenmelidir. Kolon Adı ve Biçim, istenildiği şekilde belirlendikten sonra, saha rapora eklenmelidir.
Bu aşamada, hesaplama yapılmak üzere boş bir kolon oluşturulmuştur. Bundan sonraki bölümde, hesaplama şeklini tanımlayacak olan VBScript kodu yazılması gerekir. VBScript kodu, sonraki sekmede yazılabilmektedir.
Rapora eklenen sahaların tanımlamaları tamamlandıktan sonra, ekranın alt kısmında aktif olan, Geri butonu ile, bir önceki sekmeye, İleri butonu ile, bir sonraki sekmeye geçmek mümkündür.

Script Bölümü


Bu bölümde, rapora küçük program parçacıkları ile müdahale etmek mümkündür. En önemli kullanım alanı ise, hesaplama sahalarındaki hesaplamaların ne şekilde yapılacağının tanımlanmasıdır. Bu sekmede herhangi bir tanımlama yapılması zorunlu değildir. Bir hesaplama sahası ya da raporun kendi normal algoritması içinde yapılması istenen farklı bir işlem yoksa, bu bölüm boş bırakılarak geçilebilir.

Olay Bazlı Programlama

Raporun tanımlamaları tamamlandıktan sonra, istenen rapor ard alanda program tarafından oluşturulmaktadır. Raporun oluşturulması sırasında ve henüz kullanıcının ekranına gelmeden önce, yazılan program parçacıklarının çalışarak raporu şekillendirmesi sağlanabilir. Yazılacak program parçacığı, rapor oluşturulması sırasında meydana gelen olaylar sırasında çalışacaktır. Örneğin, raporun bir satırı tamamlandığında, o satırla ilgili bir hesaplama işlemi yaptırılabilir. Dolayısıyla rapor oluşturma sırasında her bir satır tamamlanması, program parçacığının yazılması gereken bir olay olarak düşünülebilir.
Geçerli Olaylar
Rapor oluşturulması sırasında meydana gelen tüm olaylar, kullanıcıya açık değildir. Kullanıcı ancak bu ortamda kendisine açılmış olan olaylar için kod geliştirebilmektedir. Script editörde yazılan kod parçacığının öncelikle mevcut olaylardan hangisi için yazılacağı belirlenecektir. Seçilen olay, her meydana gelişinde, yazılan kod bir kez çalışacaktır. Örneğin, satır tamamlanması olayı için yazılan kod parçacığı, raporun her bir satırı tamamlandığında, bir kez çalışacaktır.

Rapor Olayları


Öncelikle sol taraftaki pencerede yer alan ve kullanıcıya açılmış olan olaylardan hangisi için script yazılacağı belirlenmelidir. Script yazılması istenen olay bu pencereden seçildikten sonra, bu olayla ilgili script'in yazılabilmesi için sağ taraftaki script bölümüne geçilebilir.

OnReportInit olayı
Ana rapor başlangıcı öncesidir.
OnReportEnd olayı
Ana rapor bitişi sonrasıdır.
Mevcut Görüntüler
İlişkisel Serbest Rapor'da seçilerek ilişkilendirilen her bir görüntü için bir rapor (grid – ızgara) açılacağı belirtilmişti (bknz: İlişkilendirilecek Görüntü Seçimi). O nedenle her bir görüntünün raporu için ayrı ayrı olay belirlemek gerekmektedir. Bu bölümde, hangi görüntünün raporuna ait olay(lar) için script yazılacağı belirlenmelidir.
OnGridInit olayı
Seçilen görüntünün raporunda, her bir grid (ızgara) yaratılması öncesidir.
OnRowInit olayı
Seçilen görüntünün raporunda, grid içindeki her bir satırın yaratılması öncesidir. Dikkat; grid satırı yaratılması öncesinde, satırdaki değerler henüz oluşmamıştır. Satırdaki değerler kullanılarak yapılacak işlemler için bu olay tercih edilmemelidir.
OnRowEnd olayı
Seçilen görüntünün raporunda, grid içindeki her bir satırın oluşturulması bitimidir. Satırdaki veri tabanından okunan değerler oluşmuş olacağından, bu değerler kullanılarak yazılacak olan hesaplama işlemleri için en uygun olaydır.
OnGridEnd olayı
Seçilen görüntünün raporunda, her bir grid (ızgara) bitimidir.
Hangi olay için script yazılacağı seçildikten sonra, sağ taraftaki kod penceresine geçilebilir.
Dikkat, sekme ilk açıldığında, OnReportInit olayı seçili gelmektedir. Başka bir olay seçilmeksizin yazılan kod, OnReportInit olayı için geçerli olur.
Sahalar;
Sol tarafta bulunan penceredeki sahalar sekmesi, yardım amaçlı olarak rapor için tanımlanmış sahaları gösterir.

Scripting (Kodlama)

Scripting bölümünde, VBScript sentaksı kullanarak kod yazılması beklenmektedir. Yazılan kod parçacığı ancak rapor oluşturulması sırasında algılanarak çalıştırılacaktır. Hatalı yazım var ise, raporda hata oluşacaktır.
Programlama Elemanları
VBScript ile kullanılabilen, If Then Else, Sub, Function, Select Case, For Next, Do Loop gibi programlama elemanları geçerlidir. Bu dökümanda VBScript ile program yazımı ve sentaks standartları anlatılmamaktadır. Bu bölümü kullanacak kişilerin bu bilgiye sahip olduğu varsayılmaktadır.

Geçerli Nesneler

İlişkisel Serbest Rapor için script yazılabilecek olan bu ortamda, ilişkisel serbest raporda mevcut bazı nesneler ile sahip oldukları özellik ve metotlar, kullanıma açılmıştır. Bu nesneler, raporu oluşturan nesneler olup, raporun, bir gridine, bir satırına, bir hücresine vb. bir değer atanması için ya da bir değer alınması için kullanılacaktır. Nesneler ile çalışıyor olmak için nesne tabanlı programlama prensiplerine aşina olunması gerekmektedir. Nesne tabanlı programlama ile ilgili detay bilgi bu dokümanda verilmeyip, konunun kullanıcı tarafından bilindiği varsayılmaktadır.
Netsis Code Insight
Bu pencerede, Ctrl+Boşluk kısa yol tuşları ile, ortamda kullanılabilecek nesneler görüntülenir. Kullanılacak nesne bu pencereden seçilip, kodlama bölümüne aktarılabilir.

Nesnenin içerdiği özellikler ve metotlar da yine ctrl+boşluk kısa yol tuşlarıyla getirilmeye devam edilebilir. Bu özellik kullanılarak, kullanılacak nesne ve özellikler kolaylıkla belirlenebileceği gibi, elle teker teker yazılmasına da gerek kalmayacaktır.

NNRREPORT Nesnesi
İlişkisel serbest raporda, açılan her bir raporun (ana görüntü ve ilişkili tüm görüntüler için açılan tüm raporlar), rapor gridi (ızgara), grid içindeki satırlar, satırlardaki hücreler ve hücrelerin değerlerini barındıran nesnedir. NNRReport.ActiveGrid nesnesi, üzerinde bulunulan gridin özelliklerini, NNRReport.ActiveGrid.ActiveRow nesnesi ise, üzerinde bulunulan satırın özelliklerini kapsar.
Query Nesnesi
Seçilen olay anında, rapora bir SQL cümlesi yazarak sonuç döndüren kod parçacığı hazırlayabilmek için kullanılır. Query.SQL özelliği kullanılarak farklı bir SQL cümleciği çalıştırılabilir. Dönen sonuç, raporun bir hücresine ya da başka bir bölümüne atanabilir.
Dikkat; SQL cümlecikleri, seçilen olay her gerçekleştiğinde çalışacaktır. Örneğin, satır sonu için bir SQL cümlesi yazılmışsa, her satırda çalışacaktır. Bu işlem raporun performansını büyük ölçüde düşürecektir.

Geçerli Nesnelerin Özellikleri ve Metotları Kullanımı

Scripting bölümünde kullanıma sunulan nesnelerin içerdiği özelliklerin ve metotların ne şekilde kullanılması gerektiği Nesne Tarayıcısı yardımı ile izlenebilir.
Nesne Tarayıcısı
Scripting bölümünün araç çubuğunda yer alan bu buton yardımı ile, kullanıma açık nesnelerle ilgili bilgi alınabilir.

Kullanılan Kütüphaneler
Ortamda kullanımına izin verilen nesneler, farklı kütüphanelerden gelmektedir. Netsis'in hazırlamış olduğu nesne kütüphaneleri, programların kurulumu sırasında, ...\NETTLB adlı klasöre aktarılır ve işletim sistemine register edilir. Ancak bu şekilde yüklenmiş ve register edilmiş kütüphanelerin nesneleri kullanılabilir.
Hangi kütüphaneden gelen nesne ile ilgili bilgi alınmak isteniyorsa öncelikle bu kütüphane listeden seçilmelidir.
Örneğin; İlişkisel Serbest Rapor için Scripting ortamında iki tane nesne mevcuttur. Bu iki nesne iki farklı kütüphaneden gelmektedir. NNRReport nesnesi, NNRRPT.TLB isimli kütüphaneden, Query nesnesi ise, NETSISVCL_3_0.TLB kütüphanesinden gelmektedir.
Ortamda kullanımına açılan başka nesneler olsaydı, kütüphane listesinde, bu nesnelerin içinde bulunduğu kütüphaneler de izlenebilecekti.
Kayıtlı Sınıflar
Nesne tabanlı mimaride, nesneler (object), sınıflardan (class) türetilmektedir. Yani sınıflar, nesnenin tanımıdır. Nesne ise, ilgili tanımın kullanımıdır. Seçilen kütüphanenin içerdiği ve ortamda kullanıma açık nesnelerin türedikleri sınıflar, bu bölümde listelenir.
Örnek; NNRReport nesnesi, INNRReport sınıfından türetilmiştir. INNRReport sınıfı seçilerek, NNRReport nesnesinin sınıfında tanımlı özellikleri ve metotları izlenebilir.
Örnek; NNRReport nesnesinin içerdiği, ActiveGrid (üzerinde bulunulan grid) nesnesi, IGrid sınıfından türemiştir. ActiveGrid ile kullanılabilecek olan, sınıfında tanımlı özellik ve metotlara, IGrid sınıfı seçilerek ulaşılabilir.
Örnek; NNRReport.ActiveGrid nesnesinin içerdiği, ActiveRow (üzerinde bulunulan satır) nesnesi IGridRow sınıfından türemiştir. ActiveRow ile kullanılabilecek olan, sınıfında tanımlı özellik ve metotlara, IGridRow sınıfı seçilerek ulaşılabilir.
Sınıf Üyeleri
Kullanılan kütüphane ve özellikleri izlenmek istenen sınıf seçildiğinde, sınıfın içerdiği tüm özellik ve metotlar, ..... Sınıfı Üyeleri başlıklı, sağ üst bölümdeki pencerede izlenebilecektir. Bu dökümanda geçerli nesnelerin tüm özellik (property) ve metotları (procedure, function) hakkında bilgi verilmemektedir. Özellik ve metotlar, ingilizce olarak isimlendirilmiş olup, isimleri, işlevleri hakkında bilgi vermektedir.
Parametreler
Kullanılan kütüphane ve özellikleri izlenmek istenen sınıfın herhangi bir özellik ya da metodu işaretlenerek seçildiğinde, sağ alt pencerede, özellik ya da metot kullanıldığında, dönen ve istenen parametreler izlenebilir.
Dönüş Parametresi
Seçilen sınıf üyesi kullanıldığında, ne tip bilgi döneceğini söylemektedir.
Örnek; IGridRow sınıfının Index özelliği, isminden de anlaşılacağı gibi, üzerinde bulunulan satır numarası bilgisini, dönüş parametresi olarak Long (tamsayı) cinsinden döndürmektedir.
Örnek; IntXQuery (Query nesnesinin türediği sınıf) sınıfının, Open metodu, isminden de anlaşılacağı gibi, yazılan SQL cümlesinin çalıştırılması sonucu oluşacak sonuç kümesinin açılmasını sağlamakta olup, dönüş parametresi Void, yani yoktur. İşlemi yapmakta ve herhangi bir sonuç döndürmemektedir.
Yardım
Parametreler penceresinde bulunan bu bölümde ise, seçilen sınıf üyesi kullanılırken temin edilmesi gereken değişkenler izlenmektedir.
Örnek; IGridRow sınıfının ColByName özelliği, isminden de anlaşılacağı gibi, satırdaki belli bir kolonun (hücrenin) içeriğini döndürecektir. Ancak hangi hücrenin bilgisinin döndürülmesi istendiği, kullanımda, parametre olarak kolon ismi gönderilmek suretiyle belirtilmelidir. Bu özellik kullanıldığında, nesneden programa dönecek olan içerik, dönüş parametresi bölümünde Variant (değişken) tipli olarak izlenebilir. Bunun nedeni kolon içeriğinin ne tip bilgi içerdiği bilinmediğinden ve herhangi bir tipe sahip olabileceğinden dolayıdır. Yardım bölümünde ise, kullanım sırasında temin edilmesi gereken parametre (ColName - kolon ismi) bilgileri izlenebilir.
Parametre Adı
Sınıf üyesi kullanılırken gönderilmesi gereken parametrenin adıdır.
Tipi
Sınıf üyesi kullanılırken gönderilmesi gereken parametrenin veri tipidir.
Varsayılan
Sınıf üyesi kullanılırken gönderilecek parametrenin, nesne tanımında varsayılan değeri olup olmadığıdır.
Seçmeli
Sınıf üyesi kullanılırken gönderilecek parametrenin, gönderilmesi seçimli olup olmadığıdır.

Script Örnekleri

Örnek-1
Stok hareketlerini gösteren raporda, Miktar isimli, hesaplanan bir kolon tanımladığımızı ve bu kolonda, giriş hareketleri için stok hareketindeki miktarı olduğu gibi, çıkış hareketleri içinse, miktarı eksi değeriyle göstermek istiyoruz.
Seçilen Görüntü : STHAR
Seçilen Olay : OnRowEnd
Kod :
if NNRREPORT.ActiveGrid.ActiveRow.ColByName("STHAR_GCKOD")="C" then
NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC1")=
-1*NNRREPORT.ActiveGrid.ActiveRow.ColByName("STHAR_GCMIK")
else
NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC1")=
NNRREPORT.ActiveGrid.ActiveRow.ColByName("STHAR_GCMIK")
end if
Kodun anlamı : İlişkisel Serbest Raporun aktif gridindeki aktif satırın,
STHAR_GCKOD (stok hareketinin giriş/çıkış olduğunu belirleyen sahası olup G/C değerlerini almaktadır) isimli sahası değeri "C" ise,
İlişkisel Serbest Raporun aktif gridindeki aktif satırın, CALC1 (Miktar için tanımlanmış hesaplanan sahanın program tarafından atanan ismi) isimli sahasının değerini, İlişkisel Serbest Raporun aktif gridindeki aktif satırın, STHAR_GCMIK (stok hareketinin miktarının saklandığı saha) isimli sahasının değerini -1 ile çarparak oluştur.
STHAR_GCKOD sahası değeri "C" değilse ki "C" dışında sadece "G" olabilmektedir, STHAR_GCMIK sahasının değerini olduğu gibi, CALC1 isimli sahaya aktar.
Not : Raporda görüntülenmek istenen sahalar tanımlanırken, STHAR görüntüsünden STHAR_GCKOD ve STHAR_GCMIK isimli sahalar seçilmeli, ancak sadece hesaplamada kullanılacakları için Gizli olarak işaretlenmelidir.
Örnek-2
1.Örnekteki Miktar sahası dışında, bir de yürüyen bakiye sahası tanımlamak istiyoruz. Bu saha her satırda kalan stok bakiyesini gösterecektir. Gridin ilk satırında, miktar olduğu gibi yazılacak, takip eden satırlarda ise, toplanarak ilerletilecektir. Bakiye isimli hesaplanan saha tanımlanmıştır.
Seçilen Görüntü : STHAR
Seçilen Olay : OnRowEnd
Kod :
NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC2")=
NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC1")
if NNRREPORT.ActiveGrid.ActiveRow.Index>0 then
NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC2")=
CDbl(NNRREPORT.ActiveGrid.ActiveRow.ColByName("CALC2"))+
CDbl(NNRREPORT.ActiveGrid.Cell(5,NNRReport.ActiveGrid.ActiveRow.Index-1))
end if
Kodun Anlamı : İlişkisel Serbest Raporun aktif gridindeki aktif satırın, CALC2 (Bakiye için tanımlanmış hesaplanan sahanın program tarafından atanan ismi) isimli sahasına,
1.Örnekte tanımı verilmiş olan CALC1 sahasının değerini olduğu gibi taşı.
Eğer, İlişkisel Serbest Raporun aktif gridindeki aktif satırın, satır numarası sıfırdan büyük ise, yani raporda yer alan ilk satır değilde sonraki satırlar için,
CALC2 sahası değerine, bir önceki satırda yer alan CALC2 sahasının değerini ekle.
Not :
Cell (hücre) özelliği, gridin herhangi bir hücresindeki değeri döndürür. Cell özelliği, parametre olarak kolon numarası ve satır numarası bilgilerini almaktadır. Kolon numarası (örnekte : 5), CALC2 sahasının grid üzerinde bulunduğu kolonun sıfır tabanlı olarak numarasıdır. Satır numarası ise, aktif satırın numarası (index) -1, yani aktif satırdan önceki satırdır.
CDbl, ColByName ya da Cell özelliklerinden dönen variant (değişken) tipli bilgiyi, double (nümerik) olarak ifade etmek için kullanılmaktadır. Bu tip çevrim yapılmazsa dönen değer, metin olarak düşünülüp, toplama işlemi olarak, iki metin yan yana birbirine eklenecektir.

Araç Çubuğu ve Diğer Yardımcı Butonlar

Pencere Kapat/Aç
Pencerelerin etrafında yer alan bu butonlar ile, ilgili pencere kapatılarak, diğer pencerelere görüntüde daha çok yer açılması sağlanabilir. Yine aynı buton yardımıyla pencere geriye açılabilir.
Nesne Tarayıcısı
Bknz: Geçerli Nesnelerin Özellikleri ve Metotları kullanımı.
Kod Tamamla
Kullanılmıyor.
Kod İçeriği
Script editor ortamındaki ctrl+boşluk kısa yol tuşu ile aynı işlevi yapar. Bknz: Geçerli Nesneler/Netsis Code Insight.
Satıra Git
Uzun kodlar içinde istenilen bir satıra hızlı gidişi sağlar. Açılacak pencerede satır numarası verildiğinde, hızlı gidiş sağlanır.
Bul, Sonrakini Ara, Öncekini Ara, Değiştir;
Kod içinde istenen metni arama, bulunduktan sonra, sonrakini/öncekini arama, bulunan metni, istenen başka bir metinle değiştirme işlemlerini yapar.

Arama, büyük-küçük harf duyarlı, verilen metin kelime olarak, imleçten itibaren ve sadece seçili metin içerisinde, imleçten ileriye ve geriye olmak üzere yönlendirilerek yapılabilmekte olup, değiştirme işleminde, aynı şekilde aranarak bulunan metin parçacığı, değiştirilebilmektedir. Arama ve değiştirme işlemi, bir sefer yapıldıktan sonra, sonrakini/öncekini ara butonları ile tüm kod geneli devam ettirilebilmektedir.
Scripting bölümü tamamlandıktan sonra, ekranın alt kısmında aktif olan, Geri butonu ile, bir önceki sekmeye, İleri butonu ile, bir sonraki sekmeye geçmek mümkündür.

Üst Bilgi/Alt Bilgi Düzenleme


Üst Bilgi ve Alt Bilgi, rapor sonunda ve kırılımlarda, sütunlardaki değerlerin toplamını, ortalamasını vb. aldırmak için kullanılır.
Seçili Görüntü
Sol tarafta bulunan bu pencerede, önceki sekmelerde seçilen, ilişkilendirilen ve bağlantıları belirlenen görüntüler yer almaktadır. Bu görüntüler içinden, üst/alt bilgisi tanımlanacak olan görüntü, fare ile bir kez tıklanarak seçilmelidir.
Tanımlı Sahalar
Seçilen görüntü için, Raporda Gösterilecek Alanlar bölümünde tanımlanmış kolon bilgileri, sağ alt bölümdeki pencerede listelenecektir. Ancak daha önceden eklenmiş olan bu sahalar için alt/üst bilgi tanımlanabilir. Başka bir saha için tanımlama yapmak isteniyorsa, ilgili sahanın da Raporda Gösterilecek Alanlar bölümünden eklenmesi gerekir. Üst/Alt bilgisi tanımlanacak olan saha, bu penceredeki listeden çift tıklanarak seçilmelidir.

Alt Bilgi Kullanımı

Rapor alınması sırasında, açılan her rapor gridinin alt kısmında, belli bir sahanın gridde dökülen tüm değerlerinin toplamı, ortalaması vb. alınması için kullanılır.
Örnek; STSABIT görüntüsü ana görüntü olmak üzere, STOKCARIANALIZ görüntüsü bağlanmıştır. Bu alt görüntüdeki, Tarih, Net Fiyat, Giriş Miktar ve Tutarı, Çıkış Miktar ve Tutarı sahaları rapora eklenmiş, Giriş Tutarı ve Çıkış Tutarı sahaları alt bilgisinde, sahaların toplamı alınmak istendiğinde, rapor dökümü sırasında, her bir stok kartı için açılan stokcarianaliz kayıtları gridinin alt kısmında, giriş tutarı ve çıkış tutarı sahalarının toplamı izlenebilecektir.

Üst Bilgi Kullanımı

Rapor alındıktan sonra gruplama/kırılım işlemi yapıldığında, kırılımda, istenen bir sahanın içerdiği değerlerin toplamı, ortalaması vb. alınabilmesi için kullanılır.
Örnek; STSABIT görüntüsü ana görüntü olmak üzere, STOKCARIANALIZ görüntüsü bağlanmıştır. Bu alt görüntüdeki, Tarih, Net Fiyat, Çıkış Miktar ve Tutarı sahaları rapora eklenmiştir. Çıkış tutarı sahası alt bilgide toplatılmaktadır. Bu toplam ilgili stoğa ait dökülen tüm çıkış tutarlarının toplamını verir. Tarih sahası için, bu kez üst bilgide, çıkış tutarı toplamı aldırılmıştır. Bunun anlamı, rapor alındıktan sonra, tarih gruplama/kırılımı yapılır ise, her bir tarih için Çıkış Tutarı toplamı izlenebilecektir.

Rapor alındığında, çıkış tutarı toplamı alt bilgide görülmektedir.

Rapor sonrası tarih sahasında gruplama yapıldığında tarih kırılımında, çıkış tutarları toplamları görülmektedir.

Tanımlamalar

Kolon Adı
Seçilen sahanın, Raporda Gösterilecek Alanlar bölümünde tanımlanmış kolon adıdır. Bilgi amaçlı gösterilmektedir.
İşlem Sahası
Üst/Alt bilgide hesaplamaya tabi tutulacak alan bilgisidir. Üst Bilgi örneğinde belirtildiği gibi, toplam, ortalama vb. işlem yapılacak olan saha, işaretli bilgi sahasından farklı olabilir. Tarih sahasında, çıkış tutarı toplamları alınması gibi.
Önbiçim
Kullanılmıyor.
Biçim
Nümerik alanlar için üst/alt bilgi görüntü biçiminin belirleneceği sahadır. Bknz: Raporda Gösterilecek Alanlar/Biçim.
Tip
Üst/Alt Bilgide yer alacak işlem tipidir. Toplam, işlem sahasında belirtilen sahanın gridde dökülen tüm değerlerinin alt ya da kırılım toplamlarını verir. Ortalama, işlem sahasında belirtilen sahanın gridde dökülen tüm değerlerinin toplamda ya da kırılımda ortalamasını verir. Sayı, işlem sahasında belirtilen sahanın gridde dökülen kayıt sayısını, altta ya da kırılımda verir. En düşük/En yüksek, işlem sahasında belirtilen sahanın gridde dökülen değerlerinin en düşüğünü/en yükseğini, altta ya da kırılımda gösterir.
Yeri
Alt Bilgide ya da Üst Bilgide olmak üzere işlemin yerini belirlemek için kullanılır.
Örnek; Çıkış tutarı alt toplamı için, sağ alt penceredeki tanımlı sahalardan, çıkış tutarı sahası seçilmeli, işlem sahası olarak yine çıkış tutarı sahası seçilerek, tip, Toplam, yeri, Alt Bilgi seçilmelidir.
Örnek; Tarih kırılımında, çıkış tutarları toplamları aldırmak için, sağ alt penceredeki tanımlı sahalardan, tarih sahası seçilmeli, işlem sahası olarak çıkış tutarı sahası seçilerek, tip, Toplam, yeri, Üst Bilgi seçilmelidir.

Baskı Ayarları


Rapor alındıktan ekrana alındıktan sonra yazıcıya gönderilebilmektedir. Bu sekmede, baskı ön ayarları yapılabilmektedir. Rapor ekrana alındıktan sonra, yazıcıya gönderilmeden önce de bazı baskı ayarları yapılabilir.
Yönlendirme
Raporun sayfa üzerinde yatay/dikey basılacağını seçmek için kullanılır.
Her Sayfada Şirket Adı
Şirket unvanının raporun her sayfasında basılması için kullanılır.
Her Sayfada Başlık
Rapor başlığının (İlişkilendirilecek Görüntülerin Seçimi sekmesinde, Rapor Adı seçeneğinde belirlenen), raporun her sayfasında basılması için kullanılır.
Her Sayfada Tarih/Saat
Raporun alındığı tarih ve saat bilgisinin, raporun her sayfasında basılması için kullanılır.
Sayfa No/Toplam Sayfa
Rapor sayfalarında, sayfa no., ya da sayfa no./toplam sayfa bilgisinin basılması için kullanılır.
Yatayda/Düşeyde Hizalama
Raporun sayfanın yatayda/düşeyde ortasına basılması için kullanılan seçeneklerdir.
Ölçekleme, Ayarla
Raporun sayfaya sığdırılabilmesi için, tüm karakterlerin verilen ölçekte küçültülmesi/büyütülmesi için kullanılır.
Ölçekleme, Sığdır
Raporun tam olarak sayfaya sığdırılacak şekilde karakterlerin büyütme/küçültme oranlarının otomatik ayarlanması için kullanılır.
Sıfırlar Basılsın
Raporda değerleri sıfır olan hücrelerin basılması ya da boş bırakılması için kullanılan seçenektir.
Nüsha Sayısı
Raporu tekrarlı, birden fazla kopya olarak basabilmek için kullanılır.
Firma Logosu, Basım Yeri
Raporda firma logosu basım yeri belirlemek içindir. Üst Bilgi / Alt Bilgi ya da her ikisinde de, sol köşe, sağ köşe, her iki köşe gibi bölümlerinde basılabilir.
Firma Logosu Referans Ekle
Firma logosu olarak basılmak istenen resmin eklenmesi içindir. Seçenek işaretlendiğinde aktif hale gelen ekleme butonu yardımı ile, açılan pencereden, logonun bulunduğu klasöre geçilip resim dosyası seçilerek eklenebilir. Eklenen resim dosyası, silme butonu yardımı ile silinebilir.
Baskı ayarları sekmesi, İlişkisel Serbest Rapor sihirbazının son sekmesi olup, tanımlamalar tamamlanmış olmaktadır. Geri butonu ile önceki sekmelere dönüş yapılabilir.
Çalıştır butonu, tanımlanmış olan raporu çalıştırır. Bu butonla, yapılan tanımlamalar saklanmamaktadır. Ancak rapor alındıktan sonra saklanabilir.
Kaydet ve Çık butonu, yapılan tanımlamaların saklanarak sihirbazın, rapor çalıştırılmaksızın kapatılmasını sağlar.

İlişkisel Serbest Rapor İçeriği

İlişkisel Serbest Rapor sihirbazındaki tanımlamalar tamamlanıp, Çalıştır butonu ile raporun ekrana gelmesi sağlanır.

Bilgi Çubuğu

Raporun tamamının getirilmesi, içerdiği kayıt sayısı doğrultusunda bir miktar zaman alabilir.

Geçen sürede, rapor penceresinin alt bilgi çubuğunda, getirilen kayıt sayısı ve süre bilgisi verilecektir. Tüm kayıtlar bittiğinde, yine alt bilgi çubuğunda, Rapor Hatasız Tamamlandı bilgisi görünecektir.

Grid (Izgara) Kullanımı

Raporun ilk aşamada görünen tek gridi, ana görüntünün kayıtlarını içeren griddir.
Grid Sütunları
Her görüntü için, Raporda Gösterilecek Alanlar bölümünde belirlenen sahalar, gridin birer sütununu oluştururlar.
Örnek; Ana görüntü olarak STGRUP görüntüsü belirlenen raporda, GRUP_KOD ve GRUP_ISIM sahaları, raporda görüntülenmek üzere eklenmişse, ana grid, Grup Kodu ve Grup İsmi olmak üzere iki tane sütundan oluşur.
Grid Satırları
Grid içindeki satırlar, ilgili görüntünün, Filtreleme bölümündeki kriterler ile kısıtlanmış sonuç kümesine düşen kayıtlarıdır.

İlişkili Gridlerin Açılması/Kapanması

Grid satırının sol tarafında işareti bulunan satırların, ilişkilendirilmiş alt görüntüden gelen kayıtları mevcuttur. Bu butona tıklandığında, ilişkili kayıtlara ait grid açılacaktır.
Örnek; STGRUP ana görüntüsüne bağlı STSABIT alt görüntüsü bulunmakta ise, grupları listeleyen ana gridin sol tarafında işareti bulunan satırlarından birinde bu buton tıklandığında, grubun içerdiği stokların kayıtları izlenebilir.

İlişkiden dolayı, her grup kaydının altında açılan gridde, kendi grubunun içerdiği stoklar izlenebilir. Diğer bir grubun içerdiği stokları izlemek için, ilgili grup kaydının satırında grid açma işlemi tekrarlanmalıdır.
Alt gridi açılmış olan kaydın sol tarafında, işareti görülecektir. Bu buton yardımı ile alt grid kapatılabilir.
Örnek; Yukarıdaki örnekte STGRUP görüntüsüne STSABIT ve STSABIT görüntüsüne de STOKCARIANALIZ görüntüsünün eklendiğini düşünelim. STSABIT alt görüntüsü için açılan her bir gridde, ilişkili STOKCARIANALIZ kayıtları için de alt gridler oluşur. Bu gridleri de aynı şekilde açıp kapamak mümkündür.
Raporun Performans Maliyeti
Örnekte anlatıldığı gibi, her bir alt görüntü için raporda bir grid oluşturulmaktadır. işareti ile açılabilen her bir grid, bellekte belli bir yer kaplamaktadır. Grid sayısı arttıkça, rapor performansı etkilenebilir. O nedenle doğru ilişki tanımları ve kayıt filtrelemeleri ile sonuç kümesi daraltması, optimum raporun elde edilmesini sağlayacaktır. Bknz: İlişkilendirilecek Görüntülerin Seçimi/Raporun Performans Maliyeti.

Gridde Sıralama

Griddeki bir kolonun başlığına bir kez tıklandığında, griddeki tüm kayıtlar, bu kolonun içerdiği bilgilere göre küçükten büyüğe sıralanacaktır. Sıralanan kolon başlığında, şekilde küçükten büyüğe sıralatılmış olduğuna dair bilgi ikonu görünecektir.
Kolon başlığına tekrar tıklandığında, bu kez, grid kayıtları, kolonun içerdiği bilgilere göre büyükten küçüğe sıralanır. Kolon başlığında, şekilde büyükten küçüğe sıralatılmış olduğuna dair bilgi ikonu görünür.
Kolon başlığına tekrar tıklandığında ise, ilgili kolondaki sıralama kaldırılarak, ilk döküm sıralamasına geri döndürülür ve kolonun sıralanmış olduğuna dair görünen bilgi ikonları yok olur.

Gridde Arama


Grid kolonu bilgilerinin ilkinin üzerine gelinip, aranmak istenen bilginin baş harfleri yazılmak suretiyle, her bir harf yazıldığında, oluşan başlangıç değerine uyan ilk bilginin üzerine otomatik gelinecektir.
Örnek; Şekilde görülen Stok İsmi kolonunda ilk kaydın üzerine gelip, "O" harfine basıldığında, ilk kayda, "OR" harflerine basıldığında, dördüncü kayda, "ORA" harflerine basıldığında ise, beşinci kayda otomatik gidilmesi sağlanır.

Grid Kayıtlarının Filtrelenmesi

Kayıtlar Listesinden Filtreleme
Grid kolonunun sağ köşesinde yer alan işaretine tıklandığında, kolonda yer alan bilgilerin tekrarsız listesi açılacaktır. Bu listeden bir tanesi seçildiğinde, tüm gridde sadece, ilgili kolonda, seçilen değere eşit olan kayıtlar listelenip, diğerleri kapatılacaktır.
Kişisel Filtreleme
Listeden bir değer belirlemek dışında, yine listede yer alan (Kişisel) seçeneği ile farklı filtreleme de yapılabilmektedir.

Kişisel filtrelemede, filtrelenecek kolon için, bir operatör ile bir değer tanımlamak mümkündür.
Örnek; Stok ismi kolonunda, benzer operatörü ile "ORANGE%" değeri kullanıldığında, "ORANGE" ile başlayan stok isimlerine ait kayıtlar gridde görünecek, diğerleri kapatılacaktır.
Yine aynı tanım içinde, ikinci bir koşul tanımlayıp, ilk koşula ve/veya operatörü ile birleştirmek suretiyle ikili filtre tanımlamak da mümkündür.
h9.Operatörler
Benzer, Benzemez
Yazılan karakterleri içeren/içermeyen kayıtlar anlamına gelir. SQL standartlarında olduğu gibi % ve _ maskeleme işaretleri kullanılmalıdır.
Eşittir, Eşit Değildir
Yazılan karakterlere tam tamına eşit olan / eşit olmayan kayıtlar anlamına gelir.
Küçük, Eşit Küçük, Büyük, Eşit Büyük
Yazılan değerden küçük / eşit ve küçük / büyük / eşit ve büyük olan kayıtlar anlamına gelir.
Boşluktur, Boşluk Değildir
Değeri boş olan / boş olmayan kayıtlar anlamına gelir.
İster listeden değer seçilerek, ister kişisel seçeneği ile filtreleme sonucu, grid kayıt kümesi daraltılarak sadece filtrelenen kayıtlar görünecek, diğerleri kapatılacaktır. Gridin alt bölümünde ise, gridin filtrelenmiş olduğuna dair bilgi verilerek, filtre koşulları gösterilir.

Bilgi çubuğunda butonu ile; filtreleme ve tanımlı koşullar kaldırılarak grid eski haline döndürülür.
butonu ile, filtre uygula/uygulama işlemi yapılabilir. Seçenek işaretli iken filtre uygulanmakta olup grid kayıtları kısıtlanmıştır. Seçenek işaretli değilken, filtre bilgisi ekranda kalır ancak grid tüm kayıtları listeler. Bilgi çubuğunda seçeneği işaretleyerek filtrelenmiş hale dönülmesi mümkündür.
Filtreleyici
Customize butonu ile açılan pencerede daha ileri filtre tanımları yapmak mümkündür.

Bu pencerede koşulun yanında bulunan kutucuklara tıklandığında, yapılabilen işlemler şöyledir.

Durum ekle
Mevcut koşula yeni bir koşul eklemeye yarar.
Grup ekle
Mevcut koşula parantez içinde koşul grubu eklemeye yarar.
Satırı Sil
Yanlış tanımlanmış koşul satırını silmeye yarar.
Bağlantı satırında,
Bağlantı
Bir grup içinde yer alan koşulların birbirlerine bağlantı şeklini belirlemeye yarar. Ve / Veya / Ve Değil / Veya Değil bağlantı şekilleri vardır.
Koşul satırında,
Saha İsmi
Koşul satırının ilk bölümünde saha ismi belirlenir. Yeşil renkle gösterilen saha ismi üzerinde tıklandığında, gridin aktif saha isimleri listelenecek ve içlerinden seçim yapılabilecektir.
Operatör
Koşul satırı orta bölümde, operatör belirtilir. Bordro renkle gösterilen operatör üzerine tıklandığında, kullanılabilecek operatörler listelenecek ve içlerinden seçim yapılabilecektir. Operatörlerin anlamları, Kişisel Filtreleme bölümündekilerle aynıdır.
Değer
Koşulun sağlanması için istenen değer yazılır.
Uygula butonu ile, koşulun gridde uygulanması sağlanır.

Şekilde tanımlanan filtre uygulandığında, oluşan koşul aşağıdadır.

Gridde Gruplama/Kırılım


Gridlerin üzerinde, yer alan bu ifadeden de anlaşılacağı gibi, gridin herhangi bir kolon başlığı, sürükle bırak yöntemiyle, grid üzerindeki boşluğa taşındığında, grid, bu kolondaki bilgilere göre gruplanacaktır.
Örnek; Aşağıda, rapor alındıktan sonra açılan bir grid örneği görülmektedir.
Gridde, bir stoğa ait belli tarih aralığındaki hareket kayıtları, STOKCARIANALIZ görüntüsünden getirilmiş olarak görülmektedir. Aynı tarihe (güne) ait birden fazla hareket vardır.











Tarih kolonu, sürükle bırak ile, grid üzerindeki boşluğa bırakıldığında, kayıtlar tarih bazında gruplanacaktır. Her bir tarih için sol tarafta bulunan işareti ile, ilgili tarihe ait kayıtlar açılabilir.
Not; Bu görüntü için, tarih sahasında, çıkış tutarları toplamları üst bilgisi tanımlanmış olup, kırılımda toplam gösterilmektedir. Saha için herhangi bir üst bilgi tanımlanmasaydı, satırlardaki tarihlerin yanlarında toplam bilgisi görünmeyecekti. Bknz: İlişkisel Serbest Rapor Sihirbazı/Üst Blgi / Alt Bilgi Düzenleme / Üst Bilgi Kullanımı.

Araç Çubuğu ve Sağ Click

Rapor araç çubuğunda ve grid üzerinde sağ click ile gelen menü seçeneklerinde yapılabilecek işlemler şunlardır;
Export All To XLS
Raporun tüm içeriğinin bir Excel dosyasına atılmasını sağlar. Buton kullanıldığında açılan pencerede Excel dosya klasör ve ismi belirtilmelidir.
Export All To Text
Raporun tüm içeriğinin bir text dosyasına atılmasını sağlar. Buton kullanıldığında açılan pencerede text dosya klasör ve ismi belirtilmelidir.
Export Selected/All To XML
Raporun seçili/tüm içeriğinin bir XML dosyasına atılmasını sağlar. Buton kullanıldığında açılan pencerede XML dosya klasör ve ismi belirtilmelidir. Oluşan XML dosya, raporun hiyerarşisinde olacaktır.
Export Selected/All To XML
Raporun seçili/tüm içeriğinin bir HTML dosyasına atılmasını sağlar. Buton kullanıldığında açılan pencerede HTML dosya klasör ve ismi belirtilmelidir. Oluşan dosya ile, rapor, browser tarafından izlenebilecektir.
Print Preview, Print
Raporun baskı ön izlemesini ve yazıcıdan çıktısını almaya yarar.
Tümünü Aç/Kapa
Rapordaki tüm alt gridlerin tek hareketle açılmasını/kapatılmasını sağlar.
Sihirbaz
Rapor sihirbazına dönerek tanımlamaların düzenlenmesini ve tekrar aynı raporun alınabilmesini sağlar.

Rapor Kapatılması ve Saklama

Rapor üzerindeki çalışma tamamlandıktan sonra, rapor penceresi bilinen yöntemlerle (ESC ya da sağ üst köşeden) kapatılır. Rapor kapatma sırasında, Rapor Kaydedilsin mi? şeklinde soru sorulacak ve istenirse, yeni bir isim verilerek ya da mevcut rapor üzerine kaydedilebilecektir.