auto_stories Bilgi Bankası chevron_right Guides chevron_right Makale

Çıktı Tasarım Örneği

Form üzerinde oluşturulan bilgilerin yazdırılmasını sağlayan işlem türüdür. Çıktı tasarımı olarak form tasarımı yazdırılabilir. 

mceclip0.png, Resim

Özellik Panelinde Print Aksiyonu 

  

Özellikler 

Description: Aksiyonun bir açıklaması yazılır. 

Heading: Form Eylemi olarak eklendiğinde eylem listesindeki adı belirtir. 

Design File: SQL sorgusu ile tasarım dosyasının adı yazılır veya bulunur. 

Form: Yazdırma için form seçilir. 

Linked List: Bir listedeki kayıtlardan yazdırılıyorsa ilgili liste seçilir. 

List-ID Field: Listedeki UserTableID alanı seçilir. 

List Type Field: Listedeki FormTypeID alanı seçilir. 

Print Preview: Baskı ön izleme yapılıp yapılmayacağına karar verilir. (Baskı önizleme olmadığında, sunucu tarafında etkin yazıcıda yazdırma yapılır.) 

Run Condition: Bu alana girilen sorgudaki değer '0' ise ilgili işlem çalışmayacaktır. 

Request Confirmation: Eylemi çalıştırmadan önce onay isteyip istemediğinizi seçin. Onay İste aktif ise Onay Mesajı özelliği açılır ve onay istenirken görüntülenecek mesaj yazılır. 

 

Studio Tarafında Çıktı Tasarımı Oluşturma

Kitapları ve kategorilerini girebileceğimiz iki ayrı form oluşturalım. Ardından, çıktısını tasarlayıp yazdırabileceğimiz üçüncü bir form tasarlayalım. Sonrasında Studio ekranında aksiyonlar ile çıktımızı oluşturalım. 

İlk olarak, kitapların ait olduğu kategorileri tanımlayabilmemiz için Kategori Tanımlama Kartı formu oluşturalım. 

Resim

Kategori Tanımlama Kartı’ nın Client ekranındaki görünümü aşağıda gösterilmektedir. Birkaç kategori girilip ‘save’ butonu ile kaydetme işlemi yapılır.  

Resim

 

Studio ekranına giderek kategorilere ait kitapları ve kitapların yazarlarını tanımlayabileceğimiz yeni bir form oluşturalım. Bu form Kategori Tanımlama Kartı ekranından ‘Open Form Link’ aksiyonu kullanılarak yönlendirme yoluyla açılacaktır. Bu işlemin amacı, kategori ID’si ile eşleştirme (mapping) yaparak formun doğru kategoriyle ilişkilendirilmesini sağlamak ve ilgili kategoriye ait kitapların kaydını gerçekleştirmektir. 

 

Resim

Sonrasında ’save’ butonu ekleyerek Client ekranına gidelim. İlgili kategorilere ait kitapları ve yazarlarını girelim ve ’save’ butonu ile kaydedelim. Aşağıdaki görselde birkaç kitap ve yazarı girilip ’save’ butonuyla kaydet işlemi yapılmıştır. 

 

Resim 1703130296, Resim

 

Çıktı tasarımı oluşturup yazdırabileceğimiz üçüncü formumuzu, LIBRARY isminde ve Report tipinde oluşturalım. Bu formda, kategorileri listeleyebileceğimiz bir açılır kutu ve 'Print Önizlemesi' işlevini yerine getirecek bir buton ekleyelim. 

Resim 654007102, Resim

 

Daha sonra aşağıdaki görselde gösterildiği gibi formun üzerine tıklayıp ‘Open Print Design’ aksiyonunu ekleyerek, çıktıda kullanacağımız Sql sorgusunu yazalım. Çıktıya atadığımız ismi Design Name kısmına yazalım. Aşağıdaki adımları takip ederek aksiyonu kaydedelim.  

Resim

Sql Query Sorgusu: 

SELECT 
C.Category AS Category,
Book,Writer

FROM Books B WITH (NOLOCK) 
LEFT JOIN Categories C WITH (NOLOCK) ON C.UserTableID=B.CategoryID
  WHERE B.CategoryID='$PCategories$' 

Resim 1780456968, Resim

Print butonuna tıklayarak ‘Print’ aksiyonunu ekleyelim ve çıktıya atadığımız ismi (LIBRARY) Heading ve Design File kısmına ekleyelim. 

Resim

Projeyi kaydedip Run Tuşu ile Client ekranına gidelim. Client ekranında sağ alt kısımda üç çizgi ikonunun üzerine gelindiğinde, belirlemiş olduğumuz Design Name ismi gözükmektedir. LIBRARY yazısı üzerine tıkladığımızda, çıktı tasarımını oluşturacağımız ekran açılacaktır. 

Resim 1243735909, Resim

Resim 1007615366, Resim

 

Tasarımımızı oluşturmaya başlayalım. 

Sol taraftaki Table aracını tasarım sayfasındaki TopMargin1 alanına sürükleyip bırakalım. 

Resim 1336984724, Resim

Text alanından isimlendirmelerini yapalım. İsimlendirme işlemi için, öncelikle hücre seçilmeli ve ardından Text alanına istenilen isim girilmelidir. 

Resim 416548902, Resim

 

TableCell3 isimli hücreyi silelim. Bu işlem için, öncelikle hücre seçilmeli ve ardından 2 numara ile gösterilen alana tıklanmalıdır.  

Resim 372576000, Resim

blobid0.png Tablo kullanılırken yanına hücre ekleme, altına veya üstüne yeni satır ekleme işlemi actions bölümü altındaki bloklara tıklanarak yapılabilir. Aşağıdaki görsel ile bu durum örneklendirilmiştir. 

 

Resim

Örnek olması için eklediğimiz alanı silip tasarımımızı oluşturmaya devam edelim,Sağ taraftaki menüden 'Ayarlar' sekmesine tıklanarak, 'ACTIONS' alanından 'Data Member' seçilmelidir. (Data Member alanı gözükmüyor ise Properties yazısı altındaki açılır kutudan XtraReport (Report) seçeneği seçilmelidir). Çıktı tasarımı içindeki alanlara veriler, Studio üzerinden oluşturulan 'Open Print Design' aksiyonu içerisine yazılan sorgudan alınacağı için, Data Member olarak 'Octopus_Table_Detail' seçilmelidir. 

 

Resim 858592661, Resim 
Bu aşamadan sonra aşağıdaki görseldeki numaraları takip ederek, Detail bandına ikinci bir tablo sürükleyelim, gereksiz kullanılmayacak alan varsa silelim, Detail bandını kısalım daha sonra Data Source ikonuna tıklayalım ve Octopus_Table_Detail’ e tıklayarak çıktıda gösterilmesi istenilen alanları ikinci bir tablo olarak sürüklediğimiz alanlar olan TableCell3 ve TableCell4 alanlarına sürükleyelim.  

blobid0.png Detail bölümü içerisine eklenen Tablonun üst ve alt kısmında boşluk kalmaması gerekmektedir , boşluksuz olarak konumlandırılması gerekir. Boşluk kalması durumunda her bir satır arasına boşluk kalacağından tasarım iyi görünmeyecektir. 

 

blobid0.png Data Source'tan alınan veriler, Sorgudan dönen birden fazla değerin liste formatında, alt alta gösterilmesi istendiği için ilgili sütun değerleri Detail bölümüne eklenmelidir. 

 

 

ResimResimResimResim

 

TopMargin1 alanına kategori alanını çekmek için bir tablo aracı daha ekleyip düzenlemeler yapılmıştır. Daha sonra ekranın sol üst tarafında bulunan üç çizgi ikonuna tıklayalım. Karşımıza Menü seçenekleri çıkacaktır. Ardından Save seçeneğine tıklayıp, tasarım ismini yazalım ve çıktı tasarımımızı kaydedelim. 

Resim

Resim 1900527629, Resim 
 

blobid0.png Save Report ekranı açıldığında, 'Open Print Design' aksiyonu içinde belirlediğimiz 'Design Name' ismi, tamamen aynı şekilde, yukarıda gösterilen iki numaralı alana yazılmalıdır. 

 

Client tarafında LIBRARY ekranımıza gelelim, açılır kutudan kategori seçip Print Butonuna tıklayalım. Oluşturduğumuz çıktı tasarımı ön izlemesi aşağıdaki gibi görüntülenecektir. 

 

Resim 531523075, Resim

 

 

Resim

 

 

 

 

 

Client Tarafında Çıktı Tasarımı Oluşturma: 

Client tarafında oluşturulan çıktı tasarımının çalışması için çıktıyı hazırladığımız ekran mutlaka ’form’ tipinde olmalıdır. Öncelikle Form tipinde olan Kategori Tanımlama Kartı ekranına ‘Print’ isminde bir buton ekleyelim.  

Resim

Daha sonra yeni bir çıktı tasarımı oluşturmak için aşağıdaki adımları takip ederek çıktı tasarımı sayfasını açalım. 

Resim 60100817, Resim

 

 

Resim 1884623564, Resim

 

Tasarım sayfası açıldıktan sonra, çıktı tasarımında gösterilmek istenen verileri dönecek SQL sorgusunu eklemek için ekranın sol üst köşesinde bulunan üç çizgi ikonuna tıklayalım. Karşımıza Menü seçenekleri çıkacaktır. Ardından 'Add New Field' seçeneğine tıklayalım. Aşağıdaki görselde 'Add New Field' ekranı gösterilmektedir. 

Bu ekranda, öncelikle sorgumuza vermek istediğimiz ismi 'Field Name' alanına yazalım. Bu örnekte, 'LIBRARY_NEW' olarak isimlendirme yapılmıştır. Bu isim, daha sonra Studio üzerinden 'Print' butonunun aksiyonunda kullanılacaktır. Böylece buton, hangi çıktıyı yazdırması gerektiğini doğru bir şekilde tespit edebilecektir.  

Daha sonra Type alanından 'Datasource' seçeneğini seçelim. 4 numaralı alanda SQL sorgumuzu yazalım. Save butonu ile kayıt işlemimizi tamamlayıp ilgili pencereyi kapatalım. 

Resim

 

 

Add New Field Sorgusu: 

SELECT 
C.Category AS Category,
Book,
Writer
FROM Books B WITH (NOLOCK)
 
LEFT JOIN Categories C WITH (NOLOCK) ON C.UserTableID=B.CategoryID 
WHERE C.Category= '$PCategory$' 

 

Sorguyu kaydettikten sonra, çıktıyı aşağıdaki adımları takip ederek kaydedelim. Çıktı ismi Field Name alanına yazdığınız isimle aynı olmak zorundadır. Tasarım sayfasını kapatıp tekrar açalım. 

Resim 142234790, ResimResim 893126220, Resim 

 

Resim 1062113113, Resim

 

 

Tasarım sayfasını Client ekranından yukarda gösterildiği şekilde açalım. Ardından aşağıda gösterilen resimdeki gibi tasarımımızı oluşturalım. Properties alanı XtraReport (Report) seçili iken Data Member alanında, Add New Field bölümünde eklemiş olduğumuz sorgumuzun ismi gözükecektir. Çıktı tasarımı içindeki alanlara veriler bu sorgudan alınacağı için, Data Member alanında LIBRARY_NEW seçeneğini seçelim. Ardından Data Source ikonuna tıklayıp ilgili alanları görüntüledikten sonra tasarımımıza alanları sürükleyip bırakalım. 

 

blobid0.png Report File List isimli pencerede daha önce Studio tarafında Open Print Design aksiyonu ile oluşturduğumuz çıktı tasarımı da görülmektedir. Fakat Studio tarafında oluşturulan çıktı tasarımı Report File List penceresinden açılıp kaydedilmemelidir. Bu pencereyi Client tarafından hazırladığımız çıktıları açmak ve düzenlemek için kullanıyoruz.  

 

ResimResim

 

Çıktı tasarımımızı aşağıdaki adımları takip ederek mutlaka kaydedelim. Kaydetmeden ekranı kapattığınız takdirde, tasarımda yaptığınız değişiklikler kaydedilmemiş olur ve tekrar açıldığında önceki haliyle görüntülenir. 

Resim 947437923, Resim

blobid0.png Client tarafında oluşturulan çıktı tasarımının çalışması için çıktıyı hazırladığımız ekran mutlaka ’form’ tipinde olmalıdır. Aynı zamanda Print butonuna basmadan önce ekranın UserTableID değeri dolu olmak zorundadır. Bu işlemi, ekran üzerinde daha önce oluşturulmuş bir kaydın bilgilerini forma doldurarak sağlayabiliriz. Bu örnekte listede satıra tıklandığında seçili satırın bilgisi forma doldurulacak şekilde aksiyon eklenmiştir. Aksiyonun Value Area alanında All Form seçeneği seçilmiştir. Böylece ekrandaki Category ve UserTableID alanlarına veri dolmaktadır. Daha sonrasında ’Print’ butonuyla çıktı açılır.

 

Studio ekranına gidelim. Print isimli butonumuza Print aksiyonu ekleyerek, yazdırmak istediğimiz çıktı tasarımının ismini Design File ve Heading alanlarına yazalım. Form alanında, çıktı için kullanılan yani çıktıdaki verilerin geldiği kaynak formun ismini seçelim ve aksiyonu kaydedelim. Projeyi de kaydedip Run tuşu ile Client ekranına gidelim. 

 

Resim 1821478701, Resim

Resim 673034496, Resim

Resim

Client ekranında listeden bir tane kategori ismi seçip, yukardaki text alanın dolmasını sağladıktan sonra ‘Print’ butonuna basalım. Yazdırma işleminin ön izlemesini aşağıdaki gibi görebilirsiniz. İlgili kategoriye ait kayıtlı kitaplar çıktınızda listelenmektedir. 

Resim