[WD] Date imprécise

Le
Pascal Raulet
Bonjour,

Comment feriez-vous pour gérer dans un fichier HF une date qui peut être
précise (jour+mois+année) ou imprécise (année seule ou mois+année)?

Cordialement,

Pascal Raulet
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric Demeester
Le #21472891
dans (in) fr.comp.developpement.agl.windev, Pascal Raulet

Bonjour Pascal,

Comment feriez-vous pour gérer dans un fichier HF une date qui peut être
précise (jour+mois+année) ou imprécise (année seule ou mois+année)?



Je gèrerais ça à la main dans un champ chaîne de caractères, en
indiquant la date au format aaaammjj.

Ensuite, en fonction de la taille de la chaîne (8, 6 ou 4 caractères),
j'extrairais l'année, le mois et le jour.

Mes souvenirs du Wlangage commencent à être flous, mais ça donnerait à
peu près :

longueur_date est un entier = 0
ma_date est une chaine
annee est une chaine
mois est une chaine
jour est une chaine

ma_date = SansEspace(ma_date)
longueur_date = Taille(ma_date)
SELON longueur_date
CAS 8
// on a année, mois et jour
annee = Gauche(ma_date, 4)
mois = ExtraitChaine(ma_date, 5,2)
jour = Droite(ma_date, 2)
CAS 6
// Année et mois
annee = Gauche(ma_date, 4)
mois = Droite(ma_date, 2)
CAS 4
// Année uniquement
annee = ma_date
FIN

Mais il existe probablement d'autres solutions...

--
Eric
Pascal Raulet
Le #21473251
Le 31/03/2010 16:55, Eric Demeester a écrit :
Je gèrerais ça à la main dans un champ chaîne de caractères, en
indiquant la date au format aaaammjj.
Ensuite, en fonction de la taille de la chaîne (8, 6 ou 4 caractères),
j'extrairais l'année, le mois et le jour.
[...]



Merci Eric, çà devrait le faire. Il faut aussi prévoir le cas où la date
n'est pas renseignée, donc de longueur nulle.

Cordialement,

Pascal Raulet
Eric Demeester
Le #21473531
dans (in) fr.comp.developpement.agl.windev, Pascal Raulet

Bonsoir Pascal,

Merci Eric, çà devrait le faire. Il faut aussi prévoir le cas où la date
n'est pas renseignée, donc de longueur nulle.



Effectivement. Il faut, comme toujours quand on programme proprement,
tester tous les cas possibles, si possible dès la saisie des
informations.

Bon courage,

--
Eric
JeAn-PhI
Le #21473921
Après mûre réflexion, Eric Demeester a écrit :
dans (in) fr.comp.developpement.agl.windev, Pascal Raulet

Bonjour Pascal,

Comment feriez-vous pour gérer dans un fichier HF une date qui peut être
précise (jour+mois+année) ou imprécise (année seule ou mois+année)?



Je gèrerais ça à la main dans un champ chaîne de caractères, en
indiquant la date au format aaaammjj.

Ensuite, en fonction de la taille de la chaîne (8, 6 ou 4 caractères),
j'extrairais l'année, le mois et le jour.

Mes souvenirs du Wlangage commencent à être flous, mais ça donnerait à
peu près :

longueur_date est un entier = 0
ma_date est une chaine
annee est une chaine
mois est une chaine
jour est une chaine

ma_date = SansEspace(ma_date)
longueur_date = Taille(ma_date)
SELON longueur_date
CAS 8
// on a année, mois et jour
annee = Gauche(ma_date, 4)
mois = ExtraitChaine(ma_date, 5,2)
jour = Droite(ma_date, 2)
CAS 6
// Année et mois
annee = Gauche(ma_date, 4)
mois = Droite(ma_date, 2)
CAS 4
// Année uniquement
annee = ma_date
FIN

Mais il existe probablement d'autres solutions...



je fais un peu la même chose mais mon format de stockage est AAAA-MM-JJ
et je remplace les valeur manquantes par des espaces comme je peux
aussi traiter le cas de l'année absente

si remplace(remplace(ma_date,"-","")," ","") = "" alors //ma_date est
vide

si sansespace(ma_date[[a 4]]) <> "" alors // j'ai mon année

etc...

--
Cordialement JeAn-PhI
Publicité
Poster une réponse
Anonyme