RM (آلة التقرير) هي حزمة التحكم في تقرير Delphi قوية. استخدمه لإنشاء تقارير معقدة للغاية. يشرح أبسط استخدام أدناه:
ضع عناصر التحكم في قاعدة البيانات على النموذج: Adoconnection و adoquery لإعداد ConnectionString من Adoconnection. logInprompt = false. يشير اتصال Adoquery إلى Adoconnection. تقوم SQL من Adoquery بإعداد بيانات استعلام البيانات.
ضع عناصر تحكم تقرير RM في النموذج: RMDBDATASET و RMREPORT. تشير مجموعة بيانات RMDBDATASET إلى adoquery. تشير مجموعة بيانات RMREPORT إلى RMDBDATASET.
(إذا كنت تريد أن يكون للتطبيق الذي تم إنشاؤه النهائي قدرات تصميم التقارير ، فأنت بحاجة أيضًا إلى وضع عنصر تحكم RMDesigner وعدم تعيين أي سمات)
انقر نقرًا مزدوجًا فوق التحكم في RMReport لبدء تصميم قالب التقرير.
بالنسبة للتقارير التي تتم مقارنتها بشكل عام بالقواعد ، تحتاج فقط إلى إضافة أربعة كائنات نطاقات إلى القالب ، وهي: 1) ، رأس الصفحة: عادةً ما يستخدم لعرض اسم التقرير ، الوقت ، إلخ. 2) ، رأس العنصر الرئيسي: عادة ما يستخدم ل عرض اسم الأعمدة. 3) بيانات العنصر الرئيسية: تستخدم لعرض البيانات. 4) حاشية الصفحة: تستخدم لعرض رقم الصفحة ، التاريخ ، إلخ.
يمكن حفظ القالب المصمم في DFM أو في ملف قالب مستقل مع تمديد RMF ويتم استدعاؤه في وقت التشغيل. فيما يلي بعض قصاصات الرمز:
الإجراءات tbrowseform.button5click (المرسل: tooject) ؛ varrmreport: trmreport ؛ startif adoquery1.isempty .
الإجراء tform1.button1click (Sender: tooject) ؛
// تقرير التقرير الإجراء tform1.button2click (المرسل: TOBJECT) ؛
بالنسبة لمعظم القواعد الإبلاغ ، فإن المعرفة المذكورة أعلاه كافية. ولكن هذه مجرد أبسط طريقة لاستخدام RM ، وهي بعيدة عن تعكس قوة وظائف RM.
يحتوي RM على ميزتين جذابتين أحتاجه في الوقت الحالي:
1) يمكن أن تأتي البيانات من قاعدة البيانات أو من أي مكان آخر ، كما هو الحال في الملفات ، في الذاكرة ، إلخ. 2) ليس من الضروري القوالب المسبقة الصنع.
على الرغم من أن RM قوي ، إلا أنه لا يشعر بالتعقيد.
1. ما هي الحلول الجيدة الخاصة بك لتقرير يتطلب جانبين من قطعة من الورق؟ يمكنك اختيار كتابة الصفحات الفردية أو حتى عند الطباعة. 2. كيف يمكنني طباعة عدد ثابت من الخطوط في صفحة واحدة؟ انقر فوق التقرير لإدخال واجهة تقرير التصميم؟ RMReport1.ModifyPreped: = false4. تمرير المعلمات إلى التقرير كيف تفعل trmmemoview؟ RMReport1.FindObject ('memo1'). memo.text: = 'dddd' أو rmvariables ['a1']: = 'dddd' ؛ 6. كيف لا يمكننا طباعة محتوى مكرر؟ Suppres = True7. تعيين rmreport.modifypreview = false8. .BottomFrame. الصفحة والتحكم في عرضها ولكن لا بأس في عدم الطباعة. جدول لكل صفوف 3 صفوف لتعيين عمود بيانات العنصر الرئيسي: intlyperpage = 3IF هناك طريقة لثلاثة أشخاص إلى سطر واحد: اضبط أعمدة عمود بيانات العنصر الرئيسي = 3 طباعة في التجميع ، وشروط التجميع: Nowline> 3 Onbefore : LeginNowline: = 1 ؛ end ؛ نعم ، قم بتعيين عمود بيانات العنصر الرئيسي: مربع الإحصاءات المزيفة: Calcnovible = True12. نعم ، قم بتعيين مربع النص: True ؛ // اقرأ التقرير RMREPORT1.SHOWREPORT ؛ 2. ما إذا كانت رؤوس المجموعة تغير الصفحات في كل مجموعة. 1.rmreport1.pages [0] RMReport1.ShowPrintDialog: = false ؛ rmreport1.printreport ؛ 16. لا تحتاج إلى تحديد المنطقة القابلة للطباعة في إعدادات الصفحة أو rmreport1. Richedit1.lines.SavetoStream (TempStream) ؛ TempStream.position: = 0 ؛ RmFormReport1.PageHeader.Caption.LoadfromStream (TempStream) ؛ TempStream.fre ؛ End ؛ 18. اضبط TrmDesigner's templatedir19. (rmreport1.findobject ('band1') كـ trmbandview). dataset: = 'rmdbdataset1 ؛ 20 في البرنامج. المسافة اليسرى: curreport.pages [0] .pgmargins.left: = Round (rmconverttopixels (mm*10 ، rmsumm)) 22.rmvariables ['brand']: = true ؛ rmvariables ['' اسم المنتج ']: =' computer ' ؛ عمود بيانات العنصر الرئيسي = 1024. ؟ ؟ من الأفضل استخدام عمود حاشية الأعمدة ، ووضع مربع إحصائيات عليه ، ثم تعيين Calctype 25. 40) ؛ RMCOMPOSTEREPORT1.REPORTS.ADD (RMREPORT2) ؛ نعم ، محتوى A3 [memo1.calcvalue + memo2.calcvalue] 29. والطبعات مرة واحدة فقط. ['؛
RMVariables ['A2'
دليل مستخدم تطوير آلة التقرير-إنشاء تقرير 2010-02-10 13:08
إنشاء تقرير:
يتكون إنشاء تقرير من الخطوات التالية:
1. حدد البيانات: حدد مصدر البيانات المستخدم في التقرير
2. قوالب تقرير التصميم: استخدم المنطقة (تسمى النطاق) لتوزيع أجزاء مختلفة من التقرير لتحديد نمط التقرير.
3. المعالجة: استخدم لغة البرنامج النصي المدمجة للتقرير أو معالجة البيانات ، وقوالب التقارير ، وما إلى ذلك المستخدمة في التقرير في دلفي.
4. إنشاء تقرير: قم بإنشاء التقرير النهائي بناءً على قالب التقرير + مصدر البيانات.
حدد مصدر بيانات:
البيانات المطلوبة لمعظم التقارير تأتي من قاعدة البيانات. يمكن أن تكون مكونات ttable و tquery بمثابة مصادر بيانات للتقارير. بشكل عام ، يمكنه استخدام أي فئة فرعية موروثة من مكون tdataset. يجب أن يكون لـ tdataset المستخدمة في كل تقرير trmdbdataset المقابلة.
بالإضافة إلى tdataset ، يمكن لصفحات التقارير استخدام أي مصدر بيانات (المصفوفات ، والملفات ، وشبكات الأحرف ، إلخ). في هذه الحالة ، يجب أن يتحكم البرنامج في وصول مصادر غير مقصورة في حد ذاته. يمكنك استخدام TrmuserDataset لنقل البيانات بسهولة إلى التقارير.
قالب تقرير التصميم:
يصف قالب التقرير نفسه كيفية رؤية التقرير الصحيح. يتكون كل قالب تقرير من مناطق متعددة ، والتي تتصل بالتقارير. هناك نوعان من النطاقات: نطاقات المساحة الثابتة (مثل عناوين التقارير ، ورؤوس الصفحات ، وحواشي الصفحات ، وما إلى ذلك) والنطاقات المستخدمة لعرض جميع السجلات في مجموعة البيانات (مثل عمود بيانات العنصر الرئيسي). يجب توصيل نطاق البيانات بمصدر البيانات ، والمحتوى هو سجل في مصدر البيانات.
يوفر ReportMachine بيئة مرئية لتطوير التقارير (مصمم التقارير ، والذي يمكن توفيره أيضًا لمستخدمك النهائي لتسهيل المستخدم النهائي لتعديل قوالب التقرير بنفسك) لإنشاء التقارير. مصمم التقارير قوي وبسيط وسهل الاستخدام. تتكون واجهة مصمم التقرير من شريط أدوات عائم ، والذي يمكن أن يغير موقعه بحرية.
التعامل مع:
عند إنشاء تقرير ، تحتاج إلى معالجة بيانات الإدخال (مثل التنسيق) ، ويجب تعديل قالب التقرير (مثل مربع النص في قالب التقرير يحتاج إلى تغيير الخط).
يتيح لك تنفيذ هذه المعالجة كتابة التعليمات البرمجية في معالجة الأحداث لـ TrmReport في Delphi. هذا هو السبب في أن لغة البرمجة النصية المدمجة في ReportMachinet ، فإن لغة البرمجة النصية المدمجة لـ ReportMachine تشبه إلى حد كبير كائن Pascal ، وهي قوية. اكتب رمز معالجة الأحداث في لغة البرمجة النصية هذه ، والتي تتيح لك إنشاء معالجة معقدة دون كتابة رمز في دلفي. يمكنه فصل تقارير عن مشاريعك.
الإبلاغ عن السيناريو:
تقرير الوحدة ؛
واجهة
الإجراءات memo1onbeforeprint (المرسل: TOBJECT) ؛
الإجراءات memo1onbeforeprint (المرسل: TOBJECT) ؛
الإجراء الرئيسي
نهاية؛
نهاية.
توليد تقرير:
إن إنشاء تقرير هو عملية يقوم فيها التقارير بمعالجة مصدر البيانات وفقًا لقالب التقرير لإنشاء التقرير النهائي ويمكنه معاينته بعد النقر فوق الزر "المعاينة". التقارير التي تم إعدادها في ReportMachine هي مجموعة من الكائنات التي تصف المحتوى الوارد في كل صفحة بعد معالجة التقرير. يتيح لك ذلك تعديل صفحة التقرير التي تم إنشاؤها عن طريق الاتصال بالصفحة المطلوبة في المصمم. بالإضافة إلى ذلك ، يمكن أيضًا وصف رد فعل الماوس الذي ينقر على الكائن في نافذة المعاينة. سيجعل هذا الأمر أسهل بالنسبة لك لتنظيم عملك (يمكن أن يؤدي النقر فوق كائن للتقرير إلى تقديم تقرير جديد أكثر تفصيلاً).
تتشابه نافذة المعاينة لـ ReportMachine مع Microsoft Word: يمكن رؤية صفحات متعددة في نافذة واحدة ويمكن سحبها بالماوس.