hola amigos, les comento cual es mi problema a ver si alguno me puede ayudar.. resulta que yo necesito hacer la busqueda de personal tanto por nombre como por dni y como tengo que traer los mismos campos quiero usar el mismo procedimiento pero el problema es que nombre es de tipo varchar(50) y dni int ( y me dijeron que dni si o si tiene que ser tipo int).
bueno cuando busco por medio del dni me trae todo pero por medio dni me tira el erro ya que dice que tal nombre ej juan sanchez no es de tipo int.. la pregunta es la siguiente.. cual es el error en el procedimiento o es que directamente es imposible hacerlo en el mismo procedimiento???
Cita: ALTER procedure [dbo].[obtenerhorariopersonalcargo]
@dni varchar(50)
as
select (p.nombre +' '+ p.apellido)as nombres, c.nombre, p.foto, d.descripcion, hpc.h_entrada, hpc.m_entrada, hpc.h_salida, hpc.m_salida,c.horas,p.nro from personal p
inner join personalcargos pc on p.id_personal = pc.id_personal
inner join cargos c on pc.id_cargo = c.id_cargo
inner join horariopersonalcargos hpc on c.id_cargo = hpc.id_cargo
inner join dias d on hpc.dia = d.dia
where (p.apellido +' '+ p.nombre)=@dni or (p.nombre +' '+ p.apellido)=@dni or @dni= p.nro
desde ya muchismas gracias