83
ول ء الأ ز ج ل ا- ورت ب ي ال ر ت س ي ر لك اSOLO.NET م ي ح ر ل ن;pma& ا م ح ر ل له ا ل م اس ي دمه ق م ل ا ر ب ت ع تCRYSTAL REPORTS ي فر ي ار ق تل ل ه ي س ي ئ ر ل ا داة الأ ي هVisual Studio.NET داة ة الأ ا هد تD كن م ت و دم ق ت ن;pma& . و ي ف ر حب م ل ر ا ب غ ها د ت ف تR ي ع ت ط تس ي لأ كالW ش ا ي ف ات ان ت[ لن ا زض ع ت دة ق معر ي ار ق ت& ن ي و ك ن& ن مCrystal Reports ة ي ن[ ئ ل خ دا له كام ت م ل ئ ن;pma& وسا ي ج م ر مب ل لVisual Studio.NET ر ب ف و ب ي دوات ة الأ وم هد ق ت واء سر ي ار ق ت ل ا زض ع ر مب ت ي و وت ل ا كه تW ش ي عل ومات ل ع م لر وا ي ار ق ت ل ا اركهW ش م, ات ان ت[ لن ل ا ت جل ت و ه ي رو ات ت ي مكا ا دام ج ت ش ا و ن ا دور ت ي و ل دام ا ج ت ش ا نHTML ب ي ف تR لن ل اW ت م ل ئ ر وسا ب ف و ت ق ت ز ط& ن ع& ن مي د ج ت س م ل ع ا م وى ق ل ل ا ع ا ق ت ل ا ن وض ص ت ل ن;pma& ا عW ب ح ب ل وا ر يز ق ت ل ا ي ف ول جR ب ل ا ه ي ي ا ت[ لن وم ا س ر ل دام ا ج ت ش ا ن ات ان ت[ لن ن;pma& ا ع م ي م ص ت ل هات ج م وا ي د ق ت ي ورت ب ي ال ر تس ي ر ك ي فر ي ار ق ت ل ولد ا م وم ق تر ي ار ق ت ل ن;pma& ا ي و ك ن ي ف ود ك ل دام ا ج ت ش ن;pma& ا م دلأ ون(ر ي ار ق ت ل راء ا ب خ ح صطل م هات ج وا ل ة ا ي هد عل ق ل ط ي رغه س و وله ه س ي ها لي ج;pma& ا ا ت ح ت ي لتر ا ي ار ق ت ل ا ه اغ ت ص وReport Experts ر ي ار ق ت ل ن;pma& ا م داء ت ي ي لتر ا ي ار ق ت ل ن;pma& ا م وغه بR من وغه م ج م& ن ي ئ ار ت ت خ الأ ها ق ت ز ط& ن ع& ن مك ت& ح مرا ي لW ت م ت ي ه و) ى ل ول ا ص و ل و ا ات ان ت[ لن ع ا تR نR ئ& ن م دم ج ت س م ل ن;pma& ا مك ت ي لت ا ه ي ي ا ت[ لن وم ا س ر ل ا زض ع ات طان خ لاد ا عد ى ا ل ا ه ي ش ا ت ف ل ا

files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

Embed Size (px)

Citation preview

Page 1: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

األول - الجزء ريبورت الكريستالSOLO.NET

 

الرحيم الرحمن الله بسم    

المقدمةفي CRYSTAL REPORTSتعتبر للتقارير الرئيسية األداة Visualهي

Studio.NET  في البيانات تعرض معقدة تقارير تكوين من األداة هذه وتمكنناويقدم . المحترفين غير تنفيذها يستطيع ال Crystal Reportsأشكال

بيئة داخل متكاملة وسائل األدوات Visual Studio.NET   للمبرمجين هذه تقومعلى , والمعلومات التقارير مشاركة البيانات وتحليل رؤية إمكانيات بتوفير

باستخدام أو الويندوز باستخدام سواء التقارير عرض ويتميز الوب شبكةHTML مثل وسائل توفير طريق عن المستخدمين مع القوى بالتفاعل

والبحث التقرير في التجول البيانية الرسوم باستخدام البيانات عن التنقيبالنصوص عن

في التقارير مولد يقوم التقارير تكوين في الكود استخدام من وبدالإليها نحتاج التي التقارير وصياغة لتصميم واجهات بتقديم ريبورت كريستال

( التقارير خبراء مصطلح الواجهات هذه على يطلق وسرعة ReportبسهولةExperts )متنوعة مجموعة بين االختيار طريقها عن يمكن برامج تمثل وهى

عرض الخطابات إعداد الى القياسية التقارير من تبداء التي التقارير منالى الوصول و البيانات تتبع من المستخدم تمكن التى البيانية الرسوم

تم ولقد المئوية والنسب الفرعية واإلجماليات اإلجماليات حساب التفصيالتالتطوير بيئة أجزاء باقي مع متكامال جزءا يصبح لكي التقارير مولد .تصميم

 ادوات تكوين التقارير

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

الوصول الى مصادر البيانات 

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

عرض التقرير.تشمل هذه االدوات مصمم التقارير الذى يمثل االداة الرئسية المستخدمة فى صناعة التقارير.كما يشمل واجهات المساعدة فى تصميم

التقرير والتى يطلق عليها خبراء التقاريرcrystal reportsمصم تقارير

وينفسم مصمم تقارير كريستال ريبورت الى االقسام التالية: مصمم التقريرreport designer شريط االدوات crystal reports toolbar

Page 2: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

مستكشف الحقول field explorer  

مصمم التقرير ينقسم التقرير فى نافذة مصمم التقرير الى خمسة اقسام رئيسية ويمكن

اخفاء بعض هذه االقسام او اضافة اقسام اخرى تشمل هذه االقسام: مقدمة التقرير,مقدمة الصفحة,فسم التفصيالت,موخرة التقرير,مؤخرة

الصفحة وتتوقف البيانات التى تظهر بالتقرير النهائى على خيارات التى نختارها الدراج كائنات التصميم وتتوقف خصوصا على انواع االقسام

تقرير معينة . 

مقدمة التقرير يجرى طباعة الكائنات الموضوعة فى قسم مقدمة التقرير مرة واحدة فى

بداية التقرير,ويحتوى قسم مقدمة التقرير بصفة عامة على عنوان التقرير والمعلومات االخرى التى نريد اظهارها فقط فى بداية التقرير وتحتوى الرسوم البيانية والجداول المتقاطعة التى توضع فى هذا القسم على

بيانات تخص كامل التقرير كما ان الصيغ الموضوع يتم تقييمها مرة واحدةفقط فى بداية التقرير.

 مقدمة الصفحة

  الكائنات التى توضع فى مقدمة الصفحة يتم طباعتها فى بداية كل صفحة

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

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

التى توضع فى هذا القسم مرة واحدة فى بداية كل صفحة جديد   

قسم التفصيالت يحتوى هذا القسم على البيانات التى تكون جسم التقرير وهو القسم الذى تظهر به معظم بيانات التقرير ويجرى طباعة الكائنات التى توضع فى هذا

القسم بالنسبة لكل سجل من سجالت البيانات على سبيل المثال اذا اضفنا سجل سوف يقوم100كائن قاعدة بيانات الى هذا القسم ويحتوى على

التقرير بطباعة مائة قسم تفصيالت فى وقت التشغيل وال يمكن وضع الرسوم البيانية والجداول المتقاطعة الصيغ الموجودة يتم تقييمها مرة

بالنسبة لكل سجل  

مؤخرة التقرير 

الكائنات الموضوعة فى مؤخرة التقرير تطبع مرة واحدة فى نهاية التقرير ويستخدم هذا القسم لكى يحتوى على المعلومات التى نريد اظهارها مرة

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

Page 3: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

تقرير كما ان الصيغ الوضوعة فى هذا القسم يتم تقييمها لمرة واحدة فىنهاية التقرير

 مؤخرة الصفحة

  الكائنات الموضوعة فى قسم مؤخرة الصفحة يتم طباعتها فى نهاية كل

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

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

 مقدمة المجموعة

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

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

خاصة بالمجموعة ويتم تقييم الصيغ الموضوعة فى هذه القسم فى بدايةالمجموعة

 قسم ذيل المجموعة

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

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

الصيغ الموضوعة فى هذا القسم فى نهاية كل مجموعة  

وتتوقف البيانات التى تظهر فى التقرير التام على خيارات التصميم التى يحددها المبرمج وعلى وجه الخصوص تتنوع بيانات التقرير على اساس

االقسام التى نختارها الدراج كائنات التقرير المختلفة على سبيل المثال اذا ادرجنا كائن رسم بيانى فى قسم مقدمة التقرير فان الرسم سوف يظهر

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

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

    

Field Explorerنافذة وتستخدم الدراج , تعديل او حذف حقول تقرير يعرض هذه النافذة شجرة

تتكون من حقول قاعدة البيانات وحقول خاصة يمكن اضافتها الى التقرير ايضا الصيغة المعامل اسم المجموعة االجمالىField Explorer ويبين مربع

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

Page 4: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

اضافتها الى التقرير وبجانب الحقول المستخدمة بواسطة حقول اخرى او المستخدمة فى عمليات حسابية مثل حقول الصيغ , المجموعات االجماليات

المتحركة والملخصاتولمشاهدة هذا المربع:document outline ثم نختارview فى قائمة other windows-نشير الى 1 حقل لمشاهدة القائمة المختصرة - ننقر بزر الماوس االيمن على اى2

الخاصة باختياراته  

Report Expertsخبراء التقارير يمكن استخدام مصمم كريستال ريبورت لتكوين تقرير بدون استخدام ادوات صناعة التقارير المتوفرة بالنظام كما يمكن استخدام ادوات خبراء التقارير للمساعدة فى عملية التصميم فيما يلى قائمة بخبراء التقرير التى يحتوى

عليها كريستال ريبورت:standerdتقرير قياسى    -1form letterنموذج الخطابات    -2formنموذج    -3cross-tabجداول متقاطعة    -4subreportتقرير فرعى    -5mail labelعنوان بريدى    -6drill downتتبع التفصيالت    -7

  كل اداة من هذه االدوات تقودنا خالل عملية تكوين التقرير عن طريق

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

 خبير التقرير القياسى

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

االخرى ويقوم خبير التقرير القياسى بقيادتنا خالل عمليةexpertادوات اختيار مصدر البيانات والربط مع جداول البيانات كما يساعدنا فى اضافة الحقول وتحديد المجموعات وتموين االجماليات تحديد معيار الفرز الذى نريد استخدامه وفى النهاية يقودنا الى تكوين الرسوم البياناية واختيار

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

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

 خبير اعداد الخطابات

يقدم هذا الخبير حال بسيطا لتكوين الخطابات التى تستخدم قاعدة البيانات باعتبارها مصدار للمعلومات عن العميل ومع ان هذا الخبير يقدم الكثير من

الوظائف التى يقدمها خبير التقرير القياسى اال انه يقدم جدوال خاصا بتقارير الخطابات يساعد فى تعريف النص وحقول قاعدة البيانات التى

تظهر فى كل قسم من اقسام الخطاب ويمكن ايضا استخدام جدولالخطابات الستيراد نص سبق تكوينه من تطبيق اخر

 

Page 5: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

خبير اعداد النماذج 

يتيح لنا خبير النموذج تكوين التقارير يمكن طباعتها على نماذج سابقة التجهيز)قواتير الشركة,كشوف حسابات,الخ( ومع انه يماثل خبير التقارير

العادية الى حد كبير اال انه يحتوى على جدول خاص باالنماذج السابقتجهيزها تتيح لنا اختيار اشكال تتناسب مع شعار الشركة

   

خبير الجداول المتقاطعة تقودنا هذه االداة خالل عملية تكوين تقرير يتم فيه عرض البيانات فى

ملصقstyleصورة متقاطعة ومن بين الملصقات التى يحتوى عليها ملصق croos-tableوملصقcustomize styleالتى تساعدنا على تكوين وصياغة البيانات

المتقاطعة ذاتها 

خبير التقارير الفرعية يتيح لنا خبير التقارير الفرعية تكوين تقرير رئيسى وتقرير فرعى فى

نفس الوقت وتقدم هذه االداة المرونة المتوفرة فى خبير التقارير القياسى لتكوين تقرير رئيسى وفى جدول التقرير الفرعى االضافى يمكننا

اختيار استخدام احد التقارير الموجودة على انه تقرير فرعى او يمكننا تكوين تقرير جديد ولكى نكون تقرير فرعى نتبع نفس الخطوات المتبعة

فى خبير التقرير القياسى 

خبير ملصقات عناوين البريد 

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

كما يمكنننا تعرف مخططاتنا من الصفوف واالعمدة ال نمط من التقاريرمتعددة االعمدة

 خبير تقرير التنقيب

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

الخبير كل وظائف خبير التقارير القياسية ومن اهم الملصقات التى يحتوى الذى يعرض قائمة بالقسام التىdrillعليها مربع حوار خبير التقارير ملصق

يمكن اخفاؤها وال تظهر االقسام المختفية الى ان يتم النقر على الحقلالمناسب ويمكن استخدام البيانات المخفية فى الملخصات والمجاميع

 ادوات الوصول الى التقارير ومصادر البيانات

  يحتاج المستخدم الوصول الى التقرير لقراءته كما يحتاج التقرير للوصول

الى مصدر البيانات للحصول على البيانات االداة االرئيسية التى توفرللمستخدم الوصول الى التقرير هى اداة مشاهدة التقارير بنماذج الويندوز

من ناحية اخرى يستطيع التقرير الوصول الى مصادر البيانات باستخداممحرك قواعد البيانات التى يحنوى عليها كريستال ريبورت

Page 6: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 اداة مشاهدة التقارير

تستخدم اداة مشاهدة التقارير نماذج الويندوز لعرض تقاريركريستال ريبورت امام المستخدمين على الشاشة ويجب ربط هذه االداة مع التقرير

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

التقرير 

تصدير التقارير ويقصد بالتصدير تحولية الى انواع اخرى من الملفات والتقارير والصيغ

االمتاحة فى كريستال للتصدير هى:1-adobe acrobat (.pdf)2 - crystal reports for vs.net(.rpt)3 -HTML 3,2 an 4.0 (.html)4 -Microsoft excel (.xls)5 -Microsoft rich text(.rtf)6 – microsft word (.doc) 

export تصدير التقارير من خالل استخدام زر crystalreportviewer وتدعم االداة وHTMLبشريط االدوات الخاص به الى كل صيغ التصدير المذكورة ما عدا

crystal reports for vs.net(.rpt)ويمكن استخدام الكود لتعديل خيارات تصدير التقارير

 طباعة التقارير

يمكن تزويد المستخدمين بخيارات الطباعة من خالل شريط ادوات اداة مشاهدة التقرير

 محركات البيانات

تستخدم محركات البيانات فى وقت التصميم للتعرف على مخططات البيانات ولكى يتم تحديد هذه المخططات يجب اجراء اتصال مع قواعد

, ومحركاتODBC , محرك OLEDBالبيانات من خالل استخدام محرك EXEL/ACCESSللحصول على الجداول والمشاهد واالجراءات المخزنة كما

للحصول على مخطط بيانات فى صورةADO.NETيتم االتصال مع محرك وفى وقت التشغيل تستخدم التقارير نفس محركات البياناتXMLملف

 المستخدمة فى اعداد التقارير واذا تم دفع البيانات الى كريستال ريبورت سوف يجرى استخدام المحرك المناسب لمعالجة فئة السجالت او فئة

البيانات..وياتى كريستال ريبورت ومعه عدد من من محركات قواعد البياناتوالموضحة بالجدول التالى:

 محرك قاعدة البيانات

 قاعدة البيانات المستخدم معها

 OLEDB اى قاعدة بيانات تدعمOLEDB

Page 7: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ODBCاى قاعدة بيانات بها محركODBC

Access\Excelبرنامج اكسس واكسل

ADO.NETقواعد البيانات التى تدعم هذه التقنية

Field Definitionاليستخدم مع قواعد االبيانات

CDOاليستخدم مع قواعد البيانات  

 تصميم تطبيقات التقارير

 بدء التقرير وتحديد مصدر البيانات:

اول مهام تصميم التقرير هى تحديد مصادر البيانات المستخدمة لتوريد البيانات التى يحتوى عليها التقرير وهناك العديد من مصادر البيانات التى

DataSetsيمكن استخدامها اال ان اهم هذه المصادر هو فئات البيانات

 

الثاني - الجزء ريبورت الكريستالSOLO.NET

   

الرحيم الرحمن الله بسم  

تكوين تقرير جديد: ننقر بزر الماوس االيمن على المشروعsolution explorerفى نافذة .1

لعرض قائمة مختصرة add new item وننقر على addنشير الى .2 وننقر فتح crystal reportيظهر مرع حوار نختار منه .3 وبه ثالث خياراتcrystal reports galleryيظهر مربع حوار .4 االول استخدام خبير التقارير-يقودنا خالل عملية تكوين التقرير.5

واضافة اختياراتنا الى مصمم التقارير الثانى يفتح تقرير خالى-.6 الخيار االخير استخدام تقرير موجود-يؤدى الى تكوين تقرير جديد.7

بنفس تصميم تقرير اخر

Page 8: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

okننقر .8 

  عند اختيار خبير التقارير يظهر مربع حوار خبير التقارير نختار البيانات

للوصول الى مصمم التقرير الخاص  finishالمطلوبة لكل مجلد وبعدها ننقر بينا

 اختيار مصدر بيانات التقرير:

يمكن ربط كائنات التقارير مع مصادر البيانات كما يمكن تغيير مصدر البيانات الذى يستخدمة التقرير بعد اجراء االتصال بين كائن التقرير وبين

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

 اختيار مصادر البيانات وربطها بالتقرير

database field ننقر بزر الماوس االيمن على بند field explorerفى مربع    -1add/remove databaseثم نختار بند

فى حالة عدم وجود اتصال مع مصدر بيانات يجب تكوين اتصال بالنقر   -2 على احد مصادر البيانات ثم اختيار مورد البيانات المطلوب من مربع

حوار مورد البيانات نتصفح المجلدات الى ان نجد جداولdatabase expertفى مربع حوار    -3

مصدر البيانات المستخدم نختار الجداول التى تحتوى على البيانات التى نريد اعداد تقرير منها    -4

>>ثم ننقر على الزر الخاص

Page 9: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ok فى مربع االحوار ثم ننقر selected tablesباضافتها الى جانب    -5 

   

:sqlتكوين جداول افتراضية بناء على امر\استعالم يمكنsqlاذا كانت قاعدة البيانات التى نستخدمها تدعم اوامر لغة االستعالم

فى مربع حوار خبيرadd command الخاصة بنا عن طريق زر sqlكتابة اوامر التقارير ويترتب على ذلك تكوين جول افتراضى يمثل هذه االوامر يمنح ذلك

مستخدمى قواعد البيانات المتمرسين القدرة على احكام الرقابة على خاص sqlمعالجة البيانات التى تدفع الى الخادم . لتكوبن كائن امر

بالمستخدم: fieldننقر بزر الماوس االيمن على يشفشالشسث بهثمس فى مربع    -1

explorer   ثم ننفرadd/remove database نتصفح المجلدات الى ان نصل الىdatabase expertفى مربع حوار    -2

مصدر البيانات الخاص بناadd commandاسفل مصدر البيانات ننقر نقرا مزدوجا على عقدة    -3 ندخل االمر او االستعالم add command to reportفى مربع حوار    -4

المناسب لمصدر البيانات يترتب على ذلك العودة الى مصمم التقرير وظهور الجدولokننقر    -5

field explorerاالفتراضى فى مربع  

تغيير موقع مصدر البيانات: لالشارة الى االسم او الموقع الجديد للجداول  set locationنستخدم امر

النشطة فى التقرير ويعتبر ذلك مفيدا عند استقبال تقرير يستخدم قاعدة النظام او عند تغيير الدليل الخاص بقاعدة بيانات توجد بموقع مختلف على

اتو ما تيكيا بتحويل محرك set location  البيانات. باالضافة الى ذلك يقوم امرالبيانات الذى نستخدمه الى مصدر البيانات الذى نقوم باختياره

لتغيير مصدر موقع بيانات:

Page 10: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ثمdatabaseننقر بزر الماوس االيمن فى مصمم التقرير نشير الى    -1 يؤدى ذلك الى عرض مربع حوارset locationننقر

نختار جدول مصدر البيانات الذى نرد  current data source listمن قائمة    -2تغييره

نتصفح الى ان نصل الى مصدر البياناتreplace withفى قائمة    -3نختار الجدول المراد التغيير اليه    -4replaceننقر    -5 بعد االنتهاء من تغيير كل الجدداول التى نريد تغييرهاcloseننقر    -6

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

السجالت من جدول مع السجالت من جدول اخر على سبيل المثال يمكن لكى يتم تخصيص كل امر فىcustomers وجدول ordersالربط بين جدول

customers الحد العمالء فى جدول ordersجدول database expert من مربع حوار link وللقيام بعملية الربط نستخدم ملصق

للربط بين جداول قاعدة البيانات واسهل طريقة للربط بين الجداول هو على اسا  حيث تقوم اتوماتيكيا باختيار الروابط بين الجاولauto-linkاختيار

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

لترتيب هذه الروابطorder linksاستخدام  

ادراج حقول قاعدة البيانات فى التقرير يقوم كريستال ريبورت بعرض كل حقول قاعدة البيانات المتاحة فى مربع

field explorer:والدراج احد الحقول بالتقرير لكى نتمكن منdatabase field نوسع عقدة field explorerفى مربع حوار    -1

مشاهدة جداول قاعدة البيانات حقل البيانات المستهدف ويمكن نوسع جدول قاعدة البيانات ونختار  -2

مشاهدة قيمة الحقل الذى يتم اختياره وكذلك نوع وحجم الحقل من القائمةbrowse dataبالنقر بزر الماوس االيمن ثم اختيار

Page 11: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

المختصرة يعرض مربع الحوار الناتج فئة فرعية من قيم الحقل معاسم الحقل نوعه وطوله

او اى قسم اخرdetailsنسحب الحقل الذى تم اختياره الى قسم    -3بالتقرير

 استخدام فئات البيانات فى اعداد التقرير:

يجب تكوين كائن فئةdatasetsقبل اعداد التقاير التى تستخدم فئات البيانات بيانات ثم االتصال مع ذلك الكائن وبالنظر الى ان كائن فئة البيانات ال

يحتوى على البيانات اثناء التصميم لذلك ال يمكن تصفح بيانات الحقول فى مصمم التقارير وولتمكين التقرير من عرض البيانات الحقيقية فى وقت

التشغيل يجب اوال دفع البيانات الى كائن فئة البيانات ثم ربط فئة البياناتمع كائن تقرير

 اضافة التقارير الى التطبيقات

 االضافة المباشرة للتقرير:

من التقاريرvisual basicتعتبر التقارير التى يتم اضافتها الى تطبيقات النوعية وينتج عن اضافتها تكوين ملف مصدر للتقرير يحتوى على تعريف

ReportClassالتصنيف الخاص بهذا التقرير ويرث هذا التصنسف من التصنيف الموجودة فى النظام ويبين ملف تصنيف التقرير االقسام التى يتكون منها

هذا التقرير وال يجب ان يقوم المبرمجين بتغيير هذه االقسام 

اضافة التقارير من خالل مكونات التقارير الغير نوعية: يمكن اختيار ادراج احد التقارير فى نموذج ويندوز عن طريق اضافة مكون

الى النموذج اوال ثم تحميل)Untyped Report Component(تقارير غير نوعىالمكون بملف التقرير بعد ذلك .

وال يتم تكوينreportdocumentيتبع مكون التقارير الغير نوعية تصنيف تصنيف خاص به فى وقت التصميم بسبب ربطه مع التقرير فى وقت

التشغيلالضافة مكون تقرير غير نوعى الى النموذج نتبع االتى:

فى صندوقcomponentمن صفحة   report documentنسحب مكون    -1االدوات الى النموذج

untyped نختار تصنيف choose a reportdocumentفى مربع حوار    -2reportdocumentيترتب على ذلك اضافة مكون تقرير غير نوعى

  loadولتحميل مكون تقرير غير نوعى باحد التقارير نستدعى الطريقة

على سبيل المثال لتحميل مكون التقريرreportdocumentالخاصة بتصنيف reportsdoc1غير النوعى المسمى

Reportdoc1.Load("c:\my Rreport.rpt") عد تحميل ملف طباعة فى مكون تقرير غير نوعى يمكن ربط هذا المكونب

crystalReportViewerمع اداة   

اضافة التقارير من خالل مكونات التقارير النوعية:

Page 12: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

typed(يمكن اضافة تقرير نزعى الى النموذج من خالل مكون تقرير نوعى report document(يسمح لنا ذلك بضبط خيارات الطباعة الخاصة بالمكون فى

نافذة الخصائص ويمكن ايضا استضافة التقرير عن طريق ربطه مع اداةمشاهدة التقارير

 ربط التقارير مع ادوات مشاهدة التقارير:

)crystalreportviewer(قبل ان نستطيع عرض تقرير فى اداة مشاهدة التقارير report sourceيجب ربط كائن التقرير مع االداة يتم ذلك عن طريق خاصية

ويمكن الربط فى وقت التصميم او وقت التشغيل سواء 

ربط التقارير غير المضافة الى التطبيق: عندما توجد التقارير فى صورة ملفات على الكمبيوتر غير المضافة الى

المشروع محل التصميم توجد ثالث طرق للربط:  

ربط التقرير باستخدام اسم ملف التقرير: الجراء الربط فى الخصائص الداةviewer نضبط خاصية report source

على اسم ملف التقريرالجراء الربط عن طريق الكود نقوم بتحديد مسار واسم الملف

للتقريرImpCrystalreportviewer1.reportsource="c:\\reports\\my report.rpt"

  

ربط التقرير غير المضاف باستخدام كائن تقرير:نفتح محرر الكود بالنقر المزدوج على النموذج االساسى    -1نقوم باضافة مجاالت االسماء التالية:    -2

ImpImports CrystalDecisiions.CrystalReports.Engine  نعرف متغير عام على مستوى النموذج    -3     

 Public WithEvents oRpt As ReportDocument

  للنموذج نستخدم كائن التقرير فى تحميل التقريرثم بعدnewفى وسيلة

ذلك نربطه مع اداة مشاهدة التقارير 

Public Sub New()MyBase.New()

oRpt= new ReportDocument oRpt.load(c:\\reports\\my report.rpt)Crystalreportviewer1.reportsource=oRptEnd Sub

الربط باستخدام مكون تقرير غير نوعى: الى النموذجreportdocument1نفترض اضافة مكون تقرير غير نوعى باسم

يمكننا ربط مكون التقريرc:\\reports\\my report.rpt ثم تحميل المكون بالملفreport source عن طريق خاصية  viewerغير النوعى مع اداة

 ربط التقارير المضافة الى التطبيق:

Page 13: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

عن طريقviewerيمكن ربط التقارير المضافة الى التطبيق مع اداة استخدام مكون تقرير نوعى او اعن طريق انشاء مثيل من تصنيف التقرير

باستخدام كائن تقرير: الربط عند اضافة احد التقارير الى مشروع تطبيق ويندوز يتم تلقائيا اضافة ملف

الى المشروع خاص بهذا التقرير ويمكن تكوين كائن منrpt.تصنيف امتداده هذا التصنيف وربطه مع اداة مشاهدة التقارير هكذا

CrystalReportViewer1.ReportSource=New My_Report()  

ربط التقرير باستخدام مكون تقرير نوعى: من خالل مكونviewerيمكن ربط التقرير المضاف الى المشروع مع متحكم

باستخدام نافذة الخصائص او باستخدام الكود تقرير نوعى كائنات التقرير:

(حقول قاعدة البياناتDatabase Field) ( حقول صياغةFormula Fields) (حقول معامالتParameter Fields) (حقول مجموعااتGroup name Fields) حقول تعبيرات لغة االستعالم المركبة)SQL Expression Fields( حقول االجمالى المتحرك)Running Total Fields( )(الحقول االجمالية)الملخصاتSummary fields( الرسوم البيانيه)Charts (

  كائنات الحقول: دوران

يمكننا استخدام خيارات format editor فى مربع حوار commonتحت ملصق text rotationلتصفيف كائنات الحقول والنصوص راسيا على التقرير ويمكننا

درجة270 ,90تحريك النص منع بتر النصوص:

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

العرض على اساس الكائن الذى نتعامل معه وبغض النظر عن عرض الكائن سواء كان العرض االفتراضى او عرض تم تغييره بواسطة المستخدم يمكن

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

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

يتقرر العرض memoبالنسبة لحقول قاعدة البيانات غير الحقول من نوع على اساس عرض الحقل فى قاعدة البيانات وعلى اساس متوسط عرض

الحرف الذى يحددة نوع الحرف وحجمه مرة من18بالنسبة لكائنات النصوص يكون العرض االفتراضى مساويا

متوسط عرض الحرف ويختلف العرض االفتراضى لحقول االرقام على اساس نوع البيانات

)byte,integer,double….etc(الرقمية التى تحتوى عليهلمنع بتر نص داخل كائن:

formatننقر بزر الفارة االيمن على الكائن المراد صياغته ثم ننقر .1 can grow ونختار مربع commonفى مربع الحوار ننقر على ملصق .2

Page 14: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

  للحفظ ويترتب على ذلك صياغة الكائن للطباعة على سطورokننقر

متعددة فاذا كانت طباعة النص اكبر من عرض الكائن فان النص يجرىاستكماله فى سطور اضافية-

 منع تداخل النصوص:

يجب تجنب تصميم التقارير حيث تكون المسافة بين الكائنات ضيقة جدا بل  تقريبا واذا%5يجب ترك مسافة للنمو الناتج عن توسيع عرض الكائن بنسبة

لم يكن ذلك ميسرا يجب انقاص حجم الخط 

منع بتر االرقام: اذا كانت قيمة رقمية او قيمة عملة اكبر من الحقل الذى يحتوى عليها فان

قيمة مثل الوضع الطبيعى هو بتر او قص هذه القيمة على سبيل المثال يمكن ان يؤدى ذلك الى1000يمكن ان تظهر ف التقرير   100000000

سوفAllow Field Clippingحدوث ارتباك عمد قراءة التقرير وعند ازالة خيار يتم تمثيل القيم الرقمية والنقدية التى تتجاوز حجم الحقل بالعالمات

لالشارة الى ان الحقل صغير بالنسبة للرقم.(#########)الرقمية

الرحيم الرحمن الله بسم  

 التحكم فى بيانات التقرير:

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

,فرز ترشيح البيانات,ضبط المعامالت,تكوين المجموعات وتلخيصها البيانات,تكوين االجماليات الفرعية والمتحركة,استخدام الصيغ وتنسيق

البيانات. 

ترشيح البيانات: يبين لنا هذا القسمم كيفية ترشيح البيانات التى نريد وضعها فى التقرير ويتم ترشيح البيانات باستخدام صيغ اختيار السجالت واستخدام المعامالت

على سبيل المثال باستخدام ادوات اختيار السجالت يمكننا جعل التقرير يشتمل على مجموعة معينة من العمالء،نطاق محدد من ارقام الحساب او

نطاق تواريخ خاص. 

اختيار السجالت: قيم الحقول فى كل السجالت عند اختيار سجل لعرضه على تقرير فأن

بالجدول المستخدم يجرى طباعتها افتراضيا غير انه فى حاالت كثيرة قد ال نريد وضع جميع هذه القيم فى التقرير ولكن فقط طباعة فئة فرعية من هذه القيم لتوفير.لتوفير هذه االمكانية يحتوى كريستال ريبورت على لغة صياغة معقدة يمكن استخدامها افتراضيا لتحديد اى نوع من انواع اختيار

Page 15: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

(التى تقوم بقيادةselect expertالسجالت.كما يحتوى على اداة خبير االختيار ) المستخدمين فى عملية تكوين االختيارات المختلفة. على هذا االساس

يمكن التفريق بين طريقتين الختيار السجالت فى كريستال ريبورت 

لمعالجة اساسيات اختيار السجالتselect expertاستخدام    -1اختيار السجالت باستخدام الصيغ    -2

 تحديد الحقول التى نستخدمها فى اختيار السجالت:

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

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

.العثور على احسن طريقة للتعرف على السجالت التى تخص تلك المنطقة* المستخدم فى التقرير يحتوى على حقل يمثل اذا كان الجدول

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

اذا كان الجدول ال يحتوى على حقل يمثل المنطقة نبحث عن طريقة*اخرى لتحديد المنطقة

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

المنطقة اذا كان الجدول يحتوى على حقل خاص بكود المنطقة يمكن اختيار *

المنطقة بناء عغلى قيمة هذا الحقل 

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

بيانات بدفع معايير اختيار السجالت الى خادم البيانات وعند تحديد صيغة   

الختيار السجالت فى تقرير يعتمد على مصدر بيانات اس كيو ال يقومsql كريستال ريبورت بتحليل هذه الصيغة وتكوين استعالم على

اس كيو ال يتم بعد ذلك تنفيذ اساسها وتمرير االستعالم الى خادم:االستعالم على مرحلتين

فى المرحلة االولى من اختيار السجالت يقوم خادم قاعدة البيانات*بمعالجة االستعالم واعاددة فئة من السجالت الى كريستال ريبورت

فى المرحلة الثانية يقوم كريستال ريبورت بتقييم صيغة اختيار* السجالت محليا لفئة السجالت العائدة من خادم قاعدة البيانات ويتم

.اختيار السجالت النهائية  

االنواع التالية من معايير اختيار السجالت يمكن دفعها الى خادم اس كيو:ال

االختيار باستخدام الحقول المفهرسة وغير المفهرسة*and,or مع عبارات sqlاالختيار باستخدام استعالامات  * التى تنفذ صيغة العمليات الحسابية الخاصة باختيارsql* حقول تعبيرات  

السجل 

Page 16: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ويجب مالحظة ان هناك صيغ ال يمكن تنفيذها على الخادم يوضح المثال التالى مزايا كتابة صيغ اختيار السجالت التى يمكن تنفيذها على خادم

2001 به xtremeفى قاعدة بيانات ordersقاعدة البيانات. نفترض ان جدول ونفترض اننا نريد اعداد 1998 سجل يقع فى تاريخ سنه 169سجل منها

تقرير عن تلك السجالت فقط يمكننا استخدام صيغة االختيار التالية:Year({Orders.Order Date})<1998

الناتج عن هذه الصيغة سوف يقوم بارسال كل السجالت البالغsqlاستعالم الى كريستال ريبورت ثم تقوم صيغة االختيار المذكورة على2001عددها

169الكمبيوتر العميل بتخفيض عدد السجالت الى ان يتم اختيارها الى سجل يرجع السبب فى ذلك الى ان االستعالم الذى يتم تكوينه ال يحتوى

اليمكن تنفيذها على خادم البيانات year الن الدالة whereعلى فقرة من ناحية اخرى يمكن استخدام صيغة االختيار التالية

}Orders.Order Date#<{jan 1,1997# الذى تكونه يمكن تنفيذ الصيغة الثانية على الخادم وبالتالى ينتج االستعالم

هذه الصيغة يحتوى فقط على  169سجل تعاد الى كريستال ريبورت

  فى تكوين معايير الترشيحselect expertاستخدام

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

االختيار عليه ثم تحديد هذه الشروط.العداد صيغة اختيار سجل بواسطة خبير االختيار

ننقر بزر الماوس االيمن على مصمم التقرير نشير الىreportثم chose field يترتب على ذلك عرض مربع حوار select expertننقر على

فى مربع الحوار نركز الضوء على الحقل الذى نريد استخدامه فى عملية االختيار ثم ننقر على موافق. ويمكننااختيار اكثر من حقل

ثم اختيار الحقل التالىnew ملصق  بالنقر على فى مربع حوارselect expertنستخدم القوئم المنسدلة الدخال معيار

okاالختيار بالنسبة للحقل السابق اختياره فى الخطوة السابقةننقر عند االنتهاء

  

اعداد صيغ االختيار بواسطة المستخدم

Page 17: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ننقر بزر الماوس االيمن على مصمم التقارير نشير الىreportنختار Edit Selection Formula يترتب عى ذلك عرض مربع حوار record

selectuion formula editor فى مربع الحوار ندخل الصيغة فى مربع االدخال باسفل النافذة او

)field tree,function tree,operator tree(االختيار من اشجار المكونات ننقر زرcheckللتعرف على اى اخطاء فى الصيغة نصحح اخطاء الصيغة ان وجدت ننقرsave and closeبعد التحقق من صحة الصيغة

 قوالب صيغ اختيار السجالت:

يمكن استخدام امثلة الصيغ التالية قوالب للمساعدة فى تكوين الصيغ selection formula editorالخاصة بنا باستخدام مربع حوار

 "c"بالحرف )file.field(اختيار السجالت التى تبداء فيها قيمة الحقل

 {file.field} startswith "c"

 c"بالحرف " ) file.field(اختيار السجالت التى ال تبداء فيها قيمة الحقل

 Not ({file.field}startswith "c")

)file.field( فى حقل 5 الى 3اختيار السجالت التى تكون المفردات من "999تساوى "

 "999" in {file.field} [3 to 5]

 "cycleاختيار السجالت التى تكون فيها قيمة الحقل تحتوى على السلسلة "

 "cycle" in {file.field}

 99999اختيار السجالت التى تكون فيها قمة الحقل اكبر من

 

Page 18: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

{file.field} <99999 

99999 تكون فيها قيمة الحقل اقل من  اختيار السجالت التى 

{file.field}<99999 

واقل من11111اختيار السجالت التى تكون فيها قيمة الحقل اكبر من 99999

 {file.field} < 11111  and {file.field} <99999

 1999اختيار السجالت التى تكون فيها قيمة التاريخ اقل من سنة

 Year {{file.field})<1999

  

ضبط المعامالت: بحث مستخدم التقرير على ادخال معلومات ) parameters(تقوم المعامالت

االجابة ويمكن النظر الى المعامل على انه سؤال يجب على المستخدم عليه قبل انتاج التقرير وتقرر المعلومات التى يدخلها المستخدم او

الطريقة التى يجيب بيها ما سوف يظهر على التقرير على سبيل المثال فى تقرير يستخدمه مندوب مبيعات من الممكن ان

هناك معامل يطلب من المستخدم اختيار المنطقة يترتب على ذلك يكون طباعة التقرير يحتوى على النتائج الخاصة بتلك المنطقة بدال من طباعة نتائج جميع المناطق ويترتب على استخدام حقول المعامالت فى الصيغ

صيغ االختيار وفى التقرير ذاته تكوين تقرير واحد قابل للتعديل عند الحاجةويمكن استخدام حقول المعامالت فى التقارير الفرعية ايضا.

  

تصميم حقول المعامالت: parameter fields ننقر بزر الماوس االيمن على field explorerفى مربع    -1

newثم ننقر على ندخل اسم للمعامل فى مربعcreat parameter fieldفى مربع حوار    -2

nameحقل وهو النص الذىprompting textندخل نص الحث المناسب فى حقل  -3

(عند تجديد بيانات التقرير enter parameter valueيظهر فى مربع حوار refreshing(

ندخل نوع القيمة    -4 نحدد الجول والحقل بالنسبة لقيمة المعاملset default valuesننقر    -5 لتحريك اى قيمة الى منطقة القيم االفتراضية يؤدى ذلك>>ننقر على  -6

الى تمكين المستخدم من اختيار اى قيمة فى منطقة القيماالفتراضية

ثم ننثرcreat parameter field يترتب على ذلك ظهور مربع حوار okننقر    -7ok

نسحب المعامل ونضعه فى التقرير    -8 

Page 19: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

تحديد نوع وصيغة االدخال فى المعامالت يمكننا اختيار قناعstringعند تحديد القيم االفتراضية لحقل معامل من نوع

بدال من تحديد نطاق للقيم ويممكن انedit mask فى حقل )edit mask(ادخال يكون قناع االدخال اى مجموعة من الرموز المستخدمة لتقييد القيم التى يمكن ادخالها فى حقول المعامالت وفيما يلى بيان بالحروف المستخدمة

فى تكوين اقنة االدخال:"A"يسمح بادخال الحروف واالرقام ويفرض ادخال رمز فى قيمة

المعامل"a"يسمح بادخال الحروف واالرقام وال يفرض ادخال رمز فى قيمة

المعامل"0يسمح بادخال االرقام من صفر الى تسعة و يفرض ادخال رمز "

فى قيمة المعامل"9يسمح بادخال االرقام او المسافات وال يفرض ادخال رمز " يسمحبادخال رقم،مسافة،او عالمة زائد وناقص وال يفرض ادخال "#"

رمز"L" يسمح بادخال حرف ]A TO Z[ويفرض ادخال رمز ؟"يسمح بادخال حرف وال يفرض ادخال رمز فى قيمة المعامل" "C"يسمح بادخال اى مسافه او رمز وال يفرض ادخال رمز :-/";رموز فاصلة تستخدم للفصل فى قناع االدخال", "< يسبب تحويل الرموز التالية له الى الحجم الصغير ")LOWERCASE( "< يسبب تحويل الرموز التالية له الى الحجم الكبير ")UPPER CASE( "\"يسبب عرض الحرف التالى له بدون تغيير فى قيمة المعامل "PASSWORDيسمح لنا باستخدام القناع الدخال كلمات المرور الى "

اقسام التقرير المختلفة     

تكوين المجموعات

Page 20: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

فى كثير من التقارير نحتاج الى تقسم البيانات الى مجموعات لكى نجعلها اسهل فى القراءة والتحليل يبين لنا هذا القسم كيفية تقسيم البيانات فى

مجموعات بالتقرير. 

:لتكوين مجموعات بيانات 

ثم ننقرinsertننقر بزر الماوس االيمن على مصمم التقرير نشير الى    -1group

نختار من القائمة المنسدلة االولى حقل   insert groupفى مربع حوار    -2التقسيم

نختار اتجاه فرز البيانات من القائمة المنسدلة الثانية    -3 عندما نرغب فى تحديد القيمة المبينة فى مقدمة المجموعة نختار  -4

من الناحية االفتراضية سوف يقومcustomize group name fieldمربع راس المجموعة بعرض قيمة حقل تقسيم المجموعات واذا رغبنا فى

عرض قيمة مختلفة نختار حقل بيانات بديل او نكون صيغةokننقر    -5

 

  

وضع البيانات فى مجموعات هرمية يوفر لنا كريستال ريبورت ايضا امكانية وضع البيانات على التقرير فى

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

Page 21: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

نريد اظهار هيكل هرمى الحد االقسام يمكن تقسيم البيانات الى مجموعات على اساس رقم الموظف وتحديد الشكل الهرمى باستخدام حقل بيانات

المستوى الذى يتبعه الموظف. 

لتقسيم البيانات الى مجموعات هرمية: 

ثم ننقرinsertننقر بزر الماوس االيمن على مصمم التقرير نشير الى    -1group

نختار الحقل الذى يقوم عليه التنظيمinsert groupفى مربع حوار  -2 الهرمى على سبيل المثال عندما نريد مشاهدة البناء الهرمى

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

in ascending orderنختار    -3 فى التقرير قيمة الحقلgroup headerتلقائيا تعرض مقدمة المجموعة  -4

المستخدم فى تقسيم المجموعات وعندما نريد اظهار قيمة مختلفةcustomize group nameنضع عالمة فى مربع االختيار

يترتب على ذلك اضافة المجموعة الى التقريرokننقر    -5 ننقر  reportننقر بزر الماوس االيمن على مصمم التقرير نشير الى  -6

hierarchical group options يترتب على ذلك عرض مربع حوار فى قائمة المجموعات المتاحة نختار المجموعة التى نريد تنظيمها  -7

هرميا فاذا كان التقرير يحتوى على مجموعة واحدة فان هذهالمجموعة يتم اختيارها تلقائيا فى قائمة المجموعات المتاحة

sort data hierarchicallyنختار مربع االختيار    -8 علىinstance id نختار الحقل الذى يتبعه حقل parent id fieldفى قائمة  -9

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

instance id وحقل parent idمن نفس نوع البيانات ندخل كمية مسافة الزحزه الى الداخلgroup indentفى حقل                        -10

لكل مجموعةokننقر                        -11

 

    

Page 22: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 تلخيص بيانات المجموعات

  احد االغراض االساسية لتقسيم البيانات الى مجموعات هو اجراء العمليات

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

ويتم القيام بذلك اتوماتيكيا ويحتوى كريستال ريبورت على عدد من خياراتالتلخيص:

الحصول على اجمالى القيم فى كل مجموعة الحصول على عدد جميع القيم او القيم المتميزه معرفة اقصى قيمة اقل قيمة متوسط القيم

 لتلخيص بيانات المجموعات:

  ثمinsertننقر بزر الماوس االيمن على مصمم التقارير نشير الى    -1

summary ننقر فى مربع الحوار نختار عمليى التلخيص المستهدفى من القائمة  -2

المنسدلة وتظهر العمليات الحسابية فى هذه القائمة فقط عنداختيار حقل يحتوى على بيانات رقمية فى القائمة المنسدلة الثانية

فى القائمة المنسدلة الثانية نختار الحقل الذى يحتوى على القيمة    -3التى نريد تلخيصها

فى القائمة المنسدلة الثالثة نختار الحقل الذى نريد الفرز والتجميع    -4على اساسه

okننقر    -5 

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

Page 23: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 ترتيب المجموعات على اساس ملخصات القيم

  يمكن ترتيب المجموعات على اساس تصاعدى او تنازلى باستخدام قيم الملخصات على سبيل المثال فى تقرير االوامر اذا تم تكوين اجماليات

فرعية لمبالغ االوامر على اساس المنطقة يمكن ترتيب المجموعات:)من ادنى قيمة الى قيمة االمر)ترتيب تصاعدى )من اعلى قيمة الى ادنى قيمة)ترتيب تنازلى

 لترتيب المجموعات على اساس قيمة الملخص:

  ثمreportننقر بزر الماوس االيمن على مصمم التقارير نشير الى  -1

ويجب ان يكون لدينا حقل تلخيص فى.Top N/Sort Group Expertننقر top n expert متاحا يظهر مربع حوار top nالتقرير لكى يصبح خبير

محتويا على ملصق لكل واحدة من المجموعات المختصرة فى التقريرننقر الملصق الخاص بالمجموعة التى نريد فرزها    -2 من القائمة المنسدلة على اليسارallنختار    -3 نختار الملخص الذى نريد بناء اختيارنا عليه من القائمة المنسدلة على    -4

اليمينdescending او ascendingنحدد اتجاه الفرز بالنقر على    -55 الى 2الختيار فرز مجموعة ثانية نكرر الخطوات    -6

  عند تشغيل التقرير سوف يقوم البرنامج بترتيب المجموعات على اساس

قيم الملخصات المحددة.

الرابع - الجزء ريبورت الكريستالSOLO.NET

 

الرحيم الرحمن الله بسم   

اخفاء التفصيالت فى تقارير الملخصات 

عن طريق اخفاء قسم التفصيالت فى تقرير ملخص نتجنب اغراق المستخدمين بالبيانات التى قد ال يحتاجون اليها مباشرة وعند اخفاء قسم

التفصيالت يقوم المستخدم اوال بتصفح شجرة المجموعات لتحديد مكان

Page 24: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

البيانات المرغوب قيها ثم بالتنقيب فى التقرير يمكنه الوصول الى بيانات معينة لتسهيل عملية التصفح بهذه الطريقة ال نحتاج اال الى توزيع البيانات

على مجموعات ثم ادراج حقول الملخصات فى التقرير 

التفصيالت فى تقرير ملخص: الخفاء 

فى التقرير ثم نختارdetailsننقر بزر الماوس االيمن على قسم    -1format section

Hide(Drill-Down OK)نختار مربع االختيار    -2okننقر    -3

  

اختيار مجموعة القمة او مجموعة القاع 

قد نحتاج احيانا الى اظهار مجموعات القمة او مجموعة القاع فقط فى التقرير على سبيل المثال اسرع خطوط االنتاج مبيعا المناطق االقل

ان هذا النوع من االخيار شائع االستخدام مبيعات وغير ذلك وبالنظر الى لذا يوجد فى كريستال ريبورت اداة لتنفيذ ذلك بسهولة وسرعة هذه االداة

N/Sort Group Expertهى   

الختيار مجموعات القمة او القاع: 

ثم ننقر reportننقر بزر الماوس االيمن على مصمم التقارير نشير الى  -1Top N/Sort Group Expertويجب ان يحتوى التقرير على قيمة ملخص

ختى يمكن تنفيذ هذا االختيارمن القائمة المنسدلة   Bottom Nاو    Top Nننقر على    -2 نختار الملخص الذى نريد بناء اختيارنا عليه من القائمة المنسدلة على    -3

اليمين ندخل عدد المجموعات التى نريد عرضها علىWhere N isفى مربع    -4

سبيل المثال  فى مربع   Top N لتكوين تقرير عن اسرع ثالث خطوط انتاج مبيعا نختار  *

تساوى ثالثة  Nونجعل عدد   حوار الخبير فى مربعBottom N   * لتكوين تقرير عن الخمس مناطق االقل مبيعا نختار

تساوى خمسة  Nحوار الخبير ونجعل Include- اذا كنا نريد تكوين مجموعة من جميع السجالت المتبقية نختار 5

Others With The Nameمناسب  وندخل اسم ok- ننقر 6

عند قيام الرنامج بتشغيل التقرير سوف يشتمل فقط على المجموعاتالتى تم تحديدها

 فرز البيانات

 

Page 25: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

يمكننا تنظيم البيانات بترتيب معين)Sorting(عن طريق فرز السجالت ، لفرز البيانات نطبق للمساعدة فى العثور على وتقييم المعلومات

الخطوات التالية: ننقر بزر الماوس االيمن على مصمم التقرير للوصول الى القائمة    -1

المختصرة record sort يفتح مربع حوار sort records وننقر على reportنشير الى    -2

order نختار الحقل الذى نريد الفرز على اساسهavailable fieldsفى قائمة    -3sort fields     يترتب على ذلك اضافة الحقل الى قائمةaddننقر زر    -4descending او  ascending بمربع الحوار ننقر   sort directionفى منطقة    -5 اذا كان الفرز على اساس اكثر من حقل نختار الحقل الثانى ثم ننقر    -6

addالضافته الى حقول الفرز okننقر    -7

                   

تكوين االجماليات 

لمساعدة المستخدمين فى تحليل بيانات التقرير يمكن تكوين واضافة الى التقرير. تكوين االجماليات يمكن ان يكون)Totaling(حقول اجماليات

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

بواسطة صيغة

Page 26: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 لتكوين اجمالى فرعى:

  ثمinsertننقر بزر الماوس االيمن على مصمم التقارير نشير الى    -1

subtotalننقر فى مربع الحوار ننقر القائمة المنسدلة ونختار حقل حساب االجمالى    -2 فى القائمة المنسدلة الثانية نختار الحقل الذى نريد فرز وتجميع    -3

السجالت على اساسهاذا ظهرت قائمة منسدلة ثالثة نحدد اتجاه الفرز    -4okننقر    -5

      

اضافة نسبة مئوية الى التقرير 

يمكن حساب النسب المئوية الحدى المجموعات بالنسبة لمجموعة اوسع. على سبيل المثال يمكن عرض المبيعات فى كل مدينة فى صورة نسبة

مئوية من اجمالى المبيعات بالنسبة للدولة ويمكن عرض نسبة مساهمة كلدولة فى اجمالى المبيعات العام

 لحساب نسبة مئوية:

 

Page 27: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ننقر بزر الماوس االيمن على مصمم التقرير للوصول الى القائمة    -1المختصرة

summaryثم ننقر insertنشير الى    -2 فى القائمة المنسدلة االولىsum نختار insert summaryفى مربع حوار  -3

ال تظهر اال اذا كان الحقل المعروض فىsumويجب مالحظة ان دالة القائمة المنسدلة الثانية يحتوى على قيمة رقمية

فى القائمة الثانية نختار الحقل الى نريد حساب االجمالى له    -4 فى القائمة الثالثة نختار الحقل الذى نستخدمه فى فرز وتجميع    -5

السجالتshow as percentage ofنختار مربع االختيار    -6 نختار المجموعة التى نريد اتخاذها   show as a percentage ofفى قائمة      -7

اساسا لحساب النسبةokننقر    -8

 تكوين االجماليات المتحركة

حقول االجمالى المتحرك مثل حقول الملخصات تقدم تحكم اكثر فى كيفيةحساب االجمالى وتناسب حقول االجماليات المتحركة الوظائف التالية:

.بيان قيم اجمالى اثناء حسابه مع تتابع السجالت حساب اجمالى لقيمة مستقل عن مجموعات التقرير حساب اجمالى قيمة فى ظل شروط معينة حساب اجمالى قيمة بعد تطبيق صيغة اختيار مجموعة

  وتتم العمليات الحسابية الخاصة باالجمالى المتحرك على اساس الضوابط

من ناحية اخرى يؤثر مكان وضع حقلRunning Total Expertالمختارة فى االجمالى المتحرك فى القيمة الفعلية التى تظهر على التقرير على سبيل

ويستمر بدون المثال عند وضع اجمالى متحرك يقوم بتقييم كل سجل فان)Report Header(اعادة الحساب من البداية،فى قسم مقدمة التقرير

قيمة السجل االول فقط سوف تظهر. وضع نفس االجمالى المتحرك فى ذيل التقرير يعيد القيمة الصحيحة.االجمالى المتحرك يتم حسابه بالطريقة

الصحيحة فى كال من الحالتين ولكن يتم عرضه حاال فى الحاله االولى.  الجدول التالى يبين اقسام التقرير والسجالت التى سوف يستخدمها 

االجمالى المتحرك:التاثير على االجمالى المتحركقسم التقرير

يحتوى على السجل االولمقدمة التقريرفقط

يحتوى على السجالت السابقةمقدمة الصفحةوالسجل االول من الصفحة

يحتوى على السجالت السابقةمقدمة مجموعة والسجل االول من المجموعة

Page 28: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

يكون اجمالى متحرك لكل التفصيالتسجل

يكون اجمالى عام لكلذيل المجموعةمجموعة

يحتوى على السجالت السابقةذيل الصفحة والسجل االول من الصفحة

التالية يكون اجمالى عام يشمل جميعذيل التقرير

سجالت التقرير

  

  

تكوين االجماليات المتحركة فى قائمة االجماليات المتحركة هى اجماليات يجرى عرضها عند معالجة كل سجل. وتقوم بتجميع جميع السجالت سواء فى التقرير،المجموعة، او غير ذلك. ويشمل االجمالى المتحرك جميع السجالت حتى السجل الجارى.وابسط

Runningاالجماليات المتحركة هو االجمالى المتحرك الحد القوائم ويستخدم Total Expertفى اختيار حقل التلخيص عملية التلخيص التى نريد

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

                    

 

Page 29: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 لتكوين اجمالى متحرك فى قائمة:

Running Total ننقر بزر الماوس االيمن على field explorerفى مربع  -1Field ثم ننقر New يترتب على ذلك عرض مربع حوار Creat Running

Total Field فى مربع الحوار ندخل اسم لكائن االجمالى المتحرك فى حقل    -2

Running Total Name نختار الحقل الذى نريد تجميعهAvailable Tables and fieldsفى منطقة    -3Field To Summarizeننقر زر السهم االول الضافة الحقل الى مربع    -4 نختار وقت تنفيذ االجمالى المتحرك بالنسبةEvaluateفى قسم      -5

On change of fieldلالجمالى المتحرك فى قائمة ننقر " ننقرon change of نختار حقل "Available Tables and Fields فى منطقة  -6

On change fieldالسهم الثانى الضافة الحقل الى مربع يترتب على ذلك الحصول على اجمالىnever ننقر resetفى قسم  -7

متحرك ال يعاد تشغليه من البداية فى كل مرة.ويعنى ذلك استمرار االجمالى المتحرك خالل التقرير ويؤدى الى الحصول على اجمالى

عام لحفظ حقل االجمالى المتحرك. يترتب على ذلك ظهور حقلokننقر  -8

running total fields تحت filed explorerاالجمالى المتحرك فى مربع بالتقريرDetailsنسحب حقل االجمالى المتحرك الى قسم    -9

 تكوين اجماليات متحركة لمجموعة

يبدأ االجمالى المتحرك لمجموعة بالسجل االول فى المجموعة وينتهى بالسجل االخير ثم يبدأ مرة اخرى للمجموعة التالية ثم التالية حتى نهاية

المجموعات ويجب تقسيم البيانات الى مجموعات قبل تكوين اجمالىمتحركة على اساس المجموعة

لتكوين اجمالى متحرك على اساس المجموعة: Running Total ننقر بزر الماوس االيمن على field explorerفى مربع  -1

Field ثم ننقر New يترتب على ذلك عرض مربع حوار Creat Running Total Field

فى مربع الحوار ندخل اسم لكائن االجمالى المتحرك فى حقل     -2Running Total Name

نختار الحقل الذى نريد تجميعهAvailable Tables and fieldsفى منطقة      -3Field To Summarizeننقر زر السهم االول الضافة الحقل الى مربع    -4For each recordننقر    Evaluateفى قسم      -5 ونقبل االسم االفتراضىOn chage of group ننقر Resetفى قسم    -6

للمجموعة لحفظ حقل االجمالى المتحرك. يترتب على ذلك ظهور حقلokننقر    -7

running total fields تحت filed explorerاالجمالى المتحرك فى مربع بالتقرير اوDetailsيمكن سحب حقل االجمالى المتحرك الى قسم  -8

اذا كنا نريد مشاهدة اجمالىGroup Footerنسحب الحقل الى قسم عام لكل مجموعة ويتم تمييز االجمالى المتحرك على التقرير بوضع

رمز # قبله 

تكوين اجماليات متحركة شرطية

Page 30: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

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

توفر بعض الشروط: Running Total ننقر بزر الماوس االيمن على field explorerفى مربع  -1

Field ثم ننقر New يترتب على ذلك عرض مربع حوار Creat Running Total Field

فى مربع الحوار ندخل اسم لكائن االجمالى المتحرك فى حقل     -2Running Total Name

نختار الحقل الذى نريد تجميعهAvailable Tables and fieldsفى منطقة      -3Field To Summarizeننقر زر السهم االول الضافة الحقل الى مربع    -4sum ننقر Type of summaryفى قائمة    -5)X+2(ثم ننقر زر   Use formula ننقر Evaluateفى قسم    -6 ندخل الصيغة فى مربعRunning Total Condition Formulaفى مربع حوار  -7

formulaعلى سبيل المثال، لتكوين اجمالى متحرك للمبيعات فى المملكة العربية السعودية نستخدم الصيغ التالية.

 :Crystalعند استخدام لغة

{Customer.Country}="ksa" 

وعند استخدام لغة البيسكFormula={Customer.Country}="ksa"

save and closeننقر    -8never ننقر  resetفى قسم    -9

لحفظ حقل االجمالى المتحركokننقر                        -10 نكون اجمالى متحرك اخر باستخدام الخطوات السابقة الفرق                        -11

الوحيد سوف يكون القيمة التى فى الصيغة Detailsيمكن سحب حقول االجماليات المتحركة الى قسم                        -12

عندما نريد مشاهدة اجمالى عام.Report Footerبالتقرير او الى قسم  

الجزء - ريبورت الخامس الكريستالSOLO.NET

 

الرحيم الرحمن الله بسم   

استخدام الصيغ

Page 31: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

قد نحتاج الى وضع معلومات على التقرير التوجد بحقول جداول قاعدة للحصول على البيانات)Formulas(البيانات. فى هذه الحالة نستخدم الصيغ

،)report(المطلوبة هناك اربعة مجموعات مختلفة من الصيغ:صيغ التقرير ،وصيغ)Selection(،صيغ االختيار)Conditional Formula(صيغ التنسيق المشروط

.والغالبية من الصيغ الموجودة فى التقرير هى صيغ)Search Formulas(البحثالتقرير وصيغ التنسيق المشروط

 صيغ التقرير هى الصيغ التى نقوم بتكوينها للعمل)Report Formula(صيغ التقرير

باستقاللية فى التقرير على سبيل المثال، الصيغة التى تقوم بحساب عددااليام بين تاريخ االمر وتاريخ الشحن هى صيغة تقرير

 صيغ التنسيق المشروط

تقوم صيغ التنسيق المشروط بتغيير خريطة وتصميم التقرير،شكل النص،حقول قاعدة البيانات، الكائنات، او قسم كامل من التقرير وعند

Formula(الحاجة الى تكوين صيغ التنسيق نقوم بالوصول الى محرر الصيغ Editor( من خالل محرر التنسيق )Format Editor(

 صيغ االختيار

تحدد صيغ االختيار السجالت والمجموعات التى تظهر بالتقرير ومن المعتاد عدم ادخال هذه الصيغ مباشرة لكن بدال من ذلك نحدد االختيار ياستخدام

select expertيترتب على ذلك قيام كريستال ريبورت بتوليد صيغ اختيار السجالت والمجموعات ويمكن تكوين هذه الصيغ يدويا. ولكن يجب استخدام

Crystalكود فاننا سوف نحتاج الى معرفة كمية صغيرةBasicواذا كنا على معرفة بكود

من كود كريستال لتعدديل معظم صيغ االختيار او البحث  

صيغ البحث تساعدنا صيغ البحث فى تحديد موع البيانات فى التقرير ومثل صيغ االختيار

seach expertنحدد صيغة البحث باستخدام   

ادراج الصيغ ويمكن تقريباbasicاو كود   crystalعند تكوين الصيغ هناك خيار استخدام كود

كتابة اى صيغة باستخدام احد نوعى الكود اذا كانت الصيغة فى االصل قد تمت كتابتها باستخدام النوع االخر. ويمكن ان يحتوى التقرير على صيغ تم

كتابتها بكود كريستال وصيغ اخرى مكتوبة بكود بيسك 

الدراج صيغة فى التقرير: ثمformula fields  ننقر بزر الماوس االيمن على field explorerفى مربع    -1

newننقر ندخل اسم للصيغةformula nameفى مربع حوار      -2okننقر    -3basic او crystal syntaxنختار اما    formula editorفى مربع حوار    -4

Page 32: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ندخل الصيغة بطباعتها وباختيار المكونات من اشجار المكونات )  -5component tree ويحتوى محرر الصيغة على شجرة لحقول التقرير ))

report fields(  واخرى للدوال )function trees(وشجرة العوامل )operators tree(والضاقة اى مكون الى الصيغة نقوم بالنقر المزدوج عليه

للتعرف على اى خطأ فى الصيغةcheckننقر زر    -6 save and closeوعندما نتحقق من عدم وجود اخطاء فى الصيغة ننقر  -7

formula  تحت field explorerيترتب على ذلك ظهور الصيغة فى مربع fields

نسحب الصيغة ونضعها فى المكان المرغوب به على التقرير ويجب  -8 مالحظة ان الصيغة الموضوعة على التقرير يتم تميييز اسمها بوضع

الرمز @ قبلها  

اقسام محرر الصيغة يحتوى محرر الصيغة على عدد من االجزاء تشمل مربعات سرد مربعات سرد

مركبة وقائمة ادوات. تتكون مربعات السرد من اربعة مربعات موضحةباالجدول التالى:

 النافذة

 المحتويات

 Report fieldsتشتمل على جميع حقول

قاعدة البيانات التى يمكن الوصول اليها بالتقرير كما

تحتوى هذه النافذة على الصيغوالمجموعات السابق تكوينها

functionالدوال هى اجراءات سابقة التكوين تعيد قيم وتنفذ العمليات الحسابية مثل

المتوسط،االجمالى العددوغيرها

operatorsتقوم العوامل بوصف عملية او تصرف يحدث بين اثنين او اكثر

من القيمFormula text windows هى المنطقة التى نستخدمها

فى تكوين الصيغة 

لالختيار ما بين كود كريستال او كود بيسك)combobox(ويوجد قائمة مركبة وعليه يتغير الدوال والعوامل.وعند تكوين صيغة بهذه االداةيمكننا اضافة اى

مكون)كالدوال والعوامل والحقول( بالنقر المزدوج عليه.  

SQLتعبيرات  ( الصيغ ولكنها تكتب باستخدام لغة االستعالم المهيكلةSQLتماثل تعبيرات  

STRUCTURE QUERY LANGUAGE(  ويمكن استخدام تعبير . SQLالستعالم

Page 33: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

قاعدة بيانات عن فئة معينة من البيانات. ويمكننا ايضا تنفيذ عمليات الفرز،SQLالتجميع،واالختيار باستخدام حقول تعبير

بقدرتها على تحسين اداء التقارير الن المهمة التىSQLوتتميز تعبيرات تقوم بها تنفذ عادة على خادم قاعدة البيانات, على العكس من الصيغ

المعتادة التى يجرى تنفيذها فى الغالب على الكمبيوتر المحلى. وال يجب بكثافة الن كريستال ريبورت تحتوى على لغة الصيغSQLاستخدام عبارات

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

سرعة عمليات معالجة التقاريرSQLتكوين حقل تعبير

SQL Expressionننقر بزر ااالماوس االيمن على field explorerفى مربع  -1Fields ثم New ويجب مالحظة ان بند sql expression fieldال يظهر اال فى

فى تصميم التقريرsqlحالة استخددام مصدر يترتب على ذلك ظهور مربعok ثم ننقر nameندخل اسم فى مربع    -2

حوارSQL Expression Editor نطبع التعبير الذى نريد ادخاله فى    -3okننقر    -4

   

ترقية عرض التقرير 

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

المحترفين 

تنسيق البيانات الى التغييرات فى خريطة تصميم التقرير)Formatting(يشير التنسيق  

وبالمثل شكل ظهور النصوص, الكائنات, او اقسام التقرير بالكامل. ويمكناستخدام التنسيق للقيام بالكثير من االعمال التى من بينها:

توجيه االنتباه الى بيانات معينة اضفاء مظهر احترافى على التقرير ،تغيير عرض التواريخ ، االرقام، القيم المنطقية ،قيم العملة

وسالسل النصوص 

وللقيام بتنسيق كائن او قسم فى التقرير ننقر بزر الماوس االيمن عليه ثم ولتنسيق كائن رسم بيانى ننقر بزر الماوس االيمن عيه ثم Formatنختار ويمكن ايضا استخدام نافذة الخصائص فى بيئة التطوير chart expert نختار

لتنسيق الكائنات واالقسام 

تنسيق االرقام والتواريخ لتدعيم المفاهيم المستخدمة فى مهنة المحاسبة يسمح لنا كريستال

ريبورت بتقريركيفية عرض رموز العملة القيم السالبة واالصفار على التقارير المالية ويمكن ايضا ضبط التقرير لعكس االشارات الخاصة بالمبالغ

المدينة والدائنة

Page 34: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

لتنسيق االرقام والتواريخ: ننقر بزر الماوس االيمن على حقل العملة ،الرقم،او التاريخ ثم نختار    -1

Format لتحديد تنسيق اخرcustomizeنختار واحدا من خيارات التنسيق او ننقر    -2

  

اضافة حدود، الوان،او ضالل الى الحقول يسمح لنا كريستال ريبورت باضافة حدود،لون،او ضالل الى حقول التقرير

لكى يتم التركيز على البيانات المهمة وتكوين تقارير محترفةلعمل ذلك:

Formatننقر بزر الماوس االيمن على الكائن ونختار    -1ونختار نمط الخط، اللون، ولون الخلفية للحقل  Borderننقر ملصق    -23-    Ok

  

التنسيق المشروط 

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

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

  يمكننا تحديد التنسيق الشرطى باستخدام الصيغ وعند تكوين صيغة تنسيق

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

 الضاقة تنسيق شرطى الى كائن:

formatننقر يزر الماوس االيمن على الكائن نختار    -1ننقر زر الصيغة المناسب الموجود فى الجانب االيمن بمربع الحوار    -2 ندخل الصيغةformat editorفى مربع    -3 اذا كان يوجد اى اخطاء يتم التنبيه عليهاsaveننقر    -4okننقر    -5

  

ادراج الرسوم البيانية يتيح كريستال ريبورت امكانية وضع رسوم بيانية معقدة وملونة على

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

مفتاح الرسم البيانى للحصول على معلومات تفصيلية. ويمكن اعدادالرسوم البيانية باستخدام مايلى

حقول الملخصات واالجماليات الفرعية حقول التفصيالت، الصيغ، واالجماليات المتحركة الملخصات المتقاطعة

 

Page 35: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

               

 الدراج رسم بيانى:

ثم ننقرinsertننقر بزر الماوس االيمن على مصمم التقرير نشير الى    -1chart يترتب على ذلك عرض مربع حوار chart expert

نختار نوع الرسمtypeفى ملصق    -2 عندما نريد استخدام الضوابطAutomatically set chart optionنختار    -3

االفتراضيةDataننقر ملصق    -4 نحدد كيفية ظهور الرسم البيانى على التقريرPlacementفى منطقة    -5

لتحديد مكان وضع الرسمFooter او Headerثم ننقر Chart Layout نختار Layoutفى منطقة    -6 نحدد حقول قاعدة البيانات المستخدمة شروطاDataفى منطقة    -7 يمكننا تعديل بعض خصائص الرسمOptions وAxesاذا ظهرت ملصقات    -8

مثل التصاعد،المفتاح،ونقاط البيانات ونقبل معلومات العنوان االفتراضية او نضيفTextننقر ملصق    -9

عناوين جديدة الى الرسمokننقر                        -10

  

ادراج التقارير الفرعية هو تقرير داخل تقرير وعن طريق استخدام)Subreport(التقرير الفرعى

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

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

فى التقرير االساسى )hyperlink(الطلب يظهر فى صورة ارتباط نشط وعند فتح التقرير االساسى ال يتم استخراج بيانات بالنسبة للتقرير الفرعى

الى ان يتم النقر على االرتباط الخاص به. 

Page 36: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

                

 الدراج تقرير فرعى:

  ثم ننقرinsertننقر بزر الماوس االيمن على مصمم التقرير نشير الى    -1

subreportنسحب كائن التقرير الى التقرير    -2 نختار تقرير اخر فى المشروع او نكون تقرير جديد خاص بالتقرير    -3

الفرعى لكى يمكننا استخراج البيانات الخاصةOn-demand subreportنختار  -4

بالتقرير الفرعى عند الحاجة واال فان كل بيانات التقارير الفرعية سوف تظهر مع التقرير ويجب مالحظة ان استخدام التقارير الفرعية

عند الطلب سوف يؤدى الى زيادة اداء التقارير التى تحتوى علىتقارير فرعية

اذا كنا نريد ربط التقرير الفرعى مع البيانات فىlinkننقر ملصق  -5 Container Reportالتقرير االساسى يترتب على ذلك عرض صفحة

Fields To Link بمربع حوار Insert Subreport نختار الحقل الذى نريد استخدامه حقل ارتباط فى التقرير االساسى    -6

Avilable fieldsمن قائمة الذى يظهر فقط عند اختيار حقل ارتباطField Linkنستخدم قسم    -7

لضبط االرتباط لكل حقل ارتباط: نختار الحقل الذى نريد ربطه مع التقرير االساسى منsubreport

parameter field to use نختار مربع االختيارselect data based on fieldونختار حقل من القائمة

المنسدلة المجاورة لترتيب بيانات التقرير الفرعى بناء على حقل محدد. واذا لم يتم تحديد اى شئ هنا، فان التقرير الفرعى سوف

يستخدم تنظيم التقرير االساسىokننقر    -8

  عند تشغيل التقرير سوف يقوم البرنامج بتنسيق بيانات التقرير االساسى

مع بيانات التقرير الفرعى

Page 37: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 التقارير الفرعية غير المرتبطه

هى تقارير مستقلة ال يتم)Unlike Reports(التقارير الفرعية غير المرتبطة تنسيق بياناتها باى طريقة مع بيانات التقرير االساسى. وفى التقارير غير

المرتبطة ال توجد اى محاوالت لموافقة السجالت فى تقرير مع السجالت فى التقرير االخر. وليس من الضرورى ان تقوم التقارير الفرعية غير

المرتبطة باستخدام نفس البيانات مثل التقرير االساسى،يمكنها استخدام نفس مصدر البيانات او مصدر بيانات مختلف بالكامل. باالضافة الى ذلك فان التقرير الفرعى ليس ملزما باستخدام جدول واحد. التقرير الفرعى

غير المرتبط يمكن ان يستخدم جدول واحد او عدة جداول 

التقارير الفرعية المرتبطة تمثل الجانب االخر حيث يتم)Linked Reports(التقارير الفرعية المرتبطة

تنسيق بياناتها مع بيانات التقرير االساسى. يقوم البرنامج بموافقة السجالت فى التقرير الفرعى مع السجالت فى التقرير االساسى.على

سبيل المثال اذا قمنا بتكوين تقرير اساسى يحتوى على معلومات العمالء وتقرير فرعى يحتوى على معلومات اوامر المبيعات ثم جرى الربط بينهما

يقوم البرنامج بتكوين تقرير فرعى لكل عميل يحتوى على كل االوامرالخاصة بالعميل.

 ادراج كائنات المعلومات المتقاطعة

هو عبارة عن شبكة تعيد معلومات)Cross-Tab(كائن المعلومات المتقاطعة على اساس معيار يجرى تحديده. ويتم عرض البيانات فى اعمدة وصفوف.

هذا التنسيق يمكن المستخدمين من مقارنة البيانات والتعرف على االتجاهات. ويتكون كائن المعلومات المتقاطعة من ثالث عناصر : الصفوف،

االعمدة، وحقول الملخصات. 

                   

Page 38: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

     

الدراج كائن معلومات متقاطعة: ثم ننقرinsertننقر بزر الماوس االيمن على مصمم التقرير نشير الى     -1

Cross-Tab على التقريرCross-Tabنضع كائن     -2 نضيف حقول الى مناطق الصفوف،Format Cross-Tabفى مربع حوار     -3

االعمدة، وحقول الملخصات Customize Style الختيار التصميم المناسب او ملصق Styleننقر ملصق     -4

لتكوين تصميم خاص بنا 

السادس - الجزء ريبورت الكريستالSOLO.NET

 

الرحيم الرحمن الله بسم 

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

التقرير 

Hideخاصية تقوم هذه الخاصية باخفاء قسم عند تشغيل التقرير على سبيل المثال فى

تقرير ملخص يمكن استخدام هذه الخاصية لعرض الملخصات فقط وليس التفصيالت خلف هذه التفصيالت. وعند تطبيق هذه الخاصية على قسم فان

للتنقيب  Drill-Downالتفصيالت بهذا القسم تصبح مرئية عند استخدام مؤشر عن محتويات القسم وهذه الخاصية مطلقة وال يمكن ربط استخدامها

بتحقق احد الشروط عن طريق الصيغالستخدام هذه الخاصية:

ننقر بزر الماوس االيمن على التقرير    -1Format Sectionمن القئمة المختصرة ،نختار    -2Hide(Drill-Down-Ok)فى مربع الحوار نختار    -3

 Suppressخاصية

تقوم هذه الخاصية ايضا باخفاء قسم عند تشغيل التقرير وعلى خالف ال تمكننا هذه الخاصية من التنقيب عن التفصيالت.ويمكنHideخاصية

تطبيق هذه الخاصية بصفة مطلقة او عند توفر احد الشروط باستخدامالصيغ. الستخدام هذه الخاصية:

Page 39: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ننقر بزر الماوس االيمن على التقرير    -1Format Sectionمن القائمة المختصرة نختار    -2 ننقر بزر الماوس االيمن على قسم التقرير ثم نختار خاصية    -3

Suppress(No Drill-Down) 

Suppress Blank Sectionخاصية تقوم هذه الخاصية باخفاء احد االقسام عندما ال يحتوى على شئ بداخله

واذا تم وضع شئ داخله فان القسم سوف يصبح مرئيا الستخدام هذهالخاصية:

ننقر بزر الماوس االيمن على التقرير    -1Format Sectionمن القئمة المختصرة ،نختار    -2Suppress Blank Sectionفى مربع الحوار نختار    -3

  

التحكم فى التقارير وقت التشغيل 

نحتاج وقت تشغيل التطبيق وعرض التقارير الى االستجابة لمتطلبات المستخدمين التى قد تشمل اختيار التقرير المطلوب تشغيله، تغيير شكل

اداة عرض التقرير،تغيير شكل التقرير والبيانات المعروضة. لتمكين المستخدم من تنفيذ هذه المهام يوفر كريستال ريبورت امكانية استخدام

للقيام بمختلف مهام تكوين التقارير كما يوفر لغة صياغة)Object(الكائنات قوية يمكن استخدامها لتغيير طريقة عرض التقرير والتحكم فى البيانات

التى يحتوى عليها. يناقش هذا القسم عملية التفاعل مع تحداثالمستخدمين والوسائل المتوفرة للقيام بذلك.

 استخدام الكود

  المستخدمة فى)Classes( الفئات  يحتوى كريستال ريبورت على العديد من

تكوين الكائنات الختلفة المستخدمة فى تنفيذ الوظائف التى يقوم بها.كما يحتوى على لغة صياغة قوية تستخدم فى تكوين الصيغ المختلفة. وعن

التى تحتوى عليها)Methods( وطرقها)Properties( خصائص الكائنات طريق التى تستجيب لها يمكن الوصول الى التقارير وتغيير)Events(واالحداث

خصائصها وقت التشغيل. 

استخدام الكائنات 

هناك الكثير من الكائنات التى يحتوى عليها كريستال ريبورت غير ان اهم وكائنReportDocumentهذه الكائنات بالنسبة للمبرمج هى كائن

CrystalReportViewer 

ReportDocumentكائن  

يقدم هذا الكائن ادوات التحكم االساسية فى التقارير. ويحتوى على بالتحكم فى اختيار التقرير الكثيرمن الخصائص والوسائل التى تسمح لنا

وشكل عرضه من خالل ضبط الخصائص واالستجابة لالحداث. ويمكن

Page 40: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

استخدام هذا الكائن فى اجراء التعديالت المختلفة على التقرير باستخدام لعرضهCrystalReportViewerالكود ثم تمرير التقرير الى كائن اخر هو كائن

اوLoadامام المستخدمين.لفتح ملف تقرير يمكن استخدام الطريقة تخصيص تقرير نوعى لهذا الكائن. ولكى نستخدم هذا الكائن يجب ان تكوين

ويتم اضافةCrystalDecisions.CrystalReports.Engineمرجع الى فضاء االسماء هذا المرجع تلقائيا عند اضافة تقرير الى التطبيق قم باستيراده

 خصائصه على الكثير من الخصائص التى تسمح لنا بالتحكمReportDocumentيحتوى

فى شكل وسلوك التقارير. فيما يلى اهم اهم الكائنات والمجموعات التىيحتوى عليها:

كائنDatabaseتتيح الوصول الى معلومات قاعدة البيانات التى يحتوى تحتوى هذهTables على مجموعة Databaseعليها التقرير ويحتوى كائن

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

كما يوفر المعلومات عن كل الحقولConnectionInfoخالل كائن DatabaseFieldDefinitionsالمتاحة فى الجدول من خالل مجموعة

كائنDataDefinitionيتيح هذا الكائن الوصول الى الحقول حقول المعامالت حقول الفرز حقول اسماء المجموعات حقول الملخصات

ويمكن عن طريقSQLحقول االجماليات المتحركة وحقول تعبيرات المجموعات التى يحتوى عليها التقرير هذا الكائن الوصول الى

  كائنExportOptionيوفر هذا الكائن الخصائص المتعلقة باستخراج وضبط خيارات تصدير التقرير ويستخدم هذا الكائن لضبط خيارات

جهة التصدير ونوع التصدير كائنPrintOptionيحتوى هذا الكائن على الخصائص والوسائل

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

كائنReportDefinitionيسمح هذا الكائن باستخراج كل المناطق ،كائنات التقرير،واالقسام الموجودة فى التقرير.يتيح لنا ذلك امكانية

استخراج وضبط خيارات الصياغة لتلك البنود كائنReportOptionيسمح لنا هذا الكائن بالحصول على البيانات

المتعلقة بخيارات خاصة بالتقرير 

على حدث وحيد هوReportDocumentويحتوى كائن ReportDocument.InnitReport.يقع هذا الحدث عند نجاح تحميل التقرير

 CrystalReportViewerكائن

  يحتوى هذا الكائن على الخصائص التى تمكننا من التحكم فى شكل وسلوكالتقرير واهم الكائنات التى يحتوى عليها هذا الكائن تشمل الكائنات االتية:

كائنTableLogOnInfos يوفر الوصول الى مجموعة TableLogOnInfo وهذا الكائن بددوره يوفر الخصائص الالزمة للحصول على وضبط

خيارات االتصال مع الجدول، مثل اسم الخادم،اسم المستخدم،اسم قاعدة البيانات،وكلمة المرور

كائنParameterFields يوفر الوصول الى مجموعة ParameterField وتسمح لنا هذه المجموعة بالحصول على معلومات المعامالت فى

Page 41: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

التقرير وضبطها على سبيل المثال يمكن ضبط خصائص للحصول على خيارات وقيم حقول الممرات وضبطها مثل القيم الحالية، القيم

االفتراضية ونص حث المستخدم خاصيةReportSourceتستخدم هذه الخاصية لضبط مصدر التقرير

او سلسلة نصيةReportDocumentكائن  ويمكن ان يكون هذا المصدر تحتوى على موقع الملف الخاص بالتقرير او كائن تقرير

 ويحتوى هذا الكائن على عدد من االحداث طبقا للتفصيل التالى:

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

Labelالمستخدمة فى التنقيب مع اداة   

Private Sub CrViewer_Drill(ByVal source As Object, ByVal e As_ CrystalDecisions.Windows.Forms.DrillEventArgs) Handles CrViewer.Drill        Label1.Text = e.CurrentGroupNameEnd Sub

حدثCrystalReportViewer.DrillDownSubreportيقع هذا الحث عند التالى يوضع ضبط نص اداة العنوان التنقيب فى تقرير فرعى الكود

على اسم التقرير الفرعىPrivate Sub CrViewer_DrillDownSubreport(ByVal source As Object, ByVal e As CrystalDecisions.Windows.Forms.DrillSubreportEventArgs) Handles CrViewer.DrillDownSubreport        Label1.Text = e.CurrentSubreportNameEnd Sub

  يقع عند حدوث خطأ الكودCrystalReportViewer.HandleExecption* حدث

التالى يقوم بعرض رسالة خطأ عند حدوثةPrivate Sub CrViewer_HandleException(ByVal source As Object, ByVal e As CrystalDecisions.Windows.Forms.ExceptionEventArgs) Handles CrViewer.HandleException        MessageBox.Show(e.Exception.ToString)End Sub

  

حدثCrysatlReportViewer.Navigateيقع هذا الحدث عندما يقوم المستخدم بالتجول فى التقرير الكود التالى يعرض رقم الصفحة على

اداة العنوان 

Private Sub CrViewer_Navigate(ByVal source As Object, ByVal e As CrystalDecisions.Windows.Forms.NavigateEventArgs) Handles CrViewer.Navigate        Label1.Text = e.NewPageNumberEnd Sub

حدثCrystalReportViewer.ReportRefreshيقع هذا الحدث عند تجديد معلومات التقرير

حدثCrystalReportViewer.Searchويقع هذا الحدث عند البحث عن نص فى التقرير

Page 42: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

حدثCrystalReportViewer.ViewZoomيقع هذا الحدث عند تغيير معامل التكبيير والتصغير

  

لغة الصياغة 

 )Formulas( فى تكوين الصيغ Basic او لغة Crstal Reportيمكن استخدام لغة ويمكن كتابة الصيغ المكتوبة بلغة كريستال باستخدام لغة بيسك او العكس

اال انها  Visual Basic لغة crystal reportالمستخدمة فى   Basic.وتماثل لغة تحتوى على بعض االضافات الخاصة بالتقارير وبما اننا اكثر الفة مع لغة

Visual Basicلذا سيتم ايضاح لغة بيسك فقط  

استخدام كود بيسك  يمكن ان تعمل التقارير التى تستخدم كود بيسك فى تكوين الصيغ على اى 

ويتميز استخدام كود بيسك بدال جهاز كمبيوتر يعمل عليه كرستال ريبورت من استخدام كود كريستال فى اعداد صيغ كريستال ريبورت بانه ال يتطلب

توزيع ملفات اضافية مع التطبيقات التى تستخدم التقارير وهذه بعضالميزات للغة بيسك:

تستخدم تقريبا نفس الدوال المستخدمة فىVisual Basicيشمل ذلك كما تشمل الدوال وغيرها.Mid،دالهLenدوال النصوص مثل دالة

الحسابية والمالية ودوال التاريختدعم معظم العوامل المستخدمة فى فيجوال بيسك مثل عامل ربط

وصيغ التاريخ(&)السالسل النصية تستخدم معظم العبارات وهياكل التحكم المستخدمة فى فيجوال

Select،Do Until،Do While،For\Nextبيسك مثل تستخدم نفس كود المالحظات ووصل السطور للكود فى فيجوال

بيزك 

نتيجة الصيغة 

نتيجة الصيغة هى القيمة التى يتم طباعتها عند وضع الصيغة فى التقرير وتسمى القيمة العائدة من الصيغة. ويجب ان تعيد اى صيغة فى كريستال

ريبورت قيمة معينة يقوم كود بيزك بتنفيذ ذلك عن طريق ضبط قيمة متغير الكود التالى:  على سبيل المثالFormulaخاص يسمى

Formula= 10 :ويمكن ان تكون القيمة العائدة من الصيغة من احد انواع سبعة

Number,Currency,String,Boolean,Date,Time,Date and Timeويجب تخصيص قيمة لكى تكون الصيغة صحيحة من امثلة الصيغ والقيمة العائدةFormulaللمتغير

منها ما يلى/Global x As String,y As Number,z As DateTime

X="solo.net"Y=10.5Z=#aug 6,1982#Formula=10

Page 43: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

  عدة مرات داخل الصيغة الواحدة ولكن ال يجبFormulaويمكن ضبط متغير

تغيير نوع بيانات القيمة التى تم تخصيصها له فى المرة االولى وكود بيسك المستخدم فى اعداد الصيغ غير حساس لحالة االحرف يعنى الحروف

الصغيرة تساوى الكبيرة 

الحقول 

التى نستخدمها عند تكوين التقرير يمكن)Fields(هناك الكثير من الحقول استخدامها فى الصيغ التى نقوم ببناءها على سبيل المثال يمكن استخدام حقول قااعدة البيانات،حقول الممرات،حقول االجماليات المتحركة،وحقول

،حقول الملخصات،وحقول المجموعات ويمكن استخدام حقولSQLتعبيرات .{}الصيغ االخرى. وتظهر اسماء الحقول داخل الصيغة محاطة باقواس

وتظهر حقول قاعدة البيانات مؤهلى باسم الجدول الذى تتبعه. وتوضعالعالمات التالية فى مقدمة الحقول:

فى حقول الممرات، عالمة @ فى حقول الصيغ االخرى، عالمة #?عالمة . وتظهرSQLفى حقول االجمالى المتحرك،عالمة % فى حقول تعبيرات

حقول الملخصات وحقول المجموعات مثل كود استدعاء الدوال كما يتضحمن الكود التالى:

Sum ({Orders.Order Amount},{Orders.Ship Via})GroupName({Orders.Ship Via})

  الصيغة التالية تقوم بحساب عدد االيام منذ تاريخ اعداد طلب الشراء الى

تاريخ شحن البضاعةRem A formula that uses database fieldFormula={Order.Ship Date} – {Order.Order Date}

 وتقوم الصيغة التالية بحساب اجمالى قيمة البضاعة المطلوبة:

Formula={Orders Detail.Unit Price}_ * }Order Detial.Quantity{

  

% من السعر80وتقوم الصيغة التالية بحساب سعر البيع على اساس انه االصلى

Formula={Order Detail.Unit Price} * 0.80 

العبارات  )statements(يتكون الكود الذى تتكون منه الصيغ من سلسلة من العبارات  

ويجب قصل كل عبارة عن العبارة السابقة بسطر جديد او باستخدام رمز ومن المعتاد وضع كل عبارة فى سطر منفصل(:)الوقف االستدراكى

ويمكن استمرار العبارة الى السطر التالى باستخدام شرطة اسفل السطرفيما يلى امثل من العبارات:

Dim x As Number

Page 44: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

X=10+10+10X=10_+

10+10Y="solo" :x=30 :formula=true

 المتغيرات

فانها تبحث عن قيمة المتغير)Variable(عندما تستخدم الصيغة احد المتغيرت وتستخدمها. وتحتفظ المتغيرات بالقيم التى يتم تخصيصها لها الى ان يتم تخصيص قيم جديدة لها. ويجب االعالن عن المتغيرات قبل استعمالها لكى

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

العمالء:Dim areaCode As StringareaCode=Left({Customer.Fax},3)

 نطاق القيم

من كل انواع القيم البسيطة فيما عدا القيم)Range(يمكن تكوين نطاق المنطقية امثلة التالية توضح تكوين واستخدام نطاق من القيم. المثال

وما بينهما من ارقام5 الى 2 االول يحتوى على نطاق يتكون من 2 To 5

 2 وال يشمل الرقم 5 الى 2النطاق التالى يتكون من

2 _To 5 

5النطاق التالى يتكون من كل االرقام التى اقل من او تساوى Is<=5

Is <= 5النطاق التالى يتكون من عدة تواريخ

#jan 5 , 1999# to # dec 12,2000# Is<=#jan 1,2000# 

المثال التالى selectو   ifويستخد نطاق القيم فى الصيغ غالبا مع عبارات يقوم بحساب درجات شهادة الطالب بناء على درجات االمتحانات الخاصة به

"B" او اكبر منها وتخصيص 90 للنتيجة التى تساوى"A"حيث يتم تخصيص :90 من دون ان تشمل 90 الى 80للدرجات من

Select Case {Student.Test Scores}Case Is <=90

Formula="A"Case 80To_90

Formula="B"Case 70 To_80

Formula="C"...

Page 45: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

.End Select

 In باستخدام عامل  ويختبر المثال التالى وجود قيمة معينة فى نطاق

Formula=5 In 2 To 10  

Minimumاو دالة   Maximumوللحصول على نهايات النطاق نستخدم دالة Formula=Maximum(2 To 10)

 المصفوفات

  ( هى قوائم تحتوى على قيم من نفس النوع. ويطلقArraysالمصفوفات)

على هذه القيم عناصر المصفوفة ويمكن ان تكون قيم العناصر من انواع بسيطة او من نوع نطاق بيانات ونقوم بتكوين المصفوفة عن طريق

وتكون المصفوفات اكثر فائدة عندما تحتوى علىArrayاستخدام الدالة متغيرات بسبب توفر امكانية تغيير قيم العناصر فى تلك المصفوفات. فيما

يلى امثلة توضح استخدام المصفوفات فى الصيغ.الكود التالى يوضح تكوين مصفوفة من ثالث قيم ثابته

Array(10,5,20) 

كما هو المعتاد0 وليس 1وهنا العنصر االول فى المصفوفه يكون مفهرسه vb.netفى

كما يمكن استخدام نطاق قيم الستخراج عناصر المصقوقة. الكود التالى)10,5,20( من المصفوفة )5,20(يستخدم الستخراج المصفوفة

Array(10,5,20)(2 To 3) 

هياكل التحكم فى تنفيذ الكود عندما ال تحتوى الصيغة على هياكل تحكم يتم تنفيذ التعليمات بداخلها

بالترتيب من العبارة االولى الى االخيرة . استخدام هياكل التحكم يمككنا من تغيير تنفيذ التعليمات والقفز فوق التعليمات بدون تنفيذ ويدعم بيسك

فى كريستال ريبورت معظم هياكل التحكم التى تستخدم فى فيجوالبيسك

 التفاعل مع المستخدمين

يتطلب التحكم فى التقارير اثناء التشغيل اضافة كود الى التطبيق يدعم ادخاالت المستخدم عن طريق استخدام كائنات مولد التقارير او كائن

مشاهدة تقارير الويندوز ويمكن تدعيم هذه االدخاالت فى تطبيق كريستالريبورت باستخدام الطرق التالية:

تكوين اجراءات معالجة االحداث الى تقع اثناء تعامل المستخدم مع )crystal report viewer(مع اداة مشاهدة نماذج الويندوز

تكوين اجراءات معالجة االحداث التى تقع اثناء قيام المستخدم يالتعامل مع مع ادوات اخرى على نموذج ويندوز

 

Page 46: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

 تعديل اداة مشاهدة التقارير

يدعم تصنيف اداة مشاهدة تقارير على نماذج ويندوز خيارات التحكم فى طريقة عرض هذه االداة وقت التشغيل وتشمل عمليات التحكم اظهار

Group واظهار وحجب شجرة المجموعات ToolBarوحجب شريط االدوات Tree ويتم ذلك عن طريق الخاصيتين DisplayToolBarو DisplayGeoupTreeعلى

التوالىCrViewer.DisplayGroupTree = TrueCrViewer.DisplayToolbar = False 

تعديل اطقم الحروف وااللوان يسمح لنا مولد كريستال ريبورت باضافة لون واطقم حروف خاصة الى

الحقول على التقرير يستيح لنا ذلك من التركيز على البيانات الهامة وتكوين تقارير محترفة ويمكن للمستخدم تعديل التقرير فى وقت التشغيل

بتغيير هذه الضوابط لتغيير الوان بيانات التقرير فى وقت التشغيل:نكون تقرير ونضيف صيغة الى مقدمة التقرير   -1viewerنربط التقرير مع اداة    -2 الى النموذج حيث يستخدم هذا الزر فى تغيير لونbuttonنضيف اداة    -3

البيانات نكتب الكود التالىClickفى الحدث    -4

Dim report As ReportDocument = New ReportDocument        Dim section As Section        Dim fieldObject As FieldObject        Dim fieldFormat As FieldFormat        report.Load("c:\myreport.rpt")        section = report.ReportDefinition.Sections.Item("section3")        If section.ReportObjects("filed1").Kind = CrystalDecisions.[Shared].ReportObjectKind.FieldObject Then            fieldObject = section.ReportObjects("field1")            fieldFormat = fieldObject.FieldFormat            fieldObject.Color = Color.Red         End If

    CrViewer.Refresh()

   

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

باستخدام الممررات او صيغ االختيار لتكوين المجموعات وفرز البيانات 

فى وقت التشغيل)Parameter Fields(التحكم فى حقول الممرات 

يمكن تدعيم ادخاالت المستخدم باستخدام الممرات فى كريستال ريبورتوتستخدم الممرات الغراض متنوعة من امثلة هذه االغراض:

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

استخدام حقول الممررات لتمكين التنسيق المشروط على التقرير

Page 47: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

ترتيب الفرز   يوضح المثال التالى كيفية ضبط قيم حقل ممرر باستخدام الكود فى      

وقت التشغيل ويشرح كيفية ضبط ممررين مختلفين الممرر االول يحتوىعلى قيم فردية متعددة والممر الثان يحتوى على نطاق من البيانات

Dim paramFields As New CrystalDecisions.Shared.ParameterFields        Dim paramField As New CrystalDecisions.Shared.ParameterField        Dim discreteVal As New CrystalDecisions.Shared.ParameterDiscreteValue        Dim rangeVal As New CrystalDecisions.Shared.ParameterRangeValue         paramField.ParameterFieldName = "Customer Name"        discreteVal.Value = "AIC Childrens"        paramField.CurrentValues.Add(discreteVal)         discreteVal = New CrystalDecisions.Shared.ParameterDiscreteValue        discreteVal.Value = "Aruba Sport"        paramField.CurrentValues.Add(discreteVal)         paramFields.Add(paramField)         paramField = New CrystalDecisions.Shared.ParameterField         paramField.ParameterFieldName = "Customer ID"         rangeVal.StartValue = 42        rangeVal.EndValue = 72        paramField.CurrentValues.Add(rangeVal)         paramFields.Add(paramField)         CrViewer.ParameterFieldInfo = paramFields

        CrViewer.ReportSource = "c:\my_report.rpt"

  

تعديل صيغ االختيار وقت التشغيل يمكن استخدام صيغ االختيار لفرز السجالت التى نريد ان يشتمل عليها

فى توزيع البيانات على التقرير ويمكن ايضا تحديد حقول لالستخدام مجموعات وفرز هذه البيانات المثال التالى يمكن المستخدم من تعديل

viewerصيغة االختيار فى وقت التشغيل. ويمكن ان يتم ذلك من خالل اداة او من خالل محرك التقرير

 لتعديل البيانات فى وقت التشغيل:

نكون تقريرا يستخدم جدول العمالء فى قاعدة البيانات العينة    -1xtreme.mdb

نضيف صيعة اختيار تحتوى على الكود التالى    -2 

{Customer.Last Year's Sales} < 11000.00 الى النموذجviewerنضيف اداة    -3نربط التقرير بالداة    -4

Page 48: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

الى النموذجButtonو   Text Boxنضيف اداتى    -5 يقوم المستخدم بادخال الحد االدنى للقيمة التى عرضها بالنسبة   -6

لمبيعات السنة السابقة فى مربع النص ثم ينقر على الزر الدخالذلك الى النظام

للزرclickنكتب الكود فى الحدث    -7 

نممر صيغة االختيار الى اداى مشاهدة التقارير باستخدام الكود التالى:Dim SelectFormula As StringSelectFormula="{Customer.Last Year's Sales}>" & TextBox1.TextCrViewer.SelectionFormula=SelectFormula

او نمرر صيغة االختيار من خالل كائن التقرير كما يتضخ من الكود التالى:Dim SelectFormula As StringSelectFormula="{Customer.Last Year's Sales}>" & TextBox1.TextReport.DataDefinition.RecordSelectionFormula=SelectFormula

 تعديل حقول المجموعات فى وقت التشغيل

يمكن استخدام حقول المجموعات لتقسيم بيانات التقرير الى مجموعات على اساس الشروط الموضوعة. المثال التالى يمكن المستخدم من تعديل

حقل المجموعة الخاص بالتقرير ويفترض وجود تقرير به العناصر التالية: حقولCustomer.City ،Customer.Country،Customer.Regionفى تقسم

التفصيالت. ويتخدم التطبيق اداةComboBoxلتحديد االختيارات الخاصة بالمجموعة يمكن تغيير مجموعات فى التقرير عن طريق اضافة كود الى اداة

Button  

لتكوين مجموعات وقت التشغيل: xtreme.mdb فى قاعدة بيانات Customerنكون تقرير يستخدم جدول  -1

\:XXXقاعدة البيانات السابقة تجدها فى هذا المسار على جهازك Program Files\Microsoft Visual Studio .NET 2003\Crystal Reports\Samples\

Database حيث XXX هو القرص المثبت عليه VS.NET2003Customer.Cityنضيف مجموعة الى التقرير باستخدام حقل    -2Viewerنربط التقرير باداة    -3الى النموج  ComboBoxنضيف اداة      -4 على الحقولComboBoxتحتوى االداة    -5

Customer.City،Customer.Country،Customer.Region الى الى النموذج لكى يقوم المستخدم بالنقر على Buttonنضيف االداة  -6

هذا الزر لتكوين مجموعات على اساس الحقل الذى تم اختياره فىComboBox اداة

للزرclickنكتب هذا الكود فى الحدث     -7Dim FieldDef As FieldDefinitionFieldDef=Report.Database.Table.Item(0).Fields.Item(ComboBox1.Text)Report.DataDefinition.Group.Item(0).ConditionField= FieldDefCrViewer.RefreshReport

  

تعديل حقول الفرز فى وقت التشغيل

Page 49: files.darbaka.webnode.comfiles.darbaka.webnode.com/200000488-2b1942c12a/الكر…  · Web viewVisual Studio.NET وتمكننا ... microsft word (.doc) ... SQL Expression Fields

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

اقل قيم. يمكن المثال تنازلى،الحصول على اعلى قيم،الحصول على التالى المستخدم من تعديل حقل الفرز الخاص باحد التقارير ويفترض ان

لدينا تقرير تتوفر به الشروط التالية يحتوى التقرير على حقلين فى قسمDetails:   هماCustomer.Nameو

Customer.Country البيانات يجرى فرزها على اساس حقلCustomer.Name يمكن تغيير ترتيب الفرز فى التقرير عن طريق اضافة كود الى اداة

Button فى الحدث Click Dim FieldDef As FieldDefinitionFieldDef=Report.Database.Tables.Item(0).Fields.Item(ComboBox1.Text)Report.DataDefinition.SortFields.Item(0).Field= FieldDef  

 الوصول الى قواعد البيانات االمنة

فى تطبيقات الويندوز التى تحتوى على تقارير كريستال ريبورت يقوم مربع حوار تلقائيا بحث المستخدمين على ادخال اسم المستخدم وكلمة

المرور. ويمكن استخدام الكود لتحديد اسم المستخدم وكلمة المرور. يوضح المثال التالى كيفية تمرير ممرات بدء تسجيل الدخول على جداول التقرير

:SQL Serverالموجودة فى قاعدة بيانات نبدأ مشروع جديد    -1 الى النموذج)TextBox(نضيف اداة زر واربع مربعات نص    -2 وServerNameTXT،DBNameTXT،userNameTXTنخصص اسماء    -3

passwordTXTالى مربعات النص للزر نكتب الكود التالىClickفى الحدث    -4

Dim logOnInfo As New TableLogOnInfo()For i As Integer=0 To Report.Database.Tables.Count -1LogOnInfo.ConnectionInfo.ServerName= ServerNameTXT.TextLogOnInfo.ConnectionInfo.DatabaseName=DBNameTXT.TextLogOnInfo.ConnectionInfo.UserID=userNameTXT.TextLogOnInfo.ConnectionInfo.Password=passwordTXT.TextReport.Database.Tables.Item(i).ApplyLogOnInfo(logOnInfo)Next i

  

بيانات قواعد مع الطريقة نفس استخدام ادخال Accessويمكن عدم يجب ولكنDatabaseNameو ServerNameقيم

 @ الله@ بحمد انتهى

 SOLO.NET