Newsgroup: it.comp.lang.delphi
Titolo: [TClientDataSet] Consiglio pratico...

Scusate per il Subject generico, ma non sapevo come riassumerlo...
Supponiamo che abbia due Database (xml creati con il ClientDataSet), uno
per i "Contenitori" (con campi ID, intero, e Nome, stringa) e uno per i
"Contenuti" (con ID, intero, Nome, stringa, e ID del contenitore in cui
č contenuto).
Piccolo problema: come conviene in maniera piů scorrevole, breve e
ripetibile senza inutili artifici fare per far sě che con componenti
tipo DBEdit o DBComboBox io possa, durante l'editing di un elemento
contenuto, far selezionare il nome del contenitore ma senza troppi
fronzoli destinare il solo ID di questo nell'apposito campo del
contenuto?
Grazie anticipatamente per gli eventuali suggerimenti...
-- 
Poochie©

 wrote:
[CUT]
Ehm, riformulo... serviva il DBLookupComboBox...
Dovrei selezionare fra i "Contenitori" solo quelli che godono di una
certa proprietą (Kind=1), č implementabile? 
-- 
Poochie©

Poochie©
	Ciao
	MassimoB
 
---------------------------------
http://www.massimobeschi.it/
---------------------------------
Se tu pagare come dici tu ...
Io lavorare come dico io ...
Se tu pagare come dico io ...
Io lavorare come dici tu ...
---------------------------------

 deve vedere tutti i valori è lecita.
No, in questo caso non è una scelta elegante.
-- 
Poochie©

filtrato per i 2 casi del filtro che mi interessa... 
penso che non ti resti da fare altro che due cloni ...
estratto da 
http://www.dbginc.com/tech_pprs/ibxcds.html
------------------------------------------------------------
Cloning Datasets
Another very handy feature of ClientDataSets is the ability to clone cursors. Suppose you need to look at two different records in the same dataset at the same time. 
If you are not working with ClientDataSets you must either find the record and save it to an array or use a second query component to fetch a second copy of the 
records which creates additional network traffic and additional load on the server. If you are using ClientDataSets and need an addtional view of your data all you 
have to do is add another ClientDataSet to your application and call its CloneCursor method as shown in the following code from the OnCreate event handler of the 
EmpCloneForm form in the sample application.
procedure TEmpCloneForm.FormCreate(Sender: TObject);
begin
  with EmpCloneCds do
  begin
    CloneCursor(MainDm.EmpCds, False, False);
    Open;
  end; //with
end;
CloneCursor takes three parameters. The first is the source ClientDataSet. The second and third are called Reset and KeepSettings and both are boolean. When 
Reset and KeepSettings are False the RemoteServer, ProviderName, IndexName, Filter, Filtered, MasterSource, MasterFields and ReadOnly properties are 
copied from the source ClientDataSet to the clone. When Reset is True the properties of the clone are set to their default values. When KeepSettings is True the 
property values of the clone are not changed.
------------------------------------------------------------
oppure SaveToStream ... LoadFromStream ... applichi un 
filtro diverso per ciascuno e ti sei tolto il problema
... ovviamente se i dati, del dataset di partenza, sono
modificati frequentemente e i record nella tabella sono
parecchi, diventa tutto un pò lentuccio.


 penso che non ti resti da fare altro che due cloni ...
Graziee!!!! KUDOS!
Era esattamente quello che mi serviva! ^_^
-- 
Poochie©