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

C++Builder Discussion :

2 cellules les memes dans dbgrid


Sujet :

C++Builder

  1. #41
    Membre expert
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Points : 3 204
    Points
    3 204
    Par défaut
    Tiens, un p'tit bout de code qui fonctionne chez moi...
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    void __fastcall TForm4::Button7Click(TObject *Sender)
    {
    if ( VerifDoublon(Edit1->Text) == true )
    {
    DataSource1->DataSet->Filtered = false;
    DataSource1->DataSet->Filter = AnsiString("Essai1 = '") + Edit1->Text + ("'");
    DataSource1->DataSet->Filtered = true;
    if (!DataSource1->DataSet->IsEmpty())
    {
            Database1->StartTransaction();
            Table2->Edit();
            for (int i = 0; i < Table2->Fields->Count; i ++)
            {
                    Table2->Fields->Fields[i]->Value = Edit1->Text;
            }
            Table2->Post();
            Database1->Commit();
    }
    DataSource1->DataSet->Filtered = false;
    }
    else
    {
            Database1->StartTransaction();
            Table2->Append();
            Table2->FieldByName("Essai1")->Value = Edit1->Text;
            Table2->Post();
            Database1->Commit();
    }
    }
    //---------------------------------------------------------------------------
    bool __fastcall TForm4::VerifDoublon(String AText)
    {
    bool Result;
    TLocateOptions Option;
    Option << loCaseInsensitive;
    Result = Table2->Locate("Essai1", AText, Option);
    return Result;
    }
    avec dans le .h:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    bool __fastcall VerifDoublon(String AText);
    Si la valeur saisi dans le TEdit existe dans la colonne "Essai1", il remplace donc
    toutes les valeurs des autres colonnes de cette ligne par cette valeur; sinon, il entre un nouvel enregistrement.
    En espérant avoir bien compris ce qui était a faire (ce qui n'est pas sur)...
    Il faut donc remplacer les noms d'objects et de champs par ceux de ton code.
    @ +
    Aux persévérants aucune route n'est interdite.
    Celui qui ne sait pas se contenter de peu ne sera jamais content de rien.
    Current Status
    Avec 40% de pollinisateurs invertébrés menacés d'extinction selon les Nations Unies, l'homme risque fort de passer de la monoculture à la mono diète...
    Faîtes quelque chose de bien avec vos petits sous: Enfants du Mekong

  2. #42
    Membre habitué
    Inscrit en
    Octobre 2005
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 262
    Points : 133
    Points
    133
    Par défaut Très bien
    Citation Envoyé par Cantrelle
    Tiens, un p'tit bout de code qui fonctionne chez moi...
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    void __fastcall TForm4::Button7Click(TObject *Sender)
    {
    if ( VerifDoublon(Edit1->Text) == true )
    {
    DataSource1->DataSet->Filtered = false;
    DataSource1->DataSet->Filter = AnsiString("Essai1 = '") + Edit1->Text + ("'");
    DataSource1->DataSet->Filtered = true;
    if (!DataSource1->DataSet->IsEmpty())
    {
            Database1->StartTransaction();
            Table2->Edit();
            for (int i = 0; i < Table2->Fields->Count; i ++)
            {
                    Table2->Fields->Fields[i]->Value = Edit1->Text;
            }
            Table2->Post();
            Database1->Commit();
    }
    DataSource1->DataSet->Filtered = false;
    }
    else
    {
            Database1->StartTransaction();
            Table2->Append();
            Table2->FieldByName("Essai1")->Value = Edit1->Text;
            Table2->Post();
            Database1->Commit();
    }
    }
    //---------------------------------------------------------------------------
    bool __fastcall TForm4::VerifDoublon(String AText)
    {
    bool Result;
    TLocateOptions Option;
    Option << loCaseInsensitive;
    Result = Table2->Locate("Essai1", AText, Option);
    return Result;
    }
    avec dans le .h:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    bool __fastcall VerifDoublon(String AText);
    Si la valeur saisi dans le TEdit existe dans la colonne "Essai1", il remplace donc
    toutes les valeurs des autres colonnes de cette ligne par cette valeur; sinon, il entre un nouvel enregistrement.
    En espérant avoir bien compris ce qui était a faire (ce qui n'est pas sur)...
    Il faut donc remplacer les noms d'objects et de champs par ceux de ton code.
    @ +


    Furlaz n'oublies pas de cliquer sur resolu

  3. #43
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 106
    Points : 51
    Points
    51
    Par défaut
    merci les gars
    ca marche nikel

  4. #44
    Membre habitué Avatar de Furlaz
    Homme Profil pro
    Responsable Qualité
    Inscrit en
    Mai 2006
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable Qualité
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 210
    Points : 131
    Points
    131
    Par défaut
    Citation Envoyé par vacknov
    Furlaz n'oublies pas de cliquer sur resolu
    C'est pas mon post

  5. #45
    Membre habitué
    Inscrit en
    Octobre 2005
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 262
    Points : 133
    Points
    133
    Par défaut ah oui
    Citation Envoyé par Furlaz
    C'est pas mon post
    autant pour moi

  6. #46
    Membre actif
    Avatar de lanonyme
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 229
    Points : 290
    Points
    290
    Par défaut
    Citation Envoyé par vacknov
    [Résolu] Très bien
    tu as don pour la voyance (enfin presque)... tu donne la reponse avant kalou26

    lanonyme

  7. #47
    Membre habitué
    Inscrit en
    Octobre 2005
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 262
    Points : 133
    Points
    133
    Par défaut Merci
    Citation Envoyé par lanonyme
    tu as don pour la voyance (enfin presque)... tu donne la reponse avant kalou26

    lanonyme
    Les yeux suffisent quelques fois pour voir le resultat d'un programme simple .

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Réponses: 42
    Dernier message: 16/03/2015, 21h13
  2. ordonner les champs dans dbgrid
    Par supersoft5 dans le forum C++Builder
    Réponses: 1
    Dernier message: 16/05/2007, 22h34
  3. 2 lignes les memes dans une listbox
    Par kalou26 dans le forum C++Builder
    Réponses: 9
    Dernier message: 20/06/2006, 16h03
  4. [JTable] centrer les donnees dans les cellules
    Par cmoa59 dans le forum Composants
    Réponses: 5
    Dernier message: 20/05/2005, 11h35
  5. Des styles pour le texte et les liens dans la meme div?
    Par Donkey' Shot dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 26/01/2005, 20h03

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