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 :

remplir un champs a partir d'une colonne stringGrid


Sujet :

Delphi

  1. #1
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut remplir un champs a partir d'une colonne stringGrid
    Bonsoir
    Je me demande comment faire une boucle pour modifier le un champ stock (saisie) a partir d’une colonne(3,i) D’un stringGrid après des essais .
    avec cette procedure

    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
     
    procedure TFEntrees.ValiderClick(Sender: TObject);
    var A,B : string;
    i,j : integer;
    valeur1 : string;
    begin
    A:=StringGrid1.Cells[1,i];
    B:=StringGrid1.Cells[2,i];
     
    i:=0;
    j:=StringGrid1.RowCount;
    repeat
    i:=i+1;
    valeur1:=StringGrid1.Cells[3,i]; 
    if  t_Prod.Locate('Ref_P;Designation', VarArrayOf([A,B]),[loCaseInsensitive])then
        t_Prod.Edit;
        //Q_ProdStock.Value:=Q_ProdStock.Value + strtofloat(StringGrid1.Cells[3,i]);
        t_ProdStock.Value:=Q_ProdStock.Value + strtofloat(valeur1);
        t_Prod.Post;
     
    until i=j 
    end;
    normalement les resultats seront editées sur le champ stock qui deveront egale a 6 mais ne rien change dans la table produits

    Nom : sg2tbl.png
Affichages : 146
Taille : 67,8 Ko
    merci pour toute aide

  2. #2
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Regarde du coté de événement OnSetEditText.

    Exemple de l'événement OnSetEditText :

    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
    procedure TForm1.Addition;
    var
      IRow, ICol: Integer;
    begin
      ICol := 0;
     
      for IRow := 0 to SG.RowCount - 1 do
      begin
        try // Col 1 + Col 2 = Result Col 3
          SG.Cells[ICol + 2, IRow] :=
            IntToStr(StrToInt(SG.Cells[ICol, IRow]) + StrToInt(SG.Cells[ICol + 1, IRow]));
        except
          SG.Cells[ICol + 2, IRow] := '0'; // Col 3
        end;
      end;
    end;
     
    procedure TForm1.SGSetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
    begin
      Addition;
    end;
    Nom : Video_2024_05_04-1_edit_0.gif
Affichages : 119
Taille : 1,95 Mo

    Il est possible de passer par cet événement OnSetEditText et d'apporter directement les modifications du TStringGrid à une table après la saisie (Fin de saisie).
    Cela te donnerait la possibilité de mettre à jour ta table en temps réel, uniquement sur la valeur modifiée.

    Cela pourrait donner quelque chose de semblable :
    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
    procedure TForm1.SGSetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
    var
      A, B: string;
    begin
      A := StringGrid1.Cells[1, ARow];
      B := StringGrid1.Cells[2, ARow];
     
      if t_Prod.Locate('Ref_P;Designation', VarArrayOf([A, B]), [loCaseInsensitive]) then
      begin
        t_Prod.Edit;
     
        try
          t_ProdStock.Value := Q_ProdStock.Value + StrToFloat(StringGrid1.Cells[3, ARow]);
          t_Prod.Post;
        except
          t_Prod.Cancel;
          ShowMessage('Err');
        end;
      end;
    end;
    Pour la petite correction ( IF THEN BEGIN END), Oui, si je rentre dans la condition IF THEN, je mets ma table en mode édition, Je modifie ma valeur, puis-je la valide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if  t_Prod.Locate('Ref_P;Designation', VarArrayOf([A,B]),[loCaseInsensitive])then
        t_Prod.Edit;
        //Q_ProdStock.Value:=Q_ProdStock.Value + strtofloat(StringGrid1.Cells[3,i]);
        t_ProdStock.Value:=Q_ProdStock.Value + strtofloat(valeur1);
        t_Prod.Post;
    Dans donc cas si tu ne rentres pas dans ta condition tu essayais d'attribuer une valeur à ton champ puis de la validé sur une table et n'est pas en mode édition, doux l'importance du BEGIN END dans la condition IF THEN.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if  t_Prod.Locate('Ref_P;Designation', VarArrayOf([A,B]),[loCaseInsensitive]) then
    begin // BEGIN !!!
        t_Prod.Edit;
        t_ProdStock.Value:=Q_ProdStock.Value + strtofloat(valeur1);
        t_Prod.Post;
    end; // END !!!
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  3. #3
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    merci de votre repense
    j'ai bien apprecie

    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
     
    procedure TForm1.SGSetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
    var
      A, B: string;
    begin
      A := StringGrid1.Cells[1, ARow];
      B := StringGrid1.Cells[2, ARow];
     
      if t_Prod.Locate('Ref_P;Designation', VarArrayOf([A, B]), [loCaseInsensitive]) then
      begin
        t_Prod.Edit;
     
        try
          t_ProdStock.Value := Q_ProdStock.Value + StrToFloat(StringGrid1.Cells[3, ARow]);
          t_Prod.Post;
        except
          t_Prod.Cancel;
          ShowMessage('Err');
        end;
      end;
    end;
    mais des que je tape une valeur je reçoie un message d'erreure
    Nom : sg2tb2l.png
Affichages : 160
Taille : 62,8 Ko

    le projet exe a declancheé la classe d'exception EConvertError avec le message "" n'est pas une valeur en vergule floattante correcte

  4. #4
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Regarde du coté FormatSettings

    https://www.developpez.net/forums/d1...lottant-point/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var
      FormatSettings: TFormatSettings;
    begin
      // Le séparateur décimal est le point "." et non pas la virgule.
      GetLocaleFormatSettings(0, FormatSettings);
      FormatSettings.DecimalSeparator := '.';
      Result := StrToFloat(Value, FormatSettings);
      ...
    end;
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 28
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par MIWAN Voir le message
    merci de votre repense
    j'ai bien apprecie

    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
     
    procedure TForm1.SGSetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
    var
      A, B: string;
    begin
      A := StringGrid1.Cells[1, ARow];
      B := StringGrid1.Cells[2, ARow];
     
      if t_Prod.Locate('Ref_P;Designation', VarArrayOf([A, B]), [loCaseInsensitive]) then
      begin
        t_Prod.Edit;
     
        try
          t_ProdStock.Value := Q_ProdStock.Value + StrToFloat(StringGrid1.Cells[3, ARow]);
          t_Prod.Post;
        except
          t_Prod.Cancel;
          ShowMessage('Err');
        end;
      end;
    end;
    mais des que je tape une valeur je reçoie un message d'erreure
    Nom : sg2tb2l.png
Affichages : 160
Taille : 62,8 Ko

    le projet exe a declancheé la classe d'exception EConvertError avec le message "" n'est pas une valeur en vergule floattante correcte
    salut
    tes variables t_ProdStock.Value et Q_ProdStock.Value sont elles bien toutes les deux des float

  6. #6
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par papyvore Voir le message
    salut
    tes variables t_ProdStock.Value et Q_ProdStock.Value sont elles bien toutes les deux des float
    De ce que je vois par rapport au capture écran, cela semble être des valeurs entières.
    Je comprends pas pourquoi utiliser StrToFloat, je serai plus parti sur StrToInt.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    try
       t_ProdStock.Value := Q_ProdStock.Value + StrToInt(Value);
      t_Prod.Post;
    except
      t_Prod.Cancel;
      ShowMessage('Err');
    end;
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  7. #7
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    try
       t_ProdStock.Value := Q_ProdStock.Value + StrToInt(Value);
      t_Prod.Post;
    except
      t_Prod.Cancel;
      ShowMessage('Err');
    end;
    produit le message suivant avec doublure du quantitée ajoutée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    '' n'est pas une valeur en virgule floattante correcte

  8. #8
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par MIWAN Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    try
       t_ProdStock.Value := Q_ProdStock.Value + StrToInt(Value);
      t_Prod.Post;
    except
      t_Prod.Cancel;
      ShowMessage('Err');
    end;
    produit le message suivant avec doublure du quantitée ajoutée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    '' n'est pas une valeur en virgule floattante correcte
    Tu saisis quoi comme valeur dans le TStringGird ? '0 ,00 ' ou '0 .00 '
    Le séparateur décimal est le point "." et non la virgule , .
    Nom : Capture.PNG
Affichages : 94
Taille : 28,2 Ko
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  9. #9
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    Si tu veux saisir tes valeurs avec la virgule, il faut que tu passe par TFormatSettings
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var
     fs : TFormatSettings;
     
    begin
     
      GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, fs);
    je crois que le probleme est dans la base de dnnée

  10. #10
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par MIWAN Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var
     fs : TFormatSettings;
     
    begin
     
      GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, fs);
    je crois que le probleme est dans la base de dnnée
    Avant d'aller plus loin dans la procédure, il est primordial de contrôler les valeurs saisies lorsque vous travaillez avec un TStringGrid avec des valeurs Int ou Float.

    J'ajouterai même un contrôle du format saisi FormatFloat

    Ton problème c'est juste une histoire de format, peut-être que ton champ t_ProdStock prend que les valeurs à virgule 0,00, donc forcement si tu lui rentres un format avec un point 0.00 cela peut soulever une erreur de format, après c'est à toi de faire la conversion de format.

    Il est donc essentiel de contrôler la saisie.
    1: Que la valeur saisie est bien du type numérique.
    2: Que le format saisi correspond bien avec le format de ton champ de table.

    Mais effectivement le contrôle de saisir ne peut pas se faire du côté SetEditText, Il est essentiel de contrôler la valeur, avant de déclencher événement OnSetEditText, donc SetEditText n'est pas une bonne idée.
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  11. #11
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 069
    Points : 41 031
    Points
    41 031
    Billets dans le blog
    62
    Par défaut
    Plusieurs constatations :
    Tout d'abord, je ne comprends pas l'image écran ne serait-ce que la première ligne seuil =20 stock = 4 et = 6 !
    Ensuite je ne comprends pas pourquoi vous utilisez un StringGrid alors qu'un DBGrid et une requête serait tout aussi (si ce n'est plus) efficace
    Vous n'indiquez pas quelle est votre version de Delphi, ni votre base de données, ni les connecteurs (composants) utilisés pour à la bdd.

    Pour ce qui est du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          t_ProdStock.Value := Q_ProdStock.Value + StrToFloat(StringGrid1.Cells[3, ARow]);
    apprenez à typer vos colonnes en utilisant dans ce cas asFloat et StrToFloat d'une case vide provoquera automatiquement une erreur utilisez StrToFloatDef
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StrToFloatDef(StringGrid1.Cells[3, ARow],0.00)
    ou plutôt StrFloatDef avec l'indication de Format (maintenant dépendant de la version de Delphi cette histoire de format pouvant changer je ne vais pas indiquer comment)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  12. #12
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    Bonjour SergioMaster SergioMaster

    Citation Envoyé par SergioMaster Voir le message
    Plusieurs constatations :
    Tout d'abord, je ne comprends pas l'image écran ne serait-ce que la première ligne seuil =20 stock = 4 et = 6 !
    la quantotée en stock = 4 et quand j'ajoute 2 dans stringgrid qte 2 le stock normalement serait = 6;

    Ensuite je ne comprends pas pourquoi vous utilisez un StringGrid
    j'utilise StringGrid comme Feuille de Brouillon afin d'éviter l'ajout d'une Table ex:Table temporaire et l'export a excel

    quelle est votre version de Delphi ?
    ma version delphi 2010 entreprise

    je vous envois un fichier pour vous faciliter la tache
    Fichiers attachés Fichiers attachés

  13. #13
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    Bonjour : XeGregory

    Il est donc essentiel de contrôler la saisie.
    1: Que la valeur saisie est bien du type numérique.
    2: Que le format saisi correspond bien avec le format de ton champ de table.
    j'ai bien verifie les champs plus j'ai essaiyé sans base de donnée et le probleme reste toujours

  14. #14
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par MIWAN Voir le message
    je vous envois un fichier pour vous faciliter la tache
    Tu déclare la 'Procedure Addition' dans 'TForm1' Ça peut pas fonctionner.
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    type
      TForm1 = class(TForm)
        StringGrid1: TStringGrid;
        Button1: TButton;
        procedure Addition;
        procedure StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer;
          const Value: string);
        procedure Button1Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
        SG : TstringGrid;
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.Addition;
    var
      IRow, ICol: Integer;
    begin
      ICol := 0;
     
      for IRow := 0 to SG.RowCount - 1 do
      begin
        try // Col 1 + Col 2 = Result Col 3
          SG.Cells[ICol + 2, IRow] :=
            IntToStr(StrToInt(SG.Cells[ICol, IRow]) + StrToInt(SG.Cells[ICol + 1, IRow]));
        except
          SG.Cells[ICol + 2, IRow] := '0'; // Col 3
        end;
      end;
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Addition;
    end;
     
    procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer;
      const Value: string);
    begin
    Addition;
    end;
     
    end.
    Correction :
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    type
      TForm1 = class(TForm)
        StringGrid1: TStringGrid;
        Button1: TButton;
     
        procedure StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
        procedure Button1Click(Sender: TObject);
     
      private
        { Déclarations privées }
        procedure Addition;
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.Addition;
    var
      IRow, ICol: Integer;
    begin
      ICol := 0;
     
      with StringGrid1 do
      begin
        for IRow := 0 to RowCount - 1 do
        begin
          try // Col 1 + Col 2 = Result Col 3
            Cells[ICol + 2, IRow] :=
              IntToStr(StrToInt(Cells[ICol, IRow]) + StrToInt(Cells[ICol + 1, IRow]));
          except
            Cells[ICol + 2, IRow] := '0'; // Col 3
          end;
        end;
      end;
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      Addition;
    end;
     
    procedure TForm1.StringGrid1SetEditText(Sender: TObject; ACol, ARow: Integer; const Value: string);
    begin
      Addition;
    end;
    Nom : Video_2024_05_05-2_edit_0.gif
Affichages : 59
Taille : 417,1 Ko
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  15. #15
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    XeGregory
    lorsque je regard votre capture ecran et votre code corrigé c'est impéccable .
    Tu déclare la 'Procedure Addition' dans 'TForm1'
    même dans les parties Private , public et même avec votre code corrigé comme il est le message d'erreur se déclenche
    vraiment je n'ai rien compris

    NB: m'excuses pour votre dérangement


    NB: m'excuses pour votre dérangement
    Images attachées Images attachées   

  16. #16
    Membre actif Avatar de XeGregory
    Homme Profil pro
    Passionné par la programmation
    Inscrit en
    Janvier 2017
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Passionné par la programmation
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 286
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par MIWAN Voir le message
    XeGregory
    lorsque je regard votre capture ecran et votre code corrigé c'est impéccable .

    même dans les parties Private , public et même avec votre code corrigé comme il est le message d'erreur se déclenche
    vraiment je n'ai rien compris

    NB: m'excuses pour votre dérangement


    NB: m'excuses pour votre dérangement
    C'est tout à fait normal, tu es en mode DEBUG.
    Bon courage pour la suite...
    Vous ne pouvez pas faire confiance à un code que vous n'avez pas totalement rédigé vous-même.
    Ce n’est pas un bogue - c’est une fonctionnalité non documentée.

  17. #17
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    200
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 200
    Points : 138
    Points
    138
    Par défaut
    XeGregory


    Thank's pour la bonne vue (en mode Debug)

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

Discussions similaires

  1. [AJAX] Remplir des champ à partir d'une liste
    Par casawia dans le forum jQuery
    Réponses: 0
    Dernier message: 07/08/2014, 11h30
  2. remplir des champs a partir d'une liste
    Par piotrowski-s dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 05/07/2012, 15h14
  3. remplir un champ à partir d'une requête
    Par jujurochedu42 dans le forum WinDev
    Réponses: 2
    Dernier message: 22/02/2011, 10h11
  4. Réponses: 1
    Dernier message: 18/03/2009, 14h03
  5. [formulaire] remplir un champ à partir d'une liste
    Par mystikgirl30 dans le forum IHM
    Réponses: 4
    Dernier message: 23/04/2007, 11h30

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