bonjour,
je gére des engins de manutention avec les relevés des compteurs horaires
A partir d'une table "tbl compteur"
Les champs
NuGSM, le numéro de l'engin
HC le releve mensuel des heures
Date la date du relevé
Ex
NuGSM HC Date
1 100 01/01/05
1 200 01/02/05
1 450 01/03/05
2 35 01/01/05
2 100 01/02/05
2 250 01/03/05
etc..
Je calcule le nombre d'heure de marche entre 2 releves avec la requete
suivant
SELECT [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé, [tbl
Compteurs].HC, Nz([HC])-DMax("HC","tbl Compteurs","nuGSM=" & [nuGSM] & " AND
[DâteRelevé]<" & Format([DâteRelevé],"\#mm-dd-yyyy\#")) AS Hcalc
FROM [tbl Compteurs]
ORDER BY [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé;
qui me donne le nombre d'heure entre 2 releves
cela marche : mais il arrive que l'on change un compteur à la suite d'une
panne
donc ce compteur démarre à zero , et le résultat du calcul passe en negatif.
Ex
NuGSM HC date
1 100 01/01/05
1 0 01/02/05
1 10 01/03/05
le résultat est négatig donc faux
si vous avez une idée pour résoudre ce probleme
d'avance merci
tu cumuleras les écarts sur le compteur valide de la tblReleves + la valeur de départ du compteur valide pour l'engiun correspondant dans la tblEngins
ps : la valeur initiale pourra se mettre à jour automatiquement à ajout de compteur valide : requête mise à jour met l'ancien compteur non valide requete ajout met le nouveau compteur valide + fait la somme de tout le passif
à+ -- Arnaud ----------------------------------- http://users.skynet.be/mpfa/ ----------------------------------- "rg" a écrit dans le message de news:
| bonjour, | je gére des engins de manutention avec les relevés des compteurs horaires | | A partir d'une table "tbl compteur" | Les champs | NuGSM, le numéro de l'engin | HC le releve mensuel des heures | Date la date du relevé | | Ex | NuGSM HC Date | 1 100 01/01/05 | 1 200 01/02/05 | 1 450 01/03/05 | 2 35 01/01/05 | 2 100 01/02/05 | 2 250 01/03/05 | etc.. | Je calcule le nombre d'heure de marche entre 2 releves avec la requete | suivant | | SELECT [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé, [tbl | Compteurs].HC, Nz([HC])-DMax("HC","tbl Compteurs","nuGSM=" & [nuGSM] & " AND | [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS Hcalc | FROM [tbl Compteurs] | ORDER BY [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé; | | qui me donne le nombre d'heure entre 2 releves | cela marche : mais il arrive que l'on change un compteur à la suite d'une | panne | donc ce compteur démarre à zero , et le résultat du calcul passe en negatif. | | Ex | NuGSM HC date | 1 100 01/01/05 | 1 0 01/02/05 | 1 10 01/03/05 | | le résultat est négatig donc faux | si vous avez une idée pour résoudre ce probleme | d'avance merci | | rené | |
Bonjour,
je pense qu'il faudra revoir la structure de la base qui devrait plutôt ressembler à :
tu cumuleras les écarts sur le compteur valide de la tblReleves + la valeur de départ du
compteur valide pour l'engiun correspondant dans la tblEngins
ps : la valeur initiale pourra se mettre à jour automatiquement à ajout de compteur valide :
requête mise à jour met l'ancien compteur non valide
requete ajout met le nouveau compteur valide + fait la somme de tout le passif
à+
--
Arnaud
-----------------------------------
http://users.skynet.be/mpfa/
-----------------------------------
"rg" <r.gesbert@free.fr_NoSpam> a écrit dans le message de news:
OBEafLufFHA.2152@TK2MSFTNGP14.phx.gbl...
| bonjour,
| je gére des engins de manutention avec les relevés des compteurs horaires
|
| A partir d'une table "tbl compteur"
| Les champs
| NuGSM, le numéro de l'engin
| HC le releve mensuel des heures
| Date la date du relevé
|
| Ex
| NuGSM HC Date
| 1 100 01/01/05
| 1 200 01/02/05
| 1 450 01/03/05
| 2 35 01/01/05
| 2 100 01/02/05
| 2 250 01/03/05
| etc..
| Je calcule le nombre d'heure de marche entre 2 releves avec la requete
| suivant
|
| SELECT [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé, [tbl
| Compteurs].HC, Nz([HC])-DMax("HC","tbl Compteurs","nuGSM=" & [nuGSM] & " AND
| [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS Hcalc
| FROM [tbl Compteurs]
| ORDER BY [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé;
|
| qui me donne le nombre d'heure entre 2 releves
| cela marche : mais il arrive que l'on change un compteur à la suite d'une
| panne
| donc ce compteur démarre à zero , et le résultat du calcul passe en negatif.
|
| Ex
| NuGSM HC date
| 1 100 01/01/05
| 1 0 01/02/05
| 1 10 01/03/05
|
| le résultat est négatig donc faux
| si vous avez une idée pour résoudre ce probleme
| d'avance merci
|
| rené
|
|
tu cumuleras les écarts sur le compteur valide de la tblReleves + la valeur de départ du compteur valide pour l'engiun correspondant dans la tblEngins
ps : la valeur initiale pourra se mettre à jour automatiquement à ajout de compteur valide : requête mise à jour met l'ancien compteur non valide requete ajout met le nouveau compteur valide + fait la somme de tout le passif
à+ -- Arnaud ----------------------------------- http://users.skynet.be/mpfa/ ----------------------------------- "rg" a écrit dans le message de news:
| bonjour, | je gére des engins de manutention avec les relevés des compteurs horaires | | A partir d'une table "tbl compteur" | Les champs | NuGSM, le numéro de l'engin | HC le releve mensuel des heures | Date la date du relevé | | Ex | NuGSM HC Date | 1 100 01/01/05 | 1 200 01/02/05 | 1 450 01/03/05 | 2 35 01/01/05 | 2 100 01/02/05 | 2 250 01/03/05 | etc.. | Je calcule le nombre d'heure de marche entre 2 releves avec la requete | suivant | | SELECT [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé, [tbl | Compteurs].HC, Nz([HC])-DMax("HC","tbl Compteurs","nuGSM=" & [nuGSM] & " AND | [DâteRelevé]<" & Format([DâteRelevé],"#mm-dd-yyyy#")) AS Hcalc | FROM [tbl Compteurs] | ORDER BY [tbl Compteurs].nuGSM, [tbl Compteurs].DâteRelevé; | | qui me donne le nombre d'heure entre 2 releves | cela marche : mais il arrive que l'on change un compteur à la suite d'une | panne | donc ce compteur démarre à zero , et le résultat du calcul passe en negatif. | | Ex | NuGSM HC date | 1 100 01/01/05 | 1 0 01/02/05 | 1 10 01/03/05 | | le résultat est négatig donc faux | si vous avez une idée pour résoudre ce probleme | d'avance merci | | rené | |