13 Eylül 2017 Çarşamba

FastReport - ASP.NET Rapor Oluşturma

Fast Report yaygın olarak kullanılan raporlama araçlarından biridir. Bu yazıda Fast Report ile tasarladığımız raporu Visual Studio aracılığıyla asp projemizde nasıl kullanacağımız anlatılacaktır.

İlk olarak yapılması gereken Visual Studio'da referanslara aşağıdaki 5 dll'i eklemek olacaktır.



Daha sonra raporun görüntülenmesini istediğimiz yeni bir sayfa oluşturuyoruz ve bu sayfaya FastReport(Rapor oluşturmak için) ve System.IO(MemoryStream'i kullanabilmek için)  küttüphanelerini sekliyoruz.



 protected void Page_Load(object sender, EventArgs e)
        {

            FastReport.Utils.Config.WebMode = true; //Raporun web modunu açıyoruz.

            using (Report report = new Report())// yeni rapor oluşturuyoruz.
            {

                report.Load(@"C:\Users\ASUSNB\Desktop\deneme\Rapor\SozlesmeListesi.frx"); // raporumuzun bulunduğu dizini gösteriyoruz.

                report.Prepare();//raporu hazırla

                FastReport.Export.Pdf.PDFExport pdfExport = new FastReport.Export.Pdf.PDFExport();// raporu pdf'e dönüştür ve bu pdf'i görüntüle.
                using (MemoryStream strm = new MemoryStream())
                {
                    report.Export(pdfExport, strm);

                    Response.ClearContent();
                    Response.ClearHeaders();
                    Response.Buffer = true;
                    Response.ContentType = "Application/PDF";
                    Response.AddHeader("content-disposition", "inline; filename=" + "SozlesmeListesi.pdf");

                    strm.Position = 0;
                    strm.WriteTo(Response.OutputStream);
                    Response.End();
                }

            }
        }

report.Load kullanımı local veritabanında çalışırken sorun çıkarmaz fakat onlıne veritabanı kullanılacak ise report.Load yerine Server.MapPath kullanılmalıdır. Bu sayede online veritabanında tasarımın olduğu dizin bulunabilecektir.

Yukarıdaki örnek FastReport Designer'da frx uzantılı olarak hazırlanmış ve verikaynağı da bu tasarımın içine gömülmüş raporlar için kullanılabilir. Bu kullanım FastReportun en basite indirgenmiş halidir. Sonraki yazı dizelerinde parametreli kullanım ve veri kaynağının tasarım kısmında değil de visual studio tarafında gönderildiği örnekler yapılacaktır.
Paylaş:

4 yorum:

Aldera dedi ki...

guzel calisma
Etiket icin herhangi bi calismaniz var mi
Tesekkurler

ebrududak dedi ki...

Etiket için bir çalışmada bulunmadım fakat belirli bir hata alıyorsanız paylaşırsanız yardımcı olmaya çalışırım.

Unknown dedi ki...

ebru hanım paylaştığınız bilgi için teşekkür ederim. İşime çok yaradı elinize sağlık :)

Betül dedi ki...

Merhaba,

Dediğiniz gibi sunucudan raporu çağırdığım için Server.MapPath kullandım. Fakat "PDF dokümanı yüklenemedi." hatası aldım.

Yorum Gönder