الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة عدم ظهور بيانات في التقرير

بدأه omar1978 في 22 سبتمبر 2011 · 3 رد · 992 مشاهدة · في تصميم وبرمجة التقارير
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة الأعزاء أعضاء المنتدى

لقد قمت بكتابة برنامج عبارة عن قاعدة بيانات SQL SERVER 2008 ولغة البرمجة هي C# 2008

ثم قمت بعمل تقرير يعطي بعض المعلومات من قاعدة البيانات حيث أضفت DATASET للمشروع وأضفت فيها أعمدة الجدول

ثم قمت بإدراج crystal report للمشروع وأضفت crystalreportviewer ثم قمت بكتابة الكود التالي :

DataSet1 ds = new DataSet1();

reportform rf = new reportform();

sqlCommand1.Connection = sqlConnection1;

sqlCommand1.CommandType = CommandType.Text;

sqlCommand1.CommandText = "select MachineNumber,WardiaNumber,CottonType,InputDate,machineproduction from CardTable where InputDate='" + rf.dateTimePicker1.Value.ToLongDateString() + "'"; ;

SqlDataAdapter da = new SqlDataAdapter(sqlCommand1.CommandText, sqlConnection1);

da.Fill(ds,"CardTable");

CrystalReport1 cr = new CrystalReport1();

cr.SetDataSource(ds);

crystalReportViewer1.ReportSource = cr;

ولكن المشكلة أنه لا تظهر أي بيانات في التقرير ويظهر التقرير فارغ وأنا تعبت من المحاولات ولم أفلح

الرجاء المساعدة وبسرعة ولكم جزيل الشكر

#2

المشكلة قد تكون انه لا يتم جلب البيانات من القاعدة لأنه الكود :

where InputDate='" + rf.dateTimePicker1.Value.ToLongDateString()

يعني أننا نريد التاريخ المساوي للتاريخ المدخل بالسنة و الشهر و اليوم و الساعة و الدقائق و الثواني .

و هناك عدة طرق لمقانة التاريخ في سيكوال سيرفر , أنا شخصيا أقارن اليوم و الشهر و السنة و أتجاهل الساعة و الدقائق و الثواني :

SELECT * 
FROM table1
WHERE Year(column_datetime) = Year(@DateToSearch)
      AND Month(column_datetime) = Month(@DateToSearch)
      AND Day(column_datetime) = Day(@DateToSearch)

طبعا بفضل وضعه بــ Stored Procedure و عليك بجوجل فقد تجد حلول أفضل , بانتظار الرد من الخبراء

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#3

الأخ حسام المحترم

شكراً جزيلاً لك على الاهتمام

ولكن حتى بدون العبارة where فإن التقرير يظهر فارغ

الرجاء المساعدة من أهل الخبرة

#4

السلام عليكم ..

أولا من Server Explorer نأخذ وصلة جديده لقاعدة البيانات المطلوبة , ثم نأخذ DataSet جديدة ثم من الــ Server Explorer نفتح الوصلة المنشأة ثم على الجداول و نسحب الجدول المطلوب إلى الــ DataSet ثم ننشئ تقرير جديد و نضع مصدر البيانات له Project DataSet و نختار ال DataSet و نسحب الجدول المطلوب و نسحب الحقول على الريبوت (لا نختار الوصلة المنشأة كمصدر لبيانات التقرير ) ثم إلى الكود :

DataSet1 ds = new DataSet1();
            String dbPath = @"C:\ReportTest\ReportTest\bin\Debug\ReportTestDB.mdb";
            string dbConnectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source={0};Persist Security Info=False", dbPath);
            OleDbConnection connection = new OleDbConnection(dbConnectionString);

            OleDbCommand command = new OleDbCommand();
            command.CommandType = CommandType.Text;
            command.CommandText = "SELECT * FROM Employee;";
            command.Connection = connection;
            OleDbDataAdapter da = new OleDbDataAdapter(command.CommandText, connection);
            da.Fill(ds, "Employee");
            MessageBox.Show("We Have " + ds.Tables["Employee"].Rows.Count + " Rows in Table" );
            CrystalReport1 cr = new CrystalReport1();
            cr.SetDataSource(ds.Tables["Employee"]);
            crystalReportViewer1.ReportSource = cr;

انتبه للسطر

            cr.SetDataSource(ds.Tables["Employee"]);

و إذا لم تحل المشكلة اقترع إرفاق نسخة من المشروع كي يتمكن الأعضاء من معرفة المشكلة

طبعا المشروع موجود بالمرفقات لمن احب الأطلاع و يجب وضعه على السواقة c: مباشرة لأن مسار القاعدة مثبت داخل الكود

و بانتظار ردود الخبراء ..

ReportTest.rar

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

مواضيع مشابهة