Hola
Cuando se usa ADD en el sql si se quiere volver a hacer la insercion o consulta es necesario borrar la anterior, por eso se usa Clear.
Si no se quiere tener ese problema se usa TEXT.
Código Delphi
[-]
With detalleGral do
begin
SQL.Text:= 'insert into detalleGral (fecha,cod_producto,cantidad, '+
'observaciones,no_inventario,id_cuenta) '+
'values( :MFech, :CodProd, :Cant, :Obs, :Inven, :Cta)';
Parameters[0].Value:= MaskFecha.Text;
Parameters[1].Value:= EditCodProd.Text;
Parameters[2].Value:= EditCantidad.Text;
Parameters[3].Value:= EditObs.Text;
Parameters[4].Value:= EditInventa.Text;
Parameters[5].Value:= EditCta.Text;
ExecSQL;
Ademas es mas cómodo y se define mejor usando parametros en la consulta, asi se evitan errores.
Saludos