تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
طلب كود لربط Reportviewerباكثر من تقرير حسب شرط معين
#1
السلام عليكم اساتذتنا الكرام في منتدانا الكبير وأخص منهم الاستاذ أبو ليلى والاستاذ أبو عمر ولا يهونون الاعضاء المحترمون الاخرون
لدي قاعدة بيانات تحوي جدول واحد بأسم Tab1 يخص طلاب المدرسة فيه عدة حقول وكالاتي:,ID,StName,Class,As1,As2,Ar1,Ar2
حيث As1,As2 درجات ماده التربية الاسلامية و Ar1,Ar2 درجات مادة العربي
اريد ان اظهر درجات الاسلامية في تقرير ودرجات العربي في تقرير اخر
تمكنت بفضل الله ومساعدة الاخوين أبو ليلى وأبو عمر من عمل المطلوب ولكن بالصيغة التاليه::: عملت اكثر من Reportviewer وكل واحد ربطته بتقرير فصار عدد التقارير كثير وعدد Reportviewe كثير سؤالي:
هل هناك طريقة لربط كل هذه التقارير ب Reportviewer واحد او ان اجعل التقرير الواحد في كل مرة تختلف الحقول التي يعرضها أعتمادا على شرط معين
أسف للاطالة شكري وتقديري للجميع وفقكم الله.
 


الملفات المرفقة صورة/صور
   
الرد }}}
تم الشكر بواسطة:
#2
غفر الله لنا ولك
نعم تستطيع عرض كافة التقارير لديك في اداة واحدة وتكتفي فقط بتعريفات التالي
1- الداتا ست لكل تقرير لديك وجعله مصدر للبيانات مع اسم الجدول او الداتا تيبل في التقرير
2- تعريف مسار ملف التقرير
كالاتي:
PHP كود :
public MainWindow()
        {
            
InitializeComponent();
            
DataTable dt = new DataTable();
            
dt.Columns.Add(new DataColumn("ID"typeof(int)));
            
dt.Columns.Add(new DataColumn("Name"typeof(string)));
            
dt.Columns.Add(new DataColumn("City"typeof(string)));
            
dt.Columns.Add(new DataColumn("OrderAmount"typeof(int)));

            
DataRow dr dt.NewRow();
            
dr["ID"] = 1;
            
dr["Name"] = "CK Nitin";
            
dr["City"] = "New York";
            
dr["OrderAmount"] = 100;
            
dt.Rows.Add(dr);

            
ReportDataSource datasource = new ReportDataSource("DataSet1"dt);
      
            
this._reportViewer.LocalReport.DataSources.Clear();
            
this._reportViewer.LocalReport.DataSources.Add(datasource);

            
this._reportViewer.LocalReport.ReportPath Application.StartupPath " \Report1.rdlc");
            
_reportViewer.RefreshReport();
 
// Path of the rdlc file
           
this._reportViewer.RefreshReport();
 
        } 
واعذرني على قل الاجتهاد في الاجابة
ولمزيد من المعرفة حول التعامل مع هذه الاداة تابع اجابة الاخ الطلب
http://vb4arb.com/vb/thread-13061-post-6...l#pid61851
وانظر ايضا في نفش هذه الصفحة لمجموعة المواضيع المحتمل ان تكون مشابهة لطلبك
بالتوفيق
سبحان الله والحمدلله ولا إله إلا الله والله أكبر
 اللهم اغْفِرْ لِلمؤمنين والمؤمنات والمسلمين والمسلمات الأحياء منهم والأموات
الرد }}}
تم الشكر بواسطة: haiderkh , ممدوح
#3
(19-09-16, 05:28 PM)أبو عمر كتب : غفر الله لنا ولك
نعم تستطيع عرض كافة التقارير لديك في اداة واحدة وتكتفي فقط بتعريفات التالي
1- الداتا ست لكل تقرير لديك وجعله مصدر للبيانات مع اسم الجدول او الداتا تيبل في التقرير
2- تعريف مسار ملف التقرير
كالاتي:
PHP كود :
public MainWindow()
 
       {
 
           InitializeComponent();
 
           DataTable dt = new DataTable();
 
           dt.Columns.Add(new DataColumn("ID"typeof(int)));
 
           dt.Columns.Add(new DataColumn("Name"typeof(string)));
 
           dt.Columns.Add(new DataColumn("City"typeof(string)));
 
           dt.Columns.Add(new DataColumn("OrderAmount"typeof(int)));

 
           DataRow dr dt.NewRow();
 
           dr["ID"] = 1;
 
           dr["Name"] = "CK Nitin";
 
           dr["City"] = "New York";
 
           dr["OrderAmount"] = 100;
 
           dt.Rows.Add(dr);

 
           ReportDataSource datasource = new ReportDataSource("DataSet1"dt);
 
     
            this
._reportViewer.LocalReport.DataSources.Clear();
 
           this._reportViewer.LocalReport.DataSources.Add(datasource);

 
           this._reportViewer.LocalReport.ReportPath Application.StartupPath " \Report1.rdlc");
 
           _reportViewer.RefreshReport();
 
// Path of the rdlc file
 
          this._reportViewer.RefreshReport();
 
 
       
واعذرني على قل الاجتهاد في الاجابة
ولمزيد من المعرفة حول التعامل مع هذه الاداة تابع اجابة الاخ الطلب
http://vb4arb.com/vb/thread-13061-post-6...l#pid61851
وانظر ايضا في نفش هذه الصفحة لمجموعة المواضيع المحتمل ان تكون مشابهة لطلبك
بالتوفيق

اجتهدت كثيرا اخي الكريم ولست مقلا بارك الله بك
الرد }}}
تم الشكر بواسطة: أبو عمر
#4
هل من حلول اخرى سادتي
الرد }}}
تم الشكر بواسطة:
#5
إذا كنت تريد ربط ReportViewer واحد عن طريق الكود بأي تقرير موجود بالمشروع استخدم الكود التالي
كما تلاحظ اسم التقرير هو من نوع نصي ويكتب كامل مع نوعه rdlc.
وبهذه الطريقة تستطيع تغيير اسم التقرير المراد ربطه بالكود بسهولة.
كود :
Me.ReportViewer1.LocalReport.ReportEmbeddedResource = Me.GetType().Namespace & "." & "Report1.rdlc"
Me.ReportViewer1.RefreshReport()
كود :
Me.ReportViewer1.LocalReport.ReportEmbeddedResource = Me.GetType().Namespace & "." & "Report2.rdlc"
Me.ReportViewer1.RefreshReport()

مع ضرورة تنفيذ RefreshReport بعد الربط مباشرة.
الرد }}}
تم الشكر بواسطة: haiderkh


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] اريد طباعة تقرير ريبورت فيو مباشرة فور عرض التقرير mh66 1 565 22-03-25, 09:59 AM
آخر رد: mh66
  مشكلة تنسيق التاريخ في تقرير الكريستال مصمم هاوي 4 701 07-02-25, 01:24 AM
آخر رد: عبد العزيز البسكري
  اريد كود معين اثابكم الله خالد كامل1 1 461 04-02-25, 09:28 PM
آخر رد: aliday03
  سؤال فى تقرير كريستال خالد كامل1 0 401 04-02-25, 05:50 AM
آخر رد: خالد كامل1
  هل من الممكن تصميم تقرير كالصوره خالد كامل1 0 328 25-01-25, 03:03 AM
آخر رد: خالد كامل1
  كيفية احتساب الفرق بين تاريخين بناء على عدد معين مصمم هاوي 2 558 15-01-25, 02:02 PM
آخر رد: مصمم هاوي
  [سؤال] اضافة ملف Pdf الى الريسورس واستخراجه الى مسار معين .. ackore 6 611 15-11-24, 02:51 AM
آخر رد: justforit
  معرفة عدد صفوف الجريد فيو بشرط معين modymody300894 4 666 12-11-24, 02:22 PM
آخر رد: salamandal
  كتابه عدد معين من الارقام داخل تيكست بوكس modymody300894 3 564 07-11-24, 09:15 PM
آخر رد: modymody300894
  طباعة تقرير كرستال DOX.1 7 2,267 14-10-24, 06:59 AM
آخر رد: am000er

التنقل السريع :


يقوم بقرائة الموضوع: