Validar registro antes de insertar
Hola a todos, estoy haciendo una aplicación para recursos humanos, trabajo con delphi 5 y sql server 2000 para la bd.
Mi pregunta es la siguiente:
Quiero validar que un registro no se duplique al capturarlo , pero no se en que evento de la tabla ponerlo, ya probe con beforeinsert, beforepost, onnewrecord , pero no funciona.
Este es mi código
with spctblCapEmp do
begin
close;
ParamByName('@Id_ControlCurso').Value:=tblCapEmpId_ControlCurso.value;
ParamByName('@Id_Emp').Value:=tblCapEmpId_Emp.value;
open;
end;
if not spctblCapEmp.eof then
raise Exception.Create('Persona ya existe en curso')
mi storeprocedure es el siguiente:
CREATE PROCEDURE spctblCapEmp
@Id_ControlCurso int,
@id_Emp int
AS
BEGIN
Select * from tblCapEmp where Id_ControlCurso =@Id_ControlCurso and id_Emp=@id_Emp
end
GO
con esto trato de evitar que por un error de captura se dupliquen personas dentro del mismo curso
Los campos de mi tabla son:
id_capEmp llave (autonumerico)
id_controlcurso (curso)
id_emp (empleado)
calificacion
En donde puedo validarlo.
Gracias a todos.
|