تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
صناعة التقارير الطارئة حسب طلب العميل - Dev Express
#1
صناعة التقارير الطارئة حسب طلب العميل
السلام عليكم و رحمة الله و بركاته
يعد نقص التقارير و غيرها من الامور الخاصة بالبرنامج من الامور التي ستواجها دائما اثناء تطويرك لبرنامج غير مكتمل التحليل.
في كثير من الاحيان قد تفاجئ بطلب العميل لتقرير معين لم يتم ادراجه ضمن تقارير البرنامج , او لا توجد الية للوصول اليه من داخل البرنامج , و عليه انت بحاجة الى اعادة تعديل في البرنامج و القاعدة احياناً , لاضافة هذا التقرير , و عليه قد تزداد الطلبات اذا لم تجد الية فعالة لتلافي هذا النوع من الطلبات.
مقالنا يتحدث عن الية وجود مولد تقارير ضمن البرنامج مع عارض للتقارير المولدة , او تكتفي بعارض تقارير يتعامل مع تقارير محفوظة كملفات منفصله.
و عليه انت لن تحتاج الى تعديل في نسخة البرنامج , فقط تعطي العميل ملف التقرير و هو يستخدمه من داخل البرنامج و يفتحه عبر عارض التقارير كما يفتح اي ملف اعتيادي.
و لتحقيق هذه الفكرة ساسوق لك الطريقة الملائمة للوصول الى الهدف.



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



سيكون الشرح بالصور و بالتفصيل .
انشئ مشروع جديد لديك و تابع معي.

الجزء الاول انشاء نموذج مولد التقارير.
على نموذج جديد ادرج الاداة كما بالصورة


شكل النموذج


الان شغل البرنامج و دعنا ندخل في تصميم اول تقرير لنا طلبه منا العميل.


نظرة خاطفة على التقسيمات



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




























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



الجزء الثاني هو تصميم نموذج عارض تقارير يمكنه فتح ملفات التقارير التي تم حفظها .
ندرج نموذج جديد و نضع عليه الاداة كما في الصورة.








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

نفتح التقرير الذي تم حفظه سابقاً


النتيجة


كود زر الفتح
PHP كود :
Private Sub BarButtonItem1_ItemClick(sender As ObjectAs DevExpress.XtraBars.ItemClickEventArgsHandles BarButtonItem1.ItemClick
        Using ofd 
As New OpenFileDialog
            ofd
.Filter "Dev Express Reports (*.repx)|*.repx"
 
           If ofd.ShowDialog DialogResult.OK Then
                Dim p 
As New XtraReport
                p
.LoadLayout(ofd.FileName)
 
               p.CreateDocument()
 
               DocumentViewer1.DocumentSource p
            End 
If
 
       End Using
    End Sub 
الجيد في الامر انه بامكانك تصميم كل التقارير لديك و ثم نقلها الى مجلد عند العميل ليتعامل معها برنامجه دون الحاجة لاعادة تعديل على بنية البرنامج.


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

دمتم بكل خير
لا إله إلا الله وحده لا شريك له، لهُ الملك وله الحمد وهو على كل شئ قدير،،،،
سبحان الله وبحمده سبحان الله العظيم Heart
الرد
#3
السّلام عليكم و رحمة الله و بركاته
كفيت و وفيت أستاذنا أبو ليلى
ما شاء الله تبارك الله
كلّه على بعضه .. الموضوع من روعة روائع الدروس
جزاك الله خيرا و زادها بموازين حسناتك إن شاء الله
تحياتي و تقييماتي
الرد



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


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