Remplacer la colonne d'un champ en une fois

[Résolu]
Signaler
Messages postés
187
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
28 août 2015
-
Messages postés
5
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
23 juillet 2010
-
Bonjour!<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>









 









Sera t-elle une question pertinente?









J'ai sur mon Tform: Tcombobox1 (janvier à décembre), Tcombobox2 (2000 à 2010) et un Tbuton qui me permettra le changemnent de données que je prefere (expliqué









ci-dessous). 









Les codes ci-après fonctionnent bien et me permettent de faire un filtrage de deux champs : Mois et Année.









Quelle est ma préoccupation? j'ai une Base de données dans laquelle je saisi des données. Mais alors, j'aimerai éviter de ressaisir certaines données comme









le mois et l'année.









 









Je m'explique en prenant un exemple:









pour le mois de Janvier de l'année 2008, je saisi dans ma base de données toutes les informations concernant les employés ('nom', 'fonction', etc..).









Ces dernières données devront être répétitives. Sauf pour les prochains mois parce que je n'aimerai pas tout le temps écrire ou choisi le mois et l'année









Par exemple, en arrivant le mois de mars je pourrai juste appeler le mois passé de Janvier pour avoir les données des champs: 'nom', 'fonction', etc...









Et lorsqu'elles apparaissent dans mon DBgrid, j'aimerai à l'aide d'un combobox, choisir le mois actuel de Février et juste en faisant un  clique sur









mon Tbutton...tout le contenu du champ 'mois' devra être modifié en Mars. C'est juste pour éviter de resaisir un nouveaul mois et une nouvelle année.









Imaginons qu'il y est 500 ou 10.000 agents.









 









 









procedure TFeuilleSalarial.BitBtn2Click(Sender: TObject);









begin










  AdoSalaire.Filter:='mois=' +quotedstr(combobox1.Text)+ ' and ' +'annee=' +quotedstr(combobox2.Text);










  AdoSalaire.Filtered:= true;










//que mettre après???











end;









Merci,

Developper est une dimension pour moi.
Leader2000

5 réponses

Messages postés
2106
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5
Salut,

si j' ai bien compris, il va te falloir parcourir toute la table:

Table.First;
while not Table.Eof do
begin
  Table.Edit;
  // ici, tu changes les champs de l' enregistrement actuel :
  Table.ChampMois := xxx;
  Table.Post;

  Table.next;
end;

Voilá
Messages postés
256
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
6 janvier 2011

Bonjour Monsieur ;-)

Utilisez la boucle For... do aprés l'application du filtre, pour modifier vos données.
Messages postés
256
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
6 janvier 2011

Si vous aurez besoin d'un exemple pas de problème.

bonne programmation et bonne continuation
Messages postés
187
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
28 août 2015

Merci Mauricio!

Ton code a bel et bien marche.

Developper est une dimension pour moi.
Leader2000
Messages postés
5
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
23 juillet 2010

bonjour mes amis,
j'aimerais bien savoir le source qui me permet de filtrer par mois ou par annee un champs date dd/mm/yy