Filtrer avec datatimepicker

Résolu
Bonjour,

comment filtrer avec le datetimepicker
exp je choisis une date et il m'affiche tous les patients arrivés de cette date
merci d'avance

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. j'ai déjà cassé ma tete avec ce filtre, mais bon j'ai pas trouver une solution direct, mais j'ai trouvé une solution indirect LOL
    donc je place un edit ( caché + readonly)
    un datetimepicker ( dans l'evenement OnChange : edit1.text:=datetostr(datetimepicker1.date);
    //donc l'edit reçoit automatiquement la date choisir dans le datetimepicker//

    et puis je filtre avec le edit qui contient la date
    Tpatients:= 'date_arrive='''+edit1.text+'''';
    tpatients.filtred:=true;
    1. slt merci pour ta réponse mais c bon g trouvé la bonne solution
      peut être elle va t'aider
      procedure TArchive.DateTimePicker1Change(Sender: TObject);
      begin
      datamodule2.ADOpatient.Filtered:=true;
      datamodule2.ADOpatient.Filter:='DateExamPatient='+ QuotedStr(datetostr(DateTimePicker1.Date));
      end;
    2. Merci fifisoum5
      par contre je pense que y'a une petite erreur dans l'ordre des instruction, ça doit etre :
      begin
      datamodule2.ADOpatient.Filter:='DateExamPatient='+ QuotedStr(datetostr(DateTimePicker1.Date));
      datamodule2.ADOpatient.Filtered:=true;
      end;
      puisque on active le filtrage de table apres avoir donné la valeur de filtre
    3. @nabil-bagoouiiii c vrai mais svp j'ai besoin d'un autre aide
      ben comme j'avais fais le filtrage je voulais que tous les patients arrivés de la date choisie soient tous archivés
      mon code :
      with datamodule2.ADOArchive do
      begin
      insert;
      Fieldbyname('NPatient').AsString := datamodule2.ADOPatient.Fieldbyname('NPatient').AsString;
      Fieldbyname('NomPatient').AsString :=datamodule2. ADOPatient.Fieldbyname('NomPatient').AsString;
      Fieldbyname('PrenomPatient').asstring :=datamodule2. ADOPatient.Fieldbyname('PrenomPatient').AsString;
      Fieldbyname('DateExamPatient').AsString := datamodule2.ADOPatient.Fieldbyname('DateExamPatient').AsString;
      Fieldbyname('PrixTotalPatient').AsString := datamodule2.ADOPatient.Fieldbyname('PrixTotalPatient').AsString;
      Fieldbyname('TauxTotalSS').AsString := datamodule2.ADOPatient.Fieldbyname('TauxTotalSS').AsString;
      Fieldbyname('CompteRendu').AsString := datamodule2.ADOPatient.Fieldbyname('CompteRendu').AsString;

      post;
      end;
      archive un par un un mais moi je souhaiterai archiver des dizaines au mm temps
      :(
    4. je comprend pas ce que tu veux dire par archivés puisque le code que ta ecrit et pour l'ajout des enregestrement ( insert et post ) !!