Filtres

kallamou Messages postés 8 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 1 avril 2006 - 16 janv. 2006 à 20:22
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 - 16 janv. 2006 à 21:50
Bonsoir!
J'ai un probleme de filtre dans mes tables.Je veux filtrer d'une tables Contrat les contrats durant un mois donné.Je veux mettre le filtre au champ date de souscription se trouvant dans la table contrat.J'utilise le composant DateTimePicker.
Ma soutenance est pour le 28 de ce mos veuillez me trouver une solution SVP!
J'attends vos reponses
H Kalla du Niger

1 réponse

f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
16 janv. 2006 à 21:50
le champ date et de type TimeStamp ou VarChar (string) ?

(attention : syntaxe MySQL! facilement conversible vers SQL et autre)

si il est de type string (dd/mm/yyyy) (de memo) :

Uses DateUtils;

....
var DateComp,Requette : string;
Begin
// recuperation du mois et de l'année de la date
DateComp := format('/%d/%d',[MonthOf(DateTimePicker1.date),YearOf(DateTimePicker1.Date)]);
// LIKE selectionne toute les entrée ou Date contiendras DateComp
Requette := 'SELECT * FROM base WHERE date LIKE ''%' +
DateComp +
''' ORDER BY date ASC';
....

si il est de type timestamp (de memo) :

Uses DateUtils [,SqlTimSt {avec SQLTimeStamp}];

....
var DateC1,DateC2 : TDateTime;
Requette : string;
Begin
DateC1 := DateTimePicker1.Date;
// on vas au dernier jours du mois
DateC2 := IncDay(DateC1,DaysInMonth(DateC1)-DayOf(DateC1));
Requette := 'SELECT * FROM base WHERE date >= ' +
DateTimeToTimeStamp(DateC1) +

// ou DateTimeToSQLTimeStamp(DateC1) +

' AND date <= ' +
DateTimeToTimeStamp(DateC2) +

// ou DateTimeToSQLTimeStamp(DateC2) +

' ORDER BY date ASC';
....


voir egalement DateTimeToXMLTime, DateTimeToXSDateTime ect...

<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
0
Rejoignez-nous