السلام عليكم
لدى كود جافا فيه كومبو بوكس أريد عندما يختار المستخدم الرقم 2 ويضغط على الزر
يتم تغيير كود الكويرى سترنج فى ملف الاكس ام ال إلى
'week5' to'week8'
هذا هوا كود الجافا
import java.sql.*;
import net.sf.jasperreports.view.JasperViewer;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.JasperReport;
import java.io.OutputStream;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class ReportDriver {
public static void createAndShowGUI(){
Object[]obj={"1","2"};
JComboBox combo=new JComboBox(obj);
JFrame frame=new JFrame("Test");
JButton button=new JButton("Show Report");
frame.setLayout(new FlowLayout());
frame.setLocationRelativeTo(null);
frame.add(combo);
frame.add(button);
frame.setSize(150,100);
frame.setVisible(true);
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
show_report();
}
});
}
public static void show_report(){
try{
Class.forName("com.mysql.jdbc.Driver");
Connection c = DriverManager.getConnection("jdbc:mysql://localhost/library", "root", "");
}catch(Exception ex) {ex.printStackTrace();}
try{
JasperDesign jasperDesign = JRXmlLoader.load("F:\\Program Files\\Xinox Software\\JCreatorV4\\MyProjects\\chart2\\src\\report.xml");
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
Connection c = DriverManager.getConnection("jdbc:mysql://localhost/library", "root", "");
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, c);
JasperViewer.viewReport(jasperPrint);
}catch(Exception ex) {
String connectMsg = "Could not create the report " + ex.getMessage() + " " + ex.getLocalizedMessage();
System.out.println(connectMsg);
}
}
public static void main(String[] args) {
createAndShowGUI();
}
}وهذا هو كود الاكس ام ال
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Created with iReport - A designer for JasperReports -->
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport
name="test"
columnCount="1"
printOrder="Vertical"
orientation="Portrait"
pageWidth="595"
pageHeight="842"
columnWidth="535"
columnSpacing="0"
leftMargin="30"
rightMargin="30"
topMargin="20"
bottomMargin="20"
whenNoDataType="NoPages"
isTitleNewPage="false"
isSummaryNewPage="false">
<property name="ireport.scriptlethandling" value="0" />
<property name="ireport.encoding" value="UTF-8" />
<import value="java.util.*" />
<import value="net.sf.jasperreports.engine.*" />
<import value="net.sf.jasperreports.engine.data.*" />
<queryString><![CDATA[SELECT * FROM report WHERE category BETWEEN 'week1' AND 'week4']]></queryString>
<field name="category" class="java.lang.String"/>
<field name="values" class="java.lang.Integer"/>
<field name="series" class="java.lang.String"/>
<background>
<band height="0" isSplitAllowed="true" >
</band>
</background>
<title>
<band height="50" isSplitAllowed="true" >
<staticText>
<reportElement
x="158"
y="7"
width="183"
height="37"
key="staticText-1"/>
<box></box>
<textElement>
<font size="14"/>
</textElement>
<text><![CDATA[ Report]]></text>
</staticText>
</band>
</title>
<pageHeader>
<band height="50" isSplitAllowed="true" >
</band>
</pageHeader>
<columnHeader>
<band height="30" isSplitAllowed="true" >
</band>
</columnHeader>
<detail>
<band height="4" isSplitAllowed="true" >
</band>
</detail>
<columnFooter>
<band height="2" isSplitAllowed="true" >
</band>
</columnFooter>
<pageFooter>
<band height="0" isSplitAllowed="true" >
</band>
</pageFooter>
<summary>
<band height="194" isSplitAllowed="true" >
<stackedBar3DChart>
<chart hyperlinkTarget="Self" >
<reportElement
x="49"
y="-6"
width="369"
height="200"
key="element-1"/>
<box></box>
<chartLegend textColor="#000000" backgroundColor="#FFFFFF" >
</chartLegend>
</chart>
<categoryDataset>
<dataset >
</dataset>
<categorySeries>
<seriesExpression><![CDATA[$F{series}]]></seriesExpression>
<categoryExpression><![CDATA[$F{category}]]></categoryExpression>
<valueExpression><![CDATA[$F{values}]]></valueExpression>
<itemHyperlink >
</itemHyperlink>
</categorySeries>
</categoryDataset>
<bar3DPlot >
<plot />
<categoryAxisFormat>
<axisFormat >
</axisFormat>
</categoryAxisFormat>
<valueAxisFormat>
<axisFormat >
</axisFormat>
</valueAxisFormat>
</bar3DPlot>
</stackedBar3DChart>
</band>
</summary>
</jasperReport>