rainbow89
Messages postés121Date d'inscriptionlundi 8 mars 2010StatutMembreDernière intervention16 novembre 2015
-
21 sept. 2011 à 18:51
Bonjour,
je developpe une application de gestion d'appel d'offre et parmi les formulaires qui me sont demande , un formulaire de recherche multi-criteres.
au fait je developpe en Java/JDBC avec Swing,...
J'ai plusieurs champs dans mon formulaire de recherche , mais tous ces champs peuvent ne pas etre tous saisis en une seule fois pour effectuer une recherche.
Mais le probleme c que quand je ne saisis pas un champ , on me renvoie une erreur de nullpointer.de plus je n'arrive pas a croiser mes criteres
en fait g 4 champs d'ou 16 possibilites comment faire? Voici mon code:
JButton b1= new JButton("Rechercher");
Font fo = new Font("Comic Sans MS",Font.BOLD|Font.ITALIC,12);
b1.setFont(fo);
b1.setForeground(Color.RED);
//JLabel mt=new JLabel("Montant");
JLabel l=new JLabel(" Recherche Des Appels D'offre ");
Font font = new Font("Comis Sans MS",Font.BOLD|Font.ITALIC,14);
l.setFont(font);
l.setForeground(Color.RED);
p=new JPanel();
f = new Formulaire();
p.add(l);
f.add("N°AO",15);//0
f.add("N°Client",15);//1
f.add("Date",15);//2
f.add("Montant De",7);// 3
f.add("A ",7);//4
f.synchronZones();
f.addB(b1);
((JPanel)getContentPane()).setLayout(new FlowLayout());
((JPanel)getContentPane()).add(p);
((JPanel)getContentPane()).add(f);
setTitle("Formulaire De Recherche");
Color C = new Color(238,213,183);
setBackground(C);
setResizable(true);
setSize(420,400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
b1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int nao=0;
int ncl=0;
float m1=0;
float m2=0;
java.sql.Date sqlDate=null;
String na=f.getTextAt(f.getLabelTextAt(0));
String nc=f.getTextAt(f.getLabelTextAt(1));
String d=f.getTextAt(f.getLabelTextAt(2));
String m=f.getTextAt(f.getLabelTextAt(3));
String mm=f.getTextAt(f.getLabelTextAt(4));
//si premier champ numAo est vide
if (na!=null)
{
//P1
if(nc==null && d==null && m==null)
{
query="SELECT * FROM reponses where NumAO =?";
PreparedStatement prepare = co.prepareStatement(query);