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

 Delphi Discussion :

puis je créer un nouvelle ligne dans un dbgrid


Sujet :

Delphi

  1. #1
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut puis je créer un nouvelle ligne dans un dbgrid
    bonjour a tous ,
    voila aprés une recherche je récupére les résultats dans un dbgrid j'aimerais savoir si il possible de rajouter a la fin de chaque mois une ligne pour faire un total!!!

    merci

  2. #2
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Salut;

    Avec le même DBGrid (tel qu'il est conçu) non ce n'est pas possible, mais tu peux par exemple, déposer un StringGrid en pied de forme (si le terme le permet ) donc juste après le DBGrid et par le biais d'un requête tu récupère les agrégats (somme, moyenne, etc) puis tu les affiche dans le StringGrid comme s'il était une ligne de ton DBGrid.

    Bonne chance.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  3. #3
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    puis je alors récupérer les résultats qui sont dans le dbgrid et les mettre dans le string grid et dans celui ci faire l'ajout de la ligne pour la somme des absences de mon employé par mois!!!

    merci

  4. #4
    Membre émérite
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 496
    Points : 2 762
    Points
    2 762
    Billets dans le blog
    10
    Par défaut
    Un dbGrid est une vue sur une partie de table. Si Tu veux avoir un total tu dois avoir une requête sur ta table du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select sum(Heures) from MaTable where CodeEmployé = 123456
    . Cette requête tu la met dans un TQuery and so on ...

  5. #5
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 241
    Points : 204
    Points
    204
    Par défaut
    re lila;
    pour répondre a ta deuxième question je propose ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     var datset:tdataset;
     i,j:integer;
     
     begin
     datset:=dbgrid1.DataSource.DataSet; //on récupère le dataset dans ta
     datset.First; //on place le pointer sur le premier élément
     j:=0;
     stringgrid1.RowCount:=1;
     stringgrid1.FixedCols:=0;
     stringgrid1.ColCount:=dbgrid1.Columns.Count; //on ajuste le nombre de colonne du stringgrid en fonction du dbgrid
     for i:=0 to dbgrid1.Columns.Count-1 do //on parcours toutes les colonnes de la première ligne pour ajuster la ligne fixe
     begin
     stringgrid1.Cells[i,0]:=dbGrid1.Columns.Items[i].FieldName;
     end;
     while not datset.Eof do
     begin
     j:=j+1;
     stringgrid1.RowCount:=stringgrid1.RowCount+1; //on ajoute une ligne dans le stringgrid
     for i:=0 to dbgrid1.Columns.Count-1 do //pour toutes les colonnes on recopie les données
     stringgrid1.Cells[i,j]:=dbgrid1.Columns.Grid.Fields[i].AsString;
     datset.Next; //on passe à la prochaine ligne de la source de données
     end;
     if stringgrid1.RowCount>1 then stringgrid1.FixedRows:=1; //si il y a au moins une ligne, la première est fixe
    end;
    Bon courage.

  6. #6
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    merci sam pour ta réponse jaimerais te demandais je n'ai pa saisi ces lignes de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    stringgrid1.RowCount:=1;
    stringgrid1.FixedCols:=0;
    encore merci

  7. #7
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 241
    Points : 204
    Points
    204
    Par défaut
    Bonsoir;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    stringgrid1.RowCount:=1;//initialiser le nombre de ligne destriggrid à 1
    stringgrid1.FixedCols:=0;//c'est pour fixé le nombre de colonne fixe (les colonne grise) à 0
    Bon courage

  8. #8
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    bonjour tout le monde,

    merci sam de cette éclaircissement, est ce indispensable de faire ces deux lignes ou pas??

    merci

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

Discussions similaires

  1. Créer une nouvelle ligne dans un DBgrid
    Par znathan dans le forum Débuter
    Réponses: 3
    Dernier message: 01/12/2011, 17h49
  2. Réponses: 82
    Dernier message: 05/02/2011, 14h34
  3. Réponses: 0
    Dernier message: 13/02/2010, 15h01
  4. Comment créer une nouvelle ligne (\n) dans un StringBuffer
    Par publicStaticVoidMain dans le forum Langage
    Réponses: 5
    Dernier message: 05/11/2009, 18h31
  5. Réponses: 2
    Dernier message: 07/12/2005, 16h26

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