|
Conversion Date |
|
Anonyme
|
Bonjour, j'ai encore une fois besoin de votre aide.
J'ai un fichier texte dont les dates sont formatés de cette façon : 12/01/2006. Dans la base hyper file, le champ nommé date est au format chaîne, en mettant le champ nommé date au format date, il me reproduit pas la date ex 12/01/2006 donne du genre 20/06/1201
Mon soucis est que je n'arrive pas à faire de calcul sur les dates.
Comment puis-je convertir les dates au format aaaammjj lors de l'importation dans la table ?
ou
Comment puis-je convertir les dates au format aaaammjj en wlangage en passant par exemple par une requête update ?
Si quelqu'un pourrait me donner un exemple de code
Avec mes remerciements
Contribution le : 26/01/2006 07:53
|
|
|
Re: Conversion Date |
|
Stagiaire WDF
Inscrit: 28/06/2004 11:45
Post(s): 4
|
toto est une Date titi est une chaîne
toto=ChaîneVersDate(titi,"JJ/MM/AAAA")
parcontre pour l'afficher correctement il faut mettre dans ton champ d'affichage:
Valeur retourner sur AAAAMMJJ
@+ MDSV31
Contribution le : 26/01/2006 09:47
|
|
|
Re: Conversion Date |
|
Stagiaire WDF
Inscrit: 11/01/2006 23:42
Post(s): 5
|
Citation : mdsv31 a écrit: toto est une Date titi est une chaîne
toto=ChaîneVersDate(titi,"JJ/MM/AAAA")
parcontre pour l'afficher correctement il faut mettre dans ton champ d'affichage:
Valeur retourner sur AAAAMMJJ
@+ MDSV31
Je te remercie pour ta réponse, excuse moi mais je suis newbies, A quel moment dois-je mettre cette fonction et dois-je changer le format de date dans la base ? pour info : j'ai un fichier qui se nomme : flux.txt et ma base se nomme importflux contenant divers champs dont le champs date en texte. Avec mes remerciements
Contribution le : 26/01/2006 12:48
|
|
|
Re: Conversion Date |
|
Animateur WDF
Inscrit: 17/05/2004 14:21
Post(s): 382
|
Bonjour,
De manière générale, soyez plus précis dans l'énoncé de votre problème.
Vous avez donc un fichier hyperfile avec une date au format AAAAMMJJ (Format date). Vous voulez importer dans ce fichier le contenu d'un fichier texte. A quel moment souhaitez-vous réaliser cette importation ? Si c'est dans un traitement lancé par l'utilisateur, placez la conversion ChaîneVersDate(DateImport,"JJ/MM/AAAA") dans votre boucle.
Contribution le : 26/01/2006 17:33
|
_________________
Mbsl
|
|
Re: Conversion Date |
|
Anonyme
|
Je vais essayer d'être plus clair, commençons par le début J 'ai un fichier texte "Toto.txt" formaté de cette façon :
extrait du fichier texte : Date heure; n° correspondant, Motif, suite donnée 17/12/2005 11:55:00;06.......;rendez-vous;rdv le 20/12/2005 17/12/2005 15:25:00;06.......;réclamation;serv. après_vente 18/12/2005 16:35:00; etc......
Je l'importe dans une base hyper file qui se nomme AppelTph structurée de cette façon IDAppelTPH, Date, Heure, NCorrespondant, Motif, Réponse en utilisant tout simplement le code w-langage suivant
NomFic est une chaîne = "c:\toto.txt" IdFic est un entier IdFic = fOuvre("c:\toto1.txt", foLectureEcriture) MaChaîne = fLitLigne(IdFic) HImporteTexte (AppelTph, "c:\toto1.txt", "Date,Heure,NCorrespondant,Motif,Réponse", ";"+Caract(127)+""""+Caract(127)+RC, hImpSansDélimiteur) fFerme(IdFic)
La ou ça coince c'est au niveau de la date et de l'heure lors de l'importation dans la base.
Donc ce que je voudrais faire c'est que lors de l'importation la date et l'heure soient séparées dans deux champs différents et qu'elles soient converties dans le bon format pour être pris en compte dans la base hyperfile.
Avec mes remerciements
Contribution le : 26/01/2006 18:27
|
|
|
Re: Conversion Date |
|
Animateur WDF
Inscrit: 17/05/2004 14:21
Post(s): 382
|
Il faut décliner le HimporteTexte en une importation manuelle // Déclaration
W_C_NomFic est une chaîne = "c:\toto.txt"
W_E_IdFic est un entier
W_C_Ligne est un entier
W_C_Val est une chaîne
W_E_IdFic = fOuvre(W_C_NomFic,foLecture)
SI W_E_IdFic = -1 ALORS
Erreur(ErreurInfo( errMessage ))
SINON
W_C_Ligne = fLitLigne (W_E_IdFic)
TANTQUE W_C_Ligne <> EOT ET W_C_Ligne <> ""
HRAZ(AppelTph)
W_C_Val = ExtraitChaîne(W_C_Ligne,1,";")
AppelTh.DateHeure = PL_FormaterDH(W_C_Val)
W_C_Val = ExtraitChaîne(W_C_Ligne,2,";")
AppelTh.NCorrespondant = Val(W_C_Val)
AppelTh.Motif = ExtraitChaîne(W_C_Ligne,3,";")
AppelTh.Reponse = ExtraitChaîne(W_C_Ligne,4,";")
SI PAS HAjoute(AppelTph) ALORS
// TRACER l'erreur (Eviter message lors d'une importation ...)
FIN
W_C_Ligne = fLitLigne (W_E_IdFic)
FIN
SI fFerme(W_E_IdFic) = -1 ALORS
Erreur(ErreurInfo(errMessage))
FIN
FIN
PROCEDURE PL_FormaterDH(P_DH)
// Param P_DH exemple 17/12/2005 11:55:00
// Chaine retournée 20051217115500
// Déclaration
W_C_Date est une chaîne = P_DH[[1 A 10]]
W_C_Heure est une chaîne = P_DH[[12 A 19]]
W_C_DateHeure est une chaîne = ""
W_C_Val est une chaîne
W_C_Val = W_C_Date[[7 A 10]] + W_C_Date[[4 A 5]] + W_C_Date[[1 A 2]]
W_C_DateHeure = W_C_Val
W_C_Val = Remplace(W_C_Heure,":","")
W_C_DateHeure += W_C_Val
RENVOYER W_C_DateHeure
Vérifier bien je n'ai pas testé.
Contribution le : 27/01/2006 09:33
|
_________________
Mbsl
|
|
Re: Conversion Date |
|
Animateur WDF
Inscrit: 17/05/2004 14:21
Post(s): 382
|
Je n'avais pas fais attention que vous vouliez séparer la date et l'heure, il vous suffit donc de modifier le code de la fonction pour qu'elle vous renvoit uniquement la date et d'en créer une autre qui vous renverra l'heure.
Désolé
Contribution le : 27/01/2006 09:37
|
_________________
Mbsl
|
Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.
|
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
|