Bonjour,
J'utilise le code suivant pour afficher ma requette dans un stringgrid
et j'obtiens pour les valeurs decimaux 646,8 et 0 au lieu de 646,80 et 0,00
d'avance merci.
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
52
53
54
55 procedure Tform1.Connect; var JvUIBDataBase : TJvUIBDataBase; JvUIBTransaction : TJvUIBTransaction; JvUIBQuery : TJvUIBQuery; i : Integer; begin JvUIBDataBase := TJvUIBDataBase.Create(NIL); JvUIBTransaction := TJvUIBTransaction.Create(NIL); JvUIBQuery := TJvUIBQuery.Create(NIL); i:= 1; try JvUIBTransaction.DataBase:= JvUIBDataBase; JvUIBQuery.Transaction:= JvUIBTransaction; JvUIBDataBase.SQLDialect:= 3; JvUIBDataBase.DatabaseName := 'localhost:C:\delphi\ASSO.FDB'; JvUIBDataBase.UserName := 'sysdba'; JvUIBDataBase.PassWord := 'masterkey'; JvUIBDataBase.Connected:= True; try JvUIBDataBase.Connected; JvUIBQuery.SQL.Add('select ID,NOM,DTE,MONTANT from DONS'); JvUIBTransaction.StartTransaction; try Memo1.Lines.Clear; JvUIBQuery.Open; JvUIBTransaction.InTransaction; try while not JvUIBQuery.EOF do begin StringGrid.Cells[1,i]:= JvUIBQuery.Fields.ByNameAsString['ID']; StringGrid.Cells[2,i]:= JvUIBQuery.Fields.ByNameAsString['NOM']; StringGrid.Cells[6,i]:= JvUIBQuery.Fields.ByNameAsString['DTE']; StringGrid.Cells[6,i]:= JvUIBQuery.Fields.ByNameAsString['MONTANT']; Inc(i); JvUIBQuery.Next; end; finally JvUIBQuery.Close; end; finally JvUIBTransaction.Commit; end; finally JvUIBDataBase.Connected:= False; end; finally JvUIBQuery.Free; JvUIBTransaction.Free; JvUIBDataBase.Free; end;
Partager