تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
لا لتسجيل الدخول بعد الان في الكريستال (الجزء الاول)
#1
كاتب الموضوع : حماده عماره

[SIZE=4]السلام عليكم ورحمته وبركاته


لا لتسجيل الدخول بعد الان في الكريستال



لكل الذين يستخدمون برنامج الكريستال ويعانون بشده من شاشة الدخول السؤال الاهم لماذا تظهر شاشة الدخول من حيث المبداء . انها تظهر لوجود جداول داخل التقرير لم يحصولوا علي بيانات مما يجعلهم منزعجين ويطالبون المستخدم بشاشة تسجيل الدخول للحصول علي نصيبهم من البيانات . هذه ببساطه هي المشكله ويوجد لها كثير من الحلول.

*******************

1- أرسال معلومات الاتصال الي التقرير عند استدعائه ويتولا هو جلب البيانات بمعرفته ويعرضها دون اي تحكم منا فيها ( غير مفضل بالنسبه لي -- سيتم شرحه في مقال قادم)

2- ارسال البيانات الي ملف XML ثم توجيه التقرير للملف ليجمع بياناته بنفسه (سيتم شرحه ايضا فيما بعد) (غير مفضل لي )

3- تعبئة DataSet او Data Table بالبيانات وتصبح هي مصدر البيانات بدل من قاعدة البيانات ويمكن طبعا بسهوله فائقه التحكم في البيانات الموجوده داخلهما مما يوفر عدد كبير جدا من التقارير الواجب تصميمها . وذلك لانك تتحكم في البيانات المرسله فلا داعي مثلا الا لتقرير واحد مثلا لاسماء الموظفين واعرض فيه الموظفين حسب اي شرط قد يخطر في بالك كانك صممته 100 مره او اكثر ( انت وافكارك)


*************
****


الحل الامثل من وجهة نظري التحكم في مصدر بيانات التقرير الا وهو الحل رقم 3 وهو ينقسم الي 3 حلول حسب الحاله



الاول :

في حالة الجداول المنفرده او ان التقرير مصمم علي جملة استعلام واحده او مبني علي جدول واحد الموضوع ببساطه هو تعبئة Data Table بنفس جملة الاستعلام او الجدول الذي بني عليه التقرير سواء بشرط او لا او لو حتي الناتج بدون بيانات مما يجعل ان جميع حقول التقرير حصلت علي بيانتها فتعرضها مباشرة دون الاهتمام بمعلومات الدخول الي نفس المصدر الذي صمم عليه التقرير .

مثال:









الثاني:
اما في حالة اكثر من جدول فهنا الوضع مختلف حيث ان المطلوب هذه المره بيانات مختلفه وكثيره من اكثر من جدول اذا نظرية تعبئة Data Table الواحد لن تفلح هذه المره الحل هو التصريح عن Data Set ثم تعبئتها بالجداول وكل جدول به البيانات الخاصه به + يجب ان يكون كل جدول يحمل اسما والا كما يقال («كأنك يا بو زيد ما غزيت» )
لان التقرير سيبحث داخل ال Data SET عن أسم الجدول ليأخذ ما به من بيانات فلا يجده وهنا المشكله

وهذا الوضع ينطبق ايضا علي الجداول الفرعيه حيث انها في الحقيقه مجرد تقرير باكثر من جدول وهذا مثال علي ذلك .







الامثله مجربه وبدقه

هذا ليس الحل الوحيد ولكنه الاسهل واالاسرع والادق هناك اشياء اخري يمكن حل بيها المشكله ولكني لا افضلها وسنناقشها في حل اخر

وهذا مثال علي الحالتين في المرفقات


شكرا لكم
[/SIZE]





حمل المثال من هنا
}}}}
تم الشكر بواسطة: momiana1 , Programmer_2017


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  درس مبسط :تمرير القيم من برامجنا لتقارير الكريستال ريبورت m.sami.ak 6 3,036 21-09-16, 02:11 PM
آخر رد: فاطمة عمر
  تمرير نواتج ال DATAREADER لمعادلة او TEXT فى الكريستال badr123456 0 249 21-11-15, 05:57 PM
آخر رد: badr123456
  العمليات الحسابية من قاعدة البيانات الى تقرير الكريستال ريبورت مباشرة aftfm 0 686 02-12-14, 06:29 AM
آخر رد: aftfm
  التعامل مع TextObject فى الكريستال ريبورت بدون قاعدة بيانات Omar Mekkawy 2 1,689 29-11-14, 01:58 AM
آخر رد: mero5000
  علم تقارير الكريستال باحتراف (حماده عماره) حماده عماره 2 1,969 17-10-12, 04:02 PM
آخر رد: AbaAlHaitham
  التقارير الفرعيه في الكريستال (فن وابداع) الجزء الثالث RaggiTech 0 924 10-10-12, 01:39 PM
آخر رد: RaggiTech
  متابعة مشاكل الكريستال قبل ايام من اصدار النسخة الثانيه crystal 2010 beta 2 RaggiTech 0 704 10-10-12, 01:11 PM
آخر رد: RaggiTech
  حل مشاكل الكريستال مع vs 2010 RaggiTech 0 1,142 10-10-12, 01:09 PM
آخر رد: RaggiTech
  الحل الاخير والمجرب لمشاكل الكريستال 2010 RaggiTech 0 1,249 10-10-12, 01:04 PM
آخر رد: RaggiTech

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم