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

مناقشة حول التقارير بالجافا

مغلق
بدأه فيصل الردادي في 11 ديسمبر 2005 · 14 رد · 1,191 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

منذ فترة ليست بالقصيرة وأنا ابحث عن اداة تسهل العمل مع التقارير بالجافا؛ وجدت كثيرا من الأدوات التي تساعد في هذا الأمر مثل: jasper report و JFreeReport وغيرها؛

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

بالاضافة الى ذلك؛ نحن لانحتاج الى معظم الأمور التي تقدمها هذه الادوات؛ فهي تقوم بأعمال كثيرة مثل التعامل مع EJB وغيرها؛ بينما نحن فقط نريد ان نعرض تقارير بشكل جذاب وقابل للطباعة.

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

عمل مثل هذه الأداه ليس بالأمر الصعب؛ ولكن النقطة المهمة هي ان لكل تقرير style معين يوافقه؛ فيجب ان نجعل الخيار للمبرمج باختيار الطريقة التي تعجبه في عرض التقرير.

فكرت في امور كثيره مثل تقديم styles جاهزة مع الحزمة ويختار منها المبرمج مايعجبه؛ ولكن يبقى الأمر غير كامل؛ لان هناك مبرمجين لايعجبهم العجب.

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

ArabTeam Report Generator ان شاء الله

تم تعديل هذه المشاركة بواسطة فيصل الردادي في 11 ديسمبر 2005 في 21:26

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#2

تصفحت موقعهم ويتبين فعلا أنه لا يوجد لهم شروحات... ولم أتعامل مع الحزمة أبدا،،

لكن الحزمة أيضا توفر إخراج التقارير على عدة صيغ منها pdf وغيرها! وليس فقط html!

بالنسبة للتصاميم الجاهزة فأعتقد أي تصميم سيناسب أي (مبرمج) لكن لن تناسب أي مصمم!

وبعد تفكير أكثر في الموضوع، تصميم تقرير باستعمال servlet و jsp ربما يكون أسهل لظهور التقرير على صيغة html، لكن هذا يحتاج إلى خادم!

#3

شكرا على مرورك اخي ابو مازن؛ وكنت اتوقع انك أول من سيرد على موضوعي؛ فشكرا لك

اقتباس
لكن الحزمة أيضا توفر إخراج التقارير على عدة صيغ منها pdf وغيرها! وليس فقط html!

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

اقتباس
وبعد تفكير أكثر في الموضوع، تصميم تقرير باستعمال servlet و jsp ربما يكون أسهل لظهور التقرير على صيغة html، لكن هذا يحتاج إلى خادم!

نعم وهذا ماقلته بموضوعي؛ استخدام html سهل جدا؛ وهو لايحتاج الى خادم لاننا سوف نعمل html code ونضعه داخل JEditorPane وبذلك انتجنا تقرير دون استخدام أي خادم.

والفكرة تكمن في طريقة انتاج كود ال html. يعني مثلا لو اعطيتني عنوان التقرير والبيانات في Collection معين؛ سأعرض العنوان في الاعلى والبيانات في جدول html وعرضها بعد ذلك في JEditorPane .

بالامكان اضافة عناصر متقدمة غير العنوان والبيانات؛ لتعرض التقرير بشكل جذاب. منها مثلا امكانية اضافة الصور للتقرير.

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#4

حسنا، أقترح استعمال TableModel لتمرير البيانات إلى EditorPane ، كما تفعل الحزمة JFreeReport، والموضوع يصبح سهلا إذا أخذناه بهذه الطريقة، بأن نبني شفرة html باستعمال نوع القيمة التي ترجع من الأمر:

TableModel.getValueAt(row, col);

فإذا كانت القيمة image فإننا نرسم الصورة، وإذا كانت رقما فنطبع الرقم وهكذا!!

إذا صنعت ذلك بهذه المواصفات البسيطة، ربما نضيف إلى هذه الفئة أمور أخرى بعد ذلك في إصدارات أخرى!

ضع مخطط بسيط للإصدار الأول!

بالتوفيق!

#5

إنشاء تقارير بصيغة صفحات HTML !!!!

أليست HTML وXML متشابهتان؟ لا ليستا متشابهتان فقط، إنما تقنية XML اشتقت من HTML على ما أذكر. إذاً إنشاء تقارير بصيغة HTML هو أمر مشابه تماماً لعملية إنشاء ملف XML بالجافا، الاختلاف الوحيد بينهما هو نوع الملف، أو بشكل أدق هو امتداد الملف .htm أو .html بدلاً من .xml.

إذا كان كلامي صحيح، فالأمر ولا أسهل...

#6

عذراً....

تم وضع هذه المشاركة بالخطأ.

تم تعديل هذه المشاركة بواسطة MMSs في 12 ديسمبر 2005 في 03:55

#7
اقتباس
حسنا، أقترح استعمال TableModel لتمرير البيانات إلى EditorPane

وهذا ماكنت اريد ان افعله؛؛

سأضع المخطط التجريبي واتمنى ان تعطوني رأيكم؛؛؛

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#8

هذا هو التصميم الأول؛؛ اراءكم شباب ؛ <<< على بالي Linus Torvalds :D :D

11_12_05_11_05_22_1134371122report.GIF

تم تعديل هذه المشاركة بواسطة فيصل الردادي في 12 ديسمبر 2005 في 10:00

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#9

مارأيكم باضافة StyleFactory ؟؟

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#10

MMSs، أعتقد أن XML وظيفته تخزين للبيانات وليست تحرير الواجهة الرسومية، أو بمعنى آخر،، علينا مقارنة XML مع TableModel لأن كلاهما سيحمل البيانات وفي النهاية نريد عرض البيانات على HTML، ربما في إصدار جديد ATEditor سيدعم قراءة البيانات من XML وليس فقط TableModel وبهذا سيتفوق على JFreeReport طبعا لا أعرف بصراحة عن إمكانيات JFreeReport،

بالنسبة للمخطط أخي فيصل فهو جيد، وأعتقد سيكون ممتازا للإصدار الأول من الحزمة! واجعل إضافة styles في إصدار لاحق!

بالتوفيق!

#11

انا من النوع اللي يعجبني العجب!! :)

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

Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why

#12

الله يوفقك اخي رامي؛ ولكن لاتحرمنا من الطلة واعطاءنا رأيك؛؛

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

#13
اقتباس
المشكلة ان التعامل مع هذه الأدوات صعب للغاية؛ وايضا لايوجد هناك مقالات او مستندات تساعدك على فهم طريقة عملها؛ وان وجد فهي قديمة جدا. فهم يقومون بتطوير الادوات ويبقى ال tutorial على الاصدارات القديمة؛ وهذا ما لاحظته في الاداتين السابقتين.

عندي رأي مخالف شوية، لماذا لا نأخذ إصدارة من هذه البرنامج ونقوم بتطوير فيها حسب حاجتنا، بدل من الشغل الجديد ،

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

وخاصة مع الإصدارات الأولى لهذه البرامج فهي بسيطة وسهلة الفهم ،،،

أو القيام بعمل توثيق لهذه الأدوات بشكل سهلا جدا ،، يعني نكمل الناقص بدل اختراع الجديد ،،،

تم تعديل هذه المشاركة بواسطة OMLX في 13 ديسمبر 2005 في 14:00

#14

طلة بسيطة كما طلب اخي فيصل :)

انا اؤيد كلام OMLX

Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why

#15

تفكيرك تقكير مطوري لينكس يا OMLX :D

سأقرأ عن JFreeReport وعن امكانياته وسأضع ماتوصلته اليه هنا؛؛ وشكرا لاقتراحاتكم؛؛

اسف سوف اقطعك من كتابة الكود، ادخل هنا لدقيقتين فقط

http://www.shbab1.com/2minutes.htm

هذا الموضوع مغلق.

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