Olvidé especificar el evento ColumnMoved del DBGrid.
Con esto, ordeno los registros de acuerdo al orden de las columnas del DBGrid.
Inmediatamente después de abrir por primera vez el query:
Código:
dbg_EntradasColumnMoved(frm_BuscarEntradas,0,0);
OnColumnMoved
Código:
s_Cuerda:= '';
for i_Contador:= 1 to dbg_Entradas.Columns.Count do
begin
s_Cuerda:= s_Cuerda + dbg_Entradas.Columns.Items[i_Contador - 1].FieldName;
if i_Contador < dbg_Entradas.Columns.Count then
s_Cuerda:= s_Cuerda + ',';
end;
qry_Entradas.Close;
qry_Entradas.SQL.Delete(qry_Entradas.SQL.Count - 1);
qry_Entradas.SQL.Add('ORDER BY ' + s_Cuerda);
qry_Entradas.Open;
Gracias de nuevo por su ayuda.