Comptabilité [Résolu]

Messages postés
3
Date d'inscription
mercredi 30 mars 2011
Statut
Membre
Dernière intervention
17 mai 2012
- - Dernière réponse : cs_walidlam
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
- 13 mai 2012 à 13:33
bonjour,
j'aurais besoin d'un coup de main ou plutôt de pieds.

j'ai une table (Paradox) avec les champs "libelle", "débit" et "crédit" qui s'affiche dans 1 DBGRID.
le champ 'libelle' ne doit pas être vide et au moins 1 des 2 champs 'débit' ou 'crédit' soit <> 0 pour pouvoir ajouter un

autre enregistrement.
le passage d'un champ à un autre doit se faire par l’événement "keydown" du DBGRID avec "VK_Return" a partir du champ "Crédit".

pour essayer d'illustrer

1 - on ne peut passer au champ débit que si le champ libelle n'est pas vide.
2 - on saisit un montant dans le champ "débit", et return pour passer au champ "crédit"
3 - le champ crédit peut être atteint même si le champ débit est vide.
4 - si on saisit un montant dans le champ "crédit"(valeur<>0) faut que le champs débit soit remis a "zéro" ou "null" puis Return pour ajouter un nouvel enregistrement avec le focus dans la colonne "libellé" dans le DBGRID.

merci a tous.
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
3
Merci
bonsoir
j ai pas bien copmris ;la saisie se fait dans dbgrid???
utiliser l evenement de la table (BeforePost,NewRecord...) + les structures alternatives (if ...then) ou bie (case..of)
exemple :
procedure TDM.TmengBeforePost(DataSet: TDataSet);
begin
if tablelibelle.text='' then begin
Raise Exception.Create('Vuillez Saisir tous Les Champs SVP...');
table.cancel end; end;
merci..

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 197 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_walidlam
Messages postés
3
Date d'inscription
mercredi 30 mars 2011
Statut
Membre
Dernière intervention
17 mai 2012
0
Merci
bonjour et merci pour l’intérêt que vous avez porté a ma question.
la saisie effectivement se fait dans un DBGRID.
la solution que je cherche marche tres bien en utilisant les keyleft et keyright du pavé numerique, tout les controles( dans le sens verfication de la saisie) sont parfaits.
je souhaite utiliser la touche "return" pour aboutir au meme resultat.
Je rame pendant plusieurs jours.
Peut etre serait plus explicite si je mettais le code de mon approche.

merci a tous
Commenter la réponse de ogre31
Messages postés
111
Date d'inscription
lundi 30 mai 2011
Statut
Membre
Dernière intervention
29 avril 2013
1
0
Merci
salut
c'est gentil de votre part.
Commenter la réponse de cs_walidlam