Petite application pour debutant réalisé avec Delphi 6 qui permet
de calculer des valeurs (Prix Horstva, Prix tva compris, etc ) a partir de champs provenant
d'une base de données.
Ici je me suis servis de Paradox.
J'ai mis pas mal de commentaires,
Pour que l'application fonctionne, vous devez configurez le fichier
unit2.dfm avec vos parametres :
a la ligne :
-------------
object Table1: TTable
DatabaseName = 'c:\votrechemin' <= Remplacez ce chemin par le votre!!!
TableName = 'stock.db'
Left = 521
Top = 3
Compliez le tout et ca devrait rouler...
Tout est dans le .zip
Source / Exemple :
procedure TForm2.Button2Click(Sender: TObject);
begin
//Operation
//Prix unitaire hors tva
table1.fieldbyname('puhtva').asfloat := table1.fieldbyname('pu').asfloat *(100
- table1.fieldbyname('remise').asfloat)/100;
// tva
table1.FieldByName('tva').AsFloat := table1.fieldbyname('PuHtva').AsFloat
- table1.fieldbyname('tauxtva').asfloat / 100;
// prix unitaire tvacomprise
table1.FieldByName('putvac').asfloat := table1.fieldbyname('puhtva').asfloat
+ table1.fieldbyname('tva').AsFloat;
end;
Conclusion :
Enjoy
http://membres.lycos.fr/annmysql
25 juin 2008 à 03:49
en empreinte un 1 et ont le rend pas
16 mars 2004 à 19:31
En cliquant sur "Calculez les champs", on déclenche un exception du fait que l'ensemble n'est pas en mode édition et c'est normal.
Si les champs dans lesquels tu veux écrire sont bien déclarés comme champs calculés (fkCalculated), tu dois aussi utiliser l'évènement OnCalcFields de l'ensemble de données et y mettre ton code comme suit :
procedure TForm2.Table1CalcFields(DataSet: TDataSet);
begin
//Prix unitaire hors tva
table1.fieldbyname('puhtva').asfloat :=
table1.fieldbyname('pu').asfloat * (100
- table1.fieldbyname('remise').asfloat) / 100;
// tva
table1.FieldByName('tva').AsFloat :=
table1.fieldbyname('PuHtva').AsFloat
* table1.fieldbyname('tauxtva').asfloat / 100;
// prix unitaire tvacomprise
table1.FieldByName('putvac').asfloat :=
table1.fieldbyname('puhtva').asfloat
+ table1.fieldbyname('tva').AsFloat;
end;
L'utilité du bouton intitulé "Calculez les champs" devient ainsi nulle.
A celà j'ajouterai que, comme les tables physiques sont dans le même dossier que l'application (stocks.*), il n'est pas utile de préciser un chemin dans la propriété DataBaseName de Table1.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.