Bonjour,
le code etait bon
bouh , quelle horreur..
procedure TForm1.BitBtn1Click(Sender: TObject); begin WITH Query1.SQL DO BEGIN Clear; Add('Select SUM(MonChampQuantite) as Total from MaTable '); Query1.Open; Edit1.text := IntToStr(Query1.FieldByName('Total').Value); END; end;
cantador
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionbon je reviens sur le sujet !!
jai oublié de précisé que j'utilise bd Paradox.
du coup ce que vous avez proposé ne va pas !
donc je re poste la parti problématique avec plus élément afin peut etre obtenir plus d'information ..
comme je l'ai souligné j' apprend et découvre les bases de données donc je fait plein d'erreur !! j'ai choisie les bases paradox car c'est en cherchant des tutoriels que je suis tombé sur ce qui me paraissais le plus compréhensible vu mon niveau, je panse que j améliorerais mais connaissance en allant sur du sql après mais je souhaite tous de même finir mon petit logiciel avec les bases paradox afin de comprendre .
voila :
alors ma form appelle BDTH1
dessus j'y est placé
un DBGrid nommé DBgrid1,TTablenomé Table2,TDataSource nommé Datasource1
j'ai donc dans ma tabe2 plusieurs élément dont un est (Quantite)
j'ai placé sur ma forme un Tedit nommé edit1
voila jai donc créé un formulaire de saisie ce qui me permet de remplir ma base donc tous cela fonction.
après multiple recherche j'ai donc trouvé ce code ..
pour adittionné tous les chiffres du champs Quantite de ma base.
cela a fonctionné mais bizarrement une fois sur deux j’obtiens ce message:
((Le project1.exe a provoqué une classe d'exception EDBEngineError avec le message Impossible de convertir le variant de type (Null) en type(interger).))
dans un premier temps j'aimerais comprendre ce que signifie ce message ?
et si il y a une façon de mieux faire ?
si possible avec de l'explication afin que je puis les mettre dans mon petit cahier de note ;-)
TBDTH1.FormCreate(sender:Tobject); Begin Table2.Active:=true; Edit1.text:='0'; pour effacé le contenue de edit1 Table2.first; Repeat Edit1.text:=instostr(stroint(edit1.txt)+BTH1.Table2.FieldValues['Quantite']); Table2.next; until Table2.eof=true; end;
en vous remerciant..
titi