Un alt mod de a crește interactivitatea părților client ale aplicației DataSnap este de a permite utilizatorilor să efectueze unele manipulări cu datele primite, cum ar fi sortarea sau indexarea, fără a accesa serverul de acces la date.
Pentru a sorta datele din componenta TClientDataSet, puteți utiliza proprietatea IndexFieldNames. În plus, componenta TClientDataSet are metodele Add Index și Delete Index. Aceste metode vă permit să sortați datele la timpul de execuție.
Pentru a ilustra această posibilitate pe formularul de cerere client care conține date din componenta TCI i entDataSet, adăugați componenta Hi stBox și creați procedura de procesare a evenimentelor AfterCpen pentru TCI i entDataSet:
pentru i: = 0 la ClientDataSetl.FieldList.Count-1 să începeți // dacă puteți sorta datele prin acest câmp
if (ClientDataSetl.Fields.Fields [i] este TStringField) sau (ClientDataSetl.Fields.Fields [i] este TNumericField) sau (ClientDataSetl.Fields.Fields [i] este TDateTimeField) apoi începe fn: = ClientDataSetl.Fields.Fields [ i] .FieldName; // adăugați numele câmpului la lista ComboBoxl.Items.Add (fn); 11 și de a crea un nou indice de ClientDataSetl.Addlndex (fn + 'Index', fn.
In acest handler, ne umplem numele TComboBox componente ale câmpurilor, din valorile pe care le pot implementa sortarea (obiecte de tip TNumericField, TDateTimeField, TStringField și succesorii lor, cum ar fi TWideStringField, TIntegerField și t. D.), și se adaugă codurile corespunzătoare pentru un set de date care cuprinde în componenta TCI i entDataSet.
Un alt dispozitiv de tratare a evenimentelor este asociat cu utilizatorul selectând numele câmpului pe care se efectuează sortarea:
începeți fn: = ComboBoxl.Items.Strings [ComboBoxl.ItemIndex]; // modificați indexul
În cele din urmă, trebuie să setăm ordinea de sortare a înregistrărilor din setul de date înainte de ao deschide:
Acum, în stadiul de execuție, lista câmpurilor componentei TCI i entDataSet va fi afișată în componenta TLI a stBox-ului, iar selectarea câmpului din această listă va avea ca rezultat o sortare a înregistrărilor (Figura 12.17).
Fig. 12.17. Selectarea ordinii de sortare a înregistrărilor în componenta TSMenalataBel
După ce am discutat câteva dintre capacitățile de manipulare a datelor furnizate de tehnologia OagBar ca atare, amintim că serverul VagBar este un server COM. Aceasta înseamnă că funcționalitatea unui astfel de server poate fi extinsă prin adăugarea unor metode suplimentare la interfața sa. Exemple de metode suplimentare pentru extinderea funcționalității serverelor de acces la date vor fi discutate în secțiunea următoare.