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

سؤال في الكريستال ريبورت

بدأه زهرة الزنبق في 3 ديسمبر 2012 · 4 رد · 627 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يوجد لدي 10 حقول في جدول في كل حقل يتم ادخال كلمة واحدة واقوم بإظهار هذا الجدول في كريستال ريبورت

وهذه الحقول اظهرها جميعا تحت عنوان واحد في الكريستال ريبورت وهو "التشطيبات النهائية" كم في الجزء الاول من الصورة المرفقة

ففي هذا الجزء يظهر الجزء من التقرير الذي يحوي العنوان واسفله والبيانات المستدعاة من الجدول والخاصة بال10 حقول

احيانا يتم ادخال اول حقل واخر حقل فقط والباقي يكون فارغ ومكانهم في التقرير يكون فارغ فتظهر واحدة في اول السطر الاول

والاخري في اخر السطر الثاني كما في الجزء الثاني من الصورة

فكيف يتم جعل الحقل يحل محل الاخر عند وجوده خالى من البيانات كما في الجزء الثالث من الصورة

post-263787-072938400 1354532414_thumb.g

المرفقات
Untitled-1 copy.gif
#2

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

  1. يمكن حل المشكلة بجعل مصدر بيانات التقرير عبارة عن DataSet فيها حقول باسم f1,f2,f3,.... عند تمرير البيانات تقوم بملئ الحقول المطلوبة فقط و ترك الباقي فارغا ..
  2. سيكون لديك الكود مشابها لــ :
    int index = 0;
    DataRow r = ds.Tables[0].NewRow();
    if(!String.IsNullOrEmpty(txtRega.Text))
    {
    	r[index] = txtRega.Text;
    	index++;
    }
    
    if(!String.IsNullOrEmpty(txtCover.Text))
    {
    	r[index] = txtCover.Text;
    	index++;
    }
    
    ds.Tables[0].Rows.Add(r);
    rpt.DataSource = ds;

1

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

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

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

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

#3

ما هي نوع قاعد البيانات

#4

ms sql 2005

#5

السلام عليكم ورحمة الله وبركاته

في الحقيقة الحل الذي قدمه الأخ حسام حل ممتاز جداً ويدل على احترافية عالية وتفكير منظم، ولكنه ربما يكون صعب بعض الشيء على المبدتئين

لذلك

ربما يساعدك هذا الحل بإذن الله تعالى

رغم أنه يعتبر تحايل على البرمجة

الحل ببساطة أن تضم كل التشطيبات المطلوبة فى حقل واحد وتعرض هذا الحقل على الكريستال ريبوت

بمعنى

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

وستكون جملة الاستعلام الخاصة بك تشبه الجملة التالية

select Col1 +' ' + col2 + ' ' Col3 + ' ' + Col4 ...Col10 as AllFinishes from Table

نتيجة لذلك ستعود جملة الاستعلام بعمود واحد يحتوى على كل التشطيبات المطلوبة مفصولة فيما بينها بمسافات

أرجو أن يكون مفيدا

والسلام عليكم ورحمة الله وبركاته

4

أدعو الله أن يجعل أعمالنا خالصة لوجهه الكريم --- وأن ينفعنا بما علمنا

Dr Sayed Tohamy

Programming Instructor

مدرب برمجة

---------------

EmaSoft2000

-------------------

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