Champ calculé et paradox

Résolu
cs_abdousoft Messages postés 100 Date d'inscription mardi 3 août 2004 Statut Membre Dernière intervention 5 novembre 2007 - 27 sept. 2007 à 00:46
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 - 28 sept. 2007 à 15:01
Bjr
Voila j'ai un table paradox avec la structure suivante:
1-id----------------> integer----->*indexer
2-compteur-------->integer------>*indexer
3-Raison----------->Alpha-------> 40
4-Somme---------->$ monetaire
5-Total ----------->$ monetaire

la table est relier en mode mastersource avec un table Maitre, et les champs sont afficher dans un composant dbgrid!!

le probleme c'est comment calculer la somme des enregistrement qui se trouve dans cette dbgrid apres chaque insertion d'un nouveau enregistrement est afficher dans le champ Total qui est aussi de type monetaire($).
Merci d'avancement.

abdelmoumene djezar

6 réponses

cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
27 sept. 2007 à 18:41
Je te conseille de commencer à utiliser les TQuery plutôt que les TTable..
A l'usage, tu verras que ces derniers t'offriront plus de possiblités et de performance.

cantador
3
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
27 sept. 2007 à 13:58
En principe on met le total en bas de la colonne mais nous ne savons pas ton besoin réel..
et le TdbGrid ne dispose pas de footer..
il te faudrait pour ça un grid plus élaboré..

Mais tu peux aussi tout simplement mettre un edit en base de la colonne


Et afficher le total avec une requête SQL
MonQuery.Close;
MonQuery.Open;
with MonQuery  do
begin
Clear;
Add('SELECT sum(Somme) as TOTAL ');
Add('FROM  Matable  ');
MonQuery.ExecSQL;
end;
et
Edit1.text := MonQuery.FieldByName('TOTAL').Value;

je n'ai pas testé mais çà doit marcher..

cantador
0
cs_abdousoft Messages postés 100 Date d'inscription mardi 3 août 2004 Statut Membre Dernière intervention 5 novembre 2007
27 sept. 2007 à 15:15
Slt
Merci pour votre reponse mais s'il trouve une autre methoda deferente a l SQL c'est mieu avec TTable;
ET merci d'avancement

THANKS
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
27 sept. 2007 à 21:52
@Cantador : quand on utilise l'instruction SELECT en SQL, il faut utiliser la méthode Open du composant TQuery et non ExecSql (réservé aux requêtes qui ne renvoient pas de curseur comme update, insert ou delete).

Je rejoins les collègues pour dire qu'une requête est sûrement la meilleure réponse à la question posée

May Delphi be with you !
<hr color="#008000" />
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
http://www.afipa.net/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
khawarizm Messages postés 116 Date d'inscription mercredi 22 novembre 2000 Statut Membre Dernière intervention 4 août 2010 1
27 sept. 2007 à 22:17
Bonsoir ;
 Moi aussi je pense qu'une requête est
sûrement la meilleure réponse à la question posée mais,  tu veux toujours utiliser une TTable au lieu
de Requête SQL tu peux le faire en utilisant un
TDataSetProvider, un  TClientDataset

  et les

aggrégats Voilà
un tutorial qui parle de ça : http://alphomega.developpez.com/Agregats/tutoriel/.



Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
0
cs_cantador Messages postés 4720 Date d'inscription dimanche 26 février 2006 Statut Modérateur Dernière intervention 31 juillet 2021 13
28 sept. 2007 à 15:01
@delphiprog :
Oui c'est vrai tu as raison la doc le précise, mais il m'arrive d'utiliser les deux sans difficulté jusqu'à présent...
cantador
0
Rejoignez-nous