IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Calcul de temps cumulé


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur Matériaux
    Inscrit en
    Mars 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Matériaux
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 61
    Points : 61
    Points
    61
    Par défaut Calcul de temps cumulé
    Bonjour à tous,

    J'ai essayé pas mal de choses pour réussir à calculer un temps cumulé grâce à une requête mais sans succès.

    Ci joint un exemple de ce que je souhaite réaliser avec une table et une requête.

    Est ce que quelqu'un sait comment s'y prendre ?

    Merci à vous
    Fichiers attachés Fichiers attachés

  2. #2
    Membre du Club
    Homme Profil pro
    Ingénieur Matériaux
    Inscrit en
    Mars 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Matériaux
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 61
    Points : 61
    Points
    61
    Par défaut
    Rebonjour,

    Voici quelques précisions sur ma demande précédente (je ne m'en sors pas du tout).

    J'ai une table "T-segments thermiques" avec les champs suivants (entre autres)

    ID segment thermique (num auto)
    ID échantillon (numérique, sert de liaison avec une autre table)
    durée segment thermique : date/heure format "hh:nn:ss" dont la valeur est insérée de trois façons différentes (toutes via le même formulaire)

    1 - Soit la valeur est la valeur par défaut (300s, soit 00:05:00)
    2 - Soit la valeur est rentrée par l'utilisateur dans le formulaire avec un masque de saisie adéquat
    3 - Soit la valeur (en s) est calculée par un code VBA qui fait une différence de température sur une vitesse de chauffe (en °C/s) et convertit le résultat obtenu en date avec la fonction timeserial.

    Ma requête se compose ainsi :

    Colonne 1 :
    champ : ID échantillon
    Table : T-Segments thermiques
    Opération : regroupement
    Afficher non
    Critère : 1 (pour travailler sur un seul échantillon pour l'instant, par la suite il y aura un paramètre appelé par un formulaire)

    Colonne 2 :
    champ : ID segment thermique
    Table : T-Segments thermiques
    Opération : regroupement
    Afficher oui

    Colonne 3 :
    champ : ID segment thermique As IDSeg
    Table : T-Segments thermiques
    Opération : regroupement
    Afficher oui

    Colonne 4 :
    champ : Durée segment thermique
    Table : T-Segments thermiques
    Opération : regroupement
    Afficher oui

    Colonne 5 :
    Champ : cumul :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SomDom(Heure([Durée segment thermique])*3600+Minute([Durée segment thermique])*60+Seconde([Durée segment thermique]);"T-Segments thermiques";[ID Segment thermique]<=[IDseg])
    opération : expression


    J'ai des résultats bizarres dans la colonne cumul et je ne sais pas d'ou cela peut venir.

    Quelqu'un peut-il m'aider ?

    Boid'

  3. #3
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 755
    Points : 57 603
    Points
    57 603
    Billets dans le blog
    42
    Par défaut
    bonjour,

    Si j'ai bien compris l'intention, on peut écrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: CDate(SomDom("[Durée segment thermique]";"T-Segments thermiques";"[ID échantillon]=" & [ID échantillon] & " AND [ID Segment thermique] <=" & [ID Segment thermique]))
    Tous les paramètres de Somdom sont des string, donc entre guillemets.

    il faut sommer pour "...[ID Segment thermique] <=" & [ID Segment thermique] mais aussi pour l'échantillon en cours, "[ID échantillon]=" & [ID échantillon] & " AND [ID Segment thermique] <=" & [ID Segment thermique].

    De plus je crois que les alias comme IDSeg ne sont pas connues lorsqu'Access traite le SomDom (pas sûr de moi ici). J'ai rajouté un CDate pour reconvertir la somme en hh:mm.

  4. #4
    Membre du Club
    Homme Profil pro
    Ingénieur Matériaux
    Inscrit en
    Mars 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Matériaux
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 61
    Points : 61
    Points
    61
    Par défaut
    Merci beaucoup F-leb, c'est exactement ça.

    Je ne comprends toujours pas exactement comment fonctionne la partie critère suivante, comment distinguer la partie droite et la partie gauche de l'inégalité ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "[ID Segment thermique] <=" & [ID Segment thermique]))
    En tout cas cela fonctionne, merci

    Boid'

  5. #5
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 755
    Points : 57 603
    Points
    57 603
    Billets dans le blog
    42
    Par défaut
    Rajoute une colonne supplémentaire dans ta requête avec le champ calculé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "[ID Segment thermique] <=" & [ID Segment thermique]
    Tu verras alors comment est construit le critère du SomDom pour chaque enregistrement.

  6. #6
    Membre du Club
    Homme Profil pro
    Ingénieur Matériaux
    Inscrit en
    Mars 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Matériaux
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 61
    Points : 61
    Points
    61
    Par défaut
    Merci , je vois un peu mieux comment cela fonctionne.

    Boid'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment calculer le temps d'execution
    Par passion_info dans le forum C++Builder
    Réponses: 1
    Dernier message: 09/06/2005, 09h13
  2. Calculer le temps passé
    Par Joeleclems dans le forum MFC
    Réponses: 4
    Dernier message: 29/04/2005, 09h40
  3. calculer le Temp écoulé
    Par ada_b dans le forum SQL
    Réponses: 1
    Dernier message: 30/11/2004, 09h44
  4. [MFC] : CTime ? Calcul de temps d'éxécution
    Par jonzuzu dans le forum MFC
    Réponses: 10
    Dernier message: 25/05/2004, 14h22
  5. Réponses: 8
    Dernier message: 18/09/2002, 03h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo