bonjour
Pour gerer un parc d'engins avec des compteurs horaire
J'ai une Table "Tbl Compteurs" avec les champs :
"nuGSM" le numéro de l'engin
"Dâte Releve" la date du relevé du compteur
"HC" la valeur du compteur
Je désire que le champ calculé HC1 me donne la valeur entre 2 relevés
avec la requete suivante
SELECT nuGSM,DâteRelevé,HC , DLast("HC","tbl Compteurs","nuGSM=" & [nuGSM] &
" AND [DâteRelevé]<" & Format([DâteRelevé],"\#mm-dd-yyyy\#")) AS HC1
FROM [tbl Compteurs]
ORDER BY nuGSM, DâteRelevé;
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jessy Sempere [MVP]
Bonjour
Le problème je pense vient du fait que rien ne te garantie que dans ta table compteur, tes données soit bien trier chronologiquement...
Du coup, ton DLast(...) ne te sort peut-être pas la valeur de la dernière date précédent ton relevé.
Essais d'utiliser une autre requête qui représente ta table tblCompteurs que tu nommes par exemple : "qryCompteurs" afin de trier ta table compteur sur la date du relevé, genre : Select * From tblCompteurs Order by DateReleve;
Ensuite, tu fais la même requête que tu as fait sauf que tu base ton DLast(...) sur la requête qryCompteurs.
@+ Jessy Sempere - Access MVP
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://www.mpfa.info/ ------------------------------------ "rené" a écrit dans le message de news:
bonjour Pour gerer un parc d'engins avec des compteurs horaire J'ai une Table "Tbl Compteurs" avec les champs : "nuGSM" le numéro de l'engin "Dâte Releve" la date du relevé du compteur "HC" la valeur du compteur
Je désire que le champ calculé HC1 me donne la valeur entre 2 relevés avec la requete suivante SELECT nuGSM,DâteRelevé,HC , DLast("HC","tbl Compteurs","nuGSM=" & [nuGSM] &
" AND [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS HC1 FROM [tbl Compteurs] ORDER BY nuGSM, DâteRelevé;
Dans la colonne HC1 les lignes 4,5 et 6 sont fauses, car je devrais avoir les valeurs 44,53,61 !
Si vous avez la solution pour corriger ce bug ?
rené
Bonjour
Le problème je pense vient du fait que rien ne te garantie que dans
ta table compteur, tes données soit bien trier chronologiquement...
Du coup, ton DLast(...) ne te sort peut-être pas la valeur de la dernière
date précédent ton relevé.
Essais d'utiliser une autre requête qui représente ta table tblCompteurs
que tu nommes par exemple : "qryCompteurs" afin de trier ta table compteur
sur la date du relevé, genre :
Select * From tblCompteurs Order by DateReleve;
Ensuite, tu fais la même requête que tu as fait sauf que tu base ton
DLast(...)
sur la requête qryCompteurs.
@+
Jessy Sempere - Access MVP
news@access.fr.vu
------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://www.mpfa.info/
------------------------------------
"rené" <ren@discussions.microsoft.com> a écrit dans le message de
news:036D90D0-E3FC-4C4A-AABA-7EECC0D5D647@microsoft.com...
bonjour
Pour gerer un parc d'engins avec des compteurs horaire
J'ai une Table "Tbl Compteurs" avec les champs :
"nuGSM" le numéro de l'engin
"Dâte Releve" la date du relevé du compteur
"HC" la valeur du compteur
Je désire que le champ calculé HC1 me donne la valeur entre 2 relevés
avec la requete suivante
SELECT nuGSM,DâteRelevé,HC , DLast("HC","tbl Compteurs","nuGSM=" & [nuGSM]
&
" AND [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS HC1
FROM [tbl Compteurs]
ORDER BY nuGSM, DâteRelevé;
Le problème je pense vient du fait que rien ne te garantie que dans ta table compteur, tes données soit bien trier chronologiquement...
Du coup, ton DLast(...) ne te sort peut-être pas la valeur de la dernière date précédent ton relevé.
Essais d'utiliser une autre requête qui représente ta table tblCompteurs que tu nommes par exemple : "qryCompteurs" afin de trier ta table compteur sur la date du relevé, genre : Select * From tblCompteurs Order by DateReleve;
Ensuite, tu fais la même requête que tu as fait sauf que tu base ton DLast(...) sur la requête qryCompteurs.
@+ Jessy Sempere - Access MVP
------------------------------------ Site @ccess : http://access.jessy.free.fr/ Pour l'efficacité de tous : http://www.mpfa.info/ ------------------------------------ "rené" a écrit dans le message de news:
bonjour Pour gerer un parc d'engins avec des compteurs horaire J'ai une Table "Tbl Compteurs" avec les champs : "nuGSM" le numéro de l'engin "Dâte Releve" la date du relevé du compteur "HC" la valeur du compteur
Je désire que le champ calculé HC1 me donne la valeur entre 2 relevés avec la requete suivante SELECT nuGSM,DâteRelevé,HC , DLast("HC","tbl Compteurs","nuGSM=" & [nuGSM] &
" AND [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS HC1 FROM [tbl Compteurs] ORDER BY nuGSM, DâteRelevé;