انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج

اذهب الى الأسفل

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج Empty انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج

مُساهمة من طرف أحمد مناع في الأربعاء سبتمبر 18, 2019 8:40 pm

أهلا وسهلا بكم إخوانى الكرام

فى مقال سابق تحدثنا عن مصادر البيانات وهى المصادر التى يمكنك إستخدامها لملىء وتعبئة التقارير بالبيانات وتعلمنا كيفية استخدام قواعد البيانات كمصدر للبيانات و أوضحنا ان هناك طرقتين لانشاء تقارير ديناميكة منها طريقة تضمين تضمين إستعلامات SQL في قالب تقرير #JRXML ,و أوضحنا ايضا كيفية فعل ذلك باستخدام الشفرة أو الاكواد ...فى هذا المقال مازلنا مع هذة الطريقة ولكن بإستخدام المعالج

تضمين إستعلامات SQL في قالب تقرير JRXML بإستخدام المعالج :

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

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

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 276521801

سيتم فتح نافذة جديدة باسم Connections / Datasources ، كما هو موضح في الصورة التالية. هذه النافذة تسرد مصدر بيانات Empty datasource وكذلك مصادر البيانات التي قمت بها حتى الآن.

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 628174944

الخطوة الثانية :انقر فوق الزر "New" الظاهر في أعلى يمين النافذة السابقة. سيؤدي هذا إلى فتح نافذة Datasource تلك النافذة تحتوي على عدة أنواع مصادر مختلفة للبيانات كما هو موضح في الشكل التالى :


 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 397085067

الخطوة الثالثة :فى النافذة اعلاه ستجد أن مصدر البيانات Database JDBC connection قد تم تحديده تلقائيا والذى يستخدم للتعامل مع قواعدة بيانات مختلفة منها MySql ,PostgreSQL,HSQLDB ,Acsess ..الخ لكن فى هذا المقال نستخدم قاعدة بيانات #JavaDb لذلك سنقوم بتحديد الخيار NetBeans Database JDBC connection ثم النقر على زر Next كما فى الصورة التالية :

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 416147080

الخطوة الرابعة :ستفتح لك النافذة التالية قم بتسمية نص الاتصال database connection وليكن باسم PG فى المربع المخصص له ثم من القائمة المنسدلة ستجد كافة قواعد البيانات التى تم انشائها من خلال NetBeans أختر قاعدة البيانات التى تعمل عليها_فى مثالنا الحالى Employees _كما فى الشكل التالى :

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 910566703


الخطوة الخامسة : انقر فوق الزر Test لاختبار اتصال قاعدة البيانات الجديدة. في حالة نجاحه الاتصال ، ستظهر رسالة Connection test successfu

الخطوة السادسة : انقر فوق الزر "Save" لحفظ الاتصال المنشأ حديثًا. وسترى نافذة "Connections / Datasources" كما هو موضح في الشكل التالى:

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 761984102

الخطوة السابعة : إنشاء استعلام التقرير أو جملة SQL وذلك من خلال استدعاء نافذة Report query

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 454780793


 ويتم إستدعاء تلك النافذة أما من خلال النقر على ايقونة query أو من خلال تحديد ايقونة التقرير وبالنقر على رز الفارة الايمن تظهر قائمة فاختر منها Edit Query...ستظهر لك نافذة Report query قم بكتابة جملة الاستعلام الخاصة بنا لتظهر حقول جدول قاعدة البيانات ثم قم بالنقر على زر الامر Ok كما فى الشكل التالى :

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 523404303

الخطوة الثامنة :انقر نقرًا مزدوجًا على عقدة Fields في نافذة Report Inspector على يسار تقريرك. و إظهار اسم الحقول كما فى الشكل التالى :
 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 154464777

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

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 340922894

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

الكود:

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;

public class NewMain {

  
    
   public  void FillReport(){
    
    String host = "jdbc:derby://localhost:1527/Employees";
    String username = "US";
    String password = "US";
    Connection con=null;
        
        try {
            
            //إنشاء نص الاتصال بقاعدةالبيانات
             con = DriverManager.getConnection( host, username, password );
            
            //الحصول على مسار التقرير
            InputStream Report =this.getClass().getResourceAsStream("/report/pppp.jasper");
            
            //تعبئة التقرير من قاعدة البيانات  
            JasperPrint jasperPrint = JasperFillManager.fillReport(Report,null,con);
            
            //تشغيل وعرض التقرير
            JasperViewer.viewReport(jasperPrint,false);
              
              
        } catch (SQLException ex) {
            Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
        } catch (JRException ex) {
            Logger.getLogger(NewMain.class.getName()).log(Level.SEVERE, null, ex);
        }
        
      
   }
    
  
    public static void main(String[] args) {
        
       new NewMain().FillReport();
  
    }
}


النتيجة على النحو التالى :

 انشاء تقارير JasperReports مع iReport ...مقال 6 _التعامل مع مصادر البيانات_قاعدة البيانات كمصدر للبيانات ..2_تضمين إستعلامات SQL بالمعالج 680125211

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 968
النقاط : 201748
التقيم : 116
الدولة : مصر
الجنس : ذكر

http://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى