PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → Etats & Requêtes → [DEMANDE AIDE] pour une requête avec date
[DEMANDE AIDE] pour une requête avec date
Débuté par Tchup, 07 juin 2006 11:38 - 1 réponse
Posté le 07 juin 2006 - 11:38
Bonjour,

le contexte :
- des clients s'inscrivent (0-n) à des activités

J'ai donc 3 tables :
T_client (id, nom)
T_inscription (id, id_client, id_activite, date_debut, activite, temps_mort)
T_activite (id, intitule, duree)

Une inscription a une date de début, un temps mort (en jours) et une duree (en mois).

Le but est de lister dans un tableau tous les clients (que leur nom par exemple) ayant au moins une inscription en cours....

Le filtrage en W-language serait :

********************************************

// pour avoir une inscription en cours, il faut que
// la date de fin de l'activité du client soit supérieure à la date du jour
_debut est une Date = date_debut_activite
_fin est une Date = _debut
_fin..Mois += duree
_fin..Jour += temps_mort

sDateSys est une chaîne = DateSys()
sFin est une chaîne = _fin

SI sFin > sDateSys ALORS
// inscription en cours
SINON
// inscription terminée
FIN

********************************************

Mais apparemment le SQL de WinDev ne gère pas les calculs sur les dates.... :/

Alors comment pourrais je faire ?
Merci d'avance....

Tchup.
Posté le 16 juin 2006 - 15:13
Bonjour,

Essaye une requete Sql : Exemple pour un client en activité :
EX : nom de la requete MaRequete

// passage de la date en parametre
MaRequete.pDateJour = datesys() (ou une autre date)

Corps de la requete :
Select .....
from ....
where DateDebActivite >= {pDateJour}
and dateFinActivite >= {pDateJour}
order by (nom, DateDbActivite,....ce que tu veux)

Execution de la requete
Lecture de cette requete

Bon dev.