Bonjour,
Je suis en train de porter mon appli VCL vers FMX.
Pour choisir les critères de recherches sur le base de données j'utilisais un TCombobox et un fois la sélection faite je remplissais un DBGrid dans lequel l'utilisateur choisissais la valeur voulue .
Comme cela je n'utilisais qu'une seul DBGrid que je remplissais avec la bonne requête. Un double clic sur la valeur choisie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 begin // Recherche sur la Collection with DM2.FDQRecherche.SQL do begin Clear; Add('SELECT C.num_collection, '); Add('C.Collection AS collection_i '); Add('FROM collections C '); Add('ORDER BY collection_i '); end; DBChoix.DataSource := DM2.DSRecherche;
Est-il possible de garder cette même façon de faire en FMX ? Sous réserve qu'elle ne soit pas non plus absurde.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 procedure TForm1.RechercheListe(IdRecherche: Integer; IdIndice: Integer); var // IdRecherche : champ de recherche case..of SQLCode: TStringList; // IdIndice : Identifiant à rechercher begin SQLCode := TStringList.create; SQLCode.Clear; SQLCode.assign(DM2.SQLLivres); DM2.FDQLivres.active := False; DM2.FDQLivres.SQL.Clear; case IdRecherche of ..... 12: begin // Recherche sur la collection SQLCode.Add(DM2.SQLChoix + 'L.num_collection=:saisie'); SQLCode.Add(DM2.SQLTri + 'L.Titre'); compteId1 := 'num_collection'; end; end; compteId2 := IdIndice; DM2.FDQLivres.SQL := SQLCode; DM2.FDQLivres.ParamByName('saisie').Value := IdIndice; DM2.FDQLivres.open; SQLCode.Free;
Cela je pense pourrait se traduire par la création d'une liaison par programmation sans bien sûr utiliser le concepteur même en mode expert.
Au passage merci à Serge pour sa doc sur les LiveBindings, il est indiqué d'ailleurs que pour le TgridJ'ai bien peur effectivement que cela le soit trop pour mon niveau.Cette partie est si complexe que je préfère en limiter les explications...
PS : version 10.3 community + Firebird
Partager