Bonjour, dans une table, j'ai des date de pointage, j'ai essayé de regrouper ces pointages par semaine et j'ai calculé le cumul d'heure de chaque semaine, chque pointage peut etre valide ou non valide, si tout les pointage sont valide alors la semaine est valide j'ai mis la requete suivante qui marche avec succés mais j'ai un problème :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
ResultSet rs=session.connection().createStatement().executeQuery("select NUM_SEMAINE, DEBUT_SEMAINE," +
				" FIN_SEMAINE,ID_RESSOURCE,sum(DUREETACHE)as cum, count(distinct STATUT) as lg from GPL_POINTAGES " +
				"group by NUM_SEMAINE, DEBUT_SEMAINE,FIN_SEMAINE,ID_RESSOURCE having ID_RESSOURCE="+idr);
		GregorianCalendar c = new GregorianCalendar(Locale.FRANCE);
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
 
		while(rs.next()){
			CumulPointage cp =new CumulPointage();
			cp.setNumSemaine(rs.getInt("NUM_SEMAINE"));
			cp.setCumul(rs.getInt("cum"));
 
			cp.setIdRessource(idr);
 
			if((rs.getInt("lg")==1) ){
				cp.setStatut("Valide");
			}
			else cp.setStatut("Non Valide");
		    cp.setDds(rs.getDate("DEBUT_SEMAINE"));
 
		    c.setTime(cp.getDds());
		    int year = c.get(Calendar.YEAR);
		    cp.setAnnee(year);
		    cp.setDonnee(cp.getNumSemaine()+"/"+cp.getAnnee());
		    cp.setDfs(rs.getDate("FIN_SEMAINE"));
 
		    list.add(cp);
		}
	   }
	   catch (Exception e) {
		e.printStackTrace();
	}
		return list;	
	}
la je teste si le lg est egal à 1 je met la semaine a valide sinon a non valide,
mais le problème c'est que le lg peut avoir la valeur 1 mais tout les pointage sont à non valide, vous avez une idée ?