ADOQuery + DBText [Résolu]

Signaler
Messages postés
133
Date d'inscription
mercredi 4 janvier 2006
Statut
Membre
Dernière intervention
7 septembre 2010
-
Messages postés
118
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
19 juin 2007
-
Bonjour,

J'utilise un ADOQuery pour afficher mon calcul dans un DBText. Selon le resultat, il change de couleur. Mon problème est qu'il considere "solde" toujours positif. Pourquoi ?
procedure TForm1.CalculSolde;
Var solde:real;
Begin
SoldeADOQuery.active:=false;
SoldeADOQuery.SQL.Clear; // Effacement de la requete
SoldeADOQuery.SQL.Text:='select sum(debit) - sum(remb) As Solde from compte';
SoldeADOQuery.active:=true;
With SoldeDBText do
If solde<0 then
Begin
// Affichage : Solde Négatif
Font.Name:=FontNameSoldeN;
Font.Color:=FontColorSoldeN;
Font.Size:=FontSizeSoldeN;
End
Else
Begin
// Affichage : Solde Positif
Font.Name:=FontNameSoldeP;
Font.Color:=FontColorSoldeP;
Font.Size:=FontSizeSoldeP;
End;
SoldeDBText.DataField:='Solde';
end;

5 réponses

Messages postés
118
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
19 juin 2007

salut!
Est-ce que tu utilises la variable "solde" autre part que dans ta fonction?
Par ce que la elle n'a pas de valeur . Donc comme par défaut elle est déja positive elle va le rester.

a++
Messages postés
118
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
19 juin 2007

alors lui il est bon il poste des messages partout on l'aide et pas une acceptation pas de réponse ç a me soule.
Messages postés
133
Date d'inscription
mercredi 4 janvier 2006
Statut
Membre
Dernière intervention
7 septembre 2010

T'enerves pas mon ami ...
J'ai trouvé la réponse en surfant sur le net, voici mon code.

Merci quand meme !!!!!
var
solde: double;


begin
DM.SoldeADOQuery.Close;
DM.SoldeADOQuery.SQL.Clear; // Effacement de la requete
DM.SoldeADOQuery.SQL.Text:='select (sum(debit) - sum(remb)) As Solde from operations';
DM.SoldeADOQuery.Open;
solde:=DM.SoldeADOQuery.FieldByName('Solde').AsFloat;
with DBTextSolde do
begin
If solde < 0 then
begin
// Affichage : Solde Négatif
Font.Name := FontNameSoldeN;
Font.Color := FontColorSoldeN;
Font.Size := FontSizeSoldeN;
end
else
begin
// Affichage : Solde Positif
Font.Name := FontNameSoldeP;
Font.Color := FontColorSoldeP;
Font.Size := FontSizeSoldeP;
end;
DataField := 'Solde';
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
Le problème a bien été signalé et est en cours de traitement.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
118
Date d'inscription
dimanche 28 septembre 2003
Statut
Membre
Dernière intervention
19 juin 2007

Excusez - moi les gens je suis navré mais je suis peu patient voir pas
et en plus j'ai des problèmes avec mon programme sur delphi.

Je me suis un peu emporté. J'étais comme qui dirait



a++