Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/10/2007, 01h11   #1
Invité de passage
 
Inscription : octobre 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 4
Points : 0
Points : 0
Par défaut Heures de nuit comprises dans une amplitude

Bonjour. Je travaille parfois la nuit (ambulancier) et je voudrais calculer les heures de nuit (de 22h à 5 heures) comprises dans une amplitude de travail qui peut débuter et/ou finir en dehors de cette plage horaire ou à l'intérieur de cette plage horaire. Je dispose d'une requête qui me fait apparaitre les enregistrements répondant à ces critères, mais... Ben c'est là que je m'arrache les quelques cheveux restant. Une ames charitable pourrait elle m'aider ?
Philou29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2007, 11h19   #2
Rédacteur/Modérateur
 
Avatar de Siguillaume
 
Homme Guillaume SIGUI
Chef de projet en SSII
Inscription : août 2007
Messages : 2 388
Détails du profil
Informations personnelles :
Nom : Homme Guillaume SIGUI
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2007
Messages : 2 388
Points : 3 177
Points : 3 177
Envoyer un message via Yahoo à Siguillaume Envoyer un message via Skype™ à Siguillaume
Bonjour

Citation:
Envoyé par Philou29 Voir le message
Je dispose d'une requête qui me fait apparaitre les enregistrements répondant à ces critères, mais...
Mais quoi? Tu n'a pas vraiment décris le problème. C'est là le noeud de la solution
Citation:
Envoyé par Philou29 Voir le message
Une ames charitable pourrait elle m'aider ?
Il y en aurait plusieurs si seulement...
Siguillaume est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2007, 21h27   #3
Invité de passage
 
Inscription : octobre 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 4
Points : 0
Points : 0
Par défaut Ah, j'avais oublié...

d'exprimer le problème... Comment peut on faire dans un champ calculé ou toute autre méthode pour comptabliser/extraire les heures de nuit ( entre 22 h et 5 h) comprise dans une amplitude de travail dont HeureDébut serait par exemple 20 h et HeureFin 8h ?
Philou29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 13h30   #4
Rédacteur/Modérateur
 
Avatar de Siguillaume
 
Homme Guillaume SIGUI
Chef de projet en SSII
Inscription : août 2007
Messages : 2 388
Détails du profil
Informations personnelles :
Nom : Homme Guillaume SIGUI
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2007
Messages : 2 388
Points : 3 177
Points : 3 177
Envoyer un message via Yahoo à Siguillaume Envoyer un message via Skype™ à Siguillaume
Bonjour!
Tu peux faire pointer le contenu d'un de tes champs (avec la propriété source) sur une requête. Cette requête peut être une requête de compte, qui est facilement réalisable en mode graphique.
En mode texte, le SQL peut ressembler à:
Code :
1
2
3
Select count(id_nuit) 
from nuit
Where (heure_debut>20 and heure_fin <8);
J'ai considéré que nuit est la table à considérer et id_nuit est la clé primaire de nuit.
Bye!
Siguillaume est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 19h01   #5
Membre chevronné
 
Avatar de alassanediakite
 
Homme Alassane Diakité
Conseil - Consultant en systèmes d'information
Inscription : août 2006
Messages : 539
Détails du profil
Informations personnelles :
Nom : Homme Alassane Diakité
Âge : 34
Localisation : Mali

Informations professionnelles :
Activité : Conseil - Consultant en systèmes d'information

Informations forums :
Inscription : août 2006
Messages : 539
Points : 604
Points : 604
Envoyer un message via Yahoo à alassanediakite
Salut
N'est ce pas un cas où on cherche à compter le nombre d'heure qu'un employer à travaillé? Du genre s'il travaille de 22h à 3h alors il a fait 5 heures de travail.
Si tel est le cas il faut une requete avec un champs :nbreheure: DiffDate ('h', datedebut, datefin)
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard…
alassanediakite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 19h44   #6
Rédacteur/Modérateur
 
Avatar de Siguillaume
 
Homme Guillaume SIGUI
Chef de projet en SSII
Inscription : août 2007
Messages : 2 388
Détails du profil
Informations personnelles :
Nom : Homme Guillaume SIGUI
Localisation : Côte d'Ivoire

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : août 2007
Messages : 2 388
Points : 3 177
Points : 3 177
Envoyer un message via Yahoo à Siguillaume Envoyer un message via Skype™ à Siguillaume
Ah oui! Alassane a raison.
Le problème doit être clairement défini, sinon les reponses risquent d'être en HS
Siguillaume est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2007, 13h42   #7
Invité de passage
 
Inscription : octobre 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 4
Points : 0
Points : 0
Sauf que le salarié peut commencer le travail à 14,15 ou 16 h, le terminer à 4, 5 ou 6 heures ou plus; le problème étant qu'il faut compter les heures effctuées dans une fourchette de 22 h et 5h du matin, car ces heures doinvent être comptabilisées en heures de nuit!

Comment compter les heures comprise dans la fourchette 22 h / 5 h (appellée heures de nuit) sachat que l'embauche peut se faire avnat ou après 22 h, la débauche avant ou après 5 heures du matin !
Philou29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2007, 14h48   #8
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 920
Points : 30 920
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour.

Pour effectuer une différence, essaye en calculant avec la fonction DateDiff, mais en calculant avec la date du jour.

Par exemple
Code :
datediff("h","01/01/2007 22:00","02/01/2007 01:00")
Donne 3, car il y'a 3 heures entre 22:00 et 01:00 de deux jours consécutifs.

Starec
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2007, 23h09   #9
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 941
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 941
Points : 6 283
Points : 6 283
Bonsoir,

je pense que le plus simple est de créer une fonction vb que l'on appelle depuis la requête.
Code vb :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Function HeuresNuit(heureDeb As Date, heureFin As Date) As Date
Dim HeureN1 As Date, HeureN2 As Date, heureFin2 As Date
 
If heureFin < heureDeb Then heureFin2 = heureFin + 1 Else heureFin2 = heureFin
If heureDeb > #5:00:00 AM# And heureFin2 < #10:00:00 PM# Then
    HeuresNuit = 0
Else
    If heureDeb > #5:00:00 AM# And heureDeb < #10:00:00 PM# Then
       HeureN1 = #10:00:00 PM#
    Else
       HeureN1 = heureDeb
    End If
    If heureFin > #5:00:00 AM# And heureFin < #10:00:00 PM# Then
       HeureN2 = #5:00:00 AM#
    Else
       HeureN2 = heureFin
    End If
    If HeureN2 < HeureN1 Then
       HeuresNuit = (1 + HeureN2) - HeureN1
    Else
       HeuresNuit = HeureN2 - HeureN1
    End If
End If
End Function
En espèrant ne pas avoir fait d'erreur dans mon code.
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h17.


 
 
 
 
Partenaires

Hébergement Web