utilizando el consejo de Al Gonzalez:
Es utilizar el evento BeforeGetRecords del DataSetProvider ubicado en la aplicacion servidor, con algo parecido a lo siguiente:
Código Delphi
[-]
procedure TDSServerModule.DataSetProviderBeforeGetRecords(
Sender: TObject; var OwnerData: OleVariant);
begin
OwnerData := SQLDataSet.CommandText;
end;
y se obtiene la sentencia en la aplicacion cliente, en el AfterGetRecords del ClientDataSet:
Código Delphi
[-]
procedure TDataModuleIndi.ClientDataSet1AfterGetRecords(Sender: TObject;
var OwnerData: OleVariant);
var
ClienteSQL: string;
begin
ClienteSQL := OwnerData;
end;
¿Para que nos podria servir esto?
Podemos trabajar con el ClientDataSet y su propiedad CommandText, cambiando la sentencia SQL y luego asignar nuevamente la sentencia original.
Algo util cuando trabajamos con ABM en grillas.
Saludos.