Ver Mensaje Individual
  #10  
Antiguo 02-08-2019
juank1971 juank1971 is offline
Miembro
 
Registrado: feb 2008
Posts: 230
Reputación: 17
juank1971 Va por buen camino
Amigos esto es lo mas funcional pero cochino que he encontrado, funciona muy bien y hace lo que quiero que en resumen es que el usuario cada vez que toque algun control conectado a datos este se actualiza sin preguntar ni interactuar con el usuario me quedo asi, lo veo on poco feo pero no encuentro otra manera de hacerlo.


este esta ya hecho para varios controles DB cada uno tiene asociado el evento onclick o de lo contrario el evento OnChange a el procedimiento onClickControl y estan conectados a FDQuery 's cada FDQuery hay que ponerle la propiedad CachedUpdates a true:



Código Delphi [-]
procedure TForm1.onClickControl(Sender: TObject);
begin
 if Sender is TDBCheckBox then
    ControlClicked :=  (Sender as TDBCheckBox).Name;
  if Sender is TDBRadioGroup then
    ControlClicked :=  (Sender as TDBRadioGroup).Name;
   if Sender is TDBedit then
    ControlClicked :=  (Sender as TDBedit).Name;
end;

procedure TForm1.onMouseLeaveControl(Sender: TObject);
begin
  if Sender is TDBCheckBox then
  if (sender as TDBCheckBox).Name = ControlClicked then
   begin
    ControlClicked := '';
    TFDQuery(TDBCheckBox(Sender).datasource.dataset).ApplyUpdates(0);
   end;

  if Sender is TDBRadioGroup then
  if (sender as TDBRadioGroup).Name = ControlClicked then
   begin
    ControlClicked := '';
    TFDQuery(TDBRadioGroup(Sender).datasource.dataset).ApplyUpdates(0);
   end;

   if Sender is TDBedit then
  if (sender as TDBedit).Name = ControlClicked then
   begin
    ControlClicked := '';
    TFDQuery(TDBedit(Sender).datasource.dataset).ApplyUpdates(0);
   end;
end;
Responder Con Cita