Filtrage d'enregistrements à partir de signets

De RAD Studio
Aller à : navigation, rechercher

Remonter à Connexion d'un ensemble de données ADO à un stockage de données

Les ensembles de données ADO supportent la fonctionnalité d'utilisation de signets pour marquer et retourner à des enregistrements spécifiques. Comme les autres ensembles de données, les ensembles de données ADO vous permettent d'utiliser des filtres pour limiter les enregistrements disponibles dans l'ensemble de données. Les ensembles de données ADO offrent une fonctionnalité supplémentaire qui combine ces deux fonctionnalités d’ensemble de données communes : la possibilité de filtrer un ensemble d’enregistrements identifié par des signets.

Pour filtrer sur un ensemble de signets :

  1. Utilisez la méthode Bookmark pour marquer les enregistrements à inclure dans l'ensemble de données filtré.
  2. Appelez la méthode FilterOnBookmarks pour filtrer l'ensemble de données afin que seuls les enregistrements marqués d'un signet apparaissent.

Ce processus est illustré ci-dessous :

procedure TForm1.Button1Click(Sender: TObject);
var
  BM1, BM2: TBookmark;
begin
  with ADODataSet1 do 
  begin
    BM1 := Bookmark;
    BMList.Add(BM1);

    MoveBy(3);

    BM2 := Bookmark;
    BMList.Add(BM2);

    FilterOnBookmarks([BM1, BM2]);
  end;
end;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    TBookmark BM1, BM2;

    BM1 = ADODataSet1->Bookmark;
    BMList->Add(BM1);

    ADODataSet1->MoveBy(3);

    BM2 = ADODataSet1->Bookmark;
    BMList->Add(BM2);

    ADODataSet1->FilterOnBookmarks(ARRAYOFCONST((BM1,BM2)));
}

Notez que l'exemple précédent ajoute aussi les signets à un objet liste (TList<TBookmark>) nommé BMList. Cela est nécessaire afin que l'application puisse libérer les signets (FreeBookmark) dès qu'ils ne sont plus utiles.

Voir aussi