I have a TMSFNCGrid in one form.
This Grid obtain data from a GridDataBaseAdapter.
Data is displayed without problem...
Then i want to active the filter option of the grid.
I change this options:
sgDATA.Options.Filtering.DropDown:=true;
sgDATA.LinearFill(true);
I do this before active the GridDataBaseAdapter.
Then i can see the dropdown button in the header of columns but when i dropdown the list of unique values for filter i can not see the uniques values. I only see the "All" item...
Can you help me ?
If you do this BEFORE you activate the database adapter, the grid has no data, hence, it cannot determine the unique values.
Hi,
I do this after active GridDataBaseAdapter but not run.
This is my code:
procedure TfMconmovim.ListaRegistros (anyo, mes :integer; situa: integer=9);
begin
// Funtions to obtain DataSet from MySQL Database
Smovimiento.MovimientosPeriodoByClase(anyo,mes,clasemovim,situa);
// DBADAPTER (TDataBaseAdapter) is connected to DSOURCE (TDataSource) and
// SGGRID (TTMSFNCGrid)
// Assign DataSet to DataSource.
DSOURCE.DataSet := Smovimiento.sdDTLIST.Dataset; // Assign DataSet to DataSource
// Procedure for Clear columns of DataBaseAdapter and Grid and add the columns.
ArrangeListaRegistros;
// Active DataBaseAdapter... In the grid i can see data ok.
DBADAPTER.Active:=true;
// In every column appear the arrow for filter but when down buttton only "All" item appear.
SGGRID.Options.Filtering.DropDown:=true;
SGGRID.LinearFill(true);
end;
Where is my error ?
Thanks
I do not understand your code. Why do you call SGGRID.LinearFill AFTER you did set DBAdapter.Active = true?
Can you also try
SGGRID.Options.Filtering.DropDown := false;
TMSFNCGridDatabaseAdapter1.LoadAllDataAndDisconnect;
SGGRID.Options.Filtering.DropDown := true;