Ver Mensaje Individual
  #1  
Antiguo 29-12-2021
balger balger is offline
Miembro
 
Registrado: may 2011
Posts: 30
Reputación: 0
balger Va por buen camino
Problema con IndexFieldNames in firemonkey (FMX)

Hola a todos. se me presenta el problema trabajando con D 10.3.3

El tema ocurre solamente en FMX. Trabajando con VCL trabaja bien.

Tengo un dataset (de qualquier tipo) conectado a un grid (de cualquier tipo), haciendo click en el titulo de una columna esta se ordena por el campo correspondiente.

En VCL
Código Delphi [-]
procedure TForm2.DBGrid1TitleClick(Column: TColumn);
begin
  qrySec.IndexFieldNames := Column.FieldName;
end;

En FMX
Código Delphi [-]
procedure TManFarmaQry.StringGrid1HeaderClick(Column: TColumn);
begin
     
case Column.Index of
          0:
            if mtblMedica.IndexFieldNames = 'Field1' then
              mtblMedica.IndexFieldNames := 'Field1' + ''
            else
              mtblMedica.IndexFieldNames := 'Field1';
    
          1:
            if mtblMedica.IndexFieldNames = 'Field2' then
              mtblMedica.IndexFieldNames := 'Field2' + ''
            else
              mtblMedica.IndexFieldNames := 'Field2';
          2:
            if mtblMedica.IndexFieldNames = 'Field3' then
              mtblMedica.IndexFieldNames := 'Field3' + ''
            else
              mtblMedica.IndexFieldNames := 'Field3';
        end;
end;

En el caso de FMX, se observa un reacomodamiento de los registros que no se corresponde con nada, todo queda desordenado.

Estimo que dado que en ambos casos se usa Firedac el problema no radica ahí. Entonces existe un problema de sincronización en el bind.
Espero comentarios.

Felices Fiestas para todos.

Pd: la carita sonrriente se deve interpretar como ": D" sin el espacio
Responder Con Cita