![]() |
|
|||||||
| Üye Ol | SSS | Sxe indir | Sosyal Gruplar | Takvim | Resim Galerisi | Etiketler | Bütün Forumları okunmuş kabul et |
Programlama bölümünde Visual Basic'te raporlama konusu , DataReport Tasarımcısı Visual basic 6 IDE’ye tamamen entegre edilmiş rapor yazıcısını içeren ilk versiyondur. Daha populer olan Crystal Report ile karşılaştırıldığında özellikle daha basit raporlar için yeni rapor tasarımcısını daha kolay bulacaksınız. Fakat hala birkaç özellikten yoksundur ve yüklü görevlerde ...
![]() |
|
|
LinkBack | Konu Seçenekleri |
|
|
#1 (permalink) | |
|
Executive Officer
![]() E-Güven: (4/100)
|
Visual Basic'te raporlama
DataReport Tasarımcısı Visual basic 6 IDE’ye tamamen entegre edilmiş rapor yazıcısını içeren ilk versiyondur. Daha populer olan Crystal Report ile karşılaştırıldığında özellikle daha basit raporlar için yeni rapor tasarımcısını daha kolay bulacaksınız. Fakat hala birkaç özellikten yoksundur ve yüklü görevlerde Crystal Report veya ek yazılım üreticilerinin rapor yazıcılarının yerini alamaz. Manuel olarak yüklemek zorunda olmanıza rağmen Crystal Report paketin içine dahil edilmiştir. DataReport tasarımcısını kullanmadan önce IDE’den ulaşılabilir duruma getirmelisiniz bunuda Project menüsünden Components komutunu yazarak Designer tab’a geçiş yapıp ve DataReport seçeneğini işaretleyerek yapabilirsiniz. Alternatif olarak yeni bir Data Project açabilirsiniz ve sizin için Visual Basic’in Data Report tasarımcısını oluşturmasına izin verebilirsiniz. DataReport tasarımcıs yazıcıya gönderilecek ya da sadece basit bir şekilde önizleme pencereseinde görüntülenecek bilgiyi otomatik alma yetisi mantığı ile sadece bağımsız modda çalışır. Bir raporu metin dosyasına veya HTML dosayasına taşıyabilir ve aynı zamanda geçerli olan biçim düzenlemesine destek verir. DataReport tasarımcısı diğer tasarımcılarla ve formlarla yaptığınız gibi yüzeyine alabileceğiniz custom kontrol seti ile size ulaşmaktadır. Bu kontroller çizgileri, şekilleri, resimleri ve raporlarınızda özet alanları oluşturabileceğiniz fonksiyon alanlarını içermektedir. Bu tasarımıcının diğer bir ilgi çekici özelliği ise yazdırma devam ederken başka görevleri yerine getirmeye izin veren eşzamamsız modta yazdırma yapabilme yeteneğidir. Bir Command Nesnesine İlişkilendirme Örnek hiyerarşik Command nesnesine dayalı rapor oluşturmak için aşağıdaki adımları izlemelisiniz: 1. İsmi Order Details olan bir alt Commmand içeren bir hiyerarşik Command oluşturun. İlgilendiğiniz bilgiyi aldığına emin olun, örneğin form üzerinde Hierarchial FlexGrid ile ilişkilendirerek ve uygulamayı çalıştırarak. 2. DataReport tasarımcısının yeni bir değişkenini oluturun veya Visual Basic projesinin Data Project türü ile varsayılan olarak sağlanan olanı kullanın. 3. Properties penceresini açın, DataReport’un DataSource özelliğinin DataEnvironment1’i (veya DataEnvironment’ınızın ismi her ne ise)göstermesini sağlayın 4. DataReport tasarımcısının rapor başlığı üzerinde sağ tıklayın, ve Retrieve Structure menü komutunu seçin; bu Orders_Header ve Orders_Footer etiketli grup başlığı ve grup altbaşlığı oluşturacaktır; bunlardan ayrı olarak aralarında Order_Detail_Details etiketli detay bölümü olacaktır. Bir kesim (section) ana Command nesnesinde her bir kayıdı tekrarlayacak bilgi bloğunu temsil eder. İlk kesim ana Command nesnesi ile, ikinci kesim onun alt Command’i ile eşleşir ve en içteki Command nesnesi ile eşleşen Detail kesimine ulaşana kadar devam eder. Detail kesimi hariç bütün kesimler iç seviyedeki neslerle uyuşan kesimlerle önce veya sonra ilgili bilginin print edilen üst başlık ve alt başlık olarak ikiye ayrılır. DataReport tasarımcısı Report kesimini (raporun başındaki ve sonundaki bilgiyi yazdırır) ve Page kesimini (her sayfanın başındaki ve sonundaki bilgiyi yazdırır) içine alır. Eğer bu iki kesimi görmüyorsanız DataReport tasarımcısının üzerinde herhangi bir yere sağ tıklayın ve uygun olan menü komutunu seçin. 5. DataEnvironment’taki Orders Command nesnesinden DataReport’un Orders_Header kesimine alanları sürükleyin. Farenin düğmesini bıraktığınızda RptLabel ve RptTextBox isimli bir çift kontrol DataReport’ta ortaya çıkacaktır. Rapor görüntülendiğinde uyuşan veritabanın asıl içeriği ile RptTextBox kontrolü yer değiştirirken RptLabel kontrol alanın adı ile değişmez bir dizim üretir. Şimdi Orders_Header kesimindeki alanları düzenleyebilirsiniz ve görüntülemek istemediğiniz RptLabel kontrollerini silebilirsiniz. 6. Orders Details Command nesnesine tıkayın ve DataReport’un üzerine sürükleyin; Visual Basic uyuşan RecordSet içindeki her bir alana RtpLabel-RptTextBox kontrol çifti oluşturur. OrderID alanını silebilirsiniz ve bir satırda diğerlerini düzenleyebilirsiniz 7. Her kesimin yükseklğini ayarlayın ve böylece gereğinden fazla yer tutmayacaktır. Bu özellikle Detail kesimi için önemlidir çünkü Order Detail tablosundaki her bir kayıt için tekrarlanacaktır. Alan içermeyen kesimleri 0 yüksekliğe de ayarlayabilirsiniz. 8. Şu ana kadar yaptıklarınız DataReport’u eylem halinde görmeniz için yeterlidir. Project Property Pages diyalog kutusunu açın, başlangıç nesnesi olarak DataReport1’i seçin ve daha sonra programı çalıştırın. Kontrol Özelliklerini Ayarlama DataReport’un yüzeyine bıraktığınız kontroller form üzerine yerleştirdiğiniz standard kontrollerle benzerdir, fakat kontrol kütüphanesine aittirler. Gerçekte, ne standard iç kontrolü DataReport üzerine alabilirsiniz nede bir form veya başka bir tasarımcının üzerindeki DataReport kontrol kütüphanesinden bir konrole yerleştirebilirsiniz. Fakat DataReport kontrollerini hareket ettirebilirsiniz ve herhangi düzgün bir kontrolü istediğiniz şekilde hizalayabilirsiniz. Standard Format menüsündeki komutları kullanamazsınız ve kontrolün üzerine sağ tıklamak zorundasınız ve bağlamsal menüdeki komutları kullanmalısınız. DataReport kontrolleri normal kontrollerin yaptığı gibi Properties penceresini görüntüleyen F4 tuşuna duyarlıdır. Çünkü RptLabel ve RptTextBox kontrolleri standard emsallerine benzerdirler, bu penceredeki özelliklerin çoğuna aşina olmanız gerekmektedir. Örneğin, txtOrderDate ve txtShippedDate kontrollerinin DataFormat özelliklerini değiştirebilirsiniz ve böylece uzun tarih biçiminde değerlerini görüntüleyebilirler. Veya txtOrderID kontrolünün Backstyle özelliğini 1-rptBkOpaque’a BackColor özelliğinide griye çevirebilirsiniz böylece raporda sıra belirleyiciler vurgulanır.RptLabel kontrolleri hiç Dataxxxxx özelliği ortaya çıkarmaz, onlar sadece raporda sabit dizgileri içeri yerleştiren kozmetik kontrolleridir. Şu ana kadar görmediğimiz hem RptLabel hemde RptTextBox kontrolüne uygulanan CanGrow özelliğidir. Eğer bu özellik True’daysa içeriği kontrolün genişliğini geçerken bu kontrolün dikey olarak genişlemesine izin verir. Kontrolün genişliğine göre daha uzun dizgilerin kesilmesine neden False değeri bu özellik için varsayılan değerdir. Diğer Rapor Özellikleri DataReport tasarımcısı herhangi bir tasarımcı ile Properties penceresinde değişiklik yababileceğiniz bir çok design time özellikleri sergiler. Bu özelliklerin birçoğu formlar tarafından da sergilenir, örnek olarak, Caption, Font, WindowState ve ShowInTaskBar, bu sebeple çoğunun nasıl kullanıldığını biliyorsunuz.Bu özelliklerin bazıları (Caption ve BorderStyle) önizleme penceresini etkiler, diğerleride (örneğin, Font) aynı zamanda basılı rapora etki eder. Sadece bir kaç özellik DataReport tasarımcına özgündür. Basılan sayfanın genişliğine ReportWidth karar verirken , LeftMargin RightMargin TopMargin ve BottomMargin özellikleri basılı raporun kenar boşluklarının boyutunu geri verir ve ayarlar. GridX ve GridY özellikleri design time’da kontrol gridin bölmesinin arasındaki mesafeye etki eder ve yürütme zamanında gözardı edilirler. Tüm bu ölçümler twip’te ifade edilirler. Daha önceki bölümde açıklanan RptLabel kontroldeki tutucu ile yer değiştirmek için kullanılan Title özelliğide DataReport tasarımcısının diğer bir özelliğidir ve aynı zamanda yürütme zamanında diyalog kutularını görüntülenmesinde kullanılır. ExportReport metodu raporu dış ortama taşımayı mümkün kılar. ve aşağıdaki sözdizimine sahiptir. Cookie = ExportReport ([FormatIndexOrKey], [FileName], [Owerwrite], [ShowDialog], [Range], [PageFrom], [PageTo]) FormatIndexOrKey önceden belirlenmiş dış ortama taşıma biçimlerinden bir tanesini tanımlayan bir dizgi anahtarı veya numerik bir indekstir. FileName çıkış dosyasının adıdır, Overwrite var olan dosyanın tekrar yazılıp yazılmayacağına karar veren Boole değeridir, ShowDialog standard dış ortama taşıma diyalog kutusunun görüntülenip görüntülenmeyeceğini belirleyen Boole değeridir. Geriye kalan komut içerikleri PrintReport metodunda olduğu gibi aynı anlamlara sahiptir. ProcessingTimeOut, AsyncProgress veya Error olayındaki belirli işlemleri tanımlamak için kullanılabilen Long değerini geri verir. FormatOrIndexKey ilk üç sütunda bulunan değerlerden bir tanesidir. 1-4 aralığında bir sayı yazabilirsiniz, bir rptKeyXXXX sembolik değişmezi, veya onunla eşleşen dizgi değeri. dış ortama taşıma biçimi veya dosya adını atlarsanız, Export diyalog kutusu ShowDiaolog False’a ayarlandıysa bile görüntülenebilir.
__________________
Alıntı:
|
|
|
|
|