Hola, me parece extraño lo siguiente:
Cita:
Empezado por Paradiso
cdsClientes.close;
cdsClientes.params.ParamByName('OPCION').value := gOPCION;
cdsClientes.params.ParamByName('OPCION').value := gOPCION;
cdsClientes.params.ParamByName('OPCION').value := gOPCION;
cdsCLientes.open;
grdBase.setfocus; // que intentas hacer con esto
|
Y en la consulta haces esto
Código SQL
[-]
WHERE ( (C.ACTIVO = 0) AND :OPCION = 0) OR
( C.ACTIVO = 0 AND C.CONDICION_IVA = :OPCION ) OR
( C.ACTIVO = 0 AND C.CONDICION_IVA > 1 AND :OPCION = 2)
ORDER BY C.NOMBRE_COMERCIAL ASC
No logro entender tu lógica. pasas 3 veces el mismo parámetro y luego lo comparas con números.
Habría que revisar un poco esa lógica.
Salud OS.