Bonjour,

je développe une classe qui permet d'enregistrer des lignes dans une BD operationnelle à partir d'une autre statistique et la condition est que le jour statique correspond au jour oper c'est à dire lundi avec un lundi....jusqu'au dimanche ,jusqu'au maintenant il n'y a pas de pb,ça marche bien mais une condition que j'arrive pas à bien la réussir est que:

dans la BD statistique je travaille dans un intervalle de periodeStat=[dateMinStat,dateMAxStat] et dans BD oper je travaille dans un autre intervalle qui n'est pas forcément identique au premier periodeOper=[dateMinOper,dateMaxOper].

J'utilise des calendars:je veux que le tuple du premier lundi periodeStat soit inséré au premier lundi de la périodeOper et deuxième avec le deuxième ainsi de suite pour les autres jours,j'ai essayé Calendar_Day_of_Week_IN_MONTH mais ça marche bien à 100% sur un mois mais pas sur la période.

voici le code:

[code]

Calendar jourStat = Calendar.getInstance();

if (extraireJourDate(debutPeriode.toString()).equals("MONDAY")) {
jourStat.setFirstDayOfWeek(Calendar.MONDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("TUESDAY")) {
jourStat.setFirstDayOfWeek(Calendar.TUESDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("WEDNESDAY")) {
jourStat.setFirstDayOfWeek(Calendar.WEDNESDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("THURSADY")) {
jourStat.setFirstDayOfWeek(Calendar.THURSDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("FRIDAY")) {
jourStat.setFirstDayOfWeek(Calendar.FRIDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("SATURDAY")) {
jourStat.setFirstDayOfWeek(Calendar.SATURDAY);
jourStat.setFirstDayOfWeek(1);
}
if (extraireJourDate(debutPeriode.toString()).equals("SUNDAY")) {
jourStat.setFirstDayOfWeek(Calendar.SUNDAY);
jourStat.setFirstDayOfWeek(1);
}
[\code]


et
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
 
 
Calendar jourOper = Calendar.getInstance();
		if (extraireJourDate(debutPeriodeOper.toString()).equals("MONDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.MONDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("TUESDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.TUESDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("WEDNESDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.WEDNESDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("THURSADY")) {
			jourOper.setFirstDayOfWeek(Calendar.THURSDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("FRIDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.FRIDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("SATURDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.SATURDAY);
			jourOper.setFirstDayOfWeek(1);
		}
		if (extraireJourDate(debutPeriodeOper.toString()).equals("SUNDAY")) {
			jourOper.setFirstDayOfWeek(Calendar.SUNDAY);
			jourOper.setFirstDayOfWeek(1);
		}
et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
public String extraireJourDate(String date) {
		Date maDate = null;
		try {
			maDate = dateFormat.parse(date);
			dateFormat.applyLocalizedPattern("EEEE");
 
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return dateFormat.format(maDate).toUpperCase();
 
	}

je m'exuse pour ce long message mais j'ai essayé d'être le plus précis possible.Merci d'avance

Cdt,