luisgutierrezb disculpáme, probé con lo que me explicaste y resolví de forma no total, es decir es un rango de días, exactamente lo que quiero es que si el primer valor es decir @Edad es igual a 90 entonces el otro sea nulo es decir @Edad1, cuando yo pruebo el procedimiento almacenado en sql server me funciona perfectamente bien, ahora en delphi escribí este código:
Código Delphi
[-]
begin
ADOSPEdadCuentas.Close;
ADOSPEdadCuentas.Parameters.ParamByName('@Edad').Value := EditEdad2.Text;
ADOSPEdadCuentas.Parameters.ParamByName('@Edad1').Value := EditEdad1.Text;
if StrToInt(EditEdad2.Text) = 90 then
ADOSPEdadCuentas.Parameters.ParamByName('@Edad1').Value := VarNull;
ADOSPEdadCuentas.Open;
end;
Y esto me levanta una excepción en la Clase EoleException, pienso que en este código hay algo mal escrito. El error dice Application uses a value of the wrong type for the current operation y se detiene en la línea de código donde está el if.