REPORT VIEWER KULLANIMI

Microsoft Reporting Service kullanarak oluşturduğumuz sql raporlarını kendi programımız içerisinden çağırmak istediğimiz zaman default olarak Toolboxda Reporting tabında bulunan ReportViewer kontrolünü kullanıyoruz

Burada report servera deploy edilmiş rapora ulaşabilmek için Choose Reportdan ServerReport

ReportServerUrl –Report serverın adresi

ReportPath–ReportServerda raporumuzun bulunduğu kısmın yolunu yazmamız yeterlidir.Bundan sonra projemizi çalıştırırsak raporumuzu görüntüleyebiliriz.(Tabi reportserverımız anonymous erişime açıksa)

Bunun dışındada aşağıdaki kodlar yazılarak ReportServera erişim yapılarak,içine raporun parametreleri vsler gönderilebilir.Rapor servera gönderilen raporlar parametreler istenirse gizlenebilir

if (!Page.IsPostBack)

{

ReportViewer1.ProcessingMode = ProcessingMode.Remote;

ServerReport serverReport = ReportViewer1.ServerReport;

serverReport.ReportServerUrl = new Uri(“http://10.0.0.1/reportserver”);

serverReport.ReportPath = “/BilgehanReports/Report3″;

// IReportServerCredentials irsc = new CustomReportCredentials(“userid”, “password”, “domain”);

// ReportViewer1.ServerReport.ReportServerCredentials = irsc;

ReportParameter param1 = new ReportParameter();

param1.Name = “UserId”;

param1.Visible = false; //(Gönderilen parametre gizli olsun)

param1.Values.Add(“2″) ;

ReportViewer1.ServerReport.SetParameters(new ReportParameter[] { param1 });

}

Yukarıdaki koddan farklı olarak eğer report servera ulaşmak için credential kullanmanız gerekiyor ise yukarıdaki kodda commentlenmiş iki satırı açarak

Aşağıdaki gibi bir class tanımlayarak bağlantı sağlayabiliriz.Aşağıdaki msdn forumdan alınmış bunun  için güzel bir class örneğide mevcuttur

public class CustomReportCredentials : Microsoft.Reporting.WebForms.IReportServerCredentials

{

// local variable for network credential.

private string _UserName;

private string _PassWord;

private string _DomainName;

public CustomReportCredentials(string UserName, string PassWord, string DomainName)

{

_UserName = UserName;

_PassWord = PassWord;

_DomainName = DomainName;

}

public WindowsIdentity ImpersonationUser

{

get

{

return null;  // not use ImpersonationUser

}

}

public ICredentials NetworkCredentials

{

get

{

// use NetworkCredentials

return new NetworkCredential(_UserName, _PassWord, _DomainName);

}

}

public bool GetFormsCredentials(out Cookie authCookie, out string user, out string password, out string authority)

{

// not use FormsCredentials unless you have implements a custom autentication.

authCookie = null;

user = password = authority = null;

return false;

}

}

Bu yazı SQL SERVER kategorisine gönderilmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

REPORT VIEWER KULLANIMI için 11 cevap

  1. Snn der ki:

    Çok teşekkürler ufak bir noktayı kaçırıyormuşum. Sayende halletim ;)

  2. inn der ki:

    Merhaba reportviewer da sıra numarası nasıl veriyoruz. Ben matrix kullanarak verilerimi listeledim ama sıra numarasını bir türlü yapamadım RowNumber ı da denedim bu konuda bana yardımcı olabilir misiniz?

    • bilgehanyildiz der ki:

      Merhabalar raporunuzu yaptıktan sonra raporunuzdaki tablonun bir alanda rownumber(nothing) şeklinde expression yazdığınızda(ssrs in ara biriminde tablo kısmına) sıra numaraları gelir rownumberı bu şekilde mi kullandınız?

  3. cornelian der ki:

    merhabalar . benim sorum da aynı olacak sıra numarası nasıl vereceğiz? kayıtların sol tarafına bir sırano sutunu ekledim ve expression kısmınada =RowNumber(nothing) yazım ama 1-2-3-4 diye artış beklerken 6,0E+000 gibi tuhaf veriler geldi sıra no kısmına =S hata nerde yada ne eksik?

    • cornelian der ki:

      özür dileyerek soruma bir soru daha eklemek istiyorum =s. yaptığım ufak bi denemede rowNumber(nothing) i çalıştırabildim, yalnız anladığım kadarıyla -ki yanlış da anlamış olabilirim- tablomdaki tüm verileri çektiğim zaman reportviewera sıra numarası çalışıyor, ancak reportviewera belli kriterdeki verileri çektiğimde rowNumber(nothing) işlemi veritabanındaki kayıtların sıra numarasını gösteriyor. 1-2-3-4-5 diye değilde (kayıtlar tabloda kaçıncı sırada ise) 6-85-112 olarak getiriyor.Bunun bir çözümü var mıdır acaba?

      • bilgehanyildiz der ki:

        Merhabalar rownumber kullanımı çektiğiniz sorguya bakmaz sorgu sonucu dönen listeye bakar.muhtemelen sizin senaryonuzda farklı bir durum vardır.Sizede küçük bir örnek olması amacı ile rownumberın kullanımı
        “SSRS RAPORLARI WINDOWS FORMS UYGULAMALARINDA ADO.NET DATASET İLE KULLANIMI ve SSRS RAPORLARDA KAYITLARA SIRA NUMARASI KOYMA(ROWNUMBER)” yazısının içinde bir örnek olarak koydum bu yazıya bir göz atın isterseniz.Eğer hala sorununuz devam ediyorsa örnek çalışmanızı gönderirseniz bildiğim bir husussa ona göre yardımcı olmaya calısırım

        İyi Çalışmalar

  4. Mehmet Zeki KIR der ki:

    Eyvallah bilgehan hocam

  5. Sibel KIROĞLU der ki:

    Merhaba, ASP.NET WEB uygulamasında report viewer kullanıyorum. “View report” butonunu gizledim. Parametreleri başka bir ekrandan seçerek, asp.net buton yardımıyla “View report” butonunun yaptığı işi yapmak istiyorum. Yardımcı olur musunuz ?

  6. Koray der ki:

    Peki ben reportviewer’ı sadece listelenen bir veriden tek bir tanesinin detayını göstermek için kullanmak istersem bunu nasıl yapmam gerekiyor?
    örnek olarak öğrenci isim soyismi numarası var numarasına tıkladığımda öğrencinin detaylarını reportviewer da nasıl yapa bilirim asp.net ile?

cornelian için bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>