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

Bases de données Delphi Discussion :

somme sur champ calculé et table liée


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut somme sur champ calculé et table liée
    Bonjour

    Après avoir résolu mon premier problème (voir ici )de somme je me heurte à un autre que voici :

    Comment faire la somme sur une table liée et sur un champ calculé
    J'ai voulu le faire avec un query ça ne marche pas.


    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de Yurck
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 15
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 682
    Points : 912
    Points
    912
    Par défaut
    En plus clair SVP !

    Ton champs est calculé en SQL ou sous Delphi ?

    PS: j'ajouterai que cela dépend du calcul lui même en effet la somme d'une addition ne se fait pas de la même façon que la somme d'une marge.
    10 % + 10 % n'est pas souvent égal à 20 %.

    a+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut
    sous delphi

  4. #4
    Membre éprouvé Avatar de Yurck
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 15
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 682
    Points : 912
    Points
    912
    Par défaut
    Encore + clair : que veux tu faire de cette somme ? La mettre dans le query ?


    Il existe moultes solutions :

    1 - Tu parcours ton query et tu fais la somme de ton champ dans une variable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    MaVariable := 0;
    MonQuery.Open;
    while Not MonQuery.Eof do
    begin
      MaVariable := MaVariable +    MonQuery.FieldByName('MonChampQueJeVeuxCumuler').AsFloat;
      MonQuery.Next;
    end;

    2 - Tu utuilse un tProvider et un TClientDataset dans lequel tu ajoutes un champ de type TAggregateField et tu lui donne sa formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Expression := SUM(MonChampQueJeVeuxCumuler);
    a+

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 479
    Points : 102
    Points
    102
    Par défaut
    j'ai essayé l'aggregat mais ça ne marche pas .

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    529
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 529
    Points : 464
    Points
    464
    Par défaut
    salut,
    je ne vois pas de solution , sauf une proposition un nouveau query a part qui va calculer la somme que vous voulez.
    Bonne chance.
    Merci.

  7. #7
    Membre éprouvé Avatar de Yurck
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 15
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 682
    Points : 912
    Points
    912
    Par défaut
    Taratata, l'aggrégat fonctionne !
    Certes il est difficile à manipuler, il faut par exemple faire attention à l'ordre de mise à true des valeurs
    AggregatesActive du clientdataset et active du TAggregateField

    D'ailleurs ça marche pas ! cela ne veut rien dire !
    Allez aides toi et developpez.com t'aidera ! Enrichi tes questions, stp, apportes de l'eau à notre moulin !

    a+

Discussions similaires

  1. Syntaxe pour calculer somme de champ pas en table
    Par GrandMa2 dans le forum Access
    Réponses: 1
    Dernier message: 20/10/2014, 08h43
  2. Filtrer un formulaire sur un champ d'une table liée ?
    Par Sefrou dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 04/01/2009, 11h21
  3. Comment modifier un champ dans une table liée ?
    Par HookerSeven dans le forum Access
    Réponses: 11
    Dernier message: 05/02/2006, 23h50
  4. [select dans case] reconnaitre un champ d une table liée
    Par the_edge dans le forum MS SQL Server
    Réponses: 14
    Dernier message: 22/10/2004, 16h47
  5. Recherche sur champ calculé
    Par srvremi dans le forum Bases de données
    Réponses: 5
    Dernier message: 06/07/2004, 14h04

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