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 :

Est il possible qu'un dbgrid n'est pas de source


Sujet :

Delphi

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 90
    Par défaut Est il possible qu'un dbgrid n'est pas de source
    Bonsoir
    Je développe en Delphi7 et comme base de donnée j'utilise sql server 2005
    je dois réaliser un tableau qui comprend une colonne Nature des risques,une colonne état, une colonne montant
    Comme nature de risque nous pouvons avoir vol, incendie etc
    la colonne état comporte une case à cochée pour chaque risque et la colonne montant nous permet de saisir le montant si la case est cochée.
    pour ce faire j'ai crée dans ma base de donnée en sql server 2005 une table garantie qui contient le codeGarantie et la DescGarantie, une une table auto qui contient IdAuto et DescAuto, une table gararantie auto qui comprend IdAuto, CodeGarantie, Montant.
    La table garantie auto enregistre l'identifiant du véhicule, le code de la garantie et le montant de la garantie.
    Mon problème se situe au niveau de la mise en place de ce tableau, c'est à dire lorsque j'ouvre ma fenêtre(fiche) je dois avoir un tableau qui contient les différents garanties afin de permettre à l'opérateur de saisie de cocher celle qui sont accordée et leur montant.
    j'avais crée un table Enrisque qui avait comme champ IdGarantie,Montant afin de pouvoir les appeler dans une dbgrid mais lorsque j'ajoute une valeur dans montant,cette valeur s'enregistre automatiquement dans ma table alors que c'était pas le but que je voulais atteindre,d'où j'ai laissé ce chemin.c'est pourquoi j'ai demandé " Est il possible qu'un dbgrid n'est pas de source" ou encore avoir un table de mémoire en delphi 7
    Merci pour votre aide

  2. #2
    Membre Expert
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 704
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 704
    Par défaut
    Citation Envoyé par babacan Voir le message
    mais lorsque j'ajoute une valeur dans montant,cette valeur s'enregistre automatiquement dans ma table alors que c'était pas le but que je voulais atteindre
    Avec une transaction, tu peux choisir d'appliquer ou pas le changement quand tu le souhaites. Ca peut peut-être t'aider ...

    Citation Envoyé par babacan Voir le message
    Est il possible qu'un dbgrid n'est pas de source"
    Pas que je sache. Sinon, utilise une TStringGrid.

    Citation Envoyé par babacan Voir le message
    ou encore avoir un table de mémoire en delphi 7
    Peut-être ... Je crois qu'avec le BDE (par exemple), il y a une histoire de cache.
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. :bug: ___ "http://club.developpez.com/regles/#LIII-A"Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.3 Entreprise - Visual studio 2022
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.7)

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 90
    Par défaut
    Merci
    j'ai pu résoudre mon problème,pour ce faire j'ai utilisé une stringGrid pour afficher les éléments de la 1ère colonne et pour aussi saisir les différentes valeurs,j'ai aussi utilisé un dataset afin de parcourir les éléments puis les récupérer ligne par ligne avant de les afficher. voici mon 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
     
    Var
      Vset:TDataset;
      i:integer;
    Begin
      Vset:=Dm.DataSet;
      Vset.First;
      i:=1;
      While not Vset.EOF do // je parcours les valeurs de mon dataset ligne par    ligne
         Begin
            StringGrid.Cells[0,i]:=Vset.FieldByName('NomChamp').Value; // j'affecte la valeur de la ligne dans ma stringGrid
            Vset.Next;
            i:=i+1;
            StringGrid.RowCount:=StringGrid.RowCount+1; // j'ajoute une ligne à ma stringGrid
         End
       If StringGrid.Cells[0,i]=' ' then
          StringGrid.RowCount:=StringGrid.RowCount-1 // si ma dernière cellule de la 1ère colonne de la ligne de ma stringGrid est vide je la supprime
    End;

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

Discussions similaires

  1. Est-il possible de modifier le contenu d'un DBGrid ?
    Par lila23 dans le forum Débuter
    Réponses: 16
    Dernier message: 19/04/2009, 15h43
  2. personnaliser un DBGRID est ce possible
    Par lila23 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 12/04/2009, 15h16
  3. Réponses: 1
    Dernier message: 31/12/2008, 11h30
  4. Réponses: 2
    Dernier message: 16/05/2003, 10h14
  5. [CR] Est il possible de créer des univers avec Seagate Info?
    Par Frank dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 27/06/2002, 15h22

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